gtksourcecompletion-provider

gtksourcecompletion-provider — Provider interface

Synopsis



#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);

Object Hierarchy

  GInterface
   +----GtkSourceCompletionProvider

Known Implementations

GtkSourceCompletionProvider is implemented by GscDocumentwordsProvider.

Description

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.

Details

GTK_SOURCE_COMPLETION_PROVIDER_GET_INTERFACE()

#define GTK_SOURCE_COMPLETION_PROVIDER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GTK_SOURCE_COMPLETION_TYPE_PROVIDER, GtkSourceCompletionProviderIface))

obj :

GtkSourceCompletionProvider

typedef struct _GtkSourceCompletionProvider GtkSourceCompletionProvider;


GtkSourceCompletionProviderIface

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;


gtk_source_completion_provider_get_name ()

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

gtk_source_completion_provider_get_data ()

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

gtk_source_completion_provider_data_selected ()

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.

gtk_source_completion_provider_end_completion ()

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 :

gtk_source_completion_provider_get_item_info_markup ()

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.