Top | Description | Object Hierarchy | Prerequisites | Known Implementations | ![]() |
![]() |
![]() |
![]() |
#include <gtksourceview/gtksource.h> GtkSourceCompletionProvider; struct GtkSourceCompletionProviderIface; gchar * gtk_source_completion_provider_get_name (GtkSourceCompletionProvider *provider
); GdkPixbuf * gtk_source_completion_provider_get_icon (GtkSourceCompletionProvider *provider
); void gtk_source_completion_provider_populate (GtkSourceCompletionProvider *provider
,GtkSourceCompletionContext *context
); GtkSourceCompletionActivation gtk_source_completion_provider_get_activation (GtkSourceCompletionProvider *provider
); gboolean gtk_source_completion_provider_match (GtkSourceCompletionProvider *provider
,GtkSourceCompletionContext *context
); GtkWidget * gtk_source_completion_provider_get_info_widget (GtkSourceCompletionProvider *provider
,GtkSourceCompletionProposal *proposal
); void gtk_source_completion_provider_update_info (GtkSourceCompletionProvider *provider
,GtkSourceCompletionProposal *proposal
,GtkSourceCompletionInfo *info
); gboolean gtk_source_completion_provider_get_start_iter (GtkSourceCompletionProvider *provider
,GtkSourceCompletionContext *context
,GtkSourceCompletionProposal *proposal
,GtkTextIter *iter
); gboolean gtk_source_completion_provider_activate_proposal (GtkSourceCompletionProvider *provider
,GtkSourceCompletionProposal *proposal
,GtkTextIter *iter
); gint gtk_source_completion_provider_get_interactive_delay (GtkSourceCompletionProvider *provider
); gint gtk_source_completion_provider_get_priority (GtkSourceCompletionProvider *provider
);
typedef struct _GtkSourceCompletionProvider GtkSourceCompletionProvider;
struct GtkSourceCompletionProviderIface { GTypeInterface g_iface; gchar *(*get_name) (GtkSourceCompletionProvider *provider); GdkPixbuf *(*get_icon) (GtkSourceCompletionProvider *provider); void (*populate) (GtkSourceCompletionProvider *provider, GtkSourceCompletionContext *context); gboolean (*match) (GtkSourceCompletionProvider *provider, GtkSourceCompletionContext *context); GtkSourceCompletionActivation (*get_activation) (GtkSourceCompletionProvider *provider); GtkWidget *(*get_info_widget) (GtkSourceCompletionProvider *provider, GtkSourceCompletionProposal *proposal); void (*update_info) (GtkSourceCompletionProvider *provider, GtkSourceCompletionProposal *proposal, GtkSourceCompletionInfo *info); gboolean (*get_start_iter) (GtkSourceCompletionProvider *provider, GtkSourceCompletionContext *context, GtkSourceCompletionProposal *proposal, GtkTextIter *iter); gboolean (*activate_proposal) (GtkSourceCompletionProvider *provider, GtkSourceCompletionProposal *proposal, GtkTextIter *iter); gint (*get_interactive_delay) (GtkSourceCompletionProvider *provider); gint (*get_priority) (GtkSourceCompletionProvider *provider); };
The virtual function table for GtkSourceCompletionProvider.
GTypeInterface |
The parent interface. |
The virtual function pointer for gtk_source_completion_provider_get_name() .
Must be implemented. |
|
The virtual function pointer for gtk_source_completion_provider_get_icon() .
By default, NULL is returned. |
|
The virtual function pointer for gtk_source_completion_provider_populate() .
Add no proposals by default. |
|
The virtual function pointer for gtk_source_completion_provider_match() .
By default, TRUE is returned. |
|
The virtual function pointer for gtk_source_completion_provider_get_activation() .
The combination of all GtkSourceCompletionActivation is returned by default. |
|
The virtual function pointer for gtk_source_completion_provider_get_info_widget() .
By default, NULL is returned. |
|
The virtual function pointer for gtk_source_completion_provider_update_info() .
Does nothing by default. |
|
The virtual function pointer for gtk_source_completion_provider_get_start_iter() .
By default, FALSE is returned. |
|
The virtual function pointer for gtk_source_completion_provider_activate_proposal() .
By default, FALSE is returned. |
|
The virtual function pointer for gtk_source_completion_provider_get_interactive_delay() .
By default, -1 is returned. |
|
The virtual function pointer for gtk_source_completion_provider_get_priority() .
By default, 0 is returned. |
gchar * gtk_source_completion_provider_get_name
(GtkSourceCompletionProvider *provider
);
Get the name of the provider. This should be a translatable name for
display to the user. For example: _("Document word completion provider"). The
returned string must be freed with g_free()
.
|
a GtkSourceCompletionProvider. |
Returns : |
a new string containing the name of the provider. |
GdkPixbuf * gtk_source_completion_provider_get_icon
(GtkSourceCompletionProvider *provider
);
Get the icon of the provider.
|
The GtkSourceCompletionProvider |
Returns : |
The icon to be used for the provider,
or NULL if the provider does not have a special icon. [transfer none]
|
void gtk_source_completion_provider_populate (GtkSourceCompletionProvider *provider
,GtkSourceCompletionContext *context
);
Populate context
with proposals from provider
added with the
gtk_source_completion_context_add_proposals()
function.
|
a GtkSourceCompletionProvider. |
|
a GtkSourceCompletionContext. |
GtkSourceCompletionActivation gtk_source_completion_provider_get_activation
(GtkSourceCompletionProvider *provider
);
Get with what kind of activation the provider should be activated.
|
a GtkSourceCompletionProvider. |
Returns : |
a combination of GtkSourceCompletionActivation. |
gboolean gtk_source_completion_provider_match (GtkSourceCompletionProvider *provider
,GtkSourceCompletionContext *context
);
Get whether the provider match the context of completion detailed in
context
.
|
a GtkSourceCompletionProvider. |
|
a GtkSourceCompletionContext. |
Returns : |
TRUE if provider matches the completion context, FALSE otherwise. |
GtkWidget * gtk_source_completion_provider_get_info_widget (GtkSourceCompletionProvider *provider
,GtkSourceCompletionProposal *proposal
);
Get a customized info widget to show extra information of a proposal.
This allows for customized widgets on a proposal basis, although in general
providers will have the same custom widget for all their proposals and
proposal
can be ignored. The implementation of this function is optional.
If this function is not implemented, the default widget is a GtkLabel. The
return value of gtk_source_completion_proposal_get_info()
is used as the
content of the GtkLabel.
If implemented, gtk_source_completion_provider_update_info()
must also be implemented.
|
a GtkSourceCompletionProvider. |
|
a currently selected GtkSourceCompletionProposal. |
Returns : |
a custom GtkWidget to show extra
information about proposal . [transfer none]
|
void gtk_source_completion_provider_update_info (GtkSourceCompletionProvider *provider
,GtkSourceCompletionProposal *proposal
,GtkSourceCompletionInfo *info
);
Update extra information shown in info
for proposal
.
This function must be implemented when
gtk_source_completion_provider_get_info_widget()
is implemented.
|
a GtkSourceCompletionProvider. |
|
a GtkSourceCompletionProposal. |
|
a GtkSourceCompletionInfo. |
gboolean gtk_source_completion_provider_get_start_iter (GtkSourceCompletionProvider *provider
,GtkSourceCompletionContext *context
,GtkSourceCompletionProposal *proposal
,GtkTextIter *iter
);
Get the GtkTextIter at which the completion for proposal
starts. When
implemented, this information is used to position the completion window
accordingly when a proposal is selected in the completion window. The
proposal
text inside the completion window is aligned on iter
.
If this function is not implemented, the word boundary is taken to position
the completion window. See gtk_source_completion_provider_activate_proposal()
for an explanation on the word boundaries.
When the proposal
is activated, the default handler uses iter
as the start
of the word to replace. See
gtk_source_completion_provider_activate_proposal()
for more information.
|
a GtkSourceCompletionProvider. |
|
a GtkSourceCompletionProposal. |
|
a GtkSourceCompletionContext. |
|
a GtkTextIter. |
Returns : |
TRUE if iter was set for proposal , FALSE otherwise. |
gboolean gtk_source_completion_provider_activate_proposal (GtkSourceCompletionProvider *provider
,GtkSourceCompletionProposal *proposal
,GtkTextIter *iter
);
Activate proposal
at iter
. When this functions returns FALSE
, the default
activation of proposal
will take place which replaces the word at iter
with the text of proposal
(see gtk_source_completion_proposal_get_text()
).
Here is how the default activation selects the boundaries of the word to
replace. The end of the word is iter
. For the start of the word, it depends
on whether a start iter is defined for proposal
(see
gtk_source_completion_provider_get_start_iter()
). If a start iter is defined,
the start of the word is the start iter. Else, the word (as long as possible)
will contain only alphanumerical and the "_" characters.
|
a GtkSourceCompletionProvider. |
|
a GtkSourceCompletionProposal. |
|
a GtkTextIter. |
Returns : |
TRUE to indicate that the proposal activation has been handled,
FALSE otherwise. |
gint gtk_source_completion_provider_get_interactive_delay
(GtkSourceCompletionProvider *provider
);
Get the delay in milliseconds before starting interactive completion for this provider. A value of -1 indicates to use the default value as set by the "auto-complete-delay" property.
|
a GtkSourceCompletionProvider. |
Returns : |
the interactive delay in milliseconds. |
gint gtk_source_completion_provider_get_priority
(GtkSourceCompletionProvider *provider
);
Get the provider priority. The priority determines the order in which proposals appear in the completion popup. Higher priorities are sorted before lower priorities. The default priority is 0.
|
a GtkSourceCompletionProvider. |
Returns : |
the provider priority. |