Index

Package: Entry_Completion

Description

package Gtk.Entry_Completion is

This widget provides completion functionality for Gtk.Gentry.Gtk_Entry. "Completion functionality" means that when the user modifies the text in the entry, GtkEntryCompletion checks which rows in the model match the current content of the entry, and displays a list of matches. By default, the matching is done by comparing the entry text case-insensitively against the text column of the model (see Set_Text_Column), but this can be overridden with a custom match function (see Set_Match_Func).

When the user selects a completion, the content of the entry is updated.

By default, the content of the entry is replaced by the text column of the model, but this can be overridden by connecting to the ::match-selected signal and updating the entry in the signal handler. Note that you should return TRUE from the signal handler to suppress the default behaviour.

To add completion functionality to an entry, use Gtk.Entry.Set_Completion.

In addition to regular completion matches, which will be inserted into the entry when they are selected, GtkEntryCompletion also allows to display "actions" in the popup window. Their appearance is similar to menuitems, to differentiate them clearly from completion strings. When an action is selected, the ::action-activated signal is emitted.

Packages

Match_Functions (generic)

Classes

Gtk_Entry_Completion_Record

type Gtk_Entry_Completion_Record is new GObject_Record with null record;

Ancestors:

Primitive operations:

Delete_Action
Get_Completion_Prefix
Get_Inline_Completion
Get_Inline_Selection
Get_Minimum_Key_Length
Get_Popup_Completion
Get_Popup_Set_Width
Get_Popup_Single_Match
Get_Text_Column
Glib.Object.Deallocate (Inherited)
Glib.Object.Get_Type (Inherited)
Glib.Object.Notify (Inherited)
Glib.Object.Ref (Inherited)
Glib.Object.Ref_Sink (Inherited)
Glib.Object.Unref (Inherited)
Insert_Action_Markup
Insert_Action_Text
Insert_Prefix
Set_Inline_Completion
Set_Inline_Selection
Set_Match_Func
Set_Minimum_Key_Length
Set_Popup_Completion
Set_Popup_Set_Width
Set_Popup_Single_Match
Set_Text_Column

Types

Gtk_Entry_Completion

type Gtk_Entry_Completion is access all Gtk_Entry_Completion_Record'Class;

C_Gtk_Entry_Completion_Match_Func

type C_Gtk_Entry_Completion_Match_Func is access function
     (Completion    : System.Address;
      Key           : Interfaces.C.Strings.chars_ptr;
      Iter          : Gtk.Tree_Model.Gtk_Tree_Iter;
      Data          : System.Address) return Boolean;

Constants & Global variables

Inline_Completion_Property (Glib.Properties.Property_Boolean)

Inline_Completion_Property : constant Glib.Properties.Property_Boolean;

Inline_Selection_Property (Glib.Properties.Property_Boolean)

Inline_Selection_Property : constant Glib.Properties.Property_Boolean;

Minimum_Key_Length_Property (Glib.Properties.Property_Int)

Minimum_Key_Length_Property : constant Glib.Properties.Property_Int;

Popup_Completion_Property (Glib.Properties.Property_Boolean)

Popup_Completion_Property : constant Glib.Properties.Property_Boolean;

Popup_Set_Width_Property (Glib.Properties.Property_Boolean)

Popup_Set_Width_Property : constant Glib.Properties.Property_Boolean;

Popup_Single_Match_Property (Glib.Properties.Property_Boolean)

Popup_Single_Match_Property : constant Glib.Properties.Property_Boolean;

Text_Column_Property (Glib.Properties.Property_Int)

Text_Column_Property : constant Glib.Properties.Property_Int;

Signal_Action_Activated (Glib.Signal_Name)

Signal_Action_Activated : constant Glib.Signal_Name := "action-activated";

Signal_Cursor_On_Match (Glib.Signal_Name)

Signal_Cursor_On_Match : constant Glib.Signal_Name := "cursor-on-match";

Signal_Insert_Prefix (Glib.Signal_Name)

Signal_Insert_Prefix : constant Glib.Signal_Name := "insert-prefix";

Signal_Match_Selected (Glib.Signal_Name)

Signal_Match_Selected : constant Glib.Signal_Name := "match-selected";

Subprograms & Entries

Gtk_New

procedure Gtk_New 
(Completion: out Gtk_Entry_Completion);

Initialize

procedure Initialize 
(Completion: access Gtk_Entry_Completion_Record'Class);
Creates a new Gtk.Entry_Completion.Gtk_Entry_Completion object. Since: gtk+ 2.4

Get_Type

function Get_Type return Glib.GType;

Complete

procedure Complete 
(Completion: access Gtk_Entry_Completion_Record);
Requests a completion operation, or in other words a refiltering of the current list with completions, using the current key. The completion list view will be updated accordingly. Since: gtk+ 2.4

Delete_Action

procedure Delete_Action 
(Completion: access Gtk_Entry_Completion_Record;
Index: Gint);
Deletes the action at Index_ from Completion's action list. Since: gtk+ 2.4 "index_": The index of the item to Delete.

Get_Completion_Prefix

function Get_Completion_Prefix 
(Completion: access Gtk_Entry_Completion_Record) return UTF8_String;
Get the original text entered by the user that triggered the completion or null if there's no completion ongoing. Since: gtk+ 2.12

Get_Entry

function Get_Entry 
(Completion: access Gtk_Entry_Completion_Record) return Gtk.Widget.Gtk_Widget;
Gets the entry Completion has been attached to. Since: gtk+ 2.4

Get_Inline_Completion

function Get_Inline_Completion 
(Completion: access Gtk_Entry_Completion_Record) return Boolean;

Set_Inline_Completion

procedure Set_Inline_Completion 
(Completion: access Gtk_Entry_Completion_Record;
Inline_Completion: Boolean);
Sets whether the common prefix of the possible completions should be automatically inserted in the entry. Since: gtk+ 2.6 "inline_completion": True to do inline completion

Get_Inline_Selection

function Get_Inline_Selection 
(Completion: access Gtk_Entry_Completion_Record) return Boolean;

Set_Inline_Selection

procedure Set_Inline_Selection 
(Completion: access Gtk_Entry_Completion_Record;
Inline_Selection: Boolean);
Sets whether it is possible to cycle through the possible completions inside the entry. Since: gtk+ 2.12 "inline_selection": True to do inline selection

Get_Minimum_Key_Length

function Get_Minimum_Key_Length 
(Completion: access Gtk_Entry_Completion_Record) return Gint;

Set_Minimum_Key_Length

procedure Set_Minimum_Key_Length 
(Completion: access Gtk_Entry_Completion_Record;
Length: Gint);
Requires the length of the search key for Completion to be at least length. This is useful for long lists, where completing using a small key takes a lot of time and will come up with meaningless results anyway (ie, a too large dataset). Since: gtk+ 2.4 "length": The minimum length of the key in order to start completing.

Get_Model

function Get_Model 
(Completion: access Gtk_Entry_Completion_Record) return Gtk.Tree_Model.Gtk_Tree_Model;

Set_Model

procedure Set_Model 
(Completion: access Gtk_Entry_Completion_Record;
Model: access Gtk.Tree_Model.Gtk_Tree_Model_Record'Class);
Sets the model for a Gtk.Entry_Completion.Gtk_Entry_Completion. If Completion already has a model set, it will remove it before setting the new model. If model is null, then it will unset the model. Since: gtk+ 2.4 "model": The Gtk.Tree_Model.Gtk_Tree_Model.

Get_Popup_Completion

function Get_Popup_Completion 
(Completion: access Gtk_Entry_Completion_Record) return Boolean;

Set_Popup_Completion

procedure Set_Popup_Completion 
(Completion: access Gtk_Entry_Completion_Record;
Popup_Completion: Boolean);
Sets whether the completions should be presented in a popup window. Since: gtk+ 2.6 "popup_completion": True to do popup completion

Get_Popup_Set_Width

function Get_Popup_Set_Width 
(Completion: access Gtk_Entry_Completion_Record) return Boolean;

Set_Popup_Set_Width

procedure Set_Popup_Set_Width 
(Completion: access Gtk_Entry_Completion_Record;
Popup_Set_Width: Boolean);
Sets whether the completion popup window will be resized to be the same width as the entry. Since: gtk+ 2.8 "popup_set_width": True to make the width of the popup the same as the entry

Get_Popup_Single_Match

function Get_Popup_Single_Match 
(Completion: access Gtk_Entry_Completion_Record) return Boolean;

Set_Popup_Single_Match

procedure Set_Popup_Single_Match 
(Completion: access Gtk_Entry_Completion_Record;
Popup_Single_Match: Boolean);
Sets whether the completion popup window will appear even if there is only a single match. You may want to set this to False if you are using <link linkend="GtkEntryCompletion--inline-completion">inline completion</link>. Since: gtk+ 2.8 "popup_single_match": True if the popup should appear even for a single match

Get_Text_Column

function Get_Text_Column 
(Completion: access Gtk_Entry_Completion_Record) return Gint;

Set_Text_Column

procedure Set_Text_Column 
(Completion: access Gtk_Entry_Completion_Record;
Column: Gint);
completion list with just strings. This function will set up Completion to have a list displaying all (and just) strings in the completion list, and to get those strings from Column in the model of Completion. This functions creates and adds a Gtk.Cellrenderertext.Gtk_Cellrenderertext for the selected column. If you need to set the text column, but don't want the cell renderer, use g_object_set to set the ::text_column property directly. Since: gtk+ 2.4 "column": The column in the model of Completion to get strings from.

Insert_Action_Markup

procedure Insert_Action_Markup 
(Completion: access Gtk_Entry_Completion_Record;
Index: Gint;
Markup: UTF8_String);
Inserts an action in Completion's action item list at position Index_ with markup Markup. Since: gtk+ 2.4 "index_": The index of the item to insert. "markup": Markup of the item to insert.

Insert_Action_Text

procedure Insert_Action_Text 
(Completion: access Gtk_Entry_Completion_Record;
Index: Gint;
Text: UTF8_String);
Inserts an action in Completion's action item list at position Index_ with text Text. If you want the action item to have markup, use Gtk.Entry_Completion.Insert_Action_Markup. Since: gtk+ 2.4 "index_": The index of the item to insert. "text": Text of the item to insert.

Insert_Prefix

procedure Insert_Prefix 
(Completion: access Gtk_Entry_Completion_Record);
Requests a prefix insertion. Since: gtk+ 2.6

Set_Match_Func

procedure Set_Match_Func 
(Completion: access Gtk_Entry_Completion_Record;
Func: C_Gtk_Entry_Completion_Match_Func;
Func_Data: System.Address;
Func_Notify: Glib.G_Destroy_Notify_Address);
Sets the match function for Completion to be Func. The match function is used to determine if a row should or should not be in the completion list. Since: gtk+ 2.4 "func": The C_Gtk_Entry_Completion_Match_Func to use. "func_data": The user data for Func. "func_notify": Destroy notifier for Func_Data.