CamelVeeFolder

CamelVeeFolder

Synopsis

                    CamelVeeFolder;
#define             CAMEL_UNMATCHED_NAME
CamelFolder*        camel_vee_folder_new                (CamelStore *parent_store,
                                                         const char *name,
                                                         guint32 flags);
void                camel_vee_folder_construct          (CamelVeeFolder *vf,
                                                         CamelStore *parent_store,
                                                         const char *full,
                                                         const char *name,
                                                         guint32 flags);
CamelFolder*        camel_vee_folder_get_location       (CamelVeeFolder *vf,
                                                         const struct _CamelVeeMessageInfo *vinfo,
                                                         char **realuid);
void                camel_vee_folder_add_folder         (CamelVeeFolder *vf,
                                                         CamelFolder *sub);
void                camel_vee_folder_remove_folder      (CamelVeeFolder *vf,
                                                         CamelFolder *sub);
void                camel_vee_folder_set_folders        (CamelVeeFolder *vf,
                                                         GList *folders);
int                 camel_vee_folder_rebuild_folder     (CamelVeeFolder *vf,
                                                         CamelFolder *sub,
                                                         CamelException *ex);
void                camel_vee_folder_set_expression     (CamelVeeFolder *vf,
                                                         const char *expr);
void                camel_vee_folder_hash_folder        (CamelFolder *folder,
                                                         char buffer[8]);

Description

Details

CamelVeeFolder

typedef struct {
	CamelFolder parent;

	struct _CamelVeeFolderPrivate *priv;

	char *expression;	/* query expression */

	guint32 flags;		/* folder open flags */

	CamelFolderChangeInfo *changes;
	CamelFolderSearch *search;

	/* only set-up if our parent is a vee-store, used also as a flag to
	 * say that this folder is part of the unmatched folder */
	struct _CamelVeeStore *parent_vee_store;
} CamelVeeFolder;


CAMEL_UNMATCHED_NAME

#define CAMEL_UNMATCHED_NAME "UNMATCHED"


camel_vee_folder_new ()

CamelFolder*        camel_vee_folder_new                (CamelStore *parent_store,
                                                         const char *name,
                                                         guint32 flags);

Create a new CamelVeeFolder object.

parent_store :

the parent CamelVeeStore

name :

flags :

Returns :

A new CamelVeeFolder widget.

camel_vee_folder_construct ()

void                camel_vee_folder_construct          (CamelVeeFolder *vf,
                                                         CamelStore *parent_store,
                                                         const char *full,
                                                         const char *name,
                                                         guint32 flags);

vf :

parent_store :

full :

name :

flags :


camel_vee_folder_get_location ()

CamelFolder*        camel_vee_folder_get_location       (CamelVeeFolder *vf,
                                                         const struct _CamelVeeMessageInfo *vinfo,
                                                         char **realuid);

Find the real folder (and uid)

vf :

vinfo :

realuid :

if not NULL, set to the uid of the real message, must be g_free'd by caller.

Returns :


camel_vee_folder_add_folder ()

void                camel_vee_folder_add_folder         (CamelVeeFolder *vf,
                                                         CamelFolder *sub);

Adds sub as a source folder to vf.

vf :

Virtual Folder object

sub :

source CamelFolder to add to vf

camel_vee_folder_remove_folder ()

void                camel_vee_folder_remove_folder      (CamelVeeFolder *vf,
                                                         CamelFolder *sub);

Removed the source folder, sub, from the virtual folder, vf.

vf :

Virtual Folder object

sub :

source CamelFolder to remove from vf

camel_vee_folder_set_folders ()

void                camel_vee_folder_set_folders        (CamelVeeFolder *vf,
                                                         GList *folders);

Set the whole list of folder sources on a vee folder.

vf :

folders :


camel_vee_folder_rebuild_folder ()

int                 camel_vee_folder_rebuild_folder     (CamelVeeFolder *vf,
                                                         CamelFolder *sub,
                                                         CamelException *ex);

Rebuild the folder sub, if it should be.

vf :

Virtual Folder object

sub :

source CamelFolder to add to vf

ex :

Exception.

Returns :


camel_vee_folder_set_expression ()

void                camel_vee_folder_set_expression     (CamelVeeFolder *vf,
                                                         const char *expr);

vf :

expr :


camel_vee_folder_hash_folder ()

void                camel_vee_folder_hash_folder        (CamelFolder *folder,
                                                         char buffer[8]);

Create a hash string representing the folder name, which should be unique, and remain static for a given folder.

folder :

@:

buffer :