plover-gtk/packagefilestore.h
author J. Ali Harlow <ali@juiblex.co.uk>
Thu Jun 07 15:56:09 2018 +0100 (2018-06-07)
changeset 73 2ba231a7973e
parent 9 8d3b1ddf789c
permissions -rw-r--r--
PloverPackageSet shouldn't try and acquire the same razor lock twice
ali@9
     1
#ifndef __PLOVER_PACKAGE_FILE_STORE_H__
ali@9
     2
#define __PLOVER_PACKAGE_FILE_STORE_H__
ali@9
     3
ali@9
     4
#include <glib-object.h>
ali@24
     5
#include <plover/package.h>
ali@9
     6
#include <razor.h>
ali@9
     7
ali@9
     8
G_BEGIN_DECLS
ali@9
     9
ali@9
    10
#define PLOVER_TYPE_PACKAGE_FILE_STORE\
ali@9
    11
				plover_package_file_store_get_type()
ali@9
    12
#define PLOVER_PACKAGE_FILE_STORE(obj)\
ali@9
    13
				G_TYPE_CHECK_INSTANCE_CAST(obj,\
ali@9
    14
				  PLOVER_TYPE_PACKAGE_FILE_STORE,\
ali@9
    15
				  PloverPackageFileStore)
ali@9
    16
#define PLOVER_PACKAGE_FILE_STORE_CLASS(klass)\
ali@9
    17
				G_TYPE_CHECK_CLASS_CAST(klass,\
ali@9
    18
				  PLOVER_TYPE_PACKAGE_FILE_STORE,\
ali@9
    19
				  PloverPackageFileStoreClass)
ali@9
    20
#define PLOVER_IS_PACKAGE_FILE_STORE(obj)\
ali@9
    21
				G_TYPE_CHECK_INSTANCE_TYPE(obj,\
ali@9
    22
				  PLOVER_TYPE_PACKAGE_FILE_STORE)
ali@9
    23
#define PLOVER_IS_PACKAGE_FILE_STORE_CLASS(klass)\
ali@9
    24
				G_TYPE_CHECK_CLASS_TYPE(obj,\
ali@9
    25
				  PLOVER_TYPE_PACKAGE_FILE_STORE)
ali@9
    26
#define PLOVER_PACKAGE_FILE_STORE_GET_CLASS(obj)\
ali@9
    27
				G_TYPE_INSTANCE_GET_CLASS(obj,\
ali@9
    28
				  PLOVER_TYPE_PACKAGE_FILE_STORE,\
ali@9
    29
				  PloverPackageFileStoreClass)
ali@9
    30
ali@9
    31
typedef enum
ali@9
    32
{
ali@9
    33
    PLOVER_PACKAGE_FILE_STORE_NAME_COLUMN,
ali@9
    34
    PLOVER_PACKAGE_FILE_STORE_NO_COLUMNS
ali@9
    35
} PloverPackageFileStoreColumn;
ali@9
    36
ali@9
    37
typedef struct _PloverPackageFileStore {
ali@9
    38
    GObject parent_instance;
ali@9
    39
} PloverPackageFileStore;
ali@9
    40
ali@9
    41
typedef struct _PloverPackageFileStoreClass {
ali@9
    42
    GObjectClass parent_class;
ali@9
    43
} PloverPackageFileStoreClass;
ali@9
    44
ali@9
    45
GType plover_package_file_store_get_type(void) G_GNUC_CONST;
ali@9
    46
PloverPackageFileStore *
ali@9
    47
  plover_package_file_store_new(struct razor_file_iterator *files);
ali@24
    48
PloverPackageFileStore *
ali@24
    49
  plover_package_file_store_new_from_package(PloverPackage *package);
ali@9
    50
ali@9
    51
G_END_DECLS
ali@9
    52
ali@9
    53
#endif /* __PLOVER_PACKAGE_FILE_STORE_H__ */