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 get function. Only one of those get 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 get function. At most one of those get 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()
. The returned string
must be freed with g_free()
.
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. The returned string
must be freed with g_free()
.
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()
. The returned string must
be freed with g_free()
.
GdkPixbuf *
gtk_source_completion_proposal_get_icon
(GtkSourceCompletionProposal *proposal
);
Gets the GdkPixbuf for the icon of proposal
.
const gchar *
gtk_source_completion_proposal_get_icon_name
(GtkSourceCompletionProposal *proposal
);
Gets the icon name of proposal
.
Since: 3.18
GIcon *
gtk_source_completion_proposal_get_gicon
(GtkSourceCompletionProposal *proposal
);
Gets the GIcon for the icon of 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. The returned string must be freed with g_free()
.
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 name, icon or info of the proposal has
changed.
guint
gtk_source_completion_proposal_hash (GtkSourceCompletionProposal *proposal
);
Get the hash value of proposal
. This is used to (together with
gtk_source_completion_proposal_equal()
) to match proposals in the completion
model. By default, it uses a direct hash (g_direct_hash()
).
gboolean gtk_source_completion_proposal_equal (GtkSourceCompletionProposal *proposal
,GtkSourceCompletionProposal *other
);
Get 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. By default, it uses direct equality (g_direct_equal()
).
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