## Components factory

Components factory

## Synopsis

    enum                GOMimePriority;
    void                go_components_add_filter            (GtkFileChooser *chooser);
    void                go_components_add_mime_type         (char *mime,
                                                             GOMimePriority priority,
                                                             char const *service_id);
    char const *        go_components_get_mime_suffix       (char const *mime);
    GSList *            go_components_get_mime_types        (void);
    GOMimePriority      go_components_get_priority          (char const *mime_type);
    void                go_components_set_mime_suffix       (char const *mime,
                                                             char const *suffix);
    gboolean            go_components_support_clipboard     (char const *mime_type);

## Description

## Details

### enum GOMimePriority

    typedef enum {
    	GO_MIME_PRIORITY_INVALID = -1,
    	GO_MIME_PRIORITY_DISPLAY,
    	GO_MIME_PRIORITY_PRINT,
    	GO_MIME_PRIORITY_PARTIAL,
    	GO_MIME_PRIORITY_FULL,
    	GO_MIME_PRIORITY_NATIVE,
    } GOMimePriority;

`GO_MIME_PRIORITY_INVALID` | no support.
`GO_MIME_PRIORITY_DISPLAY` | can display the component.
`GO_MIME_PRIORITY_PRINT` | can print the component.
`GO_MIME_PRIORITY_PARTIAL` | partial support, including edition.
`GO_MIME_PRIORITY_FULL` | full support.
`GO_MIME_PRIORITY_NATIVE` | use the native code.

### go_components_add_filter ()

    void                go_components_add_filter            (GtkFileChooser *chooser);

### go_components_add_mime_type ()

    void                go_components_add_mime_type         (char *mime,
                                                             GOMimePriority priority,
                                                             char const *service_id);

### go_components_get_mime_suffix ()

    char const *        go_components_get_mime_suffix       (char const *mime);

### go_components_get_mime_types ()

    GSList *            go_components_get_mime_types        (void);

Returns : | the list of mime types supported by at least one registered component. [element-type char][transfer none]

### go_components_get_priority ()

    GOMimePriority      go_components_get_priority          (char const *mime_type);

### go_components_set_mime_suffix ()

    void                go_components_set_mime_suffix       (char const *mime,
                                                             char const *suffix);

### go_components_support_clipboard ()

    gboolean            go_components_support_clipboard     (char const *mime_type);