GtkSourceCompletion

GtkSourceCompletion — Main Completion Object

Synopsis

#include <gtksourceview/gtksourcecompletion.h>

                    GtkSourceCompletion;
gboolean            gtk_source_completion_add_provider  (GtkSourceCompletion *completion,
                                                         GtkSourceCompletionProvider *provider,
                                                         GError **error);
gboolean            gtk_source_completion_remove_provider
                                                        (GtkSourceCompletion *completion,
                                                         GtkSourceCompletionProvider *provider,
                                                         GError **error);
GList *             gtk_source_completion_get_providers (GtkSourceCompletion *completion);
gboolean            gtk_source_completion_show          (GtkSourceCompletion *completion,
                                                         GList *providers,
                                                         GtkSourceCompletionContext *context);
void                gtk_source_completion_hide          (GtkSourceCompletion *completion);
GtkSourceCompletionInfo * gtk_source_completion_get_info_window
                                                        (GtkSourceCompletion *completion);
struct _GtkSourceView * gtk_source_completion_get_view  (GtkSourceCompletion *completion);
GtkSourceCompletionContext * gtk_source_completion_create_context
                                                        (GtkSourceCompletion *completion,
                                                         GtkTextIter *position);
void                gtk_source_completion_move_window   (GtkSourceCompletion *completion,
                                                         GtkTextIter *iter);
void                gtk_source_completion_block_interactive
                                                        (GtkSourceCompletion *completion);
void                gtk_source_completion_unblock_interactive
                                                        (GtkSourceCompletion *completion);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkSourceCompletion

Properties

  "accelerators"             guint                 : Read / Write / Construct
  "auto-complete-delay"      guint                 : Read / Write / Construct
  "proposal-page-size"       guint                 : Read / Write / Construct
  "provider-page-size"       guint                 : Read / Write / Construct
  "remember-info-visibility" gboolean              : Read / Write / Construct
  "select-on-show"           gboolean              : Read / Write / Construct
  "show-headers"             gboolean              : Read / Write / Construct
  "show-icons"               gboolean              : Read / Write / Construct
  "view"                     GtkSourceView*        : Read / Write / Construct Only

Signals

  "activate-proposal"                              : Run Last / Action
  "hide"                                           : Run Last / Action
  "move-cursor"                                    : Run Last / Action
  "move-page"                                      : Run Last / Action
  "populate-context"                               : Run Last / Action
  "show"                                           : Run Last / Action

Description

Details

GtkSourceCompletion

typedef struct _GtkSourceCompletion GtkSourceCompletion;

gtk_source_completion_add_provider ()

gboolean            gtk_source_completion_add_provider  (GtkSourceCompletion *completion,
                                                         GtkSourceCompletionProvider *provider,
                                                         GError **error);

Add a new GtkSourceCompletionProvider to the completion object. This will add a reference provider, so make sure to unref your own copy when you no longer need it.

completion :

A GtkSourceCompletion

provider :

A GtkSourceCompletionProvider

error :

A GError

Returns :

TRUE if provider was successfully added, otherwise if error is provided, it will be set with the error and FALSE is returned.

gtk_source_completion_remove_provider ()

gboolean            gtk_source_completion_remove_provider
                                                        (GtkSourceCompletion *completion,
                                                         GtkSourceCompletionProvider *provider,
                                                         GError **error);

Remove provider from the completion.

completion :

A GtkSourceCompletion

provider :

A GtkSourceCompletionProvider

error :

A GError

Returns :

TRUE if provider was successfully removed, otherwise if error is provided, it will be set with the error and FALSE is returned.

gtk_source_completion_get_providers ()

GList *             gtk_source_completion_get_providers (GtkSourceCompletion *completion);

Get list of providers registered on completion. The returned list is owned by the completion and should not be freed.

completion :

The GtkSourceCompletion

Returns :

list of GtkSourceCompletionProvider

gtk_source_completion_show ()

gboolean            gtk_source_completion_show          (GtkSourceCompletion *completion,
                                                         GList *providers,
                                                         GtkSourceCompletionContext *context);

Starts a new completion with the specified GtkSourceCompletionContext and a list of potential candidate providers for completion.

completion :

A GtkSourceCompletion

providers :

A list of GtkSourceCompletionProvider or NULL

context :

The GtkSourceCompletionContext with which to start the completion

Returns :

TRUE if it was possible to the show completion window.

gtk_source_completion_hide ()

void                gtk_source_completion_hide          (GtkSourceCompletion *completion);

Hides the completion if it is active (visible).

completion :

A GtkSourceCompletion

gtk_source_completion_get_info_window ()

GtkSourceCompletionInfo * gtk_source_completion_get_info_window
                                                        (GtkSourceCompletion *completion);

The info widget is the window where the completion displays optional extra information of the proposal.

completion :

A GtkSourceCompletion

Returns :

The GtkSourceCompletionInfo window.

gtk_source_completion_get_view ()

struct _GtkSourceView * gtk_source_completion_get_view  (GtkSourceCompletion *completion);

The GtkSourceView associated with completion.

completion :

A GtkSourceCompletion

Returns :

The GtkSourceView associated with completion.

gtk_source_completion_create_context ()

GtkSourceCompletionContext * gtk_source_completion_create_context
                                                        (GtkSourceCompletion *completion,
                                                         GtkTextIter *position);

Create a new GtkSourceCompletionContext for completion. The position at which the completion using the new context will consider completion can be provider by position. If position is NULL, the current cursor position will be used.

completion :

A GtkSourceCompletion

position :

A GtkTextIter

Returns :

a new GtkSourceCompletionContext. The reference being returned is a 'floating' reference, so if you invoke gtk_source_completion_show with this context you don't need to unref it.

gtk_source_completion_move_window ()

void                gtk_source_completion_move_window   (GtkSourceCompletion *completion,
                                                         GtkTextIter *iter);

Move the completion window to a specific iter.

completion :

A GtkSourceCompletion

iter :

A GtkTextIter

gtk_source_completion_block_interactive ()

void                gtk_source_completion_block_interactive
                                                        (GtkSourceCompletion *completion);

Block interactive completion. This can be used to disable interactive completion when inserting or deleting text from the buffer associated with the completion. Use gtk_source_completion_unblock_interactive to enable interactive completion again.

completion :

A # GtkSourceCompletion

gtk_source_completion_unblock_interactive ()

void                gtk_source_completion_unblock_interactive
                                                        (GtkSourceCompletion *completion);

Unblock interactive completion. This can be used after using gtk_source_completion_block_interactive to enable interactive completion again.

completion :

A # GtkSourceCompletion

Property Details

The "accelerators" property

  "accelerators"             guint                 : Read / Write / Construct

Number of accelerators to show for the first proposals.

Allowed values: <= 10

Default value: 5


The "auto-complete-delay" property

  "auto-complete-delay"      guint                 : Read / Write / Construct

Determines the popup delay (in milliseconds) at which the completion will be shown for interactive completion.

Default value: 250


The "proposal-page-size" property

  "proposal-page-size"       guint                 : Read / Write / Construct

The scroll page size of the proposals in the completion window.

Allowed values: >= 1

Default value: 5


The "provider-page-size" property

  "provider-page-size"       guint                 : Read / Write / Construct

The scroll page size of the provider pages in the completion window.

Allowed values: >= 1

Default value: 5


The "remember-info-visibility" property

  "remember-info-visibility" gboolean              : Read / Write / Construct

Determines whether the visibility of the info window should be saved when the completion is hidden, and restored when the completion is shown again.

Default value: FALSE


The "select-on-show" property

  "select-on-show"           gboolean              : Read / Write / Construct

Determines whether the first proposal should be selected when the completion is first shown.

Default value: TRUE


The "show-headers" property

  "show-headers"             gboolean              : Read / Write / Construct

Determines whether provider headers should be shown in the proposal list if there is more than one provider with proposals.

Default value: TRUE


The "show-icons" property

  "show-icons"               gboolean              : Read / Write / Construct

Determines whether provider and proposal icons should be shown in the completion popup.

Default value: TRUE


The "view" property

  "view"                     GtkSourceView*        : Read / Write / Construct Only

The GtkSourceView bound to the completion object.

Signal Details

The "activate-proposal" signal

void                user_function                      (GtkSourceCompletion *completion,
                                                        gpointer             user_data)       : Run Last / Action

The ::activate-proposal signal is a keybinding signal which gets emitted when the user initiates a proposal activation.

Applications should not connect to it, but may emit it with g_signal_emit_by_name if they need to control the proposal activation programmatically.

completion :

The GtkSourceCompletion who emits the signal

user_data :

user data set when the signal handler was connected.

The "hide" signal

void                user_function                      (GtkSourceCompletion *completion,
                                                        gpointer             user_data)       : Run Last / Action

Emitted when the completion window is hidden. The default handler will actually hide the window.

completion :

The GtkSourceCompletion who emits the signal

user_data :

user data set when the signal handler was connected.

The "move-cursor" signal

void                user_function                      (GtkSourceCompletion *completion,
                                                        GtkScrollStep        step,
                                                        gint                 num,
                                                        gpointer             user_data)       : Run Last / Action

The ::move-cursor signal is a keybinding signal which gets emitted when the user initiates a cursor movement.

Applications should not connect to it, but may emit it with g_signal_emit_by_name if they need to control the cursor programmatically.

completion :

The GtkSourceCompletion who emits the signal

step :

The GtkScrollStep by which to move the cursor

num :

The amount of steps to move the cursor

user_data :

user data set when the signal handler was connected.

The "move-page" signal

void                user_function                      (GtkSourceCompletion *completion,
                                                        GtkScrollStep        step,
                                                        gint                 num,
                                                        gpointer             user_data)       : Run Last / Action

The ::move-page signal is a keybinding signal which gets emitted when the user initiates a page movement (i.e. switches between provider pages).

Applications should not connect to it, but may emit it with g_signal_emit_by_name if they need to control the page selection programmatically.

completion :

The GtkSourceCompletion who emits the signal

step :

The GtkScrollStep by which to move the page

num :

The amount of steps to move the page

user_data :

user data set when the signal handler was connected.

The "populate-context" signal

void                user_function                      (GtkSourceCompletion        *completion,
                                                        GtkSourceCompletionContext *context,
                                                        gpointer                    user_data)       : Run Last / Action

Emitted just before starting to populate the completion with providers. You can use this signal to add additional attributes in the context.

completion :

The GtkSourceCompletion who emits the signal

context :

The GtkSourceCompletionContext for the current completion

user_data :

user data set when the signal handler was connected.

The "show" signal

void                user_function                      (GtkSourceCompletion *completion,
                                                        gpointer             user_data)       : Run Last / Action

Emitted when the completion window is shown. The default handler will actually show the window.

completion :

The GtkSourceCompletion who emits the signal

user_data :

user data set when the signal handler was connected.