| Top |
The proposal interface represents a completion item in the completion window. It provides information on how to display the completion item and what action should be taken when the completion item is activated.
The proposal is displayed in the completion window with a label and optionally an icon:
The label may be specified using plain text or markup by implementing the
corresponding getter function. Only one of those getter functions should
return a value different from NULL.
The icon may be specified as a GdkPixbuf, as an icon name or as a GIcon
by implementing the corresponding getter function. At most one of those
getter functions should return a value different from NULL. If they all
return NULL no icon will be used.
gchar *
gtk_source_completion_proposal_get_label
(GtkSourceCompletionProposal *proposal);
Gets the label of proposal
. The label is shown in the list of proposals as
plain text. If you need any markup (such as bold or italic text), you have to
implement gtk_source_completion_proposal_get_markup().
gchar *
gtk_source_completion_proposal_get_markup
(GtkSourceCompletionProposal *proposal);
Gets the label of proposal
with markup. The label is shown in the list of
proposals and may contain markup. This will be used instead of
gtk_source_completion_proposal_get_label() if implemented.
gchar *
gtk_source_completion_proposal_get_text
(GtkSourceCompletionProposal *proposal);
Gets the text of proposal
. The text that is inserted into the text buffer
when the proposal is activated by the default activation.
You are free to implement a custom activation handler in the provider and not
implement this function. For more information, see
gtk_source_completion_provider_activate_proposal().
GdkPixbuf *
gtk_source_completion_proposal_get_icon
(GtkSourceCompletionProposal *proposal);
const gchar *
gtk_source_completion_proposal_get_icon_name
(GtkSourceCompletionProposal *proposal);
Since: 3.18
GIcon *
gtk_source_completion_proposal_get_gicon
(GtkSourceCompletionProposal *proposal);
Since: 3.18
gchar *
gtk_source_completion_proposal_get_info
(GtkSourceCompletionProposal *proposal);
Gets extra information associated to the proposal. This information will be used to present the user with extra, detailed information about the selected proposal.
a newly-allocated string containing
extra information of proposal
, or NULL if no extra information is
associated to proposal
.
[nullable][transfer full]
void
gtk_source_completion_proposal_changed
(GtkSourceCompletionProposal *proposal);
Emits the “changed” signal on proposal
. This
should be called by implementations whenever the label, icon or info of the
proposal has changed.
guint
gtk_source_completion_proposal_hash (GtkSourceCompletionProposal *proposal);
Gets the hash value of proposal
. This is used to (together with
gtk_source_completion_proposal_equal()) to match proposals in the completion
model.
gboolean gtk_source_completion_proposal_equal (GtkSourceCompletionProposal *proposal,GtkSourceCompletionProposal *other);
Gets whether two proposal objects are the same. This is used to (together
with gtk_source_completion_proposal_hash()) to match proposals in the
completion model.
typedef struct _GtkSourceCompletionProposal GtkSourceCompletionProposal;
struct GtkSourceCompletionProposalIface {
GTypeInterface parent;
/* Interface functions */
gchar * (*get_label) (GtkSourceCompletionProposal *proposal);
gchar * (*get_markup) (GtkSourceCompletionProposal *proposal);
gchar * (*get_text) (GtkSourceCompletionProposal *proposal);
GdkPixbuf * (*get_icon) (GtkSourceCompletionProposal *proposal);
const gchar * (*get_icon_name) (GtkSourceCompletionProposal *proposal);
GIcon * (*get_gicon) (GtkSourceCompletionProposal *proposal);
gchar * (*get_info) (GtkSourceCompletionProposal *proposal);
guint (*hash) (GtkSourceCompletionProposal *proposal);
gboolean (*equal) (GtkSourceCompletionProposal *proposal,
GtkSourceCompletionProposal *other);
/* Signals */
void (*changed) (GtkSourceCompletionProposal *proposal);
};
The virtual function table for GtkSourceCompletionProposal.
GTypeInterface |
The parent interface. |
|
The virtual function pointer for |
||
The virtual function pointer for |
||
The virtual function pointer for |
||
The virtual function pointer for |
||
The virtual function pointer for |
||
The virtual function pointer for |
||
The virtual function pointer for |
||
The virtual function pointer for |
||
The virtual function pointer for |
||
The function pointer for the “changed” signal. |
“changed” signalvoid user_function (GtkSourceCompletionProposal *proposal, gpointer user_data)
Emitted when the proposal has changed. The completion popup will react to this by updating the shown information.
Flags: Action