# GalViewCollection

## Name

GalViewCollection --

## Synopsis

    #define     GAL_VIEW_COLLECTION_TYPE
    typedef     GalViewCollection;
    GalViewCollection* gal_view_collection_new  (void);
    void        gal_view_collection_set_storage_directories
                                                (GalViewCollection *collection,
                                                 char *system_dir,
                                                 char *local_dir);
    void        gal_view_collection_add_factory (GalViewCollection *collection,
                                                 GalViewFactory *factory);
    void        gal_view_collection_display_view
                                                (GalViewCollection *collection,
                                                 GalView *view);

## Object Hierarchy

      GtkObject
       +----GalViewCollection

## Signal Prototypes

    "display-view"
                void        user_function      (GalViewCollection *galviewcollection,
                                                GtkObject *arg1,
                                                gpointer user_data);

## Description

## Details

### GAL_VIEW_COLLECTION_TYPE

    #define GAL_VIEW_COLLECTION_TYPE        (gal_view_collection_get_type ())

### GalViewCollection

    typedef struct {
    	GtkObject base;

    	GList *view_list;
    	GList *factory_list;
    } GalViewCollection;

### gal_view_collection_new ()

    GalViewCollection* gal_view_collection_new  (void);

A collection of views and view factories.

Returns : |

### gal_view_collection_set_storage_directories ()

    void        gal_view_collection_set_storage_directories
                                                (GalViewCollection *collection,
                                                 char *system_dir,
                                                 char *local_dir);

Sets up the GalViewCollection.

`collection` : | The view collection to initialize
`system_dir` : | The location of the system built in views
`local_dir` : | The location to store the users set up views

### gal_view_collection_add_factory ()

    void        gal_view_collection_add_factory (GalViewCollection *collection,
                                                 GalViewFactory *factory);

Adds the given factory to this collection. This list is used both when loading views from their xml description as well as when the user tries to create a new view.

`collection` : | The view collection to add a factory to
`factory` : | The factory to add. The `collection` will add a reference to the factory object, so you should unref it after calling this function if you no longer need it.

### gal_view_collection_display_view ()

    void        gal_view_collection_display_view
                                                (GalViewCollection *collection,
                                                 GalView *view);

`collection` : | The GalViewCollection to send the signal on.
`view` : | The view to display.

## Signals

### The "display-view" signal

    void        user_function                  (GalViewCollection *galviewcollection,
                                                GtkObject *arg1,
                                                gpointer user_data);

`galviewcollection` : | the object which received the signal.
`arg1` : |
`user_data` : | user data set when the signal handler was connected.