IAnjutaVcs

IAnjutaVcs — Version control system interface

Stability Level

Unstable, unless otherwise indicated

Synopsis

#include <libanjuta/interfaces/ianjuta-vcs.h>

enum                IAnjutaVcsError;
void                (*IAnjutaVcsStatusCallback)         (GFile *file,
                                                         AnjutaVcsStatus status,
                                                         gpointer user_data);
void                (*IAnjutaVcsDiffCallback)           (GFile *file,
                                                         const gchar *diff,
                                                         gpointer user_data);
struct              IAnjutaVcsIface;
GQuark              ianjuta_vcs_error_quark             (void);
void                ianjuta_vcs_add                     (IAnjutaVcs *obj,
                                                         GList *files,
                                                         AnjutaAsyncNotify *notify,
                                                         GError **err);
void                ianjuta_vcs_checkout                (IAnjutaVcs *obj,
                                                         const gchar *repository_location,
                                                         GFile *dest,
                                                         GCancellable *cancel,
                                                         AnjutaAsyncNotify *notify,
                                                         GError **err);
void                ianjuta_vcs_diff                    (IAnjutaVcs *obj,
                                                         GFile *file,
                                                         IAnjutaVcsDiffCallback callback,
                                                         gpointer user_data,
                                                         GCancellable *cancel,
                                                         AnjutaAsyncNotify *notify,
                                                         GError **err);
void                ianjuta_vcs_query_status            (IAnjutaVcs *obj,
                                                         GFile *file,
                                                         IAnjutaVcsStatusCallback callback,
                                                         gpointer user_data,
                                                         GCancellable *cancel,
                                                         AnjutaAsyncNotify *notify,
                                                         GError **err);
void                ianjuta_vcs_remove                  (IAnjutaVcs *obj,
                                                         GList *files,
                                                         AnjutaAsyncNotify *notify,
                                                         GError **err);

Object Hierarchy

  GEnum
   +----IAnjutaVcsError

Description

Details

enum IAnjutaVcsError

typedef enum {
	IANJUTA_VCS_UNKOWN_ERROR
} IAnjutaVcsError;

These enumeration is used to specify errors.

IANJUTA_VCS_UNKOWN_ERROR


IAnjutaVcsStatusCallback ()

void                (*IAnjutaVcsStatusCallback)         (GFile *file,
                                                         AnjutaVcsStatus status,
                                                         gpointer user_data);

Callback called for each status record returned by ianjuta_vcs_query_status.

file :

File representing the file for which status is given

status :

AnjutaVcsStatus for the file represented by file.

user_data :

User data

IAnjutaVcsDiffCallback ()

void                (*IAnjutaVcsDiffCallback)           (GFile *file,
                                                         const gchar *diff,
                                                         gpointer user_data);

Called when diff data comes from ianjuta_vcs_diff.

file :

File being diffed

diff :

Diff data

user_data :

User data

struct IAnjutaVcsIface

struct IAnjutaVcsIface {
	GTypeInterface g_iface;
	
	/* Signal */
	void (*status_changed) (IAnjutaVcs *obj);

	void (*add) (IAnjutaVcs *obj, GList* files,  AnjutaAsyncNotify *notify, GError **err);
	void (*checkout) (IAnjutaVcs *obj, const gchar *repository_location,  GFile *dest,  GCancellable *cancel,  AnjutaAsyncNotify *notify, GError **err);
	void (*diff) (IAnjutaVcs *obj, GFile* file,  IAnjutaVcsDiffCallback callback,  gpointer user_data,  GCancellable* cancel,  AnjutaAsyncNotify *notify, GError **err);
	void (*query_status) (IAnjutaVcs *obj, GFile* file,  IAnjutaVcsStatusCallback callback,  gpointer user_data,  GCancellable* cancel,  AnjutaAsyncNotify *notify, GError **err);
	void (*remove) (IAnjutaVcs *obj, GList* files,  AnjutaAsyncNotify *notify, GError **err);
};


ianjuta_vcs_error_quark ()

GQuark              ianjuta_vcs_error_quark             (void);


ianjuta_vcs_add ()

void                ianjuta_vcs_add                     (IAnjutaVcs *obj,
                                                         GList *files,
                                                         AnjutaAsyncNotify *notify,
                                                         GError **err);

Add files to the VCS repository.

obj :

Self

files :

List of List of files, represented as Gfile objects, to add. [element-type GFile]

notify :

AnjutaAsyncNotify object for finish notification and error reporting.

ianjuta_vcs_checkout ()

void                ianjuta_vcs_checkout                (IAnjutaVcs *obj,
                                                         const gchar *repository_location,
                                                         GFile *dest,
                                                         GCancellable *cancel,
                                                         AnjutaAsyncNotify *notify,
                                                         GError **err);

Check out a copy of a code repository.

obj :

Self

repository_location :

Location of repository to check out

dest :

Destination of checked out copy

cancel :

An optional GCancellable object to cancel the operation, or NULL

notify :

AnjutaAsyncNotify object for finish notification and error reporting.

ianjuta_vcs_diff ()

void                ianjuta_vcs_diff                    (IAnjutaVcs *obj,
                                                         GFile *file,
                                                         IAnjutaVcsDiffCallback callback,
                                                         gpointer user_data,
                                                         GCancellable *cancel,
                                                         AnjutaAsyncNotify *notify,
                                                         GError **err);

Generates a unified diff of the file represented by file.

obj :

Self

file :

File to diff

callback :

Callback to call when diff data becomes available

user_data :

User data passed to callback

cancel :

An optional GCancellable object to cancel the operation, or NULL

notify :

AnjutaAsyncNotify object for finish notification and error reporting.

ianjuta_vcs_query_status ()

void                ianjuta_vcs_query_status            (IAnjutaVcs *obj,
                                                         GFile *file,
                                                         IAnjutaVcsStatusCallback callback,
                                                         gpointer user_data,
                                                         GCancellable *cancel,
                                                         AnjutaAsyncNotify *notify,
                                                         GError **err);

Querys the status of files in the repository.

obj :

Self

file :

File/directory to query

callback :

callback to call when data for a particular file is available

user_data :

User data passed to callback

cancel :

An optional GCancellable object to cancel the operation, or NULL

notify :

AnjutaAsyncNotify object for finish notification and error reporting.

ianjuta_vcs_remove ()

void                ianjuta_vcs_remove                  (IAnjutaVcs *obj,
                                                         GList *files,
                                                         AnjutaAsyncNotify *notify,
                                                         GError **err);

Remove files from the VCS repository.

obj :

Self

files :

List of files, represented as Gfile objects, to remove. [element-type GFile]

notify :

AnjutaAsyncNotify object for finish notification and error reporting.