![]() |
![]() |
![]() |
GtkSourceCompletion Reference Manual | ![]() |
---|---|---|---|---|
#define GTK_SOURCE_COMPLETION_PROVIDER_GET_INTERFACE(obj) GtkSourceCompletionProvider; GtkSourceCompletionProviderIface; const gchar* gtk_source_completion_provider_get_name (GtkSourceCompletionProvider *self); GList* gtk_source_completion_provider_get_data (GtkSourceCompletionProvider *self, GtkSourceCompletion *completion, GtkSourceCompletionTrigger *trigger); void gtk_source_completion_provider_data_selected (GtkSourceCompletionProvider *self, GtkSourceCompletion *completion, GtkSourceCompletionItem *item); void gtk_source_completion_provider_end_completion (GtkSourceCompletionProvider *self, GtkSourceCompletion *completion); gchar* gtk_source_completion_provider_get_item_info_markup (GtkSourceCompletionProvider *self, GtkSourceCompletionItem *item);
You must implement this interface if you want to create a new provider. There is a program that creates the skeleton to you. You can find it in gtksourcecompletion package in the tools folder.
#define GTK_SOURCE_COMPLETION_PROVIDER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GTK_SOURCE_COMPLETION_TYPE_PROVIDER, GtkSourceCompletionProviderIface))
obj : |
typedef struct _GtkSourceCompletionProvider GtkSourceCompletionProvider;
typedef struct { GTypeInterface parent; const gchar* (*get_name) (GtkSourceCompletionProvider *self); GList* (*get_data) (GtkSourceCompletionProvider* self, GtkSourceCompletion* completion, GtkSourceCompletionTrigger *trigger); void (*data_selected) (GtkSourceCompletionProvider* self, GtkSourceCompletion* completion, GtkSourceCompletionItem* data); void (*end_completion) (GtkSourceCompletionProvider* self, GtkSourceCompletion* completion); gchar* (*get_item_info_markup) (GtkSourceCompletionProvider *self, GtkSourceCompletionItem *item); } GtkSourceCompletionProviderIface;
const gchar* gtk_source_completion_provider_get_name (GtkSourceCompletionProvider *self);
The provider name. By example: "Document word completion provider"
self : |
the GtkSourceCompletionProvider |
Returns : | The provider's name |
GList* gtk_source_completion_provider_get_data (GtkSourceCompletionProvider *self, GtkSourceCompletion *completion, GtkSourceCompletionTrigger *trigger);
The completion call this function when an event is raised. This function may return a list of GtkSourceCompletionItem to be shown in the popup to the user.
self : |
the GtkSourceCompletionProvider |
completion : |
The GtkSourceCompletion. |
trigger : |
The GtkSourceCompletionTrigger that raise the event |
Returns : | a list of GtkSourceCompletionData or NULL if there are no items |
void gtk_source_completion_provider_data_selected (GtkSourceCompletionProvider *self, GtkSourceCompletion *completion, GtkSourceCompletionItem *item);
The completion call this function when the user select an item of this provider. The provider may insert the text in the view of do something.
self : |
the GtkSourceCompletionProvider |
completion : |
|
item : |
The data selected by the user. |
void gtk_source_completion_provider_end_completion (GtkSourceCompletionProvider *self, GtkSourceCompletion *completion);
The completion call this function when it is goint to hide the popup
self : |
the GtkSourceCompletionProvider |
completion : |
gchar* gtk_source_completion_provider_get_item_info_markup (GtkSourceCompletionProvider *self, GtkSourceCompletionItem *item);
The completion call this function when the user wants to view the aditional info of the current item.
self : |
the GtkSourceCompletionProvider |
item : |
The selected item. |
Returns : | The pango markup to be shown in the info window. |