gtksourceviewmm  2.10.3
Public Member Functions | Related Functions
gtksourceview::SourceCompletionProvider Class Reference

Completion provider interface. More...

#include <gtksourceviewmm/sourcecompletionprovider.h>

Inheritance diagram for gtksourceview::SourceCompletionProvider:
Inheritance graph
[legend]

List of all members.

Public Member Functions

GtkSourceCompletionProvider* gobj ()
 Provides access to the underlying C GObject.
const GtkSourceCompletionProvider* gobj () const
 Provides access to the underlying C GObject.
Glib::ustring get_name () const
 Get the name of the provider.
Glib::RefPtr< Gdk::Pixbufget_icon ()
 Get the icon of the provider.
Glib::RefPtr< const Gdk::Pixbufget_icon () const
 Get the icon of the provider.
void populate (const Glib::RefPtr< SourceCompletionContext >& context)
 Populate context with proposals from a provider.
bool match (const Glib::RefPtr< const SourceCompletionContext >& context) const
 Get whether the provider match the context of completion detailed in context.
Gtk::Widgetget_info_widget (const Glib::RefPtr< const SourceCompletionProposal >& proposal)
 Get a customized info widget to show extra information of a proposal.
const Gtk::Widgetget_info_widget (const Glib::RefPtr< const SourceCompletionProposal >& proposal) const
 Get a customized info widget to show extra information of a proposal.
void update_info (const Glib::RefPtr< const SourceCompletionProposal >& proposal, const SourceCompletionInfo& info)
 Update extra information shown in info for proposal.
bool get_start_iter (const Glib::RefPtr< const SourceCompletionContext >& context, const Glib::RefPtr< const SourceCompletionProposal >& proposal, Gtk::TextIter& iter)
 Get the Gtk::TextIter at which the completion for proposal starts.
bool activate_proposal (const Glib::RefPtr< SourceCompletionProposal >& proposal, const Gtk::TextIter& iter)
 Activate proposal at iter.
SourceCompletionActivation get_activation () const
 Get with what kind of activation the provider should be activated.
int get_interactive_delay () const
 Get the delay in milliseconds before starting interactive completion for this provider.
int get_priority () const
 Get the provider priority.

Related Functions

(Note that these are not member functions.)

Glib::RefPtr
< gtksourceview::SourceCompletionProvider
wrap (GtkSourceCompletionProvider* object, bool take_copy=false)
 A Glib::wrap() method for this object.

Detailed Description

Completion provider interface.

You must implement this interface to provide proposals to SourceCompletion.

Since gtksourceviewmm 2.10:

Member Function Documentation

bool gtksourceview::SourceCompletionProvider::activate_proposal ( const Glib::RefPtr< SourceCompletionProposal >&  proposal,
const Gtk::TextIter 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 label of proposal.

Parameters:
proposalA SourceCompletionProposal.
iterA Gtk::TextIter.
Returns:
true to indicate that the proposal activation has been handled, false otherwise.
Since gtksourceviewmm 2.10:
SourceCompletionActivation gtksourceview::SourceCompletionProvider::get_activation ( ) const

Get with what kind of activation the provider should be activated.

Returns:
A combination of SourceCompletionActivation.
Since gtksourceviewmm 2.10:
Glib::RefPtr<Gdk::Pixbuf> gtksourceview::SourceCompletionProvider::get_icon ( )

Get the icon of the provider.

Returns:
The icon to be used for the provider, or empty Glib::RefPtr if the provider does not have a special icon.
Since gtksourceviewmm 2.10:
Glib::RefPtr<const Gdk::Pixbuf> gtksourceview::SourceCompletionProvider::get_icon ( ) const

Get the icon of the provider.

Returns:
The icon to be used for the provider, or empty Glib::RefPtr if the provider does not have a special icon.
Since gtksourceviewmm 2.10:
Gtk::Widget* gtksourceview::SourceCompletionProvider::get_info_widget ( const Glib::RefPtr< const SourceCompletionProposal >&  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 implemented, update_info() must also be implemented. If not implemented, the default get_info() will be used to display extra information about a SourceCompletionProposal.

Parameters:
proposalThe currently selected SourceCompletionProposal.
Returns:
A custom Gtk::Widget to show extra information about proposal.
Since gtksourceviewmm 2.10:
const Gtk::Widget* gtksourceview::SourceCompletionProvider::get_info_widget ( const Glib::RefPtr< const SourceCompletionProposal >&  proposal) const

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 implemented, update_info() must also be implemented. If not implemented, the default get_info() will be used to display extra information about a SourceCompletionProposal.

Parameters:
proposalThe currently selected SourceCompletionProposal.
Returns:
A custom Gtk::Widget to show extra information about proposal.
Since gtksourceviewmm 2.10:
int gtksourceview::SourceCompletionProvider::get_interactive_delay ( ) const

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 SourceCompletion::property_auto_complete_delay().

Returns:
The interactive delay in milliseconds.
Since gtksourceviewmm 2.10:
Glib::ustring gtksourceview::SourceCompletionProvider::get_name ( ) const

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 Glib::free().

Returns:
A new string containing the name of the provider.
int gtksourceview::SourceCompletionProvider::get_priority ( ) const

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.

Returns:
The provider priority.
Since gtksourceviewmm 2.10:
bool gtksourceview::SourceCompletionProvider::get_start_iter ( const Glib::RefPtr< const SourceCompletionContext >&  context,
const Glib::RefPtr< const SourceCompletionProposal >&  proposal,
Gtk::TextIter iter 
)

Get the Gtk::TextIter at which the completion for proposal starts.

When implemented, the completion can use this information to position the completion window accordingly when a proposal is selected in the completion window.

Parameters:
proposalA SourceCompletionProposal.
contextA SourceCompletionContext.
iterA Gtk::TextIter.
Returns:
true if iter was set for proposal, false otherwise.
Since gtksourceviewmm 2.10:
bool gtksourceview::SourceCompletionProvider::match ( const Glib::RefPtr< const SourceCompletionContext >&  context) const

Get whether the provider match the context of completion detailed in context.

Parameters:
contextThe SourceCompletionContext.
Returns:
true if provider matches the completion context, false otherwise.
Since gtksourceviewmm 2.10:
void gtksourceview::SourceCompletionProvider::populate ( const Glib::RefPtr< SourceCompletionContext >&  context)

Populate context with proposals from a provider.

Parameters:
contextThe SourceCompletionContext.
Since gtksourceviewmm 2.10:
void gtksourceview::SourceCompletionProvider::update_info ( const Glib::RefPtr< const SourceCompletionProposal >&  proposal,
const SourceCompletionInfo info 
)

Update extra information shown in info for proposal.

This should be implemented if your provider sets a custom info widget for proposal. This function must be implemented when get_info_widget() is implemented.

Parameters:
proposalA SourceCompletionProposal.
infoA SourceCompletionInfo.
Since gtksourceviewmm 2.10:

Friends And Related Function Documentation

Glib::RefPtr< gtksourceview::SourceCompletionProvider > wrap ( GtkSourceCompletionProvider *  object,
bool  take_copy = false 
) [related]

A Glib::wrap() method for this object.

Parameters:
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns:
A C++ instance that wraps this C instance.