IdeProjectTemplate

IdeProjectTemplate

Functions

Types and Values

Object Hierarchy

    GInterface
    ╰── IdeProjectTemplate

Prerequisites

IdeProjectTemplate requires GObject.

Description

Functions

ide_project_template_get_id ()

gchar *
ide_project_template_get_id (IdeProjectTemplate *self);

ide_project_template_get_priority ()

gint
ide_project_template_get_priority (IdeProjectTemplate *self);

Gets the priority of the template. This can be used to sort the templates in the "new project" view.

Parameters

self

a IdeProjectTemplate

 

Returns

the priority of the template

Since: 3.28


ide_project_template_get_name ()

gchar *
ide_project_template_get_name (IdeProjectTemplate *self);

ide_project_template_get_description ()

gchar *
ide_project_template_get_description (IdeProjectTemplate *self);

ide_project_template_get_widget ()

GtkWidget *
ide_project_template_get_widget (IdeProjectTemplate *self);

Get's the configuration widget for the template if there is one.

Parameters

self

An IdeProjectTemplate

 

Returns

a GtkWidget.

[transfer none]


ide_project_template_get_languages ()

gchar **
ide_project_template_get_languages (IdeProjectTemplate *self);

Gets the list of languages that this template can support when generating the project.

Parameters

self

an IdeProjectTemplate

 

Returns

A newly allocated, NULL terminated list of supported languages.

[transfer full]


ide_project_template_get_icon_name ()

gchar *
ide_project_template_get_icon_name (IdeProjectTemplate *self);

ide_project_template_expand_async ()

void
ide_project_template_expand_async (IdeProjectTemplate *self,
                                   GHashTable *params,
                                   GCancellable *cancellable,
                                   GAsyncReadyCallback callback,
                                   gpointer user_data);

Asynchronously requests expansion of the template.

This may involve creating files and directories on disk as well as expanding files based on the contents of params .

It is expected that this method is only called once on an IdeProjectTemplate.

Parameters

self

an IdeProjectTemplate

 

params

A hashtable of template parameters.

[element-type utf8 GLib.Variant]

cancellable

a GCancellable or NULL.

[nullable]

callback

the callback for the asynchronous operation.

 

user_data

user data for callback .

 

ide_project_template_expand_finish ()

gboolean
ide_project_template_expand_finish (IdeProjectTemplate *self,
                                    GAsyncResult *result,
                                    GError **error);

ide_project_template_compare ()

gint
ide_project_template_compare (IdeProjectTemplate *a,
                              IdeProjectTemplate *b);

Types and Values

IDE_TYPE_PROJECT_TEMPLATE

#define IDE_TYPE_PROJECT_TEMPLATE (ide_project_template_get_type())

struct IdeProjectTemplateInterface

struct IdeProjectTemplateInterface {
  GTypeInterface parent;

  gchar      *(*get_id)          (IdeProjectTemplate   *self);
  gchar      *(*get_name)        (IdeProjectTemplate   *self);
  gchar      *(*get_description) (IdeProjectTemplate   *self);
  GtkWidget  *(*get_widget)      (IdeProjectTemplate   *self);
  gchar     **(*get_languages)   (IdeProjectTemplate   *self);
  gchar      *(*get_icon_name)   (IdeProjectTemplate   *self);
  void        (*expand_async)    (IdeProjectTemplate   *self,
                                  GHashTable           *params,
                                  GCancellable         *cancellable,
                                  GAsyncReadyCallback   callback,
                                  gpointer              user_data);
  gboolean    (*expand_finish)   (IdeProjectTemplate   *self,
                                  GAsyncResult         *result,
                                  GError              **error);
  gint        (*get_priority)    (IdeProjectTemplate   *self);
};

IdeProjectTemplate

typedef struct _IdeProjectTemplate IdeProjectTemplate;