IAnjutaFileSavable

IAnjutaFileSavable — Implemented by plugins that can save files.

Stability Level

Unstable, unless otherwise indicated

Synopsis

#include <libanjuta/interfaces/ianjuta-file-savable.h>

#define             IANJUTA_FILE_SAVABLE_ERROR
struct              IAnjutaFileSavableIface;
GQuark              ianjuta_file_savable_error_quark    (void);
gboolean            ianjuta_file_savable_is_conflict    (IAnjutaFileSavable *obj,
                                                         GError **err);
gboolean            ianjuta_file_savable_is_dirty       (IAnjutaFileSavable *obj,
                                                         GError **err);
gboolean            ianjuta_file_savable_is_read_only   (IAnjutaFileSavable *obj,
                                                         GError **err);
void                ianjuta_file_savable_save           (IAnjutaFileSavable *obj,
                                                         GError **err);
void                ianjuta_file_savable_save_as        (IAnjutaFileSavable *obj,
                                                         GFile *file,
                                                         GError **err);
void                ianjuta_file_savable_set_dirty      (IAnjutaFileSavable *obj,
                                                         gboolean dirty,
                                                         GError **err);

Description

Plugins implementing IAnjutaFile inteface that can also save files should also implement this interface.

Details

IANJUTA_FILE_SAVABLE_ERROR

#define IANJUTA_FILE_SAVABLE_ERROR ianjuta_file_savable_error_quark()


struct IAnjutaFileSavableIface

struct IAnjutaFileSavableIface {
	IAnjutaFileIface g_iface;
	
	/* Signal */
	void (*saved) (IAnjutaFileSavable *obj, GFile* file);
	/* Signal */
	void (*update_save_ui) (IAnjutaFileSavable *obj);

	gboolean (*is_conflict) (IAnjutaFileSavable *obj, GError **err);
	gboolean (*is_dirty) (IAnjutaFileSavable *obj, GError **err);
	gboolean (*is_read_only) (IAnjutaFileSavable *obj, GError **err);
	void (*save) (IAnjutaFileSavable *obj, GError **err);
	void (*save_as) (IAnjutaFileSavable *obj, GFile* file, GError **err);
	void (*set_dirty) (IAnjutaFileSavable *obj, gboolean dirty, GError **err);
};


ianjuta_file_savable_error_quark ()

GQuark              ianjuta_file_savable_error_quark    (void);


ianjuta_file_savable_is_conflict ()

gboolean            ianjuta_file_savable_is_conflict    (IAnjutaFileSavable *obj,
                                                         GError **err);

Return is the file is in conflict. It means the file has been modified externally and the user needs to tell which version he wants to use.

obj :

Self

err :

Error propagation and reporting

Returns :

TRUE if conflict, FALSE otherwise.

ianjuta_file_savable_is_dirty ()

gboolean            ianjuta_file_savable_is_dirty       (IAnjutaFileSavable *obj,
                                                         GError **err);

Returns the dirty status of the content.

obj :

Self

err :

Error propagation and reporting

Returns :

TRUE if dirty, FALSE otherwise.

ianjuta_file_savable_is_read_only ()

gboolean            ianjuta_file_savable_is_read_only   (IAnjutaFileSavable *obj,
                                                         GError **err);

Return is the file is read-only

obj :

Self

err :

Error propagation and reporting

Returns :

TRUE if read-only, FALSE otherwise.

ianjuta_file_savable_save ()

void                ianjuta_file_savable_save           (IAnjutaFileSavable *obj,
                                                         GError **err);

Saves the content to the original file from which it was loaded. The signal saved is always emitted even if the save fails.

obj :

Self

err :

Error propagation and reporting

ianjuta_file_savable_save_as ()

void                ianjuta_file_savable_save_as        (IAnjutaFileSavable *obj,
                                                         GFile *file,
                                                         GError **err);

Saves the content to a different File. The signal saved is always emitted even if the save fails.

obj :

Self

file :

File to save the content.

err :

Error propagation and reporting

ianjuta_file_savable_set_dirty ()

void                ianjuta_file_savable_set_dirty      (IAnjutaFileSavable *obj,
                                                         gboolean dirty,
                                                         GError **err);

if dirty is TRUE, sets dirty for the content. Save point will be left and the content will be considered not saved. Otherwise, content will considered saved and save-point will be entered.

obj :

Self

dirty :

Whether the file was edited or not

err :

Error propagation and reporting

See Also

IAnjutaFile