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.

Binding from C File version 2.8.17

Packages

Match_Functions (generic)

Classes

Gtk_Entry_Completion_Record

type Gtk_Entry_Completion_Record is new Glib.Object.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.Unref (Inherited)
Insert_Action_Markup
Insert_Action_Text
Insert_Prefix
Set_Inline_Completion
Set_Inline_Selection
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;

Constants & Global variables

Signal_Action_Activated (Glib.Signal_Name)

Signal_Action_Activated : constant Glib.Signal_Name := "action_activated";

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";

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;

Subprograms & Entries

Gtk_New

procedure Gtk_New 
(Completion: out Gtk_Entry_Completion);

Initialize

procedure Initialize 
(Completion: access Gtk_Entry_Completion_Record'Class);
Creates or initializes a new completion object

Get_Type

function Get_Type return Glib.GType;
Return the internal type used for this object

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.

Delete_Action

procedure Delete_Action 
(Completion: access Gtk_Entry_Completion_Record;
Index: Gint);
Deletes the action at index from completion's action list.

Get_Entry

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

Set_Inline_Completion

procedure Set_Inline_Completion 
(Completion: access Gtk_Entry_Completion_Record;
Inline_Completion: Boolean);

Get_Inline_Completion

function Get_Inline_Completion 
(Completion: access Gtk_Entry_Completion_Record) return Boolean;
Returns whether the common prefix of the possible completions should be automatically inserted in the entry. This text appears greyed out, and is removed when the user types some text not compatible with the possible completions

Set_Minimum_Key_Length

procedure Set_Minimum_Key_Length 
(Completion: access Gtk_Entry_Completion_Record;
Length: Gint);

Get_Minimum_Key_Length

function Get_Minimum_Key_Length 
(Completion: access Gtk_Entry_Completion_Record) return 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). This is the minimal number of characters the user must start typing before any completion is attempted

Set_Model

procedure Set_Model 
(Completion: access Gtk_Entry_Completion_Record;
Model: Gtk.Tree_Model.Gtk_Tree_Model);

Get_Model

function Get_Model 
(Completion: access Gtk_Entry_Completion_Record) return Gtk.Tree_Model.Gtk_Tree_Model;
Returns the model the completion is using as data source. Returns null if the model is unset (setting it to null unsets the current model)

Set_Popup_Completion

procedure Set_Popup_Completion 
(Completion: access Gtk_Entry_Completion_Record;
Popup_Completion: Boolean);

Get_Popup_Completion

function Get_Popup_Completion 
(Completion: access Gtk_Entry_Completion_Record) return Boolean;
Returns whether the completions should be presented in a popup window. This is to be used in addition to, or instead of, Get_Inline_Completion.

Set_Popup_Set_Width

procedure Set_Popup_Set_Width 
(Completion: access Gtk_Entry_Completion_Record;
Popup_Set_Width: Boolean);

Get_Popup_Set_Width

function Get_Popup_Set_Width 
(Completion: access Gtk_Entry_Completion_Record) return Boolean;
Returns whether the completion popup window will be resized to the width of the entry.

Set_Popup_Single_Match

procedure Set_Popup_Single_Match 
(Completion: access Gtk_Entry_Completion_Record;
Popup_Single_Match: Boolean);

Get_Popup_Single_Match

function Get_Popup_Single_Match 
(Completion: access Gtk_Entry_Completion_Record) return Boolean;
Returns 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 inline completion.

Set_Text_Column

procedure Set_Text_Column 
(Completion: access Gtk_Entry_Completion_Record;
Column: Gint);

Get_Text_Column

function Get_Text_Column 
(Completion: access Gtk_Entry_Completion_Record) return Gint;
Convenience function for setting up the most used case of this code: a 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 #GtkCellRendererText for the selected column. If you need to set the text column, but don't want the cell renderer, use Set_Property to set the ::text_column property directly.

Insert_Action_Markup

procedure Insert_Action_Markup 
(Completion: access Gtk_Entry_Completion_Record;
Index: Gint;
Markup: String);
Inserts an action in ccompletion's action item list at position index with the given markup. Markup can be used to represent bold text, for instance with "<b>bold</b> text"

Insert_Action_Text

procedure Insert_Action_Text 
(Completion: access Gtk_Entry_Completion_Record;
Index: Gint;
Text: 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 Insert_Action_Markup.

Insert_Prefix

procedure Insert_Prefix 
(Completion: access Gtk_Entry_Completion_Record);
Requests a prefix insertion.

Get_Completion_Prefix

function Get_Completion_Prefix 
(Completion: access Gtk_Entry_Completion_Record) return String;
Get the original text entered by the user that triggered the completion or "" if there's no completion ongoing.

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);
Gets/Sets whether it is possible to cycle through the possible completions inside the entry.