GtkEntryCompletion Completion functionality for GtkEntry #GtkEntryCompletion is an auxiliary object to be used in conjunction with #GtkEntry to provide the completion functionality. It implements the #GtkCellLayout interface, to allow the user to add extra cells to the #GtkTreeView with completion matches. "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 gtk_entry_completion_set_text_column()), but this can be overridden with a custom match function (see gtk_entry_completion_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. The GtkEntryCompletion struct contains only private data. @entrycompletion: the object which received the signal. @arg1: @entrycompletion: the object which received the signal. @arg1: @Returns: @entrycompletion: the object which received the signal. @arg1: @arg2: @Returns: A function which decides whether the row indicated by @iter matches a given @key, and should be displayed as a possible completion for @key. Note that @key is normalized and case-folded (see g_utf8_normalize() and g_utf8_casefold()). If this is not appropriate, match functions have access to the unmodified key via gtk_entry_get_text (GTK_ENTRY (gtk_entry_completion_get_entry ())). @completion: the #GtkEntryCompletion @key: the string to match, normalized and case-folded @iter: a #GtkTreeIter indicating the row to match @user_data: user data given to gtk_entry_completion_set_match_func() @Returns: %TRUE if @iter should be displayed as a possible completion for @key @Returns: @completion: @Returns: @entry: @completion: @model: @completion: @Returns: @completion: @func: @func_data: @func_notify: @completion: @length: @completion: @Returns: @completion: @completion: @completion: @index_: @text: @index: @completion: @index_: @markup: @index: @completion: @index_: @index: @completion: @column: @completion: @Returns: @completion: @inline_completion: @completion: @Returns: @completion: @popup_completion: @completion: @Returns: @completion: @popup_set_width: @completion: @Returns: @completion: @popup_single_match: @completion: @Returns: