summaryrefslogtreecommitdiff
path: root/src/tags
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff.email>2018-09-30 14:09:20 +0200
committerJörg Frings-Fürst <debian@jff.email>2018-09-30 14:09:20 +0200
commit5e9f4eea451a77ba3b93db3747841ed2bd969e9f (patch)
tree75046a38ca68975261d853a2e56ff7bf6b3e1daa /src/tags
parent18b52c2983a1b3409011f72d27f15de576c5eb1c (diff)
New upstream version 0.30.1upstream/0.30.1
Diffstat (limited to 'src/tags')
-rw-r--r--src/tags/HierarchicalTagIndex.c1086
-rw-r--r--src/tags/HierarchicalTagUtilities.c2251
-rw-r--r--src/tags/TagPage.c1585
-rw-r--r--src/tags/Tags.c41
-rw-r--r--src/tags/TagsBranch.c3233
5 files changed, 0 insertions, 8196 deletions
diff --git a/src/tags/HierarchicalTagIndex.c b/src/tags/HierarchicalTagIndex.c
deleted file mode 100644
index 44d6fae..0000000
--- a/src/tags/HierarchicalTagIndex.c
+++ /dev/null
@@ -1,1086 +0,0 @@
-/* HierarchicalTagIndex.c generated by valac 0.40.4, the Vala compiler
- * generated from HierarchicalTagIndex.vala, do not modify */
-
-/* Copyright 2016 Software Freedom Conservancy Inc.
- *
- * This software is licensed under the GNU LGPL (version 2.1 or later).
- * See the COPYING file in this distribution.
- */
-
-
-#include <glib.h>
-#include <glib-object.h>
-#include <gee.h>
-#include <stdlib.h>
-#include <string.h>
-#include <gobject/gvaluecollector.h>
-
-
-#define TYPE_HIERARCHICAL_TAG_INDEX (hierarchical_tag_index_get_type ())
-#define HIERARCHICAL_TAG_INDEX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HIERARCHICAL_TAG_INDEX, HierarchicalTagIndex))
-#define HIERARCHICAL_TAG_INDEX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HIERARCHICAL_TAG_INDEX, HierarchicalTagIndexClass))
-#define IS_HIERARCHICAL_TAG_INDEX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HIERARCHICAL_TAG_INDEX))
-#define IS_HIERARCHICAL_TAG_INDEX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HIERARCHICAL_TAG_INDEX))
-#define HIERARCHICAL_TAG_INDEX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HIERARCHICAL_TAG_INDEX, HierarchicalTagIndexClass))
-
-typedef struct _HierarchicalTagIndex HierarchicalTagIndex;
-typedef struct _HierarchicalTagIndexClass HierarchicalTagIndexClass;
-typedef struct _HierarchicalTagIndexPrivate HierarchicalTagIndexPrivate;
-#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
-#define _g_free0(var) (var = (g_free (var), NULL))
-#define _hierarchical_tag_index_unref0(var) ((var == NULL) ? NULL : (var = (hierarchical_tag_index_unref (var), NULL)))
-
-#define TYPE_DATA_COLLECTION (data_collection_get_type ())
-#define DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_COLLECTION, DataCollection))
-#define DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_COLLECTION, DataCollectionClass))
-#define IS_DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_COLLECTION))
-#define IS_DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_COLLECTION))
-#define DATA_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_COLLECTION, DataCollectionClass))
-
-typedef struct _DataCollection DataCollection;
-typedef struct _DataCollectionClass DataCollectionClass;
-
-#define TYPE_SOURCE_COLLECTION (source_collection_get_type ())
-#define SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_COLLECTION, SourceCollection))
-#define SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_COLLECTION, SourceCollectionClass))
-#define IS_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_COLLECTION))
-#define IS_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_COLLECTION))
-#define SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_COLLECTION, SourceCollectionClass))
-
-typedef struct _SourceCollection SourceCollection;
-typedef struct _SourceCollectionClass SourceCollectionClass;
-
-#define TYPE_DATABASE_SOURCE_COLLECTION (database_source_collection_get_type ())
-#define DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollection))
-#define DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass))
-#define IS_DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATABASE_SOURCE_COLLECTION))
-#define IS_DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATABASE_SOURCE_COLLECTION))
-#define DATABASE_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass))
-
-typedef struct _DatabaseSourceCollection DatabaseSourceCollection;
-typedef struct _DatabaseSourceCollectionClass DatabaseSourceCollectionClass;
-
-#define TYPE_CONTAINER_SOURCE_COLLECTION (container_source_collection_get_type ())
-#define CONTAINER_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection))
-#define CONTAINER_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollectionClass))
-#define IS_CONTAINER_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTAINER_SOURCE_COLLECTION))
-#define IS_CONTAINER_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTAINER_SOURCE_COLLECTION))
-#define CONTAINER_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollectionClass))
-
-typedef struct _ContainerSourceCollection ContainerSourceCollection;
-typedef struct _ContainerSourceCollectionClass ContainerSourceCollectionClass;
-
-#define TYPE_TAG_SOURCE_COLLECTION (tag_source_collection_get_type ())
-#define TAG_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollection))
-#define TAG_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollectionClass))
-#define IS_TAG_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG_SOURCE_COLLECTION))
-#define IS_TAG_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG_SOURCE_COLLECTION))
-#define TAG_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollectionClass))
-
-typedef struct _TagSourceCollection TagSourceCollection;
-typedef struct _TagSourceCollectionClass TagSourceCollectionClass;
-typedef struct _ParamSpecHierarchicalTagIndex ParamSpecHierarchicalTagIndex;
-
-struct _HierarchicalTagIndex {
- GTypeInstance parent_instance;
- volatile int ref_count;
- HierarchicalTagIndexPrivate * priv;
-};
-
-struct _HierarchicalTagIndexClass {
- GTypeClass parent_class;
- void (*finalize) (HierarchicalTagIndex *self);
-};
-
-struct _HierarchicalTagIndexPrivate {
- GeeMap* tag_table;
- GeeSortedSet* known_paths;
-};
-
-struct _ParamSpecHierarchicalTagIndex {
- GParamSpec parent_instance;
-};
-
-
-static gpointer hierarchical_tag_index_parent_class = NULL;
-extern TagSourceCollection* tag_global;
-
-gpointer hierarchical_tag_index_ref (gpointer instance);
-void hierarchical_tag_index_unref (gpointer instance);
-GParamSpec* param_spec_hierarchical_tag_index (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_hierarchical_tag_index (GValue* value,
- gpointer v_object);
-void value_take_hierarchical_tag_index (GValue* value,
- gpointer v_object);
-gpointer value_get_hierarchical_tag_index (const GValue* value);
-GType hierarchical_tag_index_get_type (void) G_GNUC_CONST;
-#define HIERARCHICAL_TAG_INDEX_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_HIERARCHICAL_TAG_INDEX, HierarchicalTagIndexPrivate))
-HierarchicalTagIndex* hierarchical_tag_index_new (void);
-HierarchicalTagIndex* hierarchical_tag_index_construct (GType object_type);
-HierarchicalTagIndex* hierarchical_tag_index_from_paths (GeeCollection* client_paths);
-#define TAG_PATH_SEPARATOR_STRING "/"
-GeeList* hierarchical_tag_utilities_enumerate_path_components (const gchar* in_path);
-void hierarchical_tag_index_add_path (HierarchicalTagIndex* self,
- const gchar* tag,
- const gchar* path);
-HierarchicalTagIndex* hierarchical_tag_index_get_global_index (void);
-gpointer data_collection_ref (gpointer instance);
-void data_collection_unref (gpointer instance);
-GParamSpec* param_spec_data_collection (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_data_collection (GValue* value,
- gpointer v_object);
-void value_take_data_collection (GValue* value,
- gpointer v_object);
-gpointer value_get_data_collection (const GValue* value);
-GType data_collection_get_type (void) G_GNUC_CONST;
-GType source_collection_get_type (void) G_GNUC_CONST;
-GType database_source_collection_get_type (void) G_GNUC_CONST;
-GType container_source_collection_get_type (void) G_GNUC_CONST;
-GType tag_source_collection_get_type (void) G_GNUC_CONST;
-GeeCollection* tag_source_collection_get_all_names (TagSourceCollection* self);
-GeeCollection* hierarchical_tag_index_get_all_paths (HierarchicalTagIndex* self);
-gboolean hierarchical_tag_index_is_tag_in_index (HierarchicalTagIndex* self,
- const gchar* tag);
-GeeCollection* hierarchical_tag_index_get_all_tags (HierarchicalTagIndex* self);
-gboolean hierarchical_tag_index_is_path_known (HierarchicalTagIndex* self,
- const gchar* path);
-gchar* hierarchical_tag_index_get_path_for_name (HierarchicalTagIndex* self,
- const gchar* name);
-gchar** hierarchical_tag_index_get_paths_for_names_array (HierarchicalTagIndex* self,
- gchar** names,
- int names_length1,
- int* result_length1);
-static void _vala_array_add68 (gchar** * array,
- int* length,
- int* size,
- gchar* value);
-static void hierarchical_tag_index_finalize (HierarchicalTagIndex * obj);
-static void _vala_array_destroy (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func);
-static void _vala_array_free (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func);
-
-
-HierarchicalTagIndex*
-hierarchical_tag_index_construct (GType object_type)
-{
- HierarchicalTagIndex* self = NULL;
- GeeHashMap* _tmp0_;
- GeeTreeSet* _tmp1_;
-#line 11 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- self = (HierarchicalTagIndex*) g_type_create_instance (object_type);
-#line 12 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp0_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, GEE_TYPE_ARRAY_LIST, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-#line 12 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (self->priv->tag_table);
-#line 12 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- self->priv->tag_table = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_MAP, GeeMap);
-#line 13 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp1_ = gee_tree_set_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL);
-#line 13 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (self->priv->known_paths);
-#line 13 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- self->priv->known_paths = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_SORTED_SET, GeeSortedSet);
-#line 11 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return self;
-#line 197 "HierarchicalTagIndex.c"
-}
-
-
-HierarchicalTagIndex*
-hierarchical_tag_index_new (void)
-{
-#line 11 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return hierarchical_tag_index_construct (TYPE_HIERARCHICAL_TAG_INDEX);
-#line 206 "HierarchicalTagIndex.c"
-}
-
-
-HierarchicalTagIndex*
-hierarchical_tag_index_from_paths (GeeCollection* client_paths)
-{
- HierarchicalTagIndex* result = NULL;
- GeeCollection* paths = NULL;
- GeeCollection* _tmp0_;
- GeeCollection* _tmp1_;
- HierarchicalTagIndex* _result_ = NULL;
- HierarchicalTagIndex* _tmp2_;
-#line 16 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (GEE_IS_COLLECTION (client_paths), NULL);
-#line 17 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp0_ = gee_collection_get_read_only_view (client_paths);
-#line 17 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp1_ = _tmp0_;
-#line 17 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- paths = _tmp1_;
-#line 19 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp2_ = hierarchical_tag_index_new ();
-#line 19 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _result_ = _tmp2_;
-#line 231 "HierarchicalTagIndex.c"
- {
- GeeIterator* _path_it = NULL;
- GeeCollection* _tmp3_;
- GeeIterator* _tmp4_;
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp3_ = paths;
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp4_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, GEE_TYPE_ITERABLE, GeeIterable));
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _path_it = _tmp4_;
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- while (TRUE) {
-#line 244 "HierarchicalTagIndex.c"
- GeeIterator* _tmp5_;
- gchar* path = NULL;
- GeeIterator* _tmp6_;
- gpointer _tmp7_;
- const gchar* _tmp8_;
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp5_ = _path_it;
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (!gee_iterator_next (_tmp5_)) {
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- break;
-#line 256 "HierarchicalTagIndex.c"
- }
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp6_ = _path_it;
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp7_ = gee_iterator_get (_tmp6_);
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- path = (gchar*) _tmp7_;
-#line 22 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp8_ = path;
-#line 22 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (g_str_has_prefix (_tmp8_, TAG_PATH_SEPARATOR_STRING)) {
-#line 268 "HierarchicalTagIndex.c"
- GeeCollection* components = NULL;
- const gchar* _tmp9_;
- GeeList* _tmp10_;
-#line 23 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp9_ = path;
-#line 23 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp10_ = hierarchical_tag_utilities_enumerate_path_components (_tmp9_);
-#line 23 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- components = G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, GEE_TYPE_COLLECTION, GeeCollection);
-#line 278 "HierarchicalTagIndex.c"
- {
- GeeIterator* _component_it = NULL;
- GeeCollection* _tmp11_;
- GeeIterator* _tmp12_;
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp11_ = components;
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp12_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, GEE_TYPE_ITERABLE, GeeIterable));
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _component_it = _tmp12_;
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- while (TRUE) {
-#line 291 "HierarchicalTagIndex.c"
- GeeIterator* _tmp13_;
- gchar* component = NULL;
- GeeIterator* _tmp14_;
- gpointer _tmp15_;
- HierarchicalTagIndex* _tmp16_;
- const gchar* _tmp17_;
- const gchar* _tmp18_;
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp13_ = _component_it;
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (!gee_iterator_next (_tmp13_)) {
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- break;
-#line 305 "HierarchicalTagIndex.c"
- }
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp14_ = _component_it;
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp15_ = gee_iterator_get (_tmp14_);
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- component = (gchar*) _tmp15_;
-#line 27 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp16_ = _result_;
-#line 27 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp17_ = component;
-#line 27 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp18_ = path;
-#line 27 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- hierarchical_tag_index_add_path (_tmp16_, _tmp17_, _tmp18_);
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_free0 (component);
-#line 323 "HierarchicalTagIndex.c"
- }
-#line 26 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (_component_it);
-#line 327 "HierarchicalTagIndex.c"
- }
-#line 22 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (components);
-#line 331 "HierarchicalTagIndex.c"
- } else {
- HierarchicalTagIndex* _tmp19_;
- const gchar* _tmp20_;
- const gchar* _tmp21_;
-#line 29 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp19_ = _result_;
-#line 29 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp20_ = path;
-#line 29 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp21_ = path;
-#line 29 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- hierarchical_tag_index_add_path (_tmp19_, _tmp20_, _tmp21_);
-#line 344 "HierarchicalTagIndex.c"
- }
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_free0 (path);
-#line 348 "HierarchicalTagIndex.c"
- }
-#line 21 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (_path_it);
-#line 352 "HierarchicalTagIndex.c"
- }
-#line 33 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- result = _result_;
-#line 33 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (paths);
-#line 33 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return result;
-#line 360 "HierarchicalTagIndex.c"
-}
-
-
-HierarchicalTagIndex*
-hierarchical_tag_index_get_global_index (void)
-{
- HierarchicalTagIndex* result = NULL;
- TagSourceCollection* _tmp0_;
- GeeCollection* _tmp1_;
- GeeCollection* _tmp2_;
- HierarchicalTagIndex* _tmp3_;
- HierarchicalTagIndex* _tmp4_;
-#line 37 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp0_ = tag_global;
-#line 37 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp1_ = tag_source_collection_get_all_names (_tmp0_);
-#line 37 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp2_ = _tmp1_;
-#line 37 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp3_ = hierarchical_tag_index_from_paths (_tmp2_);
-#line 37 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp4_ = _tmp3_;
-#line 37 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (_tmp2_);
-#line 37 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- result = _tmp4_;
-#line 37 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return result;
-#line 389 "HierarchicalTagIndex.c"
-}
-
-
-void
-hierarchical_tag_index_add_path (HierarchicalTagIndex* self,
- const gchar* tag,
- const gchar* path)
-{
- GeeMap* _tmp0_;
- GeeMap* _tmp4_;
- gpointer _tmp5_;
- GeeCollection* _tmp6_;
- GeeSortedSet* _tmp7_;
-#line 40 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_if_fail (IS_HIERARCHICAL_TAG_INDEX (self));
-#line 40 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_if_fail (tag != NULL);
-#line 40 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_if_fail (path != NULL);
-#line 41 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp0_ = self->priv->tag_table;
-#line 41 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (!gee_map_has_key (_tmp0_, tag)) {
-#line 413 "HierarchicalTagIndex.c"
- GeeMap* _tmp1_;
- GeeArrayList* _tmp2_;
- GeeArrayList* _tmp3_;
-#line 42 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp1_ = self->priv->tag_table;
-#line 42 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp2_ = gee_array_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL);
-#line 42 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp3_ = _tmp2_;
-#line 42 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- gee_map_set (_tmp1_, tag, G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 42 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (_tmp3_);
-#line 427 "HierarchicalTagIndex.c"
- }
-#line 45 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp4_ = self->priv->tag_table;
-#line 45 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp5_ = gee_map_get (_tmp4_, tag);
-#line 45 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp6_ = (GeeCollection*) _tmp5_;
-#line 45 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- gee_collection_add (_tmp6_, path);
-#line 45 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (_tmp6_);
-#line 46 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp7_ = self->priv->known_paths;
-#line 46 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- gee_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, GEE_TYPE_COLLECTION, GeeCollection), path);
-#line 443 "HierarchicalTagIndex.c"
-}
-
-
-GeeCollection*
-hierarchical_tag_index_get_all_paths (HierarchicalTagIndex* self)
-{
- GeeCollection* result = NULL;
- GeeSortedSet* _tmp0_;
- GeeSortedSet* _tmp1_;
- GeeSortedSet* _tmp2_;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (IS_HIERARCHICAL_TAG_INDEX (self), NULL);
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp0_ = self->priv->known_paths;
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp1_ = gee_sorted_set_get_read_only_view (_tmp0_);
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp2_ = _tmp1_;
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- result = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_COLLECTION, GeeCollection);
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return result;
-#line 466 "HierarchicalTagIndex.c"
-}
-
-
-gboolean
-hierarchical_tag_index_is_tag_in_index (HierarchicalTagIndex* self,
- const gchar* tag)
-{
- gboolean result = FALSE;
- GeeMap* _tmp0_;
-#line 53 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (IS_HIERARCHICAL_TAG_INDEX (self), FALSE);
-#line 53 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (tag != NULL, FALSE);
-#line 54 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp0_ = self->priv->tag_table;
-#line 54 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- result = gee_map_has_key (_tmp0_, tag);
-#line 54 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return result;
-#line 486 "HierarchicalTagIndex.c"
-}
-
-
-GeeCollection*
-hierarchical_tag_index_get_all_tags (HierarchicalTagIndex* self)
-{
- GeeCollection* result = NULL;
- GeeMap* _tmp0_;
- GeeSet* _tmp1_;
- GeeSet* _tmp2_;
-#line 57 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (IS_HIERARCHICAL_TAG_INDEX (self), NULL);
-#line 58 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp0_ = self->priv->tag_table;
-#line 58 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp1_ = gee_map_get_keys (_tmp0_);
-#line 58 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp2_ = _tmp1_;
-#line 58 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- result = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_COLLECTION, GeeCollection);
-#line 58 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return result;
-#line 509 "HierarchicalTagIndex.c"
-}
-
-
-gboolean
-hierarchical_tag_index_is_path_known (HierarchicalTagIndex* self,
- const gchar* path)
-{
- gboolean result = FALSE;
- GeeSortedSet* _tmp0_;
-#line 61 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (IS_HIERARCHICAL_TAG_INDEX (self), FALSE);
-#line 61 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (path != NULL, FALSE);
-#line 62 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp0_ = self->priv->known_paths;
-#line 62 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- result = gee_collection_contains (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_COLLECTION, GeeCollection), path);
-#line 62 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return result;
-#line 529 "HierarchicalTagIndex.c"
-}
-
-
-gchar*
-hierarchical_tag_index_get_path_for_name (HierarchicalTagIndex* self,
- const gchar* name)
-{
- gchar* result = NULL;
- GeeCollection* paths = NULL;
- GeeMap* _tmp1_;
- gpointer _tmp2_;
-#line 65 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (IS_HIERARCHICAL_TAG_INDEX (self), NULL);
-#line 65 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (name != NULL, NULL);
-#line 66 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (!hierarchical_tag_index_is_tag_in_index (self, name)) {
-#line 547 "HierarchicalTagIndex.c"
- gchar* _tmp0_;
-#line 67 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp0_ = g_strdup (name);
-#line 67 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- result = _tmp0_;
-#line 67 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return result;
-#line 555 "HierarchicalTagIndex.c"
- }
-#line 69 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp1_ = self->priv->tag_table;
-#line 69 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp2_ = gee_map_get (_tmp1_, name);
-#line 69 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- paths = (GeeCollection*) _tmp2_;
-#line 563 "HierarchicalTagIndex.c"
- {
- GeeIterator* _path_it = NULL;
- GeeCollection* _tmp3_;
- GeeIterator* _tmp4_;
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp3_ = paths;
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp4_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, GEE_TYPE_ITERABLE, GeeIterable));
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _path_it = _tmp4_;
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- while (TRUE) {
-#line 576 "HierarchicalTagIndex.c"
- GeeIterator* _tmp5_;
- gchar* path = NULL;
- GeeIterator* _tmp6_;
- gpointer _tmp7_;
- GeeList* components = NULL;
- const gchar* _tmp8_;
- GeeList* _tmp9_;
- GeeList* _tmp10_;
- GeeList* _tmp11_;
- gint _tmp12_;
- gint _tmp13_;
- gpointer _tmp14_;
- gchar* _tmp15_;
- gboolean _tmp16_;
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp5_ = _path_it;
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (!gee_iterator_next (_tmp5_)) {
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- break;
-#line 597 "HierarchicalTagIndex.c"
- }
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp6_ = _path_it;
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp7_ = gee_iterator_get (_tmp6_);
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- path = (gchar*) _tmp7_;
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp8_ = path;
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp9_ = hierarchical_tag_utilities_enumerate_path_components (_tmp8_);
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- components = _tmp9_;
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp10_ = components;
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp11_ = components;
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp12_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp13_ = _tmp12_;
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp14_ = gee_list_get (_tmp10_, _tmp13_ - 1);
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp15_ = (gchar*) _tmp14_;
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp16_ = g_strcmp0 (_tmp15_, name) == 0;
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_free0 (_tmp15_);
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (_tmp16_) {
-#line 73 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- result = path;
-#line 73 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (components);
-#line 73 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (_path_it);
-#line 73 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (paths);
-#line 73 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return result;
-#line 639 "HierarchicalTagIndex.c"
- }
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (components);
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_free0 (path);
-#line 645 "HierarchicalTagIndex.c"
- }
-#line 70 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (_path_it);
-#line 649 "HierarchicalTagIndex.c"
- }
-#line 77 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_assert_not_reached ();
-#line 65 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (paths);
-#line 655 "HierarchicalTagIndex.c"
-}
-
-
-static void
-_vala_array_add68 (gchar** * array,
- int* length,
- int* size,
- gchar* value)
-{
-#line 84 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if ((*length) == (*size)) {
-#line 84 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- *size = (*size) ? (2 * (*size)) : 4;
-#line 84 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- *array = g_renew (gchar*, *array, (*size) + 1);
-#line 671 "HierarchicalTagIndex.c"
- }
-#line 84 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- (*array)[(*length)++] = value;
-#line 84 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- (*array)[*length] = NULL;
-#line 677 "HierarchicalTagIndex.c"
-}
-
-
-gchar**
-hierarchical_tag_index_get_paths_for_names_array (HierarchicalTagIndex* self,
- gchar** names,
- int names_length1,
- int* result_length1)
-{
- gchar** result = NULL;
- gchar** _result_ = NULL;
- gchar** _tmp0_;
- gint _result__length1;
- gint __result__size_;
- gchar** _tmp5_;
- gint _tmp5__length1;
-#line 80 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (IS_HIERARCHICAL_TAG_INDEX (self), NULL);
-#line 81 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp0_ = g_new0 (gchar*, 0 + 1);
-#line 81 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _result_ = _tmp0_;
-#line 81 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _result__length1 = 0;
-#line 81 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- __result__size_ = _result__length1;
-#line 704 "HierarchicalTagIndex.c"
- {
- gchar** name_collection = NULL;
- gint name_collection_length1 = 0;
- gint _name_collection_size_ = 0;
- gint name_it = 0;
-#line 83 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- name_collection = names;
-#line 83 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- name_collection_length1 = names_length1;
-#line 83 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- for (name_it = 0; name_it < names_length1; name_it = name_it + 1) {
-#line 716 "HierarchicalTagIndex.c"
- gchar* _tmp1_;
- gchar* name = NULL;
-#line 83 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp1_ = g_strdup (name_collection[name_it]);
-#line 83 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- name = _tmp1_;
-#line 723 "HierarchicalTagIndex.c"
- {
- gchar** _tmp2_;
- gint _tmp2__length1;
- const gchar* _tmp3_;
- gchar* _tmp4_;
-#line 84 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp2_ = _result_;
-#line 84 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp2__length1 = _result__length1;
-#line 84 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp3_ = name;
-#line 84 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp4_ = hierarchical_tag_index_get_path_for_name (self, _tmp3_);
-#line 84 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _vala_array_add68 (&_result_, &_result__length1, &__result__size_, _tmp4_);
-#line 83 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_free0 (name);
-#line 741 "HierarchicalTagIndex.c"
- }
- }
- }
-#line 86 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp5_ = _result_;
-#line 86 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _tmp5__length1 = _result__length1;
-#line 86 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (result_length1) {
-#line 86 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- *result_length1 = _tmp5__length1;
-#line 753 "HierarchicalTagIndex.c"
- }
-#line 86 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- result = _tmp5_;
-#line 86 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return result;
-#line 759 "HierarchicalTagIndex.c"
-}
-
-
-static void
-value_hierarchical_tag_index_init (GValue* value)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- value->data[0].v_pointer = NULL;
-#line 768 "HierarchicalTagIndex.c"
-}
-
-
-static void
-value_hierarchical_tag_index_free_value (GValue* value)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (value->data[0].v_pointer) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- hierarchical_tag_index_unref (value->data[0].v_pointer);
-#line 779 "HierarchicalTagIndex.c"
- }
-}
-
-
-static void
-value_hierarchical_tag_index_copy_value (const GValue* src_value,
- GValue* dest_value)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (src_value->data[0].v_pointer) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- dest_value->data[0].v_pointer = hierarchical_tag_index_ref (src_value->data[0].v_pointer);
-#line 792 "HierarchicalTagIndex.c"
- } else {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- dest_value->data[0].v_pointer = NULL;
-#line 796 "HierarchicalTagIndex.c"
- }
-}
-
-
-static gpointer
-value_hierarchical_tag_index_peek_pointer (const GValue* value)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return value->data[0].v_pointer;
-#line 806 "HierarchicalTagIndex.c"
-}
-
-
-static gchar*
-value_hierarchical_tag_index_collect_value (GValue* value,
- guint n_collect_values,
- GTypeCValue* collect_values,
- guint collect_flags)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (collect_values[0].v_pointer) {
-#line 818 "HierarchicalTagIndex.c"
- HierarchicalTagIndex * object;
- object = collect_values[0].v_pointer;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (object->parent_instance.g_class == NULL) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
-#line 825 "HierarchicalTagIndex.c"
- } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
-#line 829 "HierarchicalTagIndex.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- value->data[0].v_pointer = hierarchical_tag_index_ref (object);
-#line 833 "HierarchicalTagIndex.c"
- } else {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- value->data[0].v_pointer = NULL;
-#line 837 "HierarchicalTagIndex.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return NULL;
-#line 841 "HierarchicalTagIndex.c"
-}
-
-
-static gchar*
-value_hierarchical_tag_index_lcopy_value (const GValue* value,
- guint n_collect_values,
- GTypeCValue* collect_values,
- guint collect_flags)
-{
- HierarchicalTagIndex ** object_p;
- object_p = collect_values[0].v_pointer;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (!object_p) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
-#line 857 "HierarchicalTagIndex.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (!value->data[0].v_pointer) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- *object_p = NULL;
-#line 863 "HierarchicalTagIndex.c"
- } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- *object_p = value->data[0].v_pointer;
-#line 867 "HierarchicalTagIndex.c"
- } else {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- *object_p = hierarchical_tag_index_ref (value->data[0].v_pointer);
-#line 871 "HierarchicalTagIndex.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return NULL;
-#line 875 "HierarchicalTagIndex.c"
-}
-
-
-GParamSpec*
-param_spec_hierarchical_tag_index (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags)
-{
- ParamSpecHierarchicalTagIndex* spec;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (g_type_is_a (object_type, TYPE_HIERARCHICAL_TAG_INDEX), NULL);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- G_PARAM_SPEC (spec)->value_type = object_type;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return G_PARAM_SPEC (spec);
-#line 895 "HierarchicalTagIndex.c"
-}
-
-
-gpointer
-value_get_hierarchical_tag_index (const GValue* value)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_HIERARCHICAL_TAG_INDEX), NULL);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return value->data[0].v_pointer;
-#line 906 "HierarchicalTagIndex.c"
-}
-
-
-void
-value_set_hierarchical_tag_index (GValue* value,
- gpointer v_object)
-{
- HierarchicalTagIndex * old;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_HIERARCHICAL_TAG_INDEX));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- old = value->data[0].v_pointer;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (v_object) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_HIERARCHICAL_TAG_INDEX));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- value->data[0].v_pointer = v_object;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- hierarchical_tag_index_ref (value->data[0].v_pointer);
-#line 929 "HierarchicalTagIndex.c"
- } else {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- value->data[0].v_pointer = NULL;
-#line 933 "HierarchicalTagIndex.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (old) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- hierarchical_tag_index_unref (old);
-#line 939 "HierarchicalTagIndex.c"
- }
-}
-
-
-void
-value_take_hierarchical_tag_index (GValue* value,
- gpointer v_object)
-{
- HierarchicalTagIndex * old;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_HIERARCHICAL_TAG_INDEX));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- old = value->data[0].v_pointer;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (v_object) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_HIERARCHICAL_TAG_INDEX));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- value->data[0].v_pointer = v_object;
-#line 961 "HierarchicalTagIndex.c"
- } else {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- value->data[0].v_pointer = NULL;
-#line 965 "HierarchicalTagIndex.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (old) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- hierarchical_tag_index_unref (old);
-#line 971 "HierarchicalTagIndex.c"
- }
-}
-
-
-static void
-hierarchical_tag_index_class_init (HierarchicalTagIndexClass * klass)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- hierarchical_tag_index_parent_class = g_type_class_peek_parent (klass);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- ((HierarchicalTagIndexClass *) klass)->finalize = hierarchical_tag_index_finalize;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_type_class_add_private (klass, sizeof (HierarchicalTagIndexPrivate));
-#line 985 "HierarchicalTagIndex.c"
-}
-
-
-static void
-hierarchical_tag_index_instance_init (HierarchicalTagIndex * self)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- self->priv = HIERARCHICAL_TAG_INDEX_GET_PRIVATE (self);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- self->ref_count = 1;
-#line 996 "HierarchicalTagIndex.c"
-}
-
-
-static void
-hierarchical_tag_index_finalize (HierarchicalTagIndex * obj)
-{
- HierarchicalTagIndex * self;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_HIERARCHICAL_TAG_INDEX, HierarchicalTagIndex);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_signal_handlers_destroy (self);
-#line 8 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (self->priv->tag_table);
-#line 9 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- _g_object_unref0 (self->priv->known_paths);
-#line 1012 "HierarchicalTagIndex.c"
-}
-
-
-GType
-hierarchical_tag_index_get_type (void)
-{
- static volatile gsize hierarchical_tag_index_type_id__volatile = 0;
- if (g_once_init_enter (&hierarchical_tag_index_type_id__volatile)) {
- static const GTypeValueTable g_define_type_value_table = { value_hierarchical_tag_index_init, value_hierarchical_tag_index_free_value, value_hierarchical_tag_index_copy_value, value_hierarchical_tag_index_peek_pointer, "p", value_hierarchical_tag_index_collect_value, "p", value_hierarchical_tag_index_lcopy_value };
- static const GTypeInfo g_define_type_info = { sizeof (HierarchicalTagIndexClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) hierarchical_tag_index_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (HierarchicalTagIndex), 0, (GInstanceInitFunc) hierarchical_tag_index_instance_init, &g_define_type_value_table };
- static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
- GType hierarchical_tag_index_type_id;
- hierarchical_tag_index_type_id = g_type_register_fundamental (g_type_fundamental_next (), "HierarchicalTagIndex", &g_define_type_info, &g_define_type_fundamental_info, 0);
- g_once_init_leave (&hierarchical_tag_index_type_id__volatile, hierarchical_tag_index_type_id);
- }
- return hierarchical_tag_index_type_id__volatile;
-}
-
-
-gpointer
-hierarchical_tag_index_ref (gpointer instance)
-{
- HierarchicalTagIndex * self;
- self = instance;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_atomic_int_inc (&self->ref_count);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- return instance;
-#line 1041 "HierarchicalTagIndex.c"
-}
-
-
-void
-hierarchical_tag_index_unref (gpointer instance)
-{
- HierarchicalTagIndex * self;
- self = instance;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- if (g_atomic_int_dec_and_test (&self->ref_count)) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- HIERARCHICAL_TAG_INDEX_GET_CLASS (self)->finalize (self);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagIndex.vala"
- g_type_free_instance ((GTypeInstance *) self);
-#line 1056 "HierarchicalTagIndex.c"
- }
-}
-
-
-static void
-_vala_array_destroy (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func)
-{
- if ((array != NULL) && (destroy_func != NULL)) {
- int i;
- for (i = 0; i < array_length; i = i + 1) {
- if (((gpointer*) array)[i] != NULL) {
- destroy_func (((gpointer*) array)[i]);
- }
- }
- }
-}
-
-
-static void
-_vala_array_free (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func)
-{
- _vala_array_destroy (array, array_length, destroy_func);
- g_free (array);
-}
-
-
-
diff --git a/src/tags/HierarchicalTagUtilities.c b/src/tags/HierarchicalTagUtilities.c
deleted file mode 100644
index 554ce6c..0000000
--- a/src/tags/HierarchicalTagUtilities.c
+++ /dev/null
@@ -1,2251 +0,0 @@
-/* HierarchicalTagUtilities.c generated by valac 0.40.4, the Vala compiler
- * generated from HierarchicalTagUtilities.vala, do not modify */
-
-/* Copyright 2016 Software Freedom Conservancy Inc.
- *
- * This software is licensed under the GNU LGPL (version 2.1 or later).
- * See the COPYING file in this distribution.
- */
-
-
-#include <glib.h>
-#include <glib-object.h>
-#include <stdlib.h>
-#include <string.h>
-#include <gee.h>
-#include <gobject/gvaluecollector.h>
-
-
-#define TYPE_HIERARCHICAL_TAG_UTILITIES (hierarchical_tag_utilities_get_type ())
-#define HIERARCHICAL_TAG_UTILITIES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HIERARCHICAL_TAG_UTILITIES, HierarchicalTagUtilities))
-#define HIERARCHICAL_TAG_UTILITIES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HIERARCHICAL_TAG_UTILITIES, HierarchicalTagUtilitiesClass))
-#define IS_HIERARCHICAL_TAG_UTILITIES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HIERARCHICAL_TAG_UTILITIES))
-#define IS_HIERARCHICAL_TAG_UTILITIES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HIERARCHICAL_TAG_UTILITIES))
-#define HIERARCHICAL_TAG_UTILITIES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HIERARCHICAL_TAG_UTILITIES, HierarchicalTagUtilitiesClass))
-
-typedef struct _HierarchicalTagUtilities HierarchicalTagUtilities;
-typedef struct _HierarchicalTagUtilitiesClass HierarchicalTagUtilitiesClass;
-typedef struct _HierarchicalTagUtilitiesPrivate HierarchicalTagUtilitiesPrivate;
-#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
-#define _g_free0(var) (var = (g_free (var), NULL))
-#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL)))
-#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
-
-#define TYPE_HIERARCHICAL_TAG_INDEX (hierarchical_tag_index_get_type ())
-#define HIERARCHICAL_TAG_INDEX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HIERARCHICAL_TAG_INDEX, HierarchicalTagIndex))
-#define HIERARCHICAL_TAG_INDEX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HIERARCHICAL_TAG_INDEX, HierarchicalTagIndexClass))
-#define IS_HIERARCHICAL_TAG_INDEX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HIERARCHICAL_TAG_INDEX))
-#define IS_HIERARCHICAL_TAG_INDEX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HIERARCHICAL_TAG_INDEX))
-#define HIERARCHICAL_TAG_INDEX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HIERARCHICAL_TAG_INDEX, HierarchicalTagIndexClass))
-
-typedef struct _HierarchicalTagIndex HierarchicalTagIndex;
-typedef struct _HierarchicalTagIndexClass HierarchicalTagIndexClass;
-#define _hierarchical_tag_index_unref0(var) ((var == NULL) ? NULL : (var = (hierarchical_tag_index_unref (var), NULL)))
-
-#define TYPE_DATA_COLLECTION (data_collection_get_type ())
-#define DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_COLLECTION, DataCollection))
-#define DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_COLLECTION, DataCollectionClass))
-#define IS_DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_COLLECTION))
-#define IS_DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_COLLECTION))
-#define DATA_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_COLLECTION, DataCollectionClass))
-
-typedef struct _DataCollection DataCollection;
-typedef struct _DataCollectionClass DataCollectionClass;
-
-#define TYPE_SOURCE_COLLECTION (source_collection_get_type ())
-#define SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_COLLECTION, SourceCollection))
-#define SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_COLLECTION, SourceCollectionClass))
-#define IS_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_COLLECTION))
-#define IS_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_COLLECTION))
-#define SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_COLLECTION, SourceCollectionClass))
-
-typedef struct _SourceCollection SourceCollection;
-typedef struct _SourceCollectionClass SourceCollectionClass;
-
-#define TYPE_DATABASE_SOURCE_COLLECTION (database_source_collection_get_type ())
-#define DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollection))
-#define DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass))
-#define IS_DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATABASE_SOURCE_COLLECTION))
-#define IS_DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATABASE_SOURCE_COLLECTION))
-#define DATABASE_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass))
-
-typedef struct _DatabaseSourceCollection DatabaseSourceCollection;
-typedef struct _DatabaseSourceCollectionClass DatabaseSourceCollectionClass;
-
-#define TYPE_CONTAINER_SOURCE_COLLECTION (container_source_collection_get_type ())
-#define CONTAINER_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection))
-#define CONTAINER_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollectionClass))
-#define IS_CONTAINER_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTAINER_SOURCE_COLLECTION))
-#define IS_CONTAINER_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTAINER_SOURCE_COLLECTION))
-#define CONTAINER_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollectionClass))
-
-typedef struct _ContainerSourceCollection ContainerSourceCollection;
-typedef struct _ContainerSourceCollectionClass ContainerSourceCollectionClass;
-
-#define TYPE_TAG_SOURCE_COLLECTION (tag_source_collection_get_type ())
-#define TAG_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollection))
-#define TAG_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollectionClass))
-#define IS_TAG_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG_SOURCE_COLLECTION))
-#define IS_TAG_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG_SOURCE_COLLECTION))
-#define TAG_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollectionClass))
-
-typedef struct _TagSourceCollection TagSourceCollection;
-typedef struct _TagSourceCollectionClass TagSourceCollectionClass;
-
-#define TYPE_DATA_OBJECT (data_object_get_type ())
-#define DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_OBJECT, DataObject))
-#define DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_OBJECT, DataObjectClass))
-#define IS_DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_OBJECT))
-#define IS_DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_OBJECT))
-#define DATA_OBJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_OBJECT, DataObjectClass))
-
-typedef struct _DataObject DataObject;
-typedef struct _DataObjectClass DataObjectClass;
-
-#define TYPE_DATA_SOURCE (data_source_get_type ())
-#define DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_SOURCE, DataSource))
-#define DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_SOURCE, DataSourceClass))
-#define IS_DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_SOURCE))
-#define IS_DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_SOURCE))
-#define DATA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_SOURCE, DataSourceClass))
-
-typedef struct _DataSource DataSource;
-typedef struct _DataSourceClass DataSourceClass;
-
-#define TYPE_TAG (tag_get_type ())
-#define TAG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG, Tag))
-#define TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG, TagClass))
-#define IS_TAG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG))
-#define IS_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG))
-#define TAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG, TagClass))
-
-typedef struct _Tag Tag;
-typedef struct _TagClass TagClass;
-typedef struct _ParamSpecHierarchicalTagUtilities ParamSpecHierarchicalTagUtilities;
-#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
-#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
-#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
-#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
-
-struct _HierarchicalTagUtilities {
- GTypeInstance parent_instance;
- volatile int ref_count;
- HierarchicalTagUtilitiesPrivate * priv;
-};
-
-struct _HierarchicalTagUtilitiesClass {
- GTypeClass parent_class;
- void (*finalize) (HierarchicalTagUtilities *self);
-};
-
-struct _ParamSpecHierarchicalTagUtilities {
- GParamSpec parent_instance;
-};
-
-
-static gpointer hierarchical_tag_utilities_parent_class = NULL;
-extern TagSourceCollection* tag_global;
-
-gpointer hierarchical_tag_utilities_ref (gpointer instance);
-void hierarchical_tag_utilities_unref (gpointer instance);
-GParamSpec* param_spec_hierarchical_tag_utilities (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_hierarchical_tag_utilities (GValue* value,
- gpointer v_object);
-void value_take_hierarchical_tag_utilities (GValue* value,
- gpointer v_object);
-gpointer value_get_hierarchical_tag_utilities (const GValue* value);
-GType hierarchical_tag_utilities_get_type (void) G_GNUC_CONST;
-gchar* hierarchical_tag_utilities_flat_to_hierarchical (const gchar* name);
-#define TAG_PATH_SEPARATOR_STRING "/"
-gchar* hierarchical_tag_utilities_hierarchical_to_flat (const gchar* path);
-GeeList* hierarchical_tag_utilities_enumerate_path_components (const gchar* in_path);
-GeeList* hierarchical_tag_utilities_enumerate_parent_paths (const gchar* in_path);
-gchar* hierarchical_tag_utilities_join_path_components (gchar** path_components,
- int path_components_length1);
-gchar* hierarchical_tag_utilities_get_basename (const gchar* in_path);
-gchar* hierarchical_tag_utilities_canonicalize (const gchar* in_tag,
- const gchar* foreign_separator);
-gchar* hierarchical_tag_utilities_make_flat_tag_safe (const gchar* in_tag);
-gpointer hierarchical_tag_index_ref (gpointer instance);
-void hierarchical_tag_index_unref (gpointer instance);
-GParamSpec* param_spec_hierarchical_tag_index (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_hierarchical_tag_index (GValue* value,
- gpointer v_object);
-void value_take_hierarchical_tag_index (GValue* value,
- gpointer v_object);
-gpointer value_get_hierarchical_tag_index (const GValue* value);
-GType hierarchical_tag_index_get_type (void) G_GNUC_CONST;
-HierarchicalTagIndex* hierarchical_tag_utilities_process_hierarchical_import_keywords (GeeCollection* h_keywords);
-HierarchicalTagIndex* hierarchical_tag_index_new (void);
-HierarchicalTagIndex* hierarchical_tag_index_construct (GType object_type);
-gboolean hierarchical_tag_index_is_path_known (HierarchicalTagIndex* self,
- const gchar* path);
-void hierarchical_tag_index_add_path (HierarchicalTagIndex* self,
- const gchar* tag,
- const gchar* path);
-gchar* hierarchical_tag_utilities_get_root_path_form (const gchar* client_path);
-gpointer data_collection_ref (gpointer instance);
-void data_collection_unref (gpointer instance);
-GParamSpec* param_spec_data_collection (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_data_collection (GValue* value,
- gpointer v_object);
-void value_take_data_collection (GValue* value,
- gpointer v_object);
-gpointer value_get_data_collection (const GValue* value);
-GType data_collection_get_type (void) G_GNUC_CONST;
-GType source_collection_get_type (void) G_GNUC_CONST;
-GType database_source_collection_get_type (void) G_GNUC_CONST;
-GType container_source_collection_get_type (void) G_GNUC_CONST;
-GType tag_source_collection_get_type (void) G_GNUC_CONST;
-gboolean tag_source_collection_exists (TagSourceCollection* self,
- const gchar* name,
- gboolean treat_htags_as_root);
-void hierarchical_tag_utilities_cleanup_root_path (const gchar* path);
-GType data_object_get_type (void) G_GNUC_CONST;
-GType data_source_get_type (void) G_GNUC_CONST;
-GType tag_get_type (void) G_GNUC_CONST;
-Tag* tag_for_path (const gchar* name);
-GeeList* tag_get_hierarchical_children (Tag* self);
-void tag_flatten (Tag* self);
-HierarchicalTagUtilities* hierarchical_tag_utilities_new (void);
-HierarchicalTagUtilities* hierarchical_tag_utilities_construct (GType object_type);
-static void hierarchical_tag_utilities_finalize (HierarchicalTagUtilities * obj);
-static void _vala_array_destroy (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func);
-static void _vala_array_free (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func);
-static gint _vala_array_length (gpointer array);
-
-
-/**
- * converts a flat tag name 'name' (e.g., "Animals") to a tag path compatible with the
- * hierarchical tag data model (e.g., "/Animals"). if 'name' is already a path compatible with
- * the hierarchical data model, 'name' is returned untouched
- */
-gchar*
-hierarchical_tag_utilities_flat_to_hierarchical (const gchar* name)
-{
- gchar* result = NULL;
-#line 14 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (name != NULL, NULL);
-#line 15 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!g_str_has_prefix (name, TAG_PATH_SEPARATOR_STRING)) {
-#line 248 "HierarchicalTagUtilities.c"
- gchar* _tmp0_;
-#line 16 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = g_strconcat (TAG_PATH_SEPARATOR_STRING, name, NULL);
-#line 16 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = _tmp0_;
-#line 16 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 256 "HierarchicalTagUtilities.c"
- } else {
- gchar* _tmp1_;
-#line 18 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp1_ = g_strdup (name);
-#line 18 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = _tmp1_;
-#line 18 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 265 "HierarchicalTagUtilities.c"
- }
-}
-
-
-/**
- * converts a hierarchical tag path 'path' (e.g., "/Animals") to a flat tag name
- * (e.g., "Animals"); if 'path' is already a flat tag name, 'path' is returned untouched; note
- * that 'path' must be a top-level path (i.e., "/Animals" not "/Animals/Mammals/…") with
- * only one path component; invoking this method with a 'path' argument other than a top-level
- * path will cause an assertion failure.
- */
-static glong
-string_strnlen (gchar* str,
- glong maxlen)
-{
- glong result = 0L;
- gchar* end = NULL;
- gchar* _tmp0_;
- gchar* _tmp1_;
-#line 1336 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = memchr (str, 0, (gsize) maxlen);
-#line 1336 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- end = _tmp0_;
-#line 1337 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp1_ = end;
-#line 1337 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp1_ == NULL) {
-#line 1338 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = maxlen;
-#line 1338 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 297 "HierarchicalTagUtilities.c"
- } else {
- gchar* _tmp2_;
-#line 1340 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp2_ = end;
-#line 1340 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = (glong) (_tmp2_ - str);
-#line 1340 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 306 "HierarchicalTagUtilities.c"
- }
-}
-
-
-static gchar*
-string_substring (const gchar* self,
- glong offset,
- glong len)
-{
- gchar* result = NULL;
- glong string_length = 0L;
- gboolean _tmp0_ = FALSE;
- glong _tmp6_;
- gchar* _tmp7_;
-#line 1347 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (self != NULL, NULL);
-#line 1349 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (offset >= ((glong) 0)) {
-#line 1349 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = len >= ((glong) 0);
-#line 327 "HierarchicalTagUtilities.c"
- } else {
-#line 1349 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = FALSE;
-#line 331 "HierarchicalTagUtilities.c"
- }
-#line 1349 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp0_) {
-#line 1351 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- string_length = string_strnlen ((gchar*) self, offset + len);
-#line 337 "HierarchicalTagUtilities.c"
- } else {
- gint _tmp1_;
- gint _tmp2_;
-#line 1353 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp1_ = strlen (self);
-#line 1353 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp2_ = _tmp1_;
-#line 1353 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- string_length = (glong) _tmp2_;
-#line 347 "HierarchicalTagUtilities.c"
- }
-#line 1356 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (offset < ((glong) 0)) {
-#line 351 "HierarchicalTagUtilities.c"
- glong _tmp3_;
-#line 1357 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp3_ = string_length;
-#line 1357 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- offset = _tmp3_ + offset;
-#line 1358 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (offset >= ((glong) 0), NULL);
-#line 359 "HierarchicalTagUtilities.c"
- } else {
- glong _tmp4_;
-#line 1360 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp4_ = string_length;
-#line 1360 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (offset <= _tmp4_, NULL);
-#line 366 "HierarchicalTagUtilities.c"
- }
-#line 1362 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (len < ((glong) 0)) {
-#line 370 "HierarchicalTagUtilities.c"
- glong _tmp5_;
-#line 1363 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp5_ = string_length;
-#line 1363 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- len = _tmp5_ - offset;
-#line 376 "HierarchicalTagUtilities.c"
- }
-#line 1365 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp6_ = string_length;
-#line 1365 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail ((offset + len) <= _tmp6_, NULL);
-#line 1366 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp7_ = g_strndup (((gchar*) self) + offset, (gsize) len);
-#line 1366 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = _tmp7_;
-#line 1366 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 388 "HierarchicalTagUtilities.c"
-}
-
-
-gchar*
-hierarchical_tag_utilities_hierarchical_to_flat (const gchar* path)
-{
- gchar* result = NULL;
-#line 28 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (path != NULL, NULL);
-#line 29 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (g_str_has_prefix (path, TAG_PATH_SEPARATOR_STRING)) {
-#line 400 "HierarchicalTagUtilities.c"
- GeeList* _tmp0_;
- GeeList* _tmp1_;
- gint _tmp2_;
- gint _tmp3_;
- gchar* _tmp4_;
-#line 30 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = hierarchical_tag_utilities_enumerate_path_components (path);
-#line 30 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp1_ = _tmp0_;
-#line 30 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp2_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 30 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp3_ = _tmp2_;
-#line 30 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _vala_assert (_tmp3_ == 1, "enumerate_path_components(path).size == 1");
-#line 30 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (_tmp1_);
-#line 32 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_ = string_substring (path, (glong) 1, (glong) -1);
-#line 32 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = _tmp4_;
-#line 32 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 424 "HierarchicalTagUtilities.c"
- } else {
- gchar* _tmp5_;
-#line 34 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5_ = g_strdup (path);
-#line 34 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = _tmp5_;
-#line 34 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 433 "HierarchicalTagUtilities.c"
- }
-}
-
-
-/**
- * given a path 'path', generate all parent paths of 'path' and return them in sorted order,
- * from most basic to most derived. For example, if 'path' == "/Animals/Mammals/Elephant",
- * the list { "/Animals", "/Animals/Mammals" } is returned
- */
-GeeList*
-hierarchical_tag_utilities_enumerate_parent_paths (const gchar* in_path)
-{
- GeeList* result = NULL;
- gchar* path = NULL;
- gchar* _tmp0_;
- GeeList* _result_ = NULL;
- GeeArrayList* _tmp1_;
- gchar* accumulator = NULL;
- gchar* _tmp2_;
-#line 43 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (in_path != NULL, NULL);
-#line 44 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = hierarchical_tag_utilities_flat_to_hierarchical (in_path);
-#line 44 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- path = _tmp0_;
-#line 46 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp1_ = gee_array_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL);
-#line 46 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _result_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_LIST, GeeList);
-#line 48 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp2_ = g_strdup ("");
-#line 48 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- accumulator = _tmp2_;
-#line 467 "HierarchicalTagUtilities.c"
- {
- GeeList* _component_list = NULL;
- const gchar* _tmp3_;
- GeeList* _tmp4_;
- gint _component_size = 0;
- GeeList* _tmp5_;
- gint _tmp6_;
- gint _tmp7_;
- gint _component_index = 0;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp3_ = path;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_ = hierarchical_tag_utilities_enumerate_path_components (_tmp3_);
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _component_list = _tmp4_;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5_ = _component_list;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp6_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp7_ = _tmp6_;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _component_size = _tmp7_;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _component_index = -1;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- while (TRUE) {
-#line 495 "HierarchicalTagUtilities.c"
- gint _tmp8_;
- gint _tmp9_;
- gint _tmp10_;
- gchar* component = NULL;
- GeeList* _tmp11_;
- gint _tmp12_;
- gpointer _tmp13_;
- const gchar* _tmp14_;
- const gchar* _tmp15_;
- gchar* _tmp16_;
- gchar* _tmp17_;
- gchar* _tmp18_;
- const gchar* _tmp19_;
- const gchar* _tmp20_;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp8_ = _component_index;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _component_index = _tmp8_ + 1;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp9_ = _component_index;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp10_ = _component_size;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!(_tmp9_ < _tmp10_)) {
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- break;
-#line 522 "HierarchicalTagUtilities.c"
- }
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp11_ = _component_list;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp12_ = _component_index;
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp13_ = gee_list_get (_tmp11_, _tmp12_);
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- component = (gchar*) _tmp13_;
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp14_ = accumulator;
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp15_ = component;
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp16_ = g_strconcat (TAG_PATH_SEPARATOR_STRING, _tmp15_, NULL);
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp17_ = _tmp16_;
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp18_ = g_strconcat (_tmp14_, _tmp17_, NULL);
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (accumulator);
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- accumulator = _tmp18_;
-#line 50 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (_tmp17_);
-#line 51 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp19_ = accumulator;
-#line 51 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp20_ = path;
-#line 51 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (g_strcmp0 (_tmp19_, _tmp20_) != 0) {
-#line 554 "HierarchicalTagUtilities.c"
- GeeList* _tmp21_;
- const gchar* _tmp22_;
-#line 52 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp21_ = _result_;
-#line 52 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp22_ = accumulator;
-#line 52 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- gee_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp21_, GEE_TYPE_COLLECTION, GeeCollection), _tmp22_);
-#line 563 "HierarchicalTagUtilities.c"
- }
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (component);
-#line 567 "HierarchicalTagUtilities.c"
- }
-#line 49 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (_component_list);
-#line 571 "HierarchicalTagUtilities.c"
- }
-#line 55 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = _result_;
-#line 55 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (accumulator);
-#line 55 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (path);
-#line 55 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 581 "HierarchicalTagUtilities.c"
-}
-
-
-/**
- * given a path 'path', enumerate all of the components of 'path' and return them in
- * order, excluding the path component separator. For example if
- * 'path' == "/Animals/Mammals/Elephant" the list { "Animals", "Mammals", "Elephant" } will
- * be returned
- */
-GeeList*
-hierarchical_tag_utilities_enumerate_path_components (const gchar* in_path)
-{
- GeeList* result = NULL;
- gchar* path = NULL;
- gchar* _tmp0_;
- GeeArrayList* components = NULL;
- GeeArrayList* _tmp1_;
- gchar** raw_components = NULL;
- const gchar* _tmp2_;
- gchar** _tmp3_;
- gchar** _tmp4_;
- gint raw_components_length1;
- gint _raw_components_size_;
- gchar** _tmp5_;
- gint _tmp5__length1;
- GeeArrayList* _tmp10_;
- gint _tmp11_;
- gint _tmp12_;
-#line 64 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (in_path != NULL, NULL);
-#line 65 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = hierarchical_tag_utilities_flat_to_hierarchical (in_path);
-#line 65 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- path = _tmp0_;
-#line 67 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp1_ = gee_array_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL);
-#line 67 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- components = _tmp1_;
-#line 69 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp2_ = path;
-#line 69 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_ = _tmp3_ = g_strsplit (_tmp2_, TAG_PATH_SEPARATOR_STRING, 0);
-#line 69 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- raw_components = _tmp4_;
-#line 69 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- raw_components_length1 = _vala_array_length (_tmp3_);
-#line 69 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _raw_components_size_ = raw_components_length1;
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5_ = raw_components;
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5__length1 = raw_components_length1;
-#line 634 "HierarchicalTagUtilities.c"
- {
- gchar** component_collection = NULL;
- gint component_collection_length1 = 0;
- gint _component_collection_size_ = 0;
- gint component_it = 0;
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- component_collection = _tmp5_;
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- component_collection_length1 = _tmp5__length1;
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- for (component_it = 0; component_it < _tmp5__length1; component_it = component_it + 1) {
-#line 646 "HierarchicalTagUtilities.c"
- gchar* _tmp6_;
- gchar* component = NULL;
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp6_ = g_strdup (component_collection[component_it]);
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- component = _tmp6_;
-#line 653 "HierarchicalTagUtilities.c"
- {
- const gchar* _tmp7_;
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp7_ = component;
-#line 72 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (g_strcmp0 (_tmp7_, "") != 0) {
-#line 660 "HierarchicalTagUtilities.c"
- GeeArrayList* _tmp8_;
- const gchar* _tmp9_;
-#line 73 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp8_ = components;
-#line 73 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp9_ = component;
-#line 73 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp9_);
-#line 669 "HierarchicalTagUtilities.c"
- }
-#line 71 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (component);
-#line 673 "HierarchicalTagUtilities.c"
- }
- }
- }
-#line 76 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp10_ = components;
-#line 76 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp11_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection));
-#line 76 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp12_ = _tmp11_;
-#line 76 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _vala_assert (_tmp12_ > 0, "components.size > 0");
-#line 78 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = G_TYPE_CHECK_INSTANCE_CAST (components, GEE_TYPE_LIST, GeeList);
-#line 78 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- raw_components = (_vala_array_free (raw_components, raw_components_length1, (GDestroyNotify) g_free), NULL);
-#line 78 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (path);
-#line 78 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 693 "HierarchicalTagUtilities.c"
-}
-
-
-/**
- * given a list of path elements, create a fully qualified path string.
- * For example if 'path_elements' is the list { "Animals", "Mammals", "Elephant" }
- * the path "/Animals/Mammals/Elephant" will be returned
- */
-static gchar*
-_vala_g_strjoinv (const gchar* separator,
- gchar** str_array,
- int str_array_length1)
-{
- gchar* result = NULL;
- gboolean _tmp0_ = FALSE;
-#line 1092 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (separator == NULL) {
-#line 1093 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- separator = "";
-#line 713 "HierarchicalTagUtilities.c"
- }
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (str_array != NULL) {
-#line 717 "HierarchicalTagUtilities.c"
- gboolean _tmp1_ = FALSE;
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (str_array_length1 > 0) {
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp1_ = TRUE;
-#line 723 "HierarchicalTagUtilities.c"
- } else {
- gboolean _tmp2_ = FALSE;
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (str_array_length1 == -1) {
-#line 728 "HierarchicalTagUtilities.c"
- const gchar* _tmp3_;
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp3_ = str_array[0];
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp2_ = _tmp3_ != NULL;
-#line 734 "HierarchicalTagUtilities.c"
- } else {
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp2_ = FALSE;
-#line 738 "HierarchicalTagUtilities.c"
- }
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp1_ = _tmp2_;
-#line 742 "HierarchicalTagUtilities.c"
- }
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = _tmp1_;
-#line 746 "HierarchicalTagUtilities.c"
- } else {
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = FALSE;
-#line 750 "HierarchicalTagUtilities.c"
- }
-#line 1095 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp0_) {
-#line 754 "HierarchicalTagUtilities.c"
- gint i = 0;
- gsize len = 0UL;
- gint _tmp20_;
- gint _tmp22_;
- gint _tmp23_;
- gsize _tmp24_;
- gint _tmp25_;
- gint _tmp26_;
- gint _tmp27_;
- const gchar* res = NULL;
- gsize _tmp28_;
- void* _tmp29_;
- void* ptr = NULL;
- const gchar* _tmp30_;
- const gchar* _tmp31_;
- void* _tmp32_;
- const gchar* _tmp45_;
-#line 1097 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- len = (gsize) 1;
-#line 774 "HierarchicalTagUtilities.c"
- {
- gboolean _tmp4_ = FALSE;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- i = 0;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp4_ = TRUE;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- while (TRUE) {
-#line 783 "HierarchicalTagUtilities.c"
- gboolean _tmp6_ = FALSE;
- gboolean _tmp7_ = FALSE;
- gint _tmp12_ = 0;
- gint _tmp13_;
- const gchar* _tmp14_;
- gsize _tmp19_;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (!_tmp4_) {
-#line 792 "HierarchicalTagUtilities.c"
- gint _tmp5_;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp5_ = i;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- i = _tmp5_ + 1;
-#line 798 "HierarchicalTagUtilities.c"
- }
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp4_ = FALSE;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (str_array_length1 != -1) {
-#line 804 "HierarchicalTagUtilities.c"
- gint _tmp8_;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp8_ = i;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp7_ = _tmp8_ < str_array_length1;
-#line 810 "HierarchicalTagUtilities.c"
- } else {
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp7_ = FALSE;
-#line 814 "HierarchicalTagUtilities.c"
- }
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp7_) {
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp6_ = TRUE;
-#line 820 "HierarchicalTagUtilities.c"
- } else {
- gboolean _tmp9_ = FALSE;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (str_array_length1 == -1) {
-#line 825 "HierarchicalTagUtilities.c"
- gint _tmp10_;
- const gchar* _tmp11_;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp10_ = i;
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp11_ = str_array[_tmp10_];
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp9_ = _tmp11_ != NULL;
-#line 834 "HierarchicalTagUtilities.c"
- } else {
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp9_ = FALSE;
-#line 838 "HierarchicalTagUtilities.c"
- }
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp6_ = _tmp9_;
-#line 842 "HierarchicalTagUtilities.c"
- }
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (!_tmp6_) {
-#line 1098 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- break;
-#line 848 "HierarchicalTagUtilities.c"
- }
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp13_ = i;
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp14_ = str_array[_tmp13_];
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp14_ != NULL) {
-#line 856 "HierarchicalTagUtilities.c"
- gint _tmp15_;
- const gchar* _tmp16_;
- gint _tmp17_;
- gint _tmp18_;
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp15_ = i;
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp16_ = str_array[_tmp15_];
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp17_ = strlen ((const gchar*) _tmp16_);
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp18_ = _tmp17_;
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp12_ = _tmp18_;
-#line 871 "HierarchicalTagUtilities.c"
- } else {
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp12_ = 0;
-#line 875 "HierarchicalTagUtilities.c"
- }
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp19_ = len;
-#line 1099 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- len = _tmp19_ + _tmp12_;
-#line 881 "HierarchicalTagUtilities.c"
- }
- }
-#line 1101 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp20_ = i;
-#line 1101 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp20_ == 0) {
-#line 888 "HierarchicalTagUtilities.c"
- gchar* _tmp21_;
-#line 1102 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp21_ = g_strdup ("");
-#line 1102 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = _tmp21_;
-#line 1102 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 896 "HierarchicalTagUtilities.c"
- }
-#line 1104 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp22_ = i;
-#line 1104 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- str_array_length1 = _tmp22_;
-#line 1104 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp23_ = str_array_length1;
-#line 1105 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp24_ = len;
-#line 1105 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp25_ = strlen ((const gchar*) separator);
-#line 1105 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp26_ = _tmp25_;
-#line 1105 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp27_ = i;
-#line 1105 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- len = _tmp24_ + (_tmp26_ * (_tmp27_ - 1));
-#line 1107 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp28_ = len;
-#line 1107 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp29_ = g_malloc (_tmp28_);
-#line 1107 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- res = _tmp29_;
-#line 1108 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp30_ = res;
-#line 1108 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp31_ = str_array[0];
-#line 1108 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp32_ = g_stpcpy ((void*) _tmp30_, (const gchar*) _tmp31_);
-#line 1108 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- ptr = _tmp32_;
-#line 928 "HierarchicalTagUtilities.c"
- {
- gboolean _tmp33_ = FALSE;
-#line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- i = 1;
-#line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp33_ = TRUE;
-#line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- while (TRUE) {
-#line 937 "HierarchicalTagUtilities.c"
- gint _tmp35_;
- void* _tmp36_;
- void* _tmp37_;
- const gchar* _tmp38_ = NULL;
- gint _tmp39_;
- const gchar* _tmp40_;
- void* _tmp43_;
- void* _tmp44_;
-#line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (!_tmp33_) {
-#line 948 "HierarchicalTagUtilities.c"
- gint _tmp34_;
-#line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp34_ = i;
-#line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- i = _tmp34_ + 1;
-#line 954 "HierarchicalTagUtilities.c"
- }
-#line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp33_ = FALSE;
-#line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp35_ = i;
-#line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (!(_tmp35_ < str_array_length1)) {
-#line 1109 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- break;
-#line 964 "HierarchicalTagUtilities.c"
- }
-#line 1110 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp36_ = ptr;
-#line 1110 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp37_ = g_stpcpy (_tmp36_, (const gchar*) separator);
-#line 1110 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- ptr = _tmp37_;
-#line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp39_ = i;
-#line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp40_ = str_array[_tmp39_];
-#line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp40_ != NULL) {
-#line 978 "HierarchicalTagUtilities.c"
- gint _tmp41_;
- const gchar* _tmp42_;
-#line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp41_ = i;
-#line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp42_ = str_array[_tmp41_];
-#line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp38_ = (const gchar*) _tmp42_;
-#line 987 "HierarchicalTagUtilities.c"
- } else {
-#line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp38_ = "";
-#line 991 "HierarchicalTagUtilities.c"
- }
-#line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp43_ = ptr;
-#line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp44_ = g_stpcpy (_tmp43_, _tmp38_);
-#line 1111 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- ptr = _tmp44_;
-#line 999 "HierarchicalTagUtilities.c"
- }
- }
-#line 1114 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp45_ = res;
-#line 1114 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- res = NULL;
-#line 1114 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = (gchar*) _tmp45_;
-#line 1114 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 1010 "HierarchicalTagUtilities.c"
- } else {
- gchar* _tmp46_;
-#line 1116 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp46_ = g_strdup ("");
-#line 1116 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = _tmp46_;
-#line 1116 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 1019 "HierarchicalTagUtilities.c"
- }
-}
-
-
-gchar*
-hierarchical_tag_utilities_join_path_components (gchar** path_components,
- int path_components_length1)
-{
- gchar* result = NULL;
- gchar* tmp = NULL;
- gchar* _tmp0_;
- gchar* _tmp1_;
- const gchar* _tmp2_;
- gchar* _tmp3_;
- gchar** _tmp4_;
- gchar** _tmp5_;
- gint _tmp5__length1;
- gchar* _tmp6_;
- gchar* _tmp7_;
-#line 87 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (path_components_length1 <= 0) {
-#line 88 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = NULL;
-#line 88 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 1045 "HierarchicalTagUtilities.c"
- }
-#line 89 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = _vala_g_strjoinv (TAG_PATH_SEPARATOR_STRING, path_components, path_components_length1);
-#line 89 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- tmp = _tmp0_;
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp1_ = g_strdup ("");
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp2_ = tmp;
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp3_ = g_strdup (_tmp2_);
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_ = g_new0 (gchar*, 2 + 1);
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_[0] = _tmp1_;
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_[1] = _tmp3_;
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5_ = _tmp4_;
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5__length1 = 2;
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp6_ = _vala_g_strjoinv (TAG_PATH_SEPARATOR_STRING, _tmp5_, 2);
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp7_ = _tmp6_;
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5_ = (_vala_array_free (_tmp5_, _tmp5__length1, (GDestroyNotify) g_free), NULL);
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = _tmp7_;
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (tmp);
-#line 90 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 1079 "HierarchicalTagUtilities.c"
-}
-
-
-gchar*
-hierarchical_tag_utilities_get_basename (const gchar* in_path)
-{
- gchar* result = NULL;
- gchar* path = NULL;
- gchar* _tmp0_;
- GeeList* components = NULL;
- GeeList* _tmp1_;
- gchar* basename = NULL;
- gint _tmp2_;
- gint _tmp3_;
- gpointer _tmp4_;
-#line 93 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (in_path != NULL, NULL);
-#line 94 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = hierarchical_tag_utilities_flat_to_hierarchical (in_path);
-#line 94 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- path = _tmp0_;
-#line 96 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp1_ = hierarchical_tag_utilities_enumerate_path_components (path);
-#line 96 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- components = _tmp1_;
-#line 98 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp2_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (components, GEE_TYPE_COLLECTION, GeeCollection));
-#line 98 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp3_ = _tmp2_;
-#line 98 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_ = gee_list_get (components, _tmp3_ - 1);
-#line 98 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- basename = (gchar*) _tmp4_;
-#line 100 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = basename;
-#line 100 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (components);
-#line 100 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (path);
-#line 100 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 1121 "HierarchicalTagUtilities.c"
-}
-
-
-static gchar*
-string_replace (const gchar* self,
- const gchar* old,
- const gchar* replacement)
-{
- gchar* result = NULL;
- gboolean _tmp0_ = FALSE;
- gboolean _tmp1_ = FALSE;
- GError * _inner_error_ = NULL;
-#line 1421 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (self != NULL, NULL);
-#line 1421 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (old != NULL, NULL);
-#line 1421 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (replacement != NULL, NULL);
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if ((*((gchar*) self)) == '\0') {
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp1_ = TRUE;
-#line 1144 "HierarchicalTagUtilities.c"
- } else {
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp1_ = (*((gchar*) old)) == '\0';
-#line 1148 "HierarchicalTagUtilities.c"
- }
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp1_) {
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = TRUE;
-#line 1154 "HierarchicalTagUtilities.c"
- } else {
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = g_strcmp0 (old, replacement) == 0;
-#line 1158 "HierarchicalTagUtilities.c"
- }
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp0_) {
-#line 1162 "HierarchicalTagUtilities.c"
- gchar* _tmp2_;
-#line 1423 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp2_ = g_strdup (self);
-#line 1423 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = _tmp2_;
-#line 1423 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 1170 "HierarchicalTagUtilities.c"
- }
- {
- GRegex* regex = NULL;
- gchar* _tmp3_;
- gchar* _tmp4_;
- GRegex* _tmp5_;
- GRegex* _tmp6_;
- gchar* _tmp7_ = NULL;
- GRegex* _tmp8_;
- gchar* _tmp9_;
- gchar* _tmp10_;
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp3_ = g_regex_escape_string (old, -1);
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp4_ = _tmp3_;
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp5_ = g_regex_new (_tmp4_, 0, 0, &_inner_error_);
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp6_ = _tmp5_;
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_free0 (_tmp4_);
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- regex = _tmp6_;
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (G_UNLIKELY (_inner_error_ != NULL)) {
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_inner_error_->domain == G_REGEX_ERROR) {
-#line 1198 "HierarchicalTagUtilities.c"
- goto __catch63_g_regex_error;
- }
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_clear_error (&_inner_error_);
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return NULL;
-#line 1207 "HierarchicalTagUtilities.c"
- }
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp8_ = regex;
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp9_ = g_regex_replace_literal (_tmp8_, self, (gssize) -1, 0, replacement, 0, &_inner_error_);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp7_ = _tmp9_;
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (G_UNLIKELY (_inner_error_ != NULL)) {
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_regex_unref0 (regex);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_inner_error_->domain == G_REGEX_ERROR) {
-#line 1221 "HierarchicalTagUtilities.c"
- goto __catch63_g_regex_error;
- }
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_regex_unref0 (regex);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_clear_error (&_inner_error_);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return NULL;
-#line 1232 "HierarchicalTagUtilities.c"
- }
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp10_ = _tmp7_;
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp7_ = NULL;
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = _tmp10_;
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_free0 (_tmp7_);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_regex_unref0 (regex);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 1246 "HierarchicalTagUtilities.c"
- }
- goto __finally63;
- __catch63_g_regex_error:
- {
- GError* e = NULL;
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- e = _inner_error_;
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _inner_error_ = NULL;
-#line 1429 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_assert_not_reached ();
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_error_free0 (e);
-#line 1260 "HierarchicalTagUtilities.c"
- }
- __finally63:
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (G_UNLIKELY (_inner_error_ != NULL)) {
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_clear_error (&_inner_error_);
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return NULL;
-#line 1271 "HierarchicalTagUtilities.c"
- }
-}
-
-
-static gchar
-string_get (const gchar* self,
- glong index)
-{
- gchar result = '\0';
- gchar _tmp0_;
-#line 1124 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (self != NULL, '\0');
-#line 1125 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = ((gchar*) self)[index];
-#line 1125 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = _tmp0_;
-#line 1125 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 1290 "HierarchicalTagUtilities.c"
-}
-
-
-gchar*
-hierarchical_tag_utilities_canonicalize (const gchar* in_tag,
- const gchar* foreign_separator)
-{
- gchar* result = NULL;
- gchar* _result_ = NULL;
- gchar* _tmp0_;
- const gchar* _tmp1_;
- gboolean is_valid = FALSE;
- const gchar* _tmp12_ = NULL;
- gboolean _tmp13_;
- gchar* _tmp15_;
-#line 103 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (in_tag != NULL, NULL);
-#line 103 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (foreign_separator != NULL, NULL);
-#line 104 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = string_replace (in_tag, foreign_separator, TAG_PATH_SEPARATOR_STRING);
-#line 104 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _result_ = _tmp0_;
-#line 106 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp1_ = _result_;
-#line 106 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!g_str_has_prefix (_tmp1_, TAG_PATH_SEPARATOR_STRING)) {
-#line 1318 "HierarchicalTagUtilities.c"
- const gchar* _tmp2_;
- gchar* _tmp3_;
-#line 107 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp2_ = _result_;
-#line 107 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp3_ = g_strconcat (TAG_PATH_SEPARATOR_STRING, _tmp2_, NULL);
-#line 107 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (_result_);
-#line 107 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _result_ = _tmp3_;
-#line 1329 "HierarchicalTagUtilities.c"
- }
-#line 110 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- is_valid = FALSE;
-#line 1333 "HierarchicalTagUtilities.c"
- {
- gint i = 0;
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- i = 0;
-#line 1338 "HierarchicalTagUtilities.c"
- {
- gboolean _tmp4_ = FALSE;
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_ = TRUE;
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- while (TRUE) {
-#line 1345 "HierarchicalTagUtilities.c"
- gint _tmp6_;
- const gchar* _tmp7_;
- gint _tmp8_;
- gint _tmp9_;
- const gchar* _tmp10_;
- gint _tmp11_;
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!_tmp4_) {
-#line 1354 "HierarchicalTagUtilities.c"
- gint _tmp5_;
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5_ = i;
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- i = _tmp5_ + 1;
-#line 1360 "HierarchicalTagUtilities.c"
- }
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_ = FALSE;
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp6_ = i;
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp7_ = _result_;
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp8_ = strlen (_tmp7_);
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp9_ = _tmp8_;
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!(_tmp6_ < _tmp9_)) {
-#line 111 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- break;
-#line 1376 "HierarchicalTagUtilities.c"
- }
-#line 112 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp10_ = _result_;
-#line 112 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp11_ = i;
-#line 112 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (string_get (_tmp10_, (glong) _tmp11_) != string_get (TAG_PATH_SEPARATOR_STRING, (glong) 0)) {
-#line 113 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- is_valid = TRUE;
-#line 114 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- break;
-#line 1388 "HierarchicalTagUtilities.c"
- }
- }
- }
- }
-#line 118 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp13_ = is_valid;
-#line 118 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (_tmp13_) {
-#line 1397 "HierarchicalTagUtilities.c"
- const gchar* _tmp14_;
-#line 118 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp14_ = _result_;
-#line 118 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp12_ = _tmp14_;
-#line 1403 "HierarchicalTagUtilities.c"
- } else {
-#line 118 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp12_ = NULL;
-#line 1407 "HierarchicalTagUtilities.c"
- }
-#line 118 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp15_ = g_strdup (_tmp12_);
-#line 118 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = _tmp15_;
-#line 118 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (_result_);
-#line 118 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 1417 "HierarchicalTagUtilities.c"
-}
-
-
-gchar*
-hierarchical_tag_utilities_make_flat_tag_safe (const gchar* in_tag)
-{
- gchar* result = NULL;
- gchar* _tmp0_;
-#line 121 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (in_tag != NULL, NULL);
-#line 122 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = string_replace (in_tag, TAG_PATH_SEPARATOR_STRING, "-");
-#line 122 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = _tmp0_;
-#line 122 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 1434 "HierarchicalTagUtilities.c"
-}
-
-
-HierarchicalTagIndex*
-hierarchical_tag_utilities_process_hierarchical_import_keywords (GeeCollection* h_keywords)
-{
- HierarchicalTagIndex* result = NULL;
- HierarchicalTagIndex* index = NULL;
- HierarchicalTagIndex* _tmp0_;
-#line 125 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (GEE_IS_COLLECTION (h_keywords), NULL);
-#line 126 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = hierarchical_tag_index_new ();
-#line 126 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- index = _tmp0_;
-#line 1450 "HierarchicalTagUtilities.c"
- {
- GeeIterator* _keyword_it = NULL;
- GeeIterator* _tmp1_;
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp1_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (h_keywords, GEE_TYPE_ITERABLE, GeeIterable));
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _keyword_it = _tmp1_;
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- while (TRUE) {
-#line 1460 "HierarchicalTagUtilities.c"
- GeeIterator* _tmp2_;
- gchar* keyword = NULL;
- GeeIterator* _tmp3_;
- gpointer _tmp4_;
- GeeList* parent_paths = NULL;
- const gchar* _tmp5_;
- GeeList* _tmp6_;
- GeeList* path_components = NULL;
- const gchar* _tmp7_;
- GeeList* _tmp8_;
- GeeList* _tmp9_;
- gint _tmp10_;
- gint _tmp11_;
- GeeList* _tmp12_;
- gint _tmp13_;
- gint _tmp14_;
- HierarchicalTagIndex* _tmp36_;
- const gchar* _tmp37_;
- gchar* _tmp38_;
- gchar* _tmp39_;
- const gchar* _tmp40_;
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp2_ = _keyword_it;
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!gee_iterator_next (_tmp2_)) {
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- break;
-#line 1488 "HierarchicalTagUtilities.c"
- }
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp3_ = _keyword_it;
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_ = gee_iterator_get (_tmp3_);
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- keyword = (gchar*) _tmp4_;
-#line 129 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5_ = keyword;
-#line 129 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp6_ = hierarchical_tag_utilities_enumerate_parent_paths (_tmp5_);
-#line 129 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- parent_paths = _tmp6_;
-#line 131 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp7_ = keyword;
-#line 131 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp8_ = hierarchical_tag_utilities_enumerate_path_components (_tmp7_);
-#line 131 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- path_components = _tmp8_;
-#line 134 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp9_ = parent_paths;
-#line 134 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp10_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 134 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp11_ = _tmp10_;
-#line 134 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp12_ = path_components;
-#line 134 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp13_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 134 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp14_ = _tmp13_;
-#line 134 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _vala_assert (_tmp11_ <= _tmp14_, "parent_paths.size <= path_components.size");
-#line 1522 "HierarchicalTagUtilities.c"
- {
- gint i = 0;
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- i = 0;
-#line 1527 "HierarchicalTagUtilities.c"
- {
- gboolean _tmp15_ = FALSE;
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp15_ = TRUE;
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- while (TRUE) {
-#line 1534 "HierarchicalTagUtilities.c"
- gint _tmp17_;
- GeeList* _tmp18_;
- gint _tmp19_;
- gint _tmp20_;
- HierarchicalTagIndex* _tmp21_;
- GeeList* _tmp22_;
- gint _tmp23_;
- gpointer _tmp24_;
- gchar* _tmp25_;
- gboolean _tmp26_;
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!_tmp15_) {
-#line 1547 "HierarchicalTagUtilities.c"
- gint _tmp16_;
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp16_ = i;
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- i = _tmp16_ + 1;
-#line 1553 "HierarchicalTagUtilities.c"
- }
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp15_ = FALSE;
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp17_ = i;
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp18_ = parent_paths;
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp19_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp18_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp20_ = _tmp19_;
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!(_tmp17_ < _tmp20_)) {
-#line 136 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- break;
-#line 1569 "HierarchicalTagUtilities.c"
- }
-#line 137 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp21_ = index;
-#line 137 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp22_ = path_components;
-#line 137 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp23_ = i;
-#line 137 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp24_ = gee_list_get (_tmp22_, _tmp23_);
-#line 137 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp25_ = (gchar*) _tmp24_;
-#line 137 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp26_ = !hierarchical_tag_index_is_path_known (_tmp21_, _tmp25_);
-#line 137 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (_tmp25_);
-#line 137 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (_tmp26_) {
-#line 1587 "HierarchicalTagUtilities.c"
- HierarchicalTagIndex* _tmp27_;
- GeeList* _tmp28_;
- gint _tmp29_;
- gpointer _tmp30_;
- gchar* _tmp31_;
- GeeList* _tmp32_;
- gint _tmp33_;
- gpointer _tmp34_;
- gchar* _tmp35_;
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp27_ = index;
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp28_ = path_components;
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp29_ = i;
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp30_ = gee_list_get (_tmp28_, _tmp29_);
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp31_ = (gchar*) _tmp30_;
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp32_ = parent_paths;
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp33_ = i;
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp34_ = gee_list_get (_tmp32_, _tmp33_);
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp35_ = (gchar*) _tmp34_;
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- hierarchical_tag_index_add_path (_tmp27_, _tmp31_, _tmp35_);
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (_tmp35_);
-#line 138 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (_tmp31_);
-#line 1621 "HierarchicalTagUtilities.c"
- }
- }
- }
- }
-#line 141 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp36_ = index;
-#line 141 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp37_ = keyword;
-#line 141 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp38_ = hierarchical_tag_utilities_get_basename (_tmp37_);
-#line 141 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp39_ = _tmp38_;
-#line 141 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp40_ = keyword;
-#line 141 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- hierarchical_tag_index_add_path (_tmp36_, _tmp39_, _tmp40_);
-#line 141 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (_tmp39_);
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (path_components);
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (parent_paths);
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (keyword);
-#line 1646 "HierarchicalTagUtilities.c"
- }
-#line 128 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (_keyword_it);
-#line 1650 "HierarchicalTagUtilities.c"
- }
-#line 144 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = index;
-#line 144 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 1656 "HierarchicalTagUtilities.c"
-}
-
-
-gchar*
-hierarchical_tag_utilities_get_root_path_form (const gchar* client_path)
-{
- gchar* result = NULL;
- GeeList* _tmp0_;
- GeeList* _tmp1_;
- gint _tmp2_;
- gint _tmp3_;
- gboolean _tmp4_;
- gchar* path = NULL;
- gchar* _tmp6_;
- TagSourceCollection* _tmp7_;
- const gchar* _tmp8_;
- const gchar* _tmp14_ = NULL;
- TagSourceCollection* _tmp15_;
- const gchar* _tmp16_;
- gchar* _tmp18_;
-#line 148 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (client_path == NULL) {
-#line 149 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = NULL;
-#line 149 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 1683 "HierarchicalTagUtilities.c"
- }
-#line 151 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = hierarchical_tag_utilities_enumerate_parent_paths (client_path);
-#line 151 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp1_ = _tmp0_;
-#line 151 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp2_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 151 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp3_ = _tmp2_;
-#line 151 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_ = _tmp3_ != 0;
-#line 151 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (_tmp1_);
-#line 151 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (_tmp4_) {
-#line 1699 "HierarchicalTagUtilities.c"
- gchar* _tmp5_;
-#line 152 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5_ = g_strdup (client_path);
-#line 152 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = _tmp5_;
-#line 152 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 1707 "HierarchicalTagUtilities.c"
- }
-#line 154 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp6_ = g_strdup (client_path);
-#line 154 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- path = _tmp6_;
-#line 156 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp7_ = tag_global;
-#line 156 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp8_ = path;
-#line 156 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!tag_source_collection_exists (_tmp7_, _tmp8_, FALSE)) {
-#line 1719 "HierarchicalTagUtilities.c"
- const gchar* _tmp9_;
-#line 157 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp9_ = path;
-#line 157 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (g_str_has_prefix (_tmp9_, TAG_PATH_SEPARATOR_STRING)) {
-#line 1725 "HierarchicalTagUtilities.c"
- const gchar* _tmp10_;
- gchar* _tmp11_;
-#line 158 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp10_ = path;
-#line 158 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp11_ = hierarchical_tag_utilities_hierarchical_to_flat (_tmp10_);
-#line 158 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (path);
-#line 158 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- path = _tmp11_;
-#line 1736 "HierarchicalTagUtilities.c"
- } else {
- const gchar* _tmp12_;
- gchar* _tmp13_;
-#line 160 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp12_ = path;
-#line 160 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp13_ = hierarchical_tag_utilities_flat_to_hierarchical (_tmp12_);
-#line 160 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (path);
-#line 160 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- path = _tmp13_;
-#line 1748 "HierarchicalTagUtilities.c"
- }
- }
-#line 163 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp15_ = tag_global;
-#line 163 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp16_ = path;
-#line 163 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (tag_source_collection_exists (_tmp15_, _tmp16_, FALSE)) {
-#line 1757 "HierarchicalTagUtilities.c"
- const gchar* _tmp17_;
-#line 163 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp17_ = path;
-#line 163 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp14_ = _tmp17_;
-#line 1763 "HierarchicalTagUtilities.c"
- } else {
-#line 163 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp14_ = NULL;
-#line 1767 "HierarchicalTagUtilities.c"
- }
-#line 163 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp18_ = g_strdup (_tmp14_);
-#line 163 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- result = _tmp18_;
-#line 163 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (path);
-#line 163 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return result;
-#line 1777 "HierarchicalTagUtilities.c"
-}
-
-
-void
-hierarchical_tag_utilities_cleanup_root_path (const gchar* path)
-{
- GeeList* paths = NULL;
- GeeList* _tmp0_;
- GeeList* _tmp1_;
- gint _tmp2_;
- gint _tmp3_;
-#line 166 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_if_fail (path != NULL);
-#line 167 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp0_ = hierarchical_tag_utilities_enumerate_parent_paths (path);
-#line 167 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- paths = _tmp0_;
-#line 169 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp1_ = paths;
-#line 169 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp2_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 169 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp3_ = _tmp2_;
-#line 169 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (_tmp3_ == 0) {
-#line 1803 "HierarchicalTagUtilities.c"
- gchar* actual_path = NULL;
- gchar* _tmp4_;
- const gchar* _tmp5_;
- Tag* t = NULL;
- TagSourceCollection* _tmp6_;
- const gchar* _tmp7_;
- gboolean _tmp10_ = FALSE;
- Tag* _tmp11_;
-#line 170 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp4_ = hierarchical_tag_utilities_get_root_path_form (path);
-#line 170 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- actual_path = _tmp4_;
-#line 172 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp5_ = actual_path;
-#line 172 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (_tmp5_ == NULL) {
-#line 173 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (actual_path);
-#line 173 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (paths);
-#line 173 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return;
-#line 1826 "HierarchicalTagUtilities.c"
- }
-#line 175 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- t = NULL;
-#line 176 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp6_ = tag_global;
-#line 176 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp7_ = actual_path;
-#line 176 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (tag_source_collection_exists (_tmp6_, _tmp7_, FALSE)) {
-#line 1836 "HierarchicalTagUtilities.c"
- const gchar* _tmp8_;
- Tag* _tmp9_;
-#line 177 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp8_ = actual_path;
-#line 177 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp9_ = tag_for_path (_tmp8_);
-#line 177 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (t);
-#line 177 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- t = _tmp9_;
-#line 1847 "HierarchicalTagUtilities.c"
- }
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp11_ = t;
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (_tmp11_ != NULL) {
-#line 1853 "HierarchicalTagUtilities.c"
- Tag* _tmp12_;
- GeeList* _tmp13_;
- GeeList* _tmp14_;
- gint _tmp15_;
- gint _tmp16_;
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp12_ = t;
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp13_ = tag_get_hierarchical_children (_tmp12_);
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp14_ = _tmp13_;
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp15_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp16_ = _tmp15_;
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp10_ = _tmp16_ == 0;
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (_tmp14_);
-#line 1873 "HierarchicalTagUtilities.c"
- } else {
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp10_ = FALSE;
-#line 1877 "HierarchicalTagUtilities.c"
- }
-#line 179 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (_tmp10_) {
-#line 1881 "HierarchicalTagUtilities.c"
- Tag* _tmp17_;
-#line 180 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _tmp17_ = t;
-#line 180 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- tag_flatten (_tmp17_);
-#line 1887 "HierarchicalTagUtilities.c"
- }
-#line 169 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (t);
-#line 169 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_free0 (actual_path);
-#line 1893 "HierarchicalTagUtilities.c"
- }
-#line 166 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- _g_object_unref0 (paths);
-#line 1897 "HierarchicalTagUtilities.c"
-}
-
-
-HierarchicalTagUtilities*
-hierarchical_tag_utilities_construct (GType object_type)
-{
- HierarchicalTagUtilities* self = NULL;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- self = (HierarchicalTagUtilities*) g_type_create_instance (object_type);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return self;
-#line 1909 "HierarchicalTagUtilities.c"
-}
-
-
-HierarchicalTagUtilities*
-hierarchical_tag_utilities_new (void)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return hierarchical_tag_utilities_construct (TYPE_HIERARCHICAL_TAG_UTILITIES);
-#line 1918 "HierarchicalTagUtilities.c"
-}
-
-
-static void
-value_hierarchical_tag_utilities_init (GValue* value)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- value->data[0].v_pointer = NULL;
-#line 1927 "HierarchicalTagUtilities.c"
-}
-
-
-static void
-value_hierarchical_tag_utilities_free_value (GValue* value)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (value->data[0].v_pointer) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- hierarchical_tag_utilities_unref (value->data[0].v_pointer);
-#line 1938 "HierarchicalTagUtilities.c"
- }
-}
-
-
-static void
-value_hierarchical_tag_utilities_copy_value (const GValue* src_value,
- GValue* dest_value)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (src_value->data[0].v_pointer) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- dest_value->data[0].v_pointer = hierarchical_tag_utilities_ref (src_value->data[0].v_pointer);
-#line 1951 "HierarchicalTagUtilities.c"
- } else {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- dest_value->data[0].v_pointer = NULL;
-#line 1955 "HierarchicalTagUtilities.c"
- }
-}
-
-
-static gpointer
-value_hierarchical_tag_utilities_peek_pointer (const GValue* value)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return value->data[0].v_pointer;
-#line 1965 "HierarchicalTagUtilities.c"
-}
-
-
-static gchar*
-value_hierarchical_tag_utilities_collect_value (GValue* value,
- guint n_collect_values,
- GTypeCValue* collect_values,
- guint collect_flags)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (collect_values[0].v_pointer) {
-#line 1977 "HierarchicalTagUtilities.c"
- HierarchicalTagUtilities * object;
- object = collect_values[0].v_pointer;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (object->parent_instance.g_class == NULL) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
-#line 1984 "HierarchicalTagUtilities.c"
- } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
-#line 1988 "HierarchicalTagUtilities.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- value->data[0].v_pointer = hierarchical_tag_utilities_ref (object);
-#line 1992 "HierarchicalTagUtilities.c"
- } else {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- value->data[0].v_pointer = NULL;
-#line 1996 "HierarchicalTagUtilities.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return NULL;
-#line 2000 "HierarchicalTagUtilities.c"
-}
-
-
-static gchar*
-value_hierarchical_tag_utilities_lcopy_value (const GValue* value,
- guint n_collect_values,
- GTypeCValue* collect_values,
- guint collect_flags)
-{
- HierarchicalTagUtilities ** object_p;
- object_p = collect_values[0].v_pointer;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!object_p) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
-#line 2016 "HierarchicalTagUtilities.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (!value->data[0].v_pointer) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- *object_p = NULL;
-#line 2022 "HierarchicalTagUtilities.c"
- } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- *object_p = value->data[0].v_pointer;
-#line 2026 "HierarchicalTagUtilities.c"
- } else {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- *object_p = hierarchical_tag_utilities_ref (value->data[0].v_pointer);
-#line 2030 "HierarchicalTagUtilities.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return NULL;
-#line 2034 "HierarchicalTagUtilities.c"
-}
-
-
-GParamSpec*
-param_spec_hierarchical_tag_utilities (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags)
-{
- ParamSpecHierarchicalTagUtilities* spec;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (g_type_is_a (object_type, TYPE_HIERARCHICAL_TAG_UTILITIES), NULL);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- G_PARAM_SPEC (spec)->value_type = object_type;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return G_PARAM_SPEC (spec);
-#line 2054 "HierarchicalTagUtilities.c"
-}
-
-
-gpointer
-value_get_hierarchical_tag_utilities (const GValue* value)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_HIERARCHICAL_TAG_UTILITIES), NULL);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return value->data[0].v_pointer;
-#line 2065 "HierarchicalTagUtilities.c"
-}
-
-
-void
-value_set_hierarchical_tag_utilities (GValue* value,
- gpointer v_object)
-{
- HierarchicalTagUtilities * old;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_HIERARCHICAL_TAG_UTILITIES));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- old = value->data[0].v_pointer;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (v_object) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_HIERARCHICAL_TAG_UTILITIES));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- value->data[0].v_pointer = v_object;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- hierarchical_tag_utilities_ref (value->data[0].v_pointer);
-#line 2088 "HierarchicalTagUtilities.c"
- } else {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- value->data[0].v_pointer = NULL;
-#line 2092 "HierarchicalTagUtilities.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (old) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- hierarchical_tag_utilities_unref (old);
-#line 2098 "HierarchicalTagUtilities.c"
- }
-}
-
-
-void
-value_take_hierarchical_tag_utilities (GValue* value,
- gpointer v_object)
-{
- HierarchicalTagUtilities * old;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_HIERARCHICAL_TAG_UTILITIES));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- old = value->data[0].v_pointer;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (v_object) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_HIERARCHICAL_TAG_UTILITIES));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- value->data[0].v_pointer = v_object;
-#line 2120 "HierarchicalTagUtilities.c"
- } else {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- value->data[0].v_pointer = NULL;
-#line 2124 "HierarchicalTagUtilities.c"
- }
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (old) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- hierarchical_tag_utilities_unref (old);
-#line 2130 "HierarchicalTagUtilities.c"
- }
-}
-
-
-static void
-hierarchical_tag_utilities_class_init (HierarchicalTagUtilitiesClass * klass)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- hierarchical_tag_utilities_parent_class = g_type_class_peek_parent (klass);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- ((HierarchicalTagUtilitiesClass *) klass)->finalize = hierarchical_tag_utilities_finalize;
-#line 2142 "HierarchicalTagUtilities.c"
-}
-
-
-static void
-hierarchical_tag_utilities_instance_init (HierarchicalTagUtilities * self)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- self->ref_count = 1;
-#line 2151 "HierarchicalTagUtilities.c"
-}
-
-
-static void
-hierarchical_tag_utilities_finalize (HierarchicalTagUtilities * obj)
-{
- HierarchicalTagUtilities * self;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_HIERARCHICAL_TAG_UTILITIES, HierarchicalTagUtilities);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_signal_handlers_destroy (self);
-#line 2163 "HierarchicalTagUtilities.c"
-}
-
-
-GType
-hierarchical_tag_utilities_get_type (void)
-{
- static volatile gsize hierarchical_tag_utilities_type_id__volatile = 0;
- if (g_once_init_enter (&hierarchical_tag_utilities_type_id__volatile)) {
- static const GTypeValueTable g_define_type_value_table = { value_hierarchical_tag_utilities_init, value_hierarchical_tag_utilities_free_value, value_hierarchical_tag_utilities_copy_value, value_hierarchical_tag_utilities_peek_pointer, "p", value_hierarchical_tag_utilities_collect_value, "p", value_hierarchical_tag_utilities_lcopy_value };
- static const GTypeInfo g_define_type_info = { sizeof (HierarchicalTagUtilitiesClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) hierarchical_tag_utilities_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (HierarchicalTagUtilities), 0, (GInstanceInitFunc) hierarchical_tag_utilities_instance_init, &g_define_type_value_table };
- static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
- GType hierarchical_tag_utilities_type_id;
- hierarchical_tag_utilities_type_id = g_type_register_fundamental (g_type_fundamental_next (), "HierarchicalTagUtilities", &g_define_type_info, &g_define_type_fundamental_info, 0);
- g_once_init_leave (&hierarchical_tag_utilities_type_id__volatile, hierarchical_tag_utilities_type_id);
- }
- return hierarchical_tag_utilities_type_id__volatile;
-}
-
-
-gpointer
-hierarchical_tag_utilities_ref (gpointer instance)
-{
- HierarchicalTagUtilities * self;
- self = instance;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_atomic_int_inc (&self->ref_count);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- return instance;
-#line 2192 "HierarchicalTagUtilities.c"
-}
-
-
-void
-hierarchical_tag_utilities_unref (gpointer instance)
-{
- HierarchicalTagUtilities * self;
- self = instance;
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- if (g_atomic_int_dec_and_test (&self->ref_count)) {
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- HIERARCHICAL_TAG_UTILITIES_GET_CLASS (self)->finalize (self);
-#line 7 "/home/jens/Source/shotwell/src/tags/HierarchicalTagUtilities.vala"
- g_type_free_instance ((GTypeInstance *) self);
-#line 2207 "HierarchicalTagUtilities.c"
- }
-}
-
-
-static void
-_vala_array_destroy (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func)
-{
- if ((array != NULL) && (destroy_func != NULL)) {
- int i;
- for (i = 0; i < array_length; i = i + 1) {
- if (((gpointer*) array)[i] != NULL) {
- destroy_func (((gpointer*) array)[i]);
- }
- }
- }
-}
-
-
-static void
-_vala_array_free (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func)
-{
- _vala_array_destroy (array, array_length, destroy_func);
- g_free (array);
-}
-
-
-static gint
-_vala_array_length (gpointer array)
-{
- int length;
- length = 0;
- if (array) {
- while (((gpointer*) array)[length]) {
- length++;
- }
- }
- return length;
-}
-
-
-
diff --git a/src/tags/TagPage.c b/src/tags/TagPage.c
deleted file mode 100644
index fa5f9eb..0000000
--- a/src/tags/TagPage.c
+++ /dev/null
@@ -1,1585 +0,0 @@
-/* TagPage.c generated by valac 0.40.4, the Vala compiler
- * generated from TagPage.vala, do not modify */
-
-/* Copyright 2016 Software Freedom Conservancy Inc.
- *
- * This software is licensed under the GNU Lesser General Public License
- * (version 2.1 or later). See the COPYING file in this distribution.
- */
-
-
-#include <glib.h>
-#include <glib-object.h>
-#include <gtk/gtk.h>
-#include <stdlib.h>
-#include <string.h>
-#include <gio/gio.h>
-#include <gee.h>
-#include <gdk/gdk.h>
-
-
-#define TYPE_PAGE (page_get_type ())
-#define PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PAGE, Page))
-#define PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PAGE, PageClass))
-#define IS_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PAGE))
-#define IS_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PAGE))
-#define PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PAGE, PageClass))
-
-typedef struct _Page Page;
-typedef struct _PageClass PageClass;
-typedef struct _PagePrivate PagePrivate;
-
-#define TYPE_PAGE_WINDOW (page_window_get_type ())
-#define PAGE_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PAGE_WINDOW, PageWindow))
-#define PAGE_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PAGE_WINDOW, PageWindowClass))
-#define IS_PAGE_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PAGE_WINDOW))
-#define IS_PAGE_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PAGE_WINDOW))
-#define PAGE_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PAGE_WINDOW, PageWindowClass))
-
-typedef struct _PageWindow PageWindow;
-typedef struct _PageWindowClass PageWindowClass;
-
-#define TYPE_FULLSCREEN_WINDOW (fullscreen_window_get_type ())
-#define FULLSCREEN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_FULLSCREEN_WINDOW, FullscreenWindow))
-#define FULLSCREEN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_FULLSCREEN_WINDOW, FullscreenWindowClass))
-#define IS_FULLSCREEN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_FULLSCREEN_WINDOW))
-#define IS_FULLSCREEN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_FULLSCREEN_WINDOW))
-#define FULLSCREEN_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_FULLSCREEN_WINDOW, FullscreenWindowClass))
-
-typedef struct _FullscreenWindow FullscreenWindow;
-typedef struct _FullscreenWindowClass FullscreenWindowClass;
-
-#define TYPE_INJECTION_GROUP (injection_group_get_type ())
-#define INJECTION_GROUP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INJECTION_GROUP, InjectionGroup))
-#define INJECTION_GROUP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INJECTION_GROUP, InjectionGroupClass))
-#define IS_INJECTION_GROUP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INJECTION_GROUP))
-#define IS_INJECTION_GROUP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INJECTION_GROUP))
-#define INJECTION_GROUP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INJECTION_GROUP, InjectionGroupClass))
-
-typedef struct _InjectionGroup InjectionGroup;
-typedef struct _InjectionGroupClass InjectionGroupClass;
-
-#define TYPE_CHECKERBOARD_PAGE (checkerboard_page_get_type ())
-#define CHECKERBOARD_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CHECKERBOARD_PAGE, CheckerboardPage))
-#define CHECKERBOARD_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CHECKERBOARD_PAGE, CheckerboardPageClass))
-#define IS_CHECKERBOARD_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CHECKERBOARD_PAGE))
-#define IS_CHECKERBOARD_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CHECKERBOARD_PAGE))
-#define CHECKERBOARD_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CHECKERBOARD_PAGE, CheckerboardPageClass))
-
-typedef struct _CheckerboardPage CheckerboardPage;
-typedef struct _CheckerboardPageClass CheckerboardPageClass;
-typedef struct _CheckerboardPagePrivate CheckerboardPagePrivate;
-
-#define TYPE_DATA_OBJECT (data_object_get_type ())
-#define DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_OBJECT, DataObject))
-#define DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_OBJECT, DataObjectClass))
-#define IS_DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_OBJECT))
-#define IS_DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_OBJECT))
-#define DATA_OBJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_OBJECT, DataObjectClass))
-
-typedef struct _DataObject DataObject;
-typedef struct _DataObjectClass DataObjectClass;
-
-#define TYPE_DATA_VIEW (data_view_get_type ())
-#define DATA_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_VIEW, DataView))
-#define DATA_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_VIEW, DataViewClass))
-#define IS_DATA_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_VIEW))
-#define IS_DATA_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_VIEW))
-#define DATA_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_VIEW, DataViewClass))
-
-typedef struct _DataView DataView;
-typedef struct _DataViewClass DataViewClass;
-
-#define TYPE_THUMBNAIL_VIEW (thumbnail_view_get_type ())
-#define THUMBNAIL_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_THUMBNAIL_VIEW, ThumbnailView))
-#define THUMBNAIL_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_THUMBNAIL_VIEW, ThumbnailViewClass))
-#define IS_THUMBNAIL_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_THUMBNAIL_VIEW))
-#define IS_THUMBNAIL_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_THUMBNAIL_VIEW))
-#define THUMBNAIL_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_THUMBNAIL_VIEW, ThumbnailViewClass))
-
-typedef struct _ThumbnailView ThumbnailView;
-typedef struct _ThumbnailViewClass ThumbnailViewClass;
-
-#define TYPE_CHECKERBOARD_ITEM (checkerboard_item_get_type ())
-#define CHECKERBOARD_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CHECKERBOARD_ITEM, CheckerboardItem))
-#define CHECKERBOARD_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CHECKERBOARD_ITEM, CheckerboardItemClass))
-#define IS_CHECKERBOARD_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CHECKERBOARD_ITEM))
-#define IS_CHECKERBOARD_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CHECKERBOARD_ITEM))
-#define CHECKERBOARD_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CHECKERBOARD_ITEM, CheckerboardItemClass))
-
-typedef struct _CheckerboardItem CheckerboardItem;
-typedef struct _CheckerboardItemClass CheckerboardItemClass;
-
-#define CHECKERBOARD_PAGE_TYPE_ACTIVATOR (checkerboard_page_activator_get_type ())
-
-#define CHECKERBOARD_PAGE_TYPE_KEYBOARD_MODIFIERS (checkerboard_page_keyboard_modifiers_get_type ())
-typedef struct _CheckerboardPageKeyboardModifiers CheckerboardPageKeyboardModifiers;
-
-#define TYPE_VIEW_FILTER (view_filter_get_type ())
-#define VIEW_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIEW_FILTER, ViewFilter))
-#define VIEW_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIEW_FILTER, ViewFilterClass))
-#define IS_VIEW_FILTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIEW_FILTER))
-#define IS_VIEW_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIEW_FILTER))
-#define VIEW_FILTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIEW_FILTER, ViewFilterClass))
-
-typedef struct _ViewFilter ViewFilter;
-typedef struct _ViewFilterClass ViewFilterClass;
-
-#define TYPE_SEARCH_VIEW_FILTER (search_view_filter_get_type ())
-#define SEARCH_VIEW_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_VIEW_FILTER, SearchViewFilter))
-#define SEARCH_VIEW_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_VIEW_FILTER, SearchViewFilterClass))
-#define IS_SEARCH_VIEW_FILTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_VIEW_FILTER))
-#define IS_SEARCH_VIEW_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_VIEW_FILTER))
-#define SEARCH_VIEW_FILTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_VIEW_FILTER, SearchViewFilterClass))
-
-typedef struct _SearchViewFilter SearchViewFilter;
-typedef struct _SearchViewFilterClass SearchViewFilterClass;
-
-#define CORE_TYPE_TRACKER (core_tracker_get_type ())
-#define CORE_TRACKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CORE_TYPE_TRACKER, CoreTracker))
-#define CORE_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CORE_TYPE_TRACKER, CoreTrackerClass))
-#define CORE_IS_TRACKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CORE_TYPE_TRACKER))
-#define CORE_IS_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CORE_TYPE_TRACKER))
-#define CORE_TRACKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CORE_TYPE_TRACKER, CoreTrackerClass))
-
-typedef struct _CoreTracker CoreTracker;
-typedef struct _CoreTrackerClass CoreTrackerClass;
-
-#define CORE_TYPE_VIEW_TRACKER (core_view_tracker_get_type ())
-#define CORE_VIEW_TRACKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CORE_TYPE_VIEW_TRACKER, CoreViewTracker))
-#define CORE_VIEW_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CORE_TYPE_VIEW_TRACKER, CoreViewTrackerClass))
-#define CORE_IS_VIEW_TRACKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CORE_TYPE_VIEW_TRACKER))
-#define CORE_IS_VIEW_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CORE_TYPE_VIEW_TRACKER))
-#define CORE_VIEW_TRACKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CORE_TYPE_VIEW_TRACKER, CoreViewTrackerClass))
-
-typedef struct _CoreViewTracker CoreViewTracker;
-typedef struct _CoreViewTrackerClass CoreViewTrackerClass;
-
-#define TYPE_MEDIA_PAGE (media_page_get_type ())
-#define MEDIA_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_PAGE, MediaPage))
-#define MEDIA_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_PAGE, MediaPageClass))
-#define IS_MEDIA_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_PAGE))
-#define IS_MEDIA_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_PAGE))
-#define MEDIA_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_PAGE, MediaPageClass))
-
-typedef struct _MediaPage MediaPage;
-typedef struct _MediaPageClass MediaPageClass;
-typedef struct _MediaPagePrivate MediaPagePrivate;
-
-#define TYPE_RATING (rating_get_type ())
-
-#define TYPE_RAW_DEVELOPER (raw_developer_get_type ())
-
-#define TYPE_DATA_SOURCE (data_source_get_type ())
-#define DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_SOURCE, DataSource))
-#define DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_SOURCE, DataSourceClass))
-#define IS_DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_SOURCE))
-#define IS_DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_SOURCE))
-#define DATA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_SOURCE, DataSourceClass))
-
-typedef struct _DataSource DataSource;
-typedef struct _DataSourceClass DataSourceClass;
-
-#define TYPE_COLLECTION_PAGE (collection_page_get_type ())
-#define COLLECTION_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_COLLECTION_PAGE, CollectionPage))
-#define COLLECTION_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_COLLECTION_PAGE, CollectionPageClass))
-#define IS_COLLECTION_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_COLLECTION_PAGE))
-#define IS_COLLECTION_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_COLLECTION_PAGE))
-#define COLLECTION_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_COLLECTION_PAGE, CollectionPageClass))
-
-typedef struct _CollectionPage CollectionPage;
-typedef struct _CollectionPageClass CollectionPageClass;
-typedef struct _CollectionPagePrivate CollectionPagePrivate;
-
-#define TYPE_TAG_PAGE (tag_page_get_type ())
-#define TAG_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG_PAGE, TagPage))
-#define TAG_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG_PAGE, TagPageClass))
-#define IS_TAG_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG_PAGE))
-#define IS_TAG_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG_PAGE))
-#define TAG_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG_PAGE, TagPageClass))
-
-typedef struct _TagPage TagPage;
-typedef struct _TagPageClass TagPageClass;
-typedef struct _TagPagePrivate TagPagePrivate;
-
-#define TYPE_TAG (tag_get_type ())
-#define TAG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG, Tag))
-#define TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG, TagClass))
-#define IS_TAG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG))
-#define IS_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG))
-#define TAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG, TagClass))
-
-typedef struct _Tag Tag;
-typedef struct _TagClass TagClass;
-enum {
- TAG_PAGE_0_PROPERTY,
- TAG_PAGE_NUM_PROPERTIES
-};
-static GParamSpec* tag_page_properties[TAG_PAGE_NUM_PROPERTIES];
-
-#define TYPE_DATA_COLLECTION (data_collection_get_type ())
-#define DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_COLLECTION, DataCollection))
-#define DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_COLLECTION, DataCollectionClass))
-#define IS_DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_COLLECTION))
-#define IS_DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_COLLECTION))
-#define DATA_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_COLLECTION, DataCollectionClass))
-
-typedef struct _DataCollection DataCollection;
-typedef struct _DataCollectionClass DataCollectionClass;
-
-#define TYPE_VIEW_COLLECTION (view_collection_get_type ())
-#define VIEW_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIEW_COLLECTION, ViewCollection))
-#define VIEW_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIEW_COLLECTION, ViewCollectionClass))
-#define IS_VIEW_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIEW_COLLECTION))
-#define IS_VIEW_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIEW_COLLECTION))
-#define VIEW_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIEW_COLLECTION, ViewCollectionClass))
-
-typedef struct _ViewCollection ViewCollection;
-typedef struct _ViewCollectionClass ViewCollectionClass;
-#define _data_collection_unref0(var) ((var == NULL) ? NULL : (var = (data_collection_unref (var), NULL)))
-
-#define TYPE_SOURCE_COLLECTION (source_collection_get_type ())
-#define SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_COLLECTION, SourceCollection))
-#define SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_COLLECTION, SourceCollectionClass))
-#define IS_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_COLLECTION))
-#define IS_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_COLLECTION))
-#define SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_COLLECTION, SourceCollectionClass))
-
-typedef struct _SourceCollection SourceCollection;
-typedef struct _SourceCollectionClass SourceCollectionClass;
-
-#define TYPE_DATABASE_SOURCE_COLLECTION (database_source_collection_get_type ())
-#define DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollection))
-#define DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass))
-#define IS_DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATABASE_SOURCE_COLLECTION))
-#define IS_DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATABASE_SOURCE_COLLECTION))
-#define DATABASE_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass))
-
-typedef struct _DatabaseSourceCollection DatabaseSourceCollection;
-typedef struct _DatabaseSourceCollectionClass DatabaseSourceCollectionClass;
-
-#define TYPE_CONTAINER_SOURCE_COLLECTION (container_source_collection_get_type ())
-#define CONTAINER_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection))
-#define CONTAINER_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollectionClass))
-#define IS_CONTAINER_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTAINER_SOURCE_COLLECTION))
-#define IS_CONTAINER_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTAINER_SOURCE_COLLECTION))
-#define CONTAINER_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollectionClass))
-
-typedef struct _ContainerSourceCollection ContainerSourceCollection;
-typedef struct _ContainerSourceCollectionClass ContainerSourceCollectionClass;
-
-#define TYPE_TAG_SOURCE_COLLECTION (tag_source_collection_get_type ())
-#define TAG_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollection))
-#define TAG_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollectionClass))
-#define IS_TAG_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG_SOURCE_COLLECTION))
-#define IS_TAG_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG_SOURCE_COLLECTION))
-#define TAG_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollectionClass))
-
-typedef struct _TagSourceCollection TagSourceCollection;
-typedef struct _TagSourceCollectionClass TagSourceCollectionClass;
-
-#define TYPE_ALTERATION (alteration_get_type ())
-#define ALTERATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ALTERATION, Alteration))
-#define ALTERATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ALTERATION, AlterationClass))
-#define IS_ALTERATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ALTERATION))
-#define IS_ALTERATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ALTERATION))
-#define ALTERATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ALTERATION, AlterationClass))
-
-typedef struct _Alteration Alteration;
-typedef struct _AlterationClass AlterationClass;
-#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
-#define _g_free0(var) (var = (g_free (var), NULL))
-
-#define TYPE_CONFIGURATION_FACADE (configuration_facade_get_type ())
-#define CONFIGURATION_FACADE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONFIGURATION_FACADE, ConfigurationFacade))
-#define CONFIGURATION_FACADE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONFIGURATION_FACADE, ConfigurationFacadeClass))
-#define IS_CONFIGURATION_FACADE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONFIGURATION_FACADE))
-#define IS_CONFIGURATION_FACADE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONFIGURATION_FACADE))
-#define CONFIGURATION_FACADE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONFIGURATION_FACADE, ConfigurationFacadeClass))
-
-typedef struct _ConfigurationFacade ConfigurationFacade;
-typedef struct _ConfigurationFacadeClass ConfigurationFacadeClass;
-
-#define CONFIG_TYPE_FACADE (config_facade_get_type ())
-#define CONFIG_FACADE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CONFIG_TYPE_FACADE, ConfigFacade))
-#define CONFIG_FACADE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CONFIG_TYPE_FACADE, ConfigFacadeClass))
-#define CONFIG_IS_FACADE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CONFIG_TYPE_FACADE))
-#define CONFIG_IS_FACADE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CONFIG_TYPE_FACADE))
-#define CONFIG_FACADE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CONFIG_TYPE_FACADE, ConfigFacadeClass))
-
-typedef struct _ConfigFacade ConfigFacade;
-typedef struct _ConfigFacadeClass ConfigFacadeClass;
-
-#define TYPE_COMMAND (command_get_type ())
-#define COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_COMMAND, Command))
-#define COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_COMMAND, CommandClass))
-#define IS_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_COMMAND))
-#define IS_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_COMMAND))
-#define COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_COMMAND, CommandClass))
-
-typedef struct _Command Command;
-typedef struct _CommandClass CommandClass;
-
-#define TYPE_PAGE_COMMAND (page_command_get_type ())
-#define PAGE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PAGE_COMMAND, PageCommand))
-#define PAGE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PAGE_COMMAND, PageCommandClass))
-#define IS_PAGE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PAGE_COMMAND))
-#define IS_PAGE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PAGE_COMMAND))
-#define PAGE_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PAGE_COMMAND, PageCommandClass))
-
-typedef struct _PageCommand PageCommand;
-typedef struct _PageCommandClass PageCommandClass;
-
-#define TYPE_SIMPLE_PROXYABLE_COMMAND (simple_proxyable_command_get_type ())
-#define SIMPLE_PROXYABLE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SIMPLE_PROXYABLE_COMMAND, SimpleProxyableCommand))
-#define SIMPLE_PROXYABLE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SIMPLE_PROXYABLE_COMMAND, SimpleProxyableCommandClass))
-#define IS_SIMPLE_PROXYABLE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SIMPLE_PROXYABLE_COMMAND))
-#define IS_SIMPLE_PROXYABLE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SIMPLE_PROXYABLE_COMMAND))
-#define SIMPLE_PROXYABLE_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SIMPLE_PROXYABLE_COMMAND, SimpleProxyableCommandClass))
-
-typedef struct _SimpleProxyableCommand SimpleProxyableCommand;
-typedef struct _SimpleProxyableCommandClass SimpleProxyableCommandClass;
-
-#define TYPE_NEW_CHILD_TAG_COMMAND (new_child_tag_command_get_type ())
-#define NEW_CHILD_TAG_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NEW_CHILD_TAG_COMMAND, NewChildTagCommand))
-#define NEW_CHILD_TAG_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NEW_CHILD_TAG_COMMAND, NewChildTagCommandClass))
-#define IS_NEW_CHILD_TAG_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NEW_CHILD_TAG_COMMAND))
-#define IS_NEW_CHILD_TAG_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NEW_CHILD_TAG_COMMAND))
-#define NEW_CHILD_TAG_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NEW_CHILD_TAG_COMMAND, NewChildTagCommandClass))
-
-typedef struct _NewChildTagCommand NewChildTagCommand;
-typedef struct _NewChildTagCommandClass NewChildTagCommandClass;
-
-#define TYPE_COMMAND_MANAGER (command_manager_get_type ())
-#define COMMAND_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_COMMAND_MANAGER, CommandManager))
-#define COMMAND_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_COMMAND_MANAGER, CommandManagerClass))
-#define IS_COMMAND_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_COMMAND_MANAGER))
-#define IS_COMMAND_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_COMMAND_MANAGER))
-#define COMMAND_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_COMMAND_MANAGER, CommandManagerClass))
-
-typedef struct _CommandManager CommandManager;
-typedef struct _CommandManagerClass CommandManagerClass;
-#define _command_manager_unref0(var) ((var == NULL) ? NULL : (var = (command_manager_unref (var), NULL)))
-
-#define TYPE_APP_WINDOW (app_window_get_type ())
-#define APP_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_APP_WINDOW, AppWindow))
-#define APP_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_APP_WINDOW, AppWindowClass))
-#define IS_APP_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_APP_WINDOW))
-#define IS_APP_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_APP_WINDOW))
-#define APP_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_APP_WINDOW, AppWindowClass))
-
-typedef struct _AppWindow AppWindow;
-typedef struct _AppWindowClass AppWindowClass;
-
-#define TYPE_LIBRARY_WINDOW (library_window_get_type ())
-#define LIBRARY_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIBRARY_WINDOW, LibraryWindow))
-#define LIBRARY_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIBRARY_WINDOW, LibraryWindowClass))
-#define IS_LIBRARY_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIBRARY_WINDOW))
-#define IS_LIBRARY_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIBRARY_WINDOW))
-#define LIBRARY_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIBRARY_WINDOW, LibraryWindowClass))
-
-typedef struct _LibraryWindow LibraryWindow;
-typedef struct _LibraryWindowClass LibraryWindowClass;
-
-#define TYPE_DELETE_TAG_COMMAND (delete_tag_command_get_type ())
-#define DELETE_TAG_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DELETE_TAG_COMMAND, DeleteTagCommand))
-#define DELETE_TAG_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DELETE_TAG_COMMAND, DeleteTagCommandClass))
-#define IS_DELETE_TAG_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DELETE_TAG_COMMAND))
-#define IS_DELETE_TAG_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DELETE_TAG_COMMAND))
-#define DELETE_TAG_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DELETE_TAG_COMMAND, DeleteTagCommandClass))
-
-typedef struct _DeleteTagCommand DeleteTagCommand;
-typedef struct _DeleteTagCommandClass DeleteTagCommandClass;
-
-#define TYPE_THUMBNAIL_SOURCE (thumbnail_source_get_type ())
-#define THUMBNAIL_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_THUMBNAIL_SOURCE, ThumbnailSource))
-#define THUMBNAIL_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_THUMBNAIL_SOURCE, ThumbnailSourceClass))
-#define IS_THUMBNAIL_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_THUMBNAIL_SOURCE))
-#define IS_THUMBNAIL_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_THUMBNAIL_SOURCE))
-#define THUMBNAIL_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_THUMBNAIL_SOURCE, ThumbnailSourceClass))
-
-typedef struct _ThumbnailSource ThumbnailSource;
-typedef struct _ThumbnailSourceClass ThumbnailSourceClass;
-
-#define TYPE_MEDIA_SOURCE (media_source_get_type ())
-#define MEDIA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_SOURCE, MediaSource))
-#define MEDIA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_SOURCE, MediaSourceClass))
-#define IS_MEDIA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_SOURCE))
-#define IS_MEDIA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_SOURCE))
-#define MEDIA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_SOURCE, MediaSourceClass))
-
-typedef struct _MediaSource MediaSource;
-typedef struct _MediaSourceClass MediaSourceClass;
-
-#define TYPE_TAG_UNTAG_PHOTOS_COMMAND (tag_untag_photos_command_get_type ())
-#define TAG_UNTAG_PHOTOS_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG_UNTAG_PHOTOS_COMMAND, TagUntagPhotosCommand))
-#define TAG_UNTAG_PHOTOS_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG_UNTAG_PHOTOS_COMMAND, TagUntagPhotosCommandClass))
-#define IS_TAG_UNTAG_PHOTOS_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG_UNTAG_PHOTOS_COMMAND))
-#define IS_TAG_UNTAG_PHOTOS_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG_UNTAG_PHOTOS_COMMAND))
-#define TAG_UNTAG_PHOTOS_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG_UNTAG_PHOTOS_COMMAND, TagUntagPhotosCommandClass))
-
-typedef struct _TagUntagPhotosCommand TagUntagPhotosCommand;
-typedef struct _TagUntagPhotosCommandClass TagUntagPhotosCommandClass;
-
-struct _Page {
- GtkScrolledWindow parent_instance;
- PagePrivate * priv;
- GtkBuilder* builder;
- GtkToolbar* toolbar;
- gboolean in_view;
-};
-
-struct _PageClass {
- GtkScrolledWindowClass parent_class;
- void (*set_page_name) (Page* self, const gchar* page_name);
- void (*set_container) (Page* self, GtkWindow* container);
- void (*clear_container) (Page* self);
- GtkToolbar* (*get_toolbar) (Page* self);
- GtkMenu* (*get_page_context_menu) (Page* self);
- void (*switching_from) (Page* self);
- void (*switched_to) (Page* self);
- void (*ready) (Page* self);
- void (*switching_to_fullscreen) (Page* self, FullscreenWindow* fsw);
- void (*returning_from_fullscreen) (Page* self, FullscreenWindow* fsw);
- void (*add_actions) (Page* self, GActionMap* map);
- void (*remove_actions) (Page* self, GActionMap* map);
- void (*init_collect_ui_filenames) (Page* self, GeeList* ui_filenames);
- InjectionGroup** (*init_collect_injection_groups) (Page* self, int* result_length1);
- void (*init_actions) (Page* self, gint selected_count, gint count);
- void (*update_actions) (Page* self, gint selected_count, gint count);
- gboolean (*source_drag_failed) (Page* self, GdkDragContext* context, GtkDragResult drag_result);
- gboolean (*on_left_click) (Page* self, GdkEventButton* event);
- gboolean (*on_middle_click) (Page* self, GdkEventButton* event);
- gboolean (*on_right_click) (Page* self, GdkEventButton* event);
- gboolean (*on_left_released) (Page* self, GdkEventButton* event);
- gboolean (*on_middle_released) (Page* self, GdkEventButton* event);
- gboolean (*on_right_released) (Page* self, GdkEventButton* event);
- gboolean (*on_ctrl_pressed) (Page* self, GdkEventKey* event);
- gboolean (*on_ctrl_released) (Page* self, GdkEventKey* event);
- gboolean (*on_alt_pressed) (Page* self, GdkEventKey* event);
- gboolean (*on_alt_released) (Page* self, GdkEventKey* event);
- gboolean (*on_shift_pressed) (Page* self, GdkEventKey* event);
- gboolean (*on_shift_released) (Page* self, GdkEventKey* event);
- gboolean (*on_super_pressed) (Page* self, GdkEventKey* event);
- gboolean (*on_super_released) (Page* self, GdkEventKey* event);
- gboolean (*on_app_key_pressed) (Page* self, GdkEventKey* event);
- gboolean (*on_app_key_released) (Page* self, GdkEventKey* event);
- void (*on_move) (Page* self, GdkRectangle* rect);
- void (*on_move_start) (Page* self, GdkRectangle* rect);
- void (*on_move_finished) (Page* self, GdkRectangle* rect);
- void (*on_resize) (Page* self, GdkRectangle* rect);
- void (*on_resize_start) (Page* self, GdkRectangle* rect);
- void (*on_resize_finished) (Page* self, GdkRectangle* rect);
- gboolean (*on_configure) (Page* self, GdkEventConfigure* event, GdkRectangle* rect);
- gboolean (*on_motion) (Page* self, GdkEventMotion* event, gint x, gint y, GdkModifierType mask);
- gboolean (*on_leave_notify_event) (Page* self);
- gboolean (*on_mousewheel_up) (Page* self, GdkEventScroll* event);
- gboolean (*on_mousewheel_down) (Page* self, GdkEventScroll* event);
- gboolean (*on_mousewheel_left) (Page* self, GdkEventScroll* event);
- gboolean (*on_mousewheel_right) (Page* self, GdkEventScroll* event);
- gboolean (*on_context_keypress) (Page* self);
- gboolean (*on_context_buttonpress) (Page* self, GdkEventButton* event);
- gboolean (*on_context_invoked) (Page* self);
- void (*set_page_cursor) (Page* self, GdkCursorType cursor_type);
-};
-
-typedef enum {
- CHECKERBOARD_PAGE_ACTIVATOR_KEYBOARD,
- CHECKERBOARD_PAGE_ACTIVATOR_MOUSE
-} CheckerboardPageActivator;
-
-struct _CheckerboardPageKeyboardModifiers {
- gboolean ctrl_pressed;
- gboolean alt_pressed;
- gboolean shift_pressed;
- gboolean super_pressed;
-};
-
-struct _CheckerboardPage {
- Page parent_instance;
- CheckerboardPagePrivate * priv;
- CheckerboardItem* anchor;
- CheckerboardItem* cursor;
-};
-
-struct _CheckerboardPageClass {
- PageClass parent_class;
- GtkMenu* (*get_item_context_menu) (CheckerboardPage* self);
- gchar* (*get_view_empty_message) (CheckerboardPage* self);
- gchar* (*get_filter_no_match_message) (CheckerboardPage* self);
- void (*on_item_activated) (CheckerboardPage* self, CheckerboardItem* item, CheckerboardPageActivator activator, CheckerboardPageKeyboardModifiers* modifiers);
- SearchViewFilter* (*get_search_view_filter) (CheckerboardPage* self);
- CoreViewTracker* (*get_view_tracker) (CheckerboardPage* self);
- gboolean (*on_mouse_over) (CheckerboardPage* self, CheckerboardItem* item, gint x, gint y, GdkModifierType mask);
- void (*set_display_titles) (CheckerboardPage* self, gboolean display);
- void (*set_display_comments) (CheckerboardPage* self, gboolean display);
-};
-
-typedef enum {
- RATING_REJECTED = -1,
- RATING_UNRATED = 0,
- RATING_ONE = 1,
- RATING_TWO = 2,
- RATING_THREE = 3,
- RATING_FOUR = 4,
- RATING_FIVE = 5
-} Rating;
-
-typedef enum {
- RAW_DEVELOPER_SHOTWELL = 0,
- RAW_DEVELOPER_CAMERA,
- RAW_DEVELOPER_EMBEDDED
-} RawDeveloper;
-
-struct _MediaPage {
- CheckerboardPage parent_instance;
- MediaPagePrivate * priv;
-};
-
-struct _MediaPageClass {
- CheckerboardPageClass parent_class;
- void (*on_zoom_changed) (MediaPage* self);
- void (*on_export) (MediaPage* self);
- void (*on_increase_size) (MediaPage* self);
- void (*on_decrease_size) (MediaPage* self);
- void (*on_increase_rating) (MediaPage* self);
- void (*on_decrease_rating) (MediaPage* self);
- void (*on_set_rating) (MediaPage* self, Rating rating);
- void (*on_rate_rejected) (MediaPage* self);
- void (*on_rate_unrated) (MediaPage* self);
- void (*on_rate_one) (MediaPage* self);
- void (*on_rate_two) (MediaPage* self);
- void (*on_rate_three) (MediaPage* self);
- void (*on_rate_four) (MediaPage* self);
- void (*on_rate_five) (MediaPage* self);
- void (*on_move_to_trash) (MediaPage* self);
- void (*on_edit_title) (MediaPage* self);
- void (*on_edit_comment) (MediaPage* self);
- void (*on_display_titles) (MediaPage* self, GSimpleAction* action, GVariant* value);
- void (*on_display_comments) (MediaPage* self, GSimpleAction* action, GVariant* value);
- void (*on_display_ratings) (MediaPage* self, GSimpleAction* action, GVariant* value);
- void (*on_display_tags) (MediaPage* self, GSimpleAction* action, GVariant* value);
- void (*get_config_photos_sort) (MediaPage* self, gboolean* sort_order, gint* sort_by);
- void (*set_config_photos_sort) (MediaPage* self, gboolean sort_order, gint sort_by);
- void (*on_sort_changed) (MediaPage* self, GSimpleAction* action, GVariant* value);
- void (*developer_changed) (MediaPage* self, RawDeveloper rd);
- DataView* (*create_thumbnail) (MediaPage* self, DataSource* source);
-};
-
-struct _CollectionPage {
- MediaPage parent_instance;
- CollectionPagePrivate * priv;
-};
-
-struct _CollectionPageClass {
- MediaPageClass parent_class;
-};
-
-struct _TagPage {
- CollectionPage parent_instance;
- TagPagePrivate * priv;
-};
-
-struct _TagPageClass {
- CollectionPageClass parent_class;
-};
-
-struct _TagPagePrivate {
- Tag* tag;
-};
-
-typedef DataView* (*CreateView) (DataSource* source, void* user_data);
-
-static gpointer tag_page_parent_class = NULL;
-extern TagSourceCollection* tag_global;
-
-GType page_get_type (void) G_GNUC_CONST;
-GType page_window_get_type (void) G_GNUC_CONST;
-GType fullscreen_window_get_type (void) G_GNUC_CONST;
-gpointer injection_group_ref (gpointer instance);
-void injection_group_unref (gpointer instance);
-GParamSpec* param_spec_injection_group (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_injection_group (GValue* value,
- gpointer v_object);
-void value_take_injection_group (GValue* value,
- gpointer v_object);
-gpointer value_get_injection_group (const GValue* value);
-GType injection_group_get_type (void) G_GNUC_CONST;
-GType checkerboard_page_get_type (void) G_GNUC_CONST;
-GType data_object_get_type (void) G_GNUC_CONST;
-GType data_view_get_type (void) G_GNUC_CONST;
-GType thumbnail_view_get_type (void) G_GNUC_CONST;
-GType checkerboard_item_get_type (void) G_GNUC_CONST;
-GType checkerboard_page_activator_get_type (void) G_GNUC_CONST;
-GType checkerboard_page_keyboard_modifiers_get_type (void) G_GNUC_CONST;
-CheckerboardPageKeyboardModifiers* checkerboard_page_keyboard_modifiers_dup (const CheckerboardPageKeyboardModifiers* self);
-void checkerboard_page_keyboard_modifiers_free (CheckerboardPageKeyboardModifiers* self);
-gpointer view_filter_ref (gpointer instance);
-void view_filter_unref (gpointer instance);
-GParamSpec* param_spec_view_filter (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_view_filter (GValue* value,
- gpointer v_object);
-void value_take_view_filter (GValue* value,
- gpointer v_object);
-gpointer value_get_view_filter (const GValue* value);
-GType view_filter_get_type (void) G_GNUC_CONST;
-GType search_view_filter_get_type (void) G_GNUC_CONST;
-gpointer core_tracker_ref (gpointer instance);
-void core_tracker_unref (gpointer instance);
-GParamSpec* core_param_spec_tracker (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void core_value_set_tracker (GValue* value,
- gpointer v_object);
-void core_value_take_tracker (GValue* value,
- gpointer v_object);
-gpointer core_value_get_tracker (const GValue* value);
-GType core_tracker_get_type (void) G_GNUC_CONST;
-GType core_view_tracker_get_type (void) G_GNUC_CONST;
-GType media_page_get_type (void) G_GNUC_CONST;
-GType rating_get_type (void) G_GNUC_CONST;
-GType raw_developer_get_type (void) G_GNUC_CONST;
-GType data_source_get_type (void) G_GNUC_CONST;
-GType collection_page_get_type (void) G_GNUC_CONST;
-GType tag_page_get_type (void) G_GNUC_CONST;
-GType tag_get_type (void) G_GNUC_CONST;
-#define TAG_PAGE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_TAG_PAGE, TagPagePrivate))
-gpointer data_collection_ref (gpointer instance);
-void data_collection_unref (gpointer instance);
-GParamSpec* param_spec_data_collection (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_data_collection (GValue* value,
- gpointer v_object);
-void value_take_data_collection (GValue* value,
- gpointer v_object);
-gpointer value_get_data_collection (const GValue* value);
-GType data_collection_get_type (void) G_GNUC_CONST;
-GType view_collection_get_type (void) G_GNUC_CONST;
-ViewCollection* page_get_view (Page* self);
-void view_collection_halt_mirroring (ViewCollection* self);
-GType source_collection_get_type (void) G_GNUC_CONST;
-GType database_source_collection_get_type (void) G_GNUC_CONST;
-GType container_source_collection_get_type (void) G_GNUC_CONST;
-GType tag_source_collection_get_type (void) G_GNUC_CONST;
-gpointer alteration_ref (gpointer instance);
-void alteration_unref (gpointer instance);
-GParamSpec* param_spec_alteration (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_alteration (GValue* value,
- gpointer v_object);
-void value_take_alteration (GValue* value,
- gpointer v_object);
-gpointer value_get_alteration (const GValue* value);
-GType alteration_get_type (void) G_GNUC_CONST;
-static void tag_page_on_tags_altered (TagPage* self,
- GeeMap* map);
-static void _tag_page_on_tags_altered_data_collection_items_altered (DataCollection* _sender,
- GeeMap* items,
- gpointer self);
-static void tag_page_on_delete_tag (TagPage* self);
-static void _tag_page_on_delete_tag_gsimple_action_activate_callback (GSimpleAction* action,
- GVariant* parameter,
- gpointer self);
-static void tag_page_on_rename_tag (TagPage* self);
-static void _tag_page_on_rename_tag_gsimple_action_activate_callback (GSimpleAction* action,
- GVariant* parameter,
- gpointer self);
-static void tag_page_on_remove_tag_from_photos (TagPage* self);
-static void _tag_page_on_remove_tag_from_photos_gsimple_action_activate_callback (GSimpleAction* action,
- GVariant* parameter,
- gpointer self);
-static void tag_page_on_new_child_tag_sidebar (TagPage* self);
-static void _tag_page_on_new_child_tag_sidebar_gsimple_action_activate_callback (GSimpleAction* action,
- GVariant* parameter,
- gpointer self);
-TagPage* tag_page_new (Tag* tag);
-TagPage* tag_page_construct (GType object_type,
- Tag* tag);
-gchar* data_object_get_name (DataObject* self);
-CollectionPage* collection_page_construct (GType object_type,
- const gchar* page_name);
-void tag_mirror_sources (Tag* self,
- ViewCollection* view,
- CreateView mirroring_ctor,
- void* mirroring_ctor_target);
-DataView* media_page_create_thumbnail (MediaPage* self,
- DataSource* source);
-static DataView* _media_page_create_thumbnail_create_view (DataSource* source,
- gpointer self);
-void checkerboard_page_init_page_context_menu (CheckerboardPage* self,
- const gchar* path);
-static void tag_page_real_init_collect_ui_filenames (Page* base,
- GeeList* ui_filenames);
-void page_init_collect_ui_filenames (Page* self,
- GeeList* ui_filenames);
-Tag* tag_page_get_tag (TagPage* self);
-static void tag_page_real_get_config_photos_sort (MediaPage* base,
- gboolean* sort_order,
- gint* sort_by);
-GType configuration_facade_get_type (void) G_GNUC_CONST;
-GType config_facade_get_type (void) G_GNUC_CONST;
-ConfigFacade* config_facade_get_instance (void);
-void configuration_facade_get_event_photos_sort (ConfigurationFacade* self,
- gboolean* sort_order,
- gint* sort_by);
-static void tag_page_real_set_config_photos_sort (MediaPage* base,
- gboolean sort_order,
- gint sort_by);
-void configuration_facade_set_event_photos_sort (ConfigurationFacade* self,
- gboolean sort_order,
- gint sort_by);
-static void tag_page_real_add_actions (Page* base,
- GActionMap* map);
-void page_add_actions (Page* self,
- GActionMap* map);
-static void tag_page_real_remove_actions (Page* base,
- GActionMap* map);
-void page_remove_actions (Page* self,
- GActionMap* map);
-void page_set_page_name (Page* self,
- const gchar* page_name);
-void page_update_actions (Page* self,
- gint selected_count,
- gint count);
-gint view_collection_get_selected_count (ViewCollection* self);
-gint data_collection_get_count (DataCollection* self);
-static void tag_page_real_switched_to (Page* base);
-void page_switched_to (Page* self);
-void page_update_menu_item_label (Page* self,
- const gchar* id,
- const gchar* new_label);
-gchar* resources_delete_tag_menu (const gchar* name);
-gchar* tag_get_user_visible_name (Tag* self);
-gchar* resources_rename_tag_menu (const gchar* name);
-gchar* resources_untag_photos_menu (const gchar* name,
- gint count);
-static void tag_page_real_update_actions (Page* base,
- gint selected_count,
- gint count);
-void page_set_action_details (Page* self,
- const gchar* name,
- const gchar* label,
- const gchar* tooltip,
- gboolean sensitive);
-GType command_get_type (void) G_GNUC_CONST;
-GType page_command_get_type (void) G_GNUC_CONST;
-GType simple_proxyable_command_get_type (void) G_GNUC_CONST;
-GType new_child_tag_command_get_type (void) G_GNUC_CONST;
-NewChildTagCommand* new_child_tag_command_new (Tag* tag);
-NewChildTagCommand* new_child_tag_command_construct (GType object_type,
- Tag* tag);
-gpointer command_manager_ref (gpointer instance);
-void command_manager_unref (gpointer instance);
-GParamSpec* param_spec_command_manager (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_command_manager (GValue* value,
- gpointer v_object);
-void value_take_command_manager (GValue* value,
- gpointer v_object);
-gpointer value_get_command_manager (const GValue* value);
-GType command_manager_get_type (void) G_GNUC_CONST;
-CommandManager* app_window_get_command_manager (void);
-void command_manager_execute (CommandManager* self,
- Command* command);
-GType app_window_get_type (void) G_GNUC_CONST;
-GType library_window_get_type (void) G_GNUC_CONST;
-LibraryWindow* library_window_get_app (void);
-void library_window_rename_tag_in_sidebar (LibraryWindow* self,
- Tag* tag);
-Tag* new_child_tag_command_get_created_child (NewChildTagCommand* self);
-gboolean dialogs_confirm_delete_tag (Tag* tag);
-DeleteTagCommand* delete_tag_command_new (Tag* tag);
-DeleteTagCommand* delete_tag_command_construct (GType object_type,
- Tag* tag);
-GType delete_tag_command_get_type (void) G_GNUC_CONST;
-CommandManager* page_get_command_manager (Page* self);
-GeeList* view_collection_get_selected_sources (ViewCollection* self);
-GType thumbnail_source_get_type (void) G_GNUC_CONST;
-GType media_source_get_type (void) G_GNUC_CONST;
-TagUntagPhotosCommand* tag_untag_photos_command_new (Tag* tag,
- GeeCollection* sources,
- gint count,
- gboolean attach);
-TagUntagPhotosCommand* tag_untag_photos_command_construct (GType object_type,
- Tag* tag,
- GeeCollection* sources,
- gint count,
- gboolean attach);
-GType tag_untag_photos_command_get_type (void) G_GNUC_CONST;
-static void tag_page_finalize (GObject * obj);
-
-static const GActionEntry TAG_PAGE_entries[4] = {{"DeleteTag", _tag_page_on_delete_tag_gsimple_action_activate_callback}, {"RenameTag", _tag_page_on_rename_tag_gsimple_action_activate_callback}, {"RemoveTagFromPhotos", _tag_page_on_remove_tag_from_photos_gsimple_action_activate_callback}, {"NewChildTagSidebar", _tag_page_on_new_child_tag_sidebar_gsimple_action_activate_callback}};
-
-static void
-_tag_page_on_tags_altered_data_collection_items_altered (DataCollection* _sender,
- GeeMap* items,
- gpointer self)
-{
-#line 23 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- tag_page_on_tags_altered ((TagPage*) self, items);
-#line 840 "TagPage.c"
-}
-
-
-static void
-_tag_page_on_delete_tag_gsimple_action_activate_callback (GSimpleAction* action,
- GVariant* parameter,
- gpointer self)
-{
-#line 43 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- tag_page_on_delete_tag ((TagPage*) self);
-#line 851 "TagPage.c"
-}
-
-
-static void
-_tag_page_on_rename_tag_gsimple_action_activate_callback (GSimpleAction* action,
- GVariant* parameter,
- gpointer self)
-{
-#line 43 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- tag_page_on_rename_tag ((TagPage*) self);
-#line 862 "TagPage.c"
-}
-
-
-static void
-_tag_page_on_remove_tag_from_photos_gsimple_action_activate_callback (GSimpleAction* action,
- GVariant* parameter,
- gpointer self)
-{
-#line 43 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- tag_page_on_remove_tag_from_photos ((TagPage*) self);
-#line 873 "TagPage.c"
-}
-
-
-static void
-_tag_page_on_new_child_tag_sidebar_gsimple_action_activate_callback (GSimpleAction* action,
- GVariant* parameter,
- gpointer self)
-{
-#line 43 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- tag_page_on_new_child_tag_sidebar ((TagPage*) self);
-#line 884 "TagPage.c"
-}
-
-
-static gpointer
-_g_object_ref0 (gpointer self)
-{
-#line 13 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- return self ? g_object_ref (self) : NULL;
-#line 893 "TagPage.c"
-}
-
-
-static DataView*
-_media_page_create_thumbnail_create_view (DataSource* source,
- gpointer self)
-{
- DataView* result;
- result = media_page_create_thumbnail ((MediaPage*) self, source);
-#line 16 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- return result;
-#line 905 "TagPage.c"
-}
-
-
-TagPage*
-tag_page_construct (GType object_type,
- Tag* tag)
-{
- TagPage * self = NULL;
- gchar* _tmp0_;
- gchar* _tmp1_;
- Tag* _tmp2_;
- TagSourceCollection* _tmp3_;
- ViewCollection* _tmp4_;
- ViewCollection* _tmp5_;
-#line 10 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_val_if_fail (IS_TAG (tag), NULL);
-#line 11 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (tag, TYPE_DATA_OBJECT, DataObject));
-#line 11 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = _tmp0_;
-#line 11 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self = (TagPage*) collection_page_construct (object_type, _tmp1_);
-#line 11 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp1_);
-#line 13 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp2_ = _g_object_ref0 (tag);
-#line 13 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (self->priv->tag);
-#line 13 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self->priv->tag = _tmp2_;
-#line 15 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp3_ = tag_global;
-#line 15 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_DATA_COLLECTION, DataCollection), "items-altered", (GCallback) _tag_page_on_tags_altered_data_collection_items_altered, self, 0);
-#line 16 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp4_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page));
-#line 16 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp5_ = _tmp4_;
-#line 16 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- tag_mirror_sources (tag, _tmp5_, _media_page_create_thumbnail_create_view, G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_MEDIA_PAGE, MediaPage));
-#line 16 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _data_collection_unref0 (_tmp5_);
-#line 18 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- checkerboard_page_init_page_context_menu (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CHECKERBOARD_PAGE, CheckerboardPage), "TagsContextMenu");
-#line 10 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- return self;
-#line 952 "TagPage.c"
-}
-
-
-TagPage*
-tag_page_new (Tag* tag)
-{
-#line 10 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- return tag_page_construct (TYPE_TAG_PAGE, tag);
-#line 961 "TagPage.c"
-}
-
-
-static void
-tag_page_real_init_collect_ui_filenames (Page* base,
- GeeList* ui_filenames)
-{
- TagPage * self;
-#line 26 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_TAG_PAGE, TagPage);
-#line 26 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_if_fail (GEE_IS_LIST (ui_filenames));
-#line 27 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- PAGE_CLASS (tag_page_parent_class)->init_collect_ui_filenames (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_COLLECTION_PAGE, CollectionPage), TYPE_PAGE, Page), ui_filenames);
-#line 28 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- gee_collection_add (G_TYPE_CHECK_INSTANCE_CAST (ui_filenames, GEE_TYPE_COLLECTION, GeeCollection), "tags.ui");
-#line 978 "TagPage.c"
-}
-
-
-Tag*
-tag_page_get_tag (TagPage* self)
-{
- Tag* result = NULL;
- Tag* _tmp0_;
- Tag* _tmp1_;
-#line 31 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_val_if_fail (IS_TAG_PAGE (self), NULL);
-#line 32 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = self->priv->tag;
-#line 32 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = _g_object_ref0 (_tmp0_);
-#line 32 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- result = _tmp1_;
-#line 32 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- return result;
-#line 998 "TagPage.c"
-}
-
-
-static void
-tag_page_real_get_config_photos_sort (MediaPage* base,
- gboolean* sort_order,
- gint* sort_by)
-{
- TagPage * self;
- gboolean _vala_sort_order = FALSE;
- gint _vala_sort_by = 0;
- ConfigFacade* _tmp0_;
- ConfigFacade* _tmp1_;
- gboolean _tmp2_ = FALSE;
- gint _tmp3_ = 0;
-#line 35 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_TAG_PAGE, TagPage);
-#line 36 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = config_facade_get_instance ();
-#line 36 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = _tmp0_;
-#line 36 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- configuration_facade_get_event_photos_sort (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), &_tmp2_, &_tmp3_);
-#line 36 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _vala_sort_order = _tmp2_;
-#line 36 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _vala_sort_by = _tmp3_;
-#line 36 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (_tmp1_);
-#line 35 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- if (sort_order) {
-#line 35 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- *sort_order = _vala_sort_order;
-#line 1032 "TagPage.c"
- }
-#line 35 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- if (sort_by) {
-#line 35 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- *sort_by = _vala_sort_by;
-#line 1038 "TagPage.c"
- }
-}
-
-
-static void
-tag_page_real_set_config_photos_sort (MediaPage* base,
- gboolean sort_order,
- gint sort_by)
-{
- TagPage * self;
- ConfigFacade* _tmp0_;
- ConfigFacade* _tmp1_;
-#line 39 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_TAG_PAGE, TagPage);
-#line 40 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = config_facade_get_instance ();
-#line 40 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = _tmp0_;
-#line 40 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- configuration_facade_set_event_photos_sort (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), sort_order, sort_by);
-#line 40 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (_tmp1_);
-#line 1061 "TagPage.c"
-}
-
-
-static void
-tag_page_real_add_actions (Page* base,
- GActionMap* map)
-{
- TagPage * self;
-#line 50 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_TAG_PAGE, TagPage);
-#line 50 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_if_fail (G_IS_ACTION_MAP (map));
-#line 51 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- PAGE_CLASS (tag_page_parent_class)->add_actions (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_COLLECTION_PAGE, CollectionPage), TYPE_PAGE, Page), map);
-#line 53 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_action_map_add_action_entries (map, TAG_PAGE_entries, G_N_ELEMENTS (TAG_PAGE_entries), self);
-#line 1078 "TagPage.c"
-}
-
-
-static void
-tag_page_real_remove_actions (Page* base,
- GActionMap* map)
-{
- TagPage * self;
-#line 56 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_TAG_PAGE, TagPage);
-#line 56 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_if_fail (G_IS_ACTION_MAP (map));
-#line 57 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- PAGE_CLASS (tag_page_parent_class)->remove_actions (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_COLLECTION_PAGE, CollectionPage), TYPE_PAGE, Page), map);
-#line 1093 "TagPage.c"
- {
- GActionEntry* entry_collection = NULL;
- gint entry_collection_length1 = 0;
- gint _entry_collection_size_ = 0;
- gint entry_it = 0;
-#line 58 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- entry_collection = TAG_PAGE_entries;
-#line 58 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- entry_collection_length1 = G_N_ELEMENTS (TAG_PAGE_entries);
-#line 58 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- for (entry_it = 0; entry_it < G_N_ELEMENTS (TAG_PAGE_entries); entry_it = entry_it + 1) {
-#line 1105 "TagPage.c"
- GActionEntry entry = {0};
-#line 58 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- entry = entry_collection[entry_it];
-#line 1109 "TagPage.c"
- {
- GActionEntry _tmp0_;
- const gchar* _tmp1_;
-#line 59 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = entry;
-#line 59 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = _tmp0_.name;
-#line 59 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_action_map_remove_action (map, _tmp1_);
-#line 1119 "TagPage.c"
- }
- }
- }
-}
-
-
-static void
-tag_page_on_tags_altered (TagPage* self,
- GeeMap* map)
-{
- Tag* _tmp0_;
-#line 63 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_if_fail (IS_TAG_PAGE (self));
-#line 63 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_if_fail (GEE_IS_MAP (map));
-#line 64 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = self->priv->tag;
-#line 64 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- if (gee_map_has_key (map, G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_OBJECT, DataObject))) {
-#line 1139 "TagPage.c"
- Tag* _tmp1_;
- gchar* _tmp2_;
- gchar* _tmp3_;
- ViewCollection* _tmp4_;
- ViewCollection* _tmp5_;
- ViewCollection* _tmp6_;
- ViewCollection* _tmp7_;
-#line 65 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = self->priv->tag;
-#line 65 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp2_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_DATA_OBJECT, DataObject));
-#line 65 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp3_ = _tmp2_;
-#line 65 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- page_set_page_name (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), _tmp3_);
-#line 65 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp3_);
-#line 66 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp4_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page));
-#line 66 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp5_ = _tmp4_;
-#line 66 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp6_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page));
-#line 66 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp7_ = _tmp6_;
-#line 66 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- page_update_actions (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), view_collection_get_selected_count (_tmp5_), data_collection_get_count (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_DATA_COLLECTION, DataCollection)));
-#line 66 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _data_collection_unref0 (_tmp7_);
-#line 66 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _data_collection_unref0 (_tmp5_);
-#line 1171 "TagPage.c"
- }
-}
-
-
-static void
-tag_page_real_switched_to (Page* base)
-{
- TagPage * self;
- Tag* _tmp0_;
- gchar* _tmp1_;
- gchar* _tmp2_;
- gchar* _tmp3_;
- gchar* _tmp4_;
- Tag* _tmp5_;
- gchar* _tmp6_;
- gchar* _tmp7_;
- gchar* _tmp8_;
- gchar* _tmp9_;
- Tag* _tmp10_;
- gchar* _tmp11_;
- gchar* _tmp12_;
- gchar* _tmp13_;
- gchar* _tmp14_;
-#line 70 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_TAG_PAGE, TagPage);
-#line 71 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- PAGE_CLASS (tag_page_parent_class)->switched_to (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_COLLECTION_PAGE, CollectionPage), TYPE_PAGE, Page));
-#line 72 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = self->priv->tag;
-#line 72 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = tag_get_user_visible_name (_tmp0_);
-#line 72 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp2_ = _tmp1_;
-#line 72 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp3_ = resources_delete_tag_menu (_tmp2_);
-#line 72 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp4_ = _tmp3_;
-#line 72 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- page_update_menu_item_label (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), "DeleteTag", _tmp4_);
-#line 72 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp4_);
-#line 72 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp2_);
-#line 74 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp5_ = self->priv->tag;
-#line 74 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp6_ = tag_get_user_visible_name (_tmp5_);
-#line 74 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp7_ = _tmp6_;
-#line 74 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp8_ = resources_rename_tag_menu (_tmp7_);
-#line 74 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp9_ = _tmp8_;
-#line 74 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- page_update_menu_item_label (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), "RenameTag", _tmp9_);
-#line 74 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp9_);
-#line 74 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp7_);
-#line 76 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp10_ = self->priv->tag;
-#line 76 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp11_ = tag_get_user_visible_name (_tmp10_);
-#line 76 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp12_ = _tmp11_;
-#line 76 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp13_ = resources_untag_photos_menu (_tmp12_, 0);
-#line 76 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp14_ = _tmp13_;
-#line 76 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- page_update_menu_item_label (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), "RemoveTagFromPhotos", _tmp14_);
-#line 76 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp14_);
-#line 76 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp12_);
-#line 1247 "TagPage.c"
-}
-
-
-static void
-tag_page_real_update_actions (Page* base,
- gint selected_count,
- gint count)
-{
- TagPage * self;
- Tag* _tmp0_;
- gchar* _tmp1_;
- gchar* _tmp2_;
- gchar* _tmp3_;
- gchar* _tmp4_;
- Tag* _tmp5_;
- gchar* _tmp6_;
- gchar* _tmp7_;
- gchar* _tmp8_;
- gchar* _tmp9_;
- Tag* _tmp10_;
- gchar* _tmp11_;
- gchar* _tmp12_;
- gchar* _tmp13_;
- gchar* _tmp14_;
-#line 80 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_TAG_PAGE, TagPage);
-#line 81 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = self->priv->tag;
-#line 81 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = tag_get_user_visible_name (_tmp0_);
-#line 81 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp2_ = _tmp1_;
-#line 81 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp3_ = resources_delete_tag_menu (_tmp2_);
-#line 81 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp4_ = _tmp3_;
-#line 81 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- page_set_action_details (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), "DeleteTag", _tmp4_, NULL, TRUE);
-#line 81 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp4_);
-#line 81 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp2_);
-#line 86 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp5_ = self->priv->tag;
-#line 86 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp6_ = tag_get_user_visible_name (_tmp5_);
-#line 86 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp7_ = _tmp6_;
-#line 86 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp8_ = resources_rename_tag_menu (_tmp7_);
-#line 86 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp9_ = _tmp8_;
-#line 86 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- page_set_action_details (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), "RenameTag", _tmp9_, NULL, TRUE);
-#line 86 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp9_);
-#line 86 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp7_);
-#line 91 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp10_ = self->priv->tag;
-#line 91 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp11_ = tag_get_user_visible_name (_tmp10_);
-#line 91 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp12_ = _tmp11_;
-#line 91 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp13_ = resources_untag_photos_menu (_tmp12_, selected_count);
-#line 91 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp14_ = _tmp13_;
-#line 91 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- page_set_action_details (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), "RemoveTagFromPhotos", _tmp14_, NULL, selected_count > 0);
-#line 91 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp14_);
-#line 91 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_free0 (_tmp12_);
-#line 96 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- PAGE_CLASS (tag_page_parent_class)->update_actions (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_COLLECTION_PAGE, CollectionPage), TYPE_PAGE, Page), selected_count, count);
-#line 1324 "TagPage.c"
-}
-
-
-static void
-tag_page_on_new_child_tag_sidebar (TagPage* self)
-{
- NewChildTagCommand* creation_command = NULL;
- Tag* _tmp0_;
- NewChildTagCommand* _tmp1_;
- CommandManager* _tmp2_;
- CommandManager* _tmp3_;
- LibraryWindow* _tmp4_;
- LibraryWindow* _tmp5_;
- Tag* _tmp6_;
- Tag* _tmp7_;
-#line 99 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_if_fail (IS_TAG_PAGE (self));
-#line 100 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = self->priv->tag;
-#line 100 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = new_child_tag_command_new (_tmp0_);
-#line 100 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- creation_command = _tmp1_;
-#line 102 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp2_ = app_window_get_command_manager ();
-#line 102 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp3_ = _tmp2_;
-#line 102 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- command_manager_execute (_tmp3_, G_TYPE_CHECK_INSTANCE_CAST (creation_command, TYPE_COMMAND, Command));
-#line 102 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _command_manager_unref0 (_tmp3_);
-#line 104 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp4_ = library_window_get_app ();
-#line 104 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp5_ = _tmp4_;
-#line 104 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp6_ = new_child_tag_command_get_created_child (creation_command);
-#line 104 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp7_ = _tmp6_;
-#line 104 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- library_window_rename_tag_in_sidebar (_tmp5_, _tmp7_);
-#line 104 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (_tmp7_);
-#line 104 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (_tmp5_);
-#line 99 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (creation_command);
-#line 1372 "TagPage.c"
-}
-
-
-static void
-tag_page_on_rename_tag (TagPage* self)
-{
- LibraryWindow* _tmp0_;
- LibraryWindow* _tmp1_;
- Tag* _tmp2_;
-#line 107 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_if_fail (IS_TAG_PAGE (self));
-#line 108 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = library_window_get_app ();
-#line 108 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = _tmp0_;
-#line 108 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp2_ = self->priv->tag;
-#line 108 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- library_window_rename_tag_in_sidebar (_tmp1_, _tmp2_);
-#line 108 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (_tmp1_);
-#line 1394 "TagPage.c"
-}
-
-
-static void
-tag_page_on_delete_tag (TagPage* self)
-{
- Tag* _tmp0_;
-#line 111 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_if_fail (IS_TAG_PAGE (self));
-#line 112 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = self->priv->tag;
-#line 112 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- if (dialogs_confirm_delete_tag (_tmp0_)) {
-#line 1408 "TagPage.c"
- CommandManager* _tmp1_;
- CommandManager* _tmp2_;
- Tag* _tmp3_;
- DeleteTagCommand* _tmp4_;
- DeleteTagCommand* _tmp5_;
-#line 113 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = app_window_get_command_manager ();
-#line 113 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp2_ = _tmp1_;
-#line 113 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp3_ = self->priv->tag;
-#line 113 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp4_ = delete_tag_command_new (_tmp3_);
-#line 113 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp5_ = _tmp4_;
-#line 113 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- command_manager_execute (_tmp2_, G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_COMMAND, Command));
-#line 113 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (_tmp5_);
-#line 113 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _command_manager_unref0 (_tmp2_);
-#line 1430 "TagPage.c"
- }
-}
-
-
-static void
-tag_page_on_remove_tag_from_photos (TagPage* self)
-{
- ViewCollection* _tmp0_;
- ViewCollection* _tmp1_;
- gboolean _tmp2_;
-#line 116 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_return_if_fail (IS_TAG_PAGE (self));
-#line 117 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page));
-#line 117 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = _tmp0_;
-#line 117 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp2_ = view_collection_get_selected_count (_tmp1_) > 0;
-#line 117 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _data_collection_unref0 (_tmp1_);
-#line 117 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- if (_tmp2_) {
-#line 1453 "TagPage.c"
- CommandManager* _tmp3_;
- CommandManager* _tmp4_;
- Tag* _tmp5_;
- ViewCollection* _tmp6_;
- ViewCollection* _tmp7_;
- GeeList* _tmp8_;
- GeeCollection* _tmp9_;
- ViewCollection* _tmp10_;
- ViewCollection* _tmp11_;
- TagUntagPhotosCommand* _tmp12_;
- TagUntagPhotosCommand* _tmp13_;
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp3_ = page_get_command_manager (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page));
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp4_ = _tmp3_;
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp5_ = self->priv->tag;
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp6_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page));
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp7_ = _tmp6_;
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp8_ = view_collection_get_selected_sources (_tmp7_);
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp9_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, GEE_TYPE_COLLECTION, GeeCollection);
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp10_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page));
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp11_ = _tmp10_;
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp12_ = tag_untag_photos_command_new (_tmp5_, _tmp9_, view_collection_get_selected_count (_tmp11_), FALSE);
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp13_ = _tmp12_;
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- command_manager_execute (_tmp4_, G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, TYPE_COMMAND, Command));
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (_tmp13_);
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _data_collection_unref0 (_tmp11_);
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (_tmp9_);
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _data_collection_unref0 (_tmp7_);
-#line 118 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _command_manager_unref0 (_tmp4_);
-#line 1499 "TagPage.c"
- }
-}
-
-
-static void
-tag_page_class_init (TagPageClass * klass)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- tag_page_parent_class = g_type_class_peek_parent (klass);
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_type_class_add_private (klass, sizeof (TagPagePrivate));
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- ((PageClass *) klass)->init_collect_ui_filenames = (void (*) (Page *, GeeList*)) tag_page_real_init_collect_ui_filenames;
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- ((MediaPageClass *) klass)->get_config_photos_sort = (void (*) (MediaPage *, gboolean*, gint*)) tag_page_real_get_config_photos_sort;
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- ((MediaPageClass *) klass)->set_config_photos_sort = (void (*) (MediaPage *, gboolean, gint)) tag_page_real_set_config_photos_sort;
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- ((PageClass *) klass)->add_actions = (void (*) (Page *, GActionMap*)) tag_page_real_add_actions;
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- ((PageClass *) klass)->remove_actions = (void (*) (Page *, GActionMap*)) tag_page_real_remove_actions;
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- ((PageClass *) klass)->switched_to = (void (*) (Page *)) tag_page_real_switched_to;
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- ((PageClass *) klass)->update_actions = (void (*) (Page *, gint, gint)) tag_page_real_update_actions;
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- G_OBJECT_CLASS (klass)->finalize = tag_page_finalize;
-#line 1527 "TagPage.c"
-}
-
-
-static void
-tag_page_instance_init (TagPage * self)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self->priv = TAG_PAGE_GET_PRIVATE (self);
-#line 1536 "TagPage.c"
-}
-
-
-static void
-tag_page_finalize (GObject * obj)
-{
- TagPage * self;
- ViewCollection* _tmp0_;
- ViewCollection* _tmp1_;
- TagSourceCollection* _tmp2_;
- guint _tmp3_;
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TAG_PAGE, TagPage);
-#line 22 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp0_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page));
-#line 22 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp1_ = _tmp0_;
-#line 22 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- view_collection_halt_mirroring (_tmp1_);
-#line 22 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _data_collection_unref0 (_tmp1_);
-#line 23 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _tmp2_ = tag_global;
-#line 23 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_signal_parse_name ("items-altered", TYPE_DATA_COLLECTION, &_tmp3_, NULL, FALSE);
-#line 23 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_DATA_COLLECTION, DataCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp3_, 0, NULL, (GCallback) _tag_page_on_tags_altered_data_collection_items_altered, self);
-#line 8 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- _g_object_unref0 (self->priv->tag);
-#line 7 "/home/jens/Source/shotwell/src/tags/TagPage.vala"
- G_OBJECT_CLASS (tag_page_parent_class)->finalize (obj);
-#line 1568 "TagPage.c"
-}
-
-
-GType
-tag_page_get_type (void)
-{
- static volatile gsize tag_page_type_id__volatile = 0;
- if (g_once_init_enter (&tag_page_type_id__volatile)) {
- static const GTypeInfo g_define_type_info = { sizeof (TagPageClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tag_page_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TagPage), 0, (GInstanceInitFunc) tag_page_instance_init, NULL };
- GType tag_page_type_id;
- tag_page_type_id = g_type_register_static (TYPE_COLLECTION_PAGE, "TagPage", &g_define_type_info, 0);
- g_once_init_leave (&tag_page_type_id__volatile, tag_page_type_id);
- }
- return tag_page_type_id__volatile;
-}
-
-
-
diff --git a/src/tags/Tags.c b/src/tags/Tags.c
deleted file mode 100644
index f03516a..0000000
--- a/src/tags/Tags.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Tags.c generated by valac 0.40.4, the Vala compiler
- * generated from Tags.vala, do not modify */
-
-/* Copyright 2016 Software Freedom Conservancy Inc.
- *
- * This software is licensed under the GNU Lesser General Public License
- * (version 2.1 or later). See the COPYING file in this distribution.
- */
-
-
-#include <glib.h>
-#include <glib-object.h>
-
-
-
-
-void tags_init (GError** error);
-void tags_sidebar_entry_init (void);
-void tags_terminate (void);
-void tags_sidebar_entry_terminate (void);
-
-
-void
-tags_init (GError** error)
-{
-#line 10 "/home/jens/Source/shotwell/src/tags/Tags.vala"
- tags_sidebar_entry_init ();
-#line 29 "Tags.c"
-}
-
-
-void
-tags_terminate (void)
-{
-#line 14 "/home/jens/Source/shotwell/src/tags/Tags.vala"
- tags_sidebar_entry_terminate ();
-#line 38 "Tags.c"
-}
-
-
-
diff --git a/src/tags/TagsBranch.c b/src/tags/TagsBranch.c
deleted file mode 100644
index a2494fc..0000000
--- a/src/tags/TagsBranch.c
+++ /dev/null
@@ -1,3233 +0,0 @@
-/* TagsBranch.c generated by valac 0.40.4, the Vala compiler
- * generated from TagsBranch.vala, do not modify */
-
-/* Copyright 2016 Software Freedom Conservancy Inc.
- *
- * This software is licensed under the GNU Lesser General Public License
- * (version 2.1 or later). See the COPYING file in this distribution.
- */
-
-
-#include <glib.h>
-#include <glib-object.h>
-#include <gee.h>
-#include <stdlib.h>
-#include <string.h>
-#include <gtk/gtk.h>
-#include <gdk/gdk.h>
-#include <glib/gi18n-lib.h>
-#include <gio/gio.h>
-
-
-#define SIDEBAR_TYPE_BRANCH (sidebar_branch_get_type ())
-#define SIDEBAR_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_BRANCH, SidebarBranch))
-#define SIDEBAR_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SIDEBAR_TYPE_BRANCH, SidebarBranchClass))
-#define SIDEBAR_IS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_BRANCH))
-#define SIDEBAR_IS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SIDEBAR_TYPE_BRANCH))
-#define SIDEBAR_BRANCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SIDEBAR_TYPE_BRANCH, SidebarBranchClass))
-
-typedef struct _SidebarBranch SidebarBranch;
-typedef struct _SidebarBranchClass SidebarBranchClass;
-typedef struct _SidebarBranchPrivate SidebarBranchPrivate;
-
-#define TAGS_TYPE_BRANCH (tags_branch_get_type ())
-#define TAGS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TAGS_TYPE_BRANCH, TagsBranch))
-#define TAGS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TAGS_TYPE_BRANCH, TagsBranchClass))
-#define TAGS_IS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TAGS_TYPE_BRANCH))
-#define TAGS_IS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TAGS_TYPE_BRANCH))
-#define TAGS_BRANCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TAGS_TYPE_BRANCH, TagsBranchClass))
-
-typedef struct _TagsBranch TagsBranch;
-typedef struct _TagsBranchClass TagsBranchClass;
-typedef struct _TagsBranchPrivate TagsBranchPrivate;
-
-#define TYPE_DATA_OBJECT (data_object_get_type ())
-#define DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_OBJECT, DataObject))
-#define DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_OBJECT, DataObjectClass))
-#define IS_DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_OBJECT))
-#define IS_DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_OBJECT))
-#define DATA_OBJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_OBJECT, DataObjectClass))
-
-typedef struct _DataObject DataObject;
-typedef struct _DataObjectClass DataObjectClass;
-
-#define TYPE_DATA_SOURCE (data_source_get_type ())
-#define DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_SOURCE, DataSource))
-#define DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_SOURCE, DataSourceClass))
-#define IS_DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_SOURCE))
-#define IS_DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_SOURCE))
-#define DATA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_SOURCE, DataSourceClass))
-
-typedef struct _DataSource DataSource;
-typedef struct _DataSourceClass DataSourceClass;
-
-#define TYPE_TAG (tag_get_type ())
-#define TAG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG, Tag))
-#define TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG, TagClass))
-#define IS_TAG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG))
-#define IS_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG))
-#define TAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG, TagClass))
-
-typedef struct _Tag Tag;
-typedef struct _TagClass TagClass;
-
-#define SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY (sidebar_simple_page_entry_get_type ())
-#define SIDEBAR_SIMPLE_PAGE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY, SidebarSimplePageEntry))
-#define SIDEBAR_SIMPLE_PAGE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY, SidebarSimplePageEntryClass))
-#define SIDEBAR_IS_SIMPLE_PAGE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY))
-#define SIDEBAR_IS_SIMPLE_PAGE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY))
-#define SIDEBAR_SIMPLE_PAGE_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY, SidebarSimplePageEntryClass))
-
-typedef struct _SidebarSimplePageEntry SidebarSimplePageEntry;
-typedef struct _SidebarSimplePageEntryClass SidebarSimplePageEntryClass;
-
-#define TAGS_TYPE_SIDEBAR_ENTRY (tags_sidebar_entry_get_type ())
-#define TAGS_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry))
-#define TAGS_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntryClass))
-#define TAGS_IS_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TAGS_TYPE_SIDEBAR_ENTRY))
-#define TAGS_IS_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TAGS_TYPE_SIDEBAR_ENTRY))
-#define TAGS_SIDEBAR_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntryClass))
-
-typedef struct _TagsSidebarEntry TagsSidebarEntry;
-typedef struct _TagsSidebarEntryClass TagsSidebarEntryClass;
-enum {
- TAGS_BRANCH_0_PROPERTY,
- TAGS_BRANCH_NUM_PROPERTIES
-};
-static GParamSpec* tags_branch_properties[TAGS_BRANCH_NUM_PROPERTIES];
-
-#define TYPE_DATA_COLLECTION (data_collection_get_type ())
-#define DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_COLLECTION, DataCollection))
-#define DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_COLLECTION, DataCollectionClass))
-#define IS_DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_COLLECTION))
-#define IS_DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_COLLECTION))
-#define DATA_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_COLLECTION, DataCollectionClass))
-
-typedef struct _DataCollection DataCollection;
-typedef struct _DataCollectionClass DataCollectionClass;
-
-#define TYPE_SOURCE_COLLECTION (source_collection_get_type ())
-#define SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_COLLECTION, SourceCollection))
-#define SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_COLLECTION, SourceCollectionClass))
-#define IS_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_COLLECTION))
-#define IS_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_COLLECTION))
-#define SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_COLLECTION, SourceCollectionClass))
-
-typedef struct _SourceCollection SourceCollection;
-typedef struct _SourceCollectionClass SourceCollectionClass;
-
-#define TYPE_DATABASE_SOURCE_COLLECTION (database_source_collection_get_type ())
-#define DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollection))
-#define DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass))
-#define IS_DATABASE_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATABASE_SOURCE_COLLECTION))
-#define IS_DATABASE_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATABASE_SOURCE_COLLECTION))
-#define DATABASE_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATABASE_SOURCE_COLLECTION, DatabaseSourceCollectionClass))
-
-typedef struct _DatabaseSourceCollection DatabaseSourceCollection;
-typedef struct _DatabaseSourceCollectionClass DatabaseSourceCollectionClass;
-
-#define TYPE_CONTAINER_SOURCE_COLLECTION (container_source_collection_get_type ())
-#define CONTAINER_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollection))
-#define CONTAINER_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollectionClass))
-#define IS_CONTAINER_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTAINER_SOURCE_COLLECTION))
-#define IS_CONTAINER_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTAINER_SOURCE_COLLECTION))
-#define CONTAINER_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTAINER_SOURCE_COLLECTION, ContainerSourceCollectionClass))
-
-typedef struct _ContainerSourceCollection ContainerSourceCollection;
-typedef struct _ContainerSourceCollectionClass ContainerSourceCollectionClass;
-
-#define TYPE_TAG_SOURCE_COLLECTION (tag_source_collection_get_type ())
-#define TAG_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollection))
-#define TAG_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollectionClass))
-#define IS_TAG_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG_SOURCE_COLLECTION))
-#define IS_TAG_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG_SOURCE_COLLECTION))
-#define TAG_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG_SOURCE_COLLECTION, TagSourceCollectionClass))
-
-typedef struct _TagSourceCollection TagSourceCollection;
-typedef struct _TagSourceCollectionClass TagSourceCollectionClass;
-
-#define TYPE_ALTERATION (alteration_get_type ())
-#define ALTERATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ALTERATION, Alteration))
-#define ALTERATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ALTERATION, AlterationClass))
-#define IS_ALTERATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ALTERATION))
-#define IS_ALTERATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ALTERATION))
-#define ALTERATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ALTERATION, AlterationClass))
-
-typedef struct _Alteration Alteration;
-typedef struct _AlterationClass AlterationClass;
-#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
-
-#define SIDEBAR_TYPE_GROUPING (sidebar_grouping_get_type ())
-#define SIDEBAR_GROUPING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_GROUPING, SidebarGrouping))
-#define SIDEBAR_GROUPING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SIDEBAR_TYPE_GROUPING, SidebarGroupingClass))
-#define SIDEBAR_IS_GROUPING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_GROUPING))
-#define SIDEBAR_IS_GROUPING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SIDEBAR_TYPE_GROUPING))
-#define SIDEBAR_GROUPING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SIDEBAR_TYPE_GROUPING, SidebarGroupingClass))
-
-typedef struct _SidebarGrouping SidebarGrouping;
-typedef struct _SidebarGroupingClass SidebarGroupingClass;
-
-#define SIDEBAR_TYPE_HEADER (sidebar_header_get_type ())
-#define SIDEBAR_HEADER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_HEADER, SidebarHeader))
-#define SIDEBAR_HEADER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SIDEBAR_TYPE_HEADER, SidebarHeaderClass))
-#define SIDEBAR_IS_HEADER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_HEADER))
-#define SIDEBAR_IS_HEADER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SIDEBAR_TYPE_HEADER))
-#define SIDEBAR_HEADER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SIDEBAR_TYPE_HEADER, SidebarHeaderClass))
-
-typedef struct _SidebarHeader SidebarHeader;
-typedef struct _SidebarHeaderClass SidebarHeaderClass;
-
-#define TAGS_TYPE_HEADER (tags_header_get_type ())
-#define TAGS_HEADER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TAGS_TYPE_HEADER, TagsHeader))
-#define TAGS_HEADER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TAGS_TYPE_HEADER, TagsHeaderClass))
-#define TAGS_IS_HEADER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TAGS_TYPE_HEADER))
-#define TAGS_IS_HEADER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TAGS_TYPE_HEADER))
-#define TAGS_HEADER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TAGS_TYPE_HEADER, TagsHeaderClass))
-
-typedef struct _TagsHeader TagsHeader;
-typedef struct _TagsHeaderClass TagsHeaderClass;
-
-#define SIDEBAR_TYPE_ENTRY (sidebar_entry_get_type ())
-#define SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_ENTRY, SidebarEntry))
-#define SIDEBAR_IS_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_ENTRY))
-#define SIDEBAR_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_ENTRY, SidebarEntryIface))
-
-typedef struct _SidebarEntry SidebarEntry;
-typedef struct _SidebarEntryIface SidebarEntryIface;
-
-#define SIDEBAR_TYPE_TREE (sidebar_tree_get_type ())
-#define SIDEBAR_TREE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_TREE, SidebarTree))
-#define SIDEBAR_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SIDEBAR_TYPE_TREE, SidebarTreeClass))
-#define SIDEBAR_IS_TREE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_TREE))
-#define SIDEBAR_IS_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SIDEBAR_TYPE_TREE))
-#define SIDEBAR_TREE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SIDEBAR_TYPE_TREE, SidebarTreeClass))
-
-typedef struct _SidebarTree SidebarTree;
-typedef struct _SidebarTreeClass SidebarTreeClass;
-
-#define SIDEBAR_BRANCH_TYPE_OPTIONS (sidebar_branch_options_get_type ())
-#define _alteration_unref0(var) ((var == NULL) ? NULL : (var = (alteration_unref (var), NULL)))
-
-#define SIDEBAR_TYPE_RENAMEABLE_ENTRY (sidebar_renameable_entry_get_type ())
-#define SIDEBAR_RENAMEABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_RENAMEABLE_ENTRY, SidebarRenameableEntry))
-#define SIDEBAR_IS_RENAMEABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_RENAMEABLE_ENTRY))
-#define SIDEBAR_RENAMEABLE_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_RENAMEABLE_ENTRY, SidebarRenameableEntryIface))
-
-typedef struct _SidebarRenameableEntry SidebarRenameableEntry;
-typedef struct _SidebarRenameableEntryIface SidebarRenameableEntryIface;
-#define _g_free0(var) (var = (g_free (var), NULL))
-
-#define SIDEBAR_TYPE_EXPANDABLE_ENTRY (sidebar_expandable_entry_get_type ())
-#define SIDEBAR_EXPANDABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_EXPANDABLE_ENTRY, SidebarExpandableEntry))
-#define SIDEBAR_IS_EXPANDABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_EXPANDABLE_ENTRY))
-#define SIDEBAR_EXPANDABLE_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_EXPANDABLE_ENTRY, SidebarExpandableEntryIface))
-
-typedef struct _SidebarExpandableEntry SidebarExpandableEntry;
-typedef struct _SidebarExpandableEntryIface SidebarExpandableEntryIface;
-typedef struct _SidebarGroupingPrivate SidebarGroupingPrivate;
-
-#define SIDEBAR_TYPE_EMPHASIZABLE_ENTRY (sidebar_emphasizable_entry_get_type ())
-#define SIDEBAR_EMPHASIZABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_EMPHASIZABLE_ENTRY, SidebarEmphasizableEntry))
-#define SIDEBAR_IS_EMPHASIZABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_EMPHASIZABLE_ENTRY))
-#define SIDEBAR_EMPHASIZABLE_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_EMPHASIZABLE_ENTRY, SidebarEmphasizableEntryIface))
-
-typedef struct _SidebarEmphasizableEntry SidebarEmphasizableEntry;
-typedef struct _SidebarEmphasizableEntryIface SidebarEmphasizableEntryIface;
-typedef struct _SidebarHeaderPrivate SidebarHeaderPrivate;
-
-#define SIDEBAR_TYPE_INTERNAL_DROP_TARGET_ENTRY (sidebar_internal_drop_target_entry_get_type ())
-#define SIDEBAR_INTERNAL_DROP_TARGET_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_INTERNAL_DROP_TARGET_ENTRY, SidebarInternalDropTargetEntry))
-#define SIDEBAR_IS_INTERNAL_DROP_TARGET_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_INTERNAL_DROP_TARGET_ENTRY))
-#define SIDEBAR_INTERNAL_DROP_TARGET_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_INTERNAL_DROP_TARGET_ENTRY, SidebarInternalDropTargetEntryIface))
-
-typedef struct _SidebarInternalDropTargetEntry SidebarInternalDropTargetEntry;
-typedef struct _SidebarInternalDropTargetEntryIface SidebarInternalDropTargetEntryIface;
-
-#define TYPE_THUMBNAIL_SOURCE (thumbnail_source_get_type ())
-#define THUMBNAIL_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_THUMBNAIL_SOURCE, ThumbnailSource))
-#define THUMBNAIL_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_THUMBNAIL_SOURCE, ThumbnailSourceClass))
-#define IS_THUMBNAIL_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_THUMBNAIL_SOURCE))
-#define IS_THUMBNAIL_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_THUMBNAIL_SOURCE))
-#define THUMBNAIL_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_THUMBNAIL_SOURCE, ThumbnailSourceClass))
-
-typedef struct _ThumbnailSource ThumbnailSource;
-typedef struct _ThumbnailSourceClass ThumbnailSourceClass;
-
-#define TYPE_MEDIA_SOURCE (media_source_get_type ())
-#define MEDIA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_SOURCE, MediaSource))
-#define MEDIA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_SOURCE, MediaSourceClass))
-#define IS_MEDIA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_SOURCE))
-#define IS_MEDIA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_SOURCE))
-#define MEDIA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_SOURCE, MediaSourceClass))
-
-typedef struct _MediaSource MediaSource;
-typedef struct _MediaSourceClass MediaSourceClass;
-
-#define SIDEBAR_TYPE_INTERNAL_DRAG_SOURCE_ENTRY (sidebar_internal_drag_source_entry_get_type ())
-#define SIDEBAR_INTERNAL_DRAG_SOURCE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_INTERNAL_DRAG_SOURCE_ENTRY, SidebarInternalDragSourceEntry))
-#define SIDEBAR_IS_INTERNAL_DRAG_SOURCE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_INTERNAL_DRAG_SOURCE_ENTRY))
-#define SIDEBAR_INTERNAL_DRAG_SOURCE_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_INTERNAL_DRAG_SOURCE_ENTRY, SidebarInternalDragSourceEntryIface))
-
-typedef struct _SidebarInternalDragSourceEntry SidebarInternalDragSourceEntry;
-typedef struct _SidebarInternalDragSourceEntryIface SidebarInternalDragSourceEntryIface;
-
-#define SIDEBAR_TYPE_CONTEXTABLE (sidebar_contextable_get_type ())
-#define SIDEBAR_CONTEXTABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_CONTEXTABLE, SidebarContextable))
-#define SIDEBAR_IS_CONTEXTABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_CONTEXTABLE))
-#define SIDEBAR_CONTEXTABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_CONTEXTABLE, SidebarContextableIface))
-
-typedef struct _SidebarContextable SidebarContextable;
-typedef struct _SidebarContextableIface SidebarContextableIface;
-typedef struct _TagsHeaderPrivate TagsHeaderPrivate;
-enum {
- TAGS_HEADER_0_PROPERTY,
- TAGS_HEADER_NUM_PROPERTIES
-};
-static GParamSpec* tags_header_properties[TAGS_HEADER_NUM_PROPERTIES];
-
-#define TYPE_APPLICATION (application_get_type ())
-#define APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_APPLICATION, Application))
-#define APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_APPLICATION, ApplicationClass))
-#define IS_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_APPLICATION))
-#define IS_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_APPLICATION))
-#define APPLICATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_APPLICATION, ApplicationClass))
-
-typedef struct _Application Application;
-typedef struct _ApplicationClass ApplicationClass;
-#define _application_unref0(var) ((var == NULL) ? NULL : (var = (application_unref (var), NULL)))
-#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
-
-#define TYPE_TEXT_ENTRY_DIALOG_MEDIATOR (text_entry_dialog_mediator_get_type ())
-#define TEXT_ENTRY_DIALOG_MEDIATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TEXT_ENTRY_DIALOG_MEDIATOR, TextEntryDialogMediator))
-#define TEXT_ENTRY_DIALOG_MEDIATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TEXT_ENTRY_DIALOG_MEDIATOR, TextEntryDialogMediatorClass))
-#define IS_TEXT_ENTRY_DIALOG_MEDIATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TEXT_ENTRY_DIALOG_MEDIATOR))
-#define IS_TEXT_ENTRY_DIALOG_MEDIATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TEXT_ENTRY_DIALOG_MEDIATOR))
-#define TEXT_ENTRY_DIALOG_MEDIATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TEXT_ENTRY_DIALOG_MEDIATOR, TextEntryDialogMediatorClass))
-
-typedef struct _TextEntryDialogMediator TextEntryDialogMediator;
-typedef struct _TextEntryDialogMediatorClass TextEntryDialogMediatorClass;
-
-#define TYPE_TAGS_DIALOG (tags_dialog_get_type ())
-#define TAGS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAGS_DIALOG, TagsDialog))
-#define TAGS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAGS_DIALOG, TagsDialogClass))
-#define IS_TAGS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAGS_DIALOG))
-#define IS_TAGS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAGS_DIALOG))
-#define TAGS_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAGS_DIALOG, TagsDialogClass))
-
-typedef struct _TagsDialog TagsDialog;
-typedef struct _TagsDialogClass TagsDialogClass;
-
-#define TYPE_ADD_TAGS_DIALOG (add_tags_dialog_get_type ())
-#define ADD_TAGS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ADD_TAGS_DIALOG, AddTagsDialog))
-#define ADD_TAGS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ADD_TAGS_DIALOG, AddTagsDialogClass))
-#define IS_ADD_TAGS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ADD_TAGS_DIALOG))
-#define IS_ADD_TAGS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ADD_TAGS_DIALOG))
-#define ADD_TAGS_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ADD_TAGS_DIALOG, AddTagsDialogClass))
-
-typedef struct _AddTagsDialog AddTagsDialog;
-typedef struct _AddTagsDialogClass AddTagsDialogClass;
-#define _text_entry_dialog_mediator_unref0(var) ((var == NULL) ? NULL : (var = (text_entry_dialog_mediator_unref (var), NULL)))
-
-#define TYPE_COMMAND_MANAGER (command_manager_get_type ())
-#define COMMAND_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_COMMAND_MANAGER, CommandManager))
-#define COMMAND_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_COMMAND_MANAGER, CommandManagerClass))
-#define IS_COMMAND_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_COMMAND_MANAGER))
-#define IS_COMMAND_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_COMMAND_MANAGER))
-#define COMMAND_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_COMMAND_MANAGER, CommandManagerClass))
-
-typedef struct _CommandManager CommandManager;
-typedef struct _CommandManagerClass CommandManagerClass;
-
-#define TYPE_COMMAND (command_get_type ())
-#define COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_COMMAND, Command))
-#define COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_COMMAND, CommandClass))
-#define IS_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_COMMAND))
-#define IS_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_COMMAND))
-#define COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_COMMAND, CommandClass))
-
-typedef struct _Command Command;
-typedef struct _CommandClass CommandClass;
-
-#define TYPE_PAGE_COMMAND (page_command_get_type ())
-#define PAGE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PAGE_COMMAND, PageCommand))
-#define PAGE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PAGE_COMMAND, PageCommandClass))
-#define IS_PAGE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PAGE_COMMAND))
-#define IS_PAGE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PAGE_COMMAND))
-#define PAGE_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PAGE_COMMAND, PageCommandClass))
-
-typedef struct _PageCommand PageCommand;
-typedef struct _PageCommandClass PageCommandClass;
-
-#define TYPE_ADD_TAGS_COMMAND (add_tags_command_get_type ())
-#define ADD_TAGS_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ADD_TAGS_COMMAND, AddTagsCommand))
-#define ADD_TAGS_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ADD_TAGS_COMMAND, AddTagsCommandClass))
-#define IS_ADD_TAGS_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ADD_TAGS_COMMAND))
-#define IS_ADD_TAGS_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ADD_TAGS_COMMAND))
-#define ADD_TAGS_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ADD_TAGS_COMMAND, AddTagsCommandClass))
-
-typedef struct _AddTagsCommand AddTagsCommand;
-typedef struct _AddTagsCommandClass AddTagsCommandClass;
-#define _command_manager_unref0(var) ((var == NULL) ? NULL : (var = (command_manager_unref (var), NULL)))
-
-#define TYPE_REPARENT_TAG_COMMAND (reparent_tag_command_get_type ())
-#define REPARENT_TAG_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_REPARENT_TAG_COMMAND, ReparentTagCommand))
-#define REPARENT_TAG_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_REPARENT_TAG_COMMAND, ReparentTagCommandClass))
-#define IS_REPARENT_TAG_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_REPARENT_TAG_COMMAND))
-#define IS_REPARENT_TAG_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_REPARENT_TAG_COMMAND))
-#define REPARENT_TAG_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_REPARENT_TAG_COMMAND, ReparentTagCommandClass))
-
-typedef struct _ReparentTagCommand ReparentTagCommand;
-typedef struct _ReparentTagCommandClass ReparentTagCommandClass;
-
-#define SIDEBAR_TYPE_SELECTABLE_ENTRY (sidebar_selectable_entry_get_type ())
-#define SIDEBAR_SELECTABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_SELECTABLE_ENTRY, SidebarSelectableEntry))
-#define SIDEBAR_IS_SELECTABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_SELECTABLE_ENTRY))
-#define SIDEBAR_SELECTABLE_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_SELECTABLE_ENTRY, SidebarSelectableEntryIface))
-
-typedef struct _SidebarSelectableEntry SidebarSelectableEntry;
-typedef struct _SidebarSelectableEntryIface SidebarSelectableEntryIface;
-
-#define SIDEBAR_TYPE_PAGE_REPRESENTATIVE (sidebar_page_representative_get_type ())
-#define SIDEBAR_PAGE_REPRESENTATIVE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentative))
-#define SIDEBAR_IS_PAGE_REPRESENTATIVE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_PAGE_REPRESENTATIVE))
-#define SIDEBAR_PAGE_REPRESENTATIVE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_PAGE_REPRESENTATIVE, SidebarPageRepresentativeIface))
-
-typedef struct _SidebarPageRepresentative SidebarPageRepresentative;
-typedef struct _SidebarPageRepresentativeIface SidebarPageRepresentativeIface;
-
-#define TYPE_PAGE (page_get_type ())
-#define PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PAGE, Page))
-#define PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PAGE, PageClass))
-#define IS_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PAGE))
-#define IS_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PAGE))
-#define PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PAGE, PageClass))
-
-typedef struct _Page Page;
-typedef struct _PageClass PageClass;
-typedef struct _SidebarSimplePageEntryPrivate SidebarSimplePageEntryPrivate;
-
-#define SIDEBAR_TYPE_DESTROYABLE_ENTRY (sidebar_destroyable_entry_get_type ())
-#define SIDEBAR_DESTROYABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SIDEBAR_TYPE_DESTROYABLE_ENTRY, SidebarDestroyableEntry))
-#define SIDEBAR_IS_DESTROYABLE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SIDEBAR_TYPE_DESTROYABLE_ENTRY))
-#define SIDEBAR_DESTROYABLE_ENTRY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SIDEBAR_TYPE_DESTROYABLE_ENTRY, SidebarDestroyableEntryIface))
-
-typedef struct _SidebarDestroyableEntry SidebarDestroyableEntry;
-typedef struct _SidebarDestroyableEntryIface SidebarDestroyableEntryIface;
-typedef struct _TagsSidebarEntryPrivate TagsSidebarEntryPrivate;
-enum {
- TAGS_SIDEBAR_ENTRY_0_PROPERTY,
- TAGS_SIDEBAR_ENTRY_NUM_PROPERTIES
-};
-static GParamSpec* tags_sidebar_entry_properties[TAGS_SIDEBAR_ENTRY_NUM_PROPERTIES];
-
-#define TYPE_CHECKERBOARD_PAGE (checkerboard_page_get_type ())
-#define CHECKERBOARD_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CHECKERBOARD_PAGE, CheckerboardPage))
-#define CHECKERBOARD_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CHECKERBOARD_PAGE, CheckerboardPageClass))
-#define IS_CHECKERBOARD_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CHECKERBOARD_PAGE))
-#define IS_CHECKERBOARD_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CHECKERBOARD_PAGE))
-#define CHECKERBOARD_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CHECKERBOARD_PAGE, CheckerboardPageClass))
-
-typedef struct _CheckerboardPage CheckerboardPage;
-typedef struct _CheckerboardPageClass CheckerboardPageClass;
-
-#define TYPE_MEDIA_PAGE (media_page_get_type ())
-#define MEDIA_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_PAGE, MediaPage))
-#define MEDIA_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_PAGE, MediaPageClass))
-#define IS_MEDIA_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_PAGE))
-#define IS_MEDIA_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_PAGE))
-#define MEDIA_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_PAGE, MediaPageClass))
-
-typedef struct _MediaPage MediaPage;
-typedef struct _MediaPageClass MediaPageClass;
-
-#define TYPE_COLLECTION_PAGE (collection_page_get_type ())
-#define COLLECTION_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_COLLECTION_PAGE, CollectionPage))
-#define COLLECTION_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_COLLECTION_PAGE, CollectionPageClass))
-#define IS_COLLECTION_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_COLLECTION_PAGE))
-#define IS_COLLECTION_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_COLLECTION_PAGE))
-#define COLLECTION_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_COLLECTION_PAGE, CollectionPageClass))
-
-typedef struct _CollectionPage CollectionPage;
-typedef struct _CollectionPageClass CollectionPageClass;
-
-#define TYPE_TAG_PAGE (tag_page_get_type ())
-#define TAG_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG_PAGE, TagPage))
-#define TAG_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG_PAGE, TagPageClass))
-#define IS_TAG_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG_PAGE))
-#define IS_TAG_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG_PAGE))
-#define TAG_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG_PAGE, TagPageClass))
-
-typedef struct _TagPage TagPage;
-typedef struct _TagPageClass TagPageClass;
-#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL)))
-
-#define TYPE_SIMPLE_PROXYABLE_COMMAND (simple_proxyable_command_get_type ())
-#define SIMPLE_PROXYABLE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SIMPLE_PROXYABLE_COMMAND, SimpleProxyableCommand))
-#define SIMPLE_PROXYABLE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SIMPLE_PROXYABLE_COMMAND, SimpleProxyableCommandClass))
-#define IS_SIMPLE_PROXYABLE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SIMPLE_PROXYABLE_COMMAND))
-#define IS_SIMPLE_PROXYABLE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SIMPLE_PROXYABLE_COMMAND))
-#define SIMPLE_PROXYABLE_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SIMPLE_PROXYABLE_COMMAND, SimpleProxyableCommandClass))
-
-typedef struct _SimpleProxyableCommand SimpleProxyableCommand;
-typedef struct _SimpleProxyableCommandClass SimpleProxyableCommandClass;
-
-#define TYPE_RENAME_TAG_COMMAND (rename_tag_command_get_type ())
-#define RENAME_TAG_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RENAME_TAG_COMMAND, RenameTagCommand))
-#define RENAME_TAG_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RENAME_TAG_COMMAND, RenameTagCommandClass))
-#define IS_RENAME_TAG_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RENAME_TAG_COMMAND))
-#define IS_RENAME_TAG_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RENAME_TAG_COMMAND))
-#define RENAME_TAG_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RENAME_TAG_COMMAND, RenameTagCommandClass))
-
-typedef struct _RenameTagCommand RenameTagCommand;
-typedef struct _RenameTagCommandClass RenameTagCommandClass;
-
-#define TYPE_DELETE_TAG_COMMAND (delete_tag_command_get_type ())
-#define DELETE_TAG_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DELETE_TAG_COMMAND, DeleteTagCommand))
-#define DELETE_TAG_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DELETE_TAG_COMMAND, DeleteTagCommandClass))
-#define IS_DELETE_TAG_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DELETE_TAG_COMMAND))
-#define IS_DELETE_TAG_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DELETE_TAG_COMMAND))
-#define DELETE_TAG_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DELETE_TAG_COMMAND, DeleteTagCommandClass))
-
-typedef struct _DeleteTagCommand DeleteTagCommand;
-typedef struct _DeleteTagCommandClass DeleteTagCommandClass;
-
-#define TYPE_TAG_UNTAG_PHOTOS_COMMAND (tag_untag_photos_command_get_type ())
-#define TAG_UNTAG_PHOTOS_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TAG_UNTAG_PHOTOS_COMMAND, TagUntagPhotosCommand))
-#define TAG_UNTAG_PHOTOS_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TAG_UNTAG_PHOTOS_COMMAND, TagUntagPhotosCommandClass))
-#define IS_TAG_UNTAG_PHOTOS_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TAG_UNTAG_PHOTOS_COMMAND))
-#define IS_TAG_UNTAG_PHOTOS_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TAG_UNTAG_PHOTOS_COMMAND))
-#define TAG_UNTAG_PHOTOS_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TAG_UNTAG_PHOTOS_COMMAND, TagUntagPhotosCommandClass))
-
-typedef struct _TagUntagPhotosCommand TagUntagPhotosCommand;
-typedef struct _TagUntagPhotosCommandClass TagUntagPhotosCommandClass;
-#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
-#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
-#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
-#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
-
-struct _SidebarBranch {
- GObject parent_instance;
- SidebarBranchPrivate * priv;
-};
-
-struct _SidebarBranchClass {
- GObjectClass parent_class;
-};
-
-struct _TagsBranch {
- SidebarBranch parent_instance;
- TagsBranchPrivate * priv;
-};
-
-struct _TagsBranchClass {
- SidebarBranchClass parent_class;
-};
-
-struct _TagsBranchPrivate {
- GeeHashMap* entry_map;
-};
-
-struct _SidebarEntryIface {
- GTypeInterface parent_iface;
- gchar* (*get_sidebar_name) (SidebarEntry* self);
- gchar* (*get_sidebar_tooltip) (SidebarEntry* self);
- gchar* (*get_sidebar_icon) (SidebarEntry* self);
- gchar* (*to_string) (SidebarEntry* self);
- void (*grafted) (SidebarEntry* self, SidebarTree* tree);
- void (*pruned) (SidebarEntry* self, SidebarTree* tree);
-};
-
-typedef enum {
- SIDEBAR_BRANCH_OPTIONS_NONE = 0,
- SIDEBAR_BRANCH_OPTIONS_HIDE_IF_EMPTY = 1 << 0,
- SIDEBAR_BRANCH_OPTIONS_AUTO_OPEN_ON_NEW_CHILD = 1 << 1,
- SIDEBAR_BRANCH_OPTIONS_STARTUP_EXPAND_TO_FIRST_CHILD = 1 << 2,
- SIDEBAR_BRANCH_OPTIONS_STARTUP_OPEN_GROUPING = 1 << 3
-} SidebarBranchOptions;
-
-struct _SidebarRenameableEntryIface {
- GTypeInterface parent_iface;
- void (*rename) (SidebarRenameableEntry* self, const gchar* new_name);
- gboolean (*is_user_renameable) (SidebarRenameableEntry* self);
-};
-
-struct _SidebarExpandableEntryIface {
- GTypeInterface parent_iface;
- gboolean (*expand_on_select) (SidebarExpandableEntry* self);
-};
-
-struct _SidebarGrouping {
- GObject parent_instance;
- SidebarGroupingPrivate * priv;
-};
-
-struct _SidebarGroupingClass {
- GObjectClass parent_class;
-};
-
-struct _SidebarEmphasizableEntryIface {
- GTypeInterface parent_iface;
- gboolean (*is_emphasized) (SidebarEmphasizableEntry* self);
-};
-
-struct _SidebarHeader {
- SidebarGrouping parent_instance;
- SidebarHeaderPrivate * priv;
-};
-
-struct _SidebarHeaderClass {
- SidebarGroupingClass parent_class;
-};
-
-struct _SidebarInternalDropTargetEntryIface {
- GTypeInterface parent_iface;
- gboolean (*internal_drop_received) (SidebarInternalDropTargetEntry* self, GeeList* sources);
- gboolean (*internal_drop_received_arbitrary) (SidebarInternalDropTargetEntry* self, GtkSelectionData* data);
-};
-
-struct _SidebarInternalDragSourceEntryIface {
- GTypeInterface parent_iface;
- void (*prepare_selection_data) (SidebarInternalDragSourceEntry* self, GtkSelectionData* data);
-};
-
-struct _SidebarContextableIface {
- GTypeInterface parent_iface;
- GtkMenu* (*get_sidebar_context_menu) (SidebarContextable* self, GdkEventButton* event);
-};
-
-struct _TagsHeader {
- SidebarHeader parent_instance;
- TagsHeaderPrivate * priv;
-};
-
-struct _TagsHeaderClass {
- SidebarHeaderClass parent_class;
-};
-
-struct _TagsHeaderPrivate {
- GtkBuilder* builder;
- GtkMenu* context_menu;
-};
-
-struct _SidebarSelectableEntryIface {
- GTypeInterface parent_iface;
-};
-
-struct _SidebarPageRepresentativeIface {
- GTypeInterface parent_iface;
- gboolean (*has_page) (SidebarPageRepresentative* self);
- Page* (*get_page) (SidebarPageRepresentative* self);
-};
-
-struct _SidebarSimplePageEntry {
- GObject parent_instance;
- SidebarSimplePageEntryPrivate * priv;
-};
-
-struct _SidebarSimplePageEntryClass {
- GObjectClass parent_class;
- gchar* (*get_sidebar_name) (SidebarSimplePageEntry* self);
- gchar* (*get_sidebar_tooltip) (SidebarSimplePageEntry* self);
- gchar* (*get_sidebar_icon) (SidebarSimplePageEntry* self);
- gchar* (*to_string) (SidebarSimplePageEntry* self);
- Page* (*create_page) (SidebarSimplePageEntry* self);
-};
-
-struct _SidebarDestroyableEntryIface {
- GTypeInterface parent_iface;
- void (*destroy_source) (SidebarDestroyableEntry* self);
-};
-
-struct _TagsSidebarEntry {
- SidebarSimplePageEntry parent_instance;
- TagsSidebarEntryPrivate * priv;
-};
-
-struct _TagsSidebarEntryClass {
- SidebarSimplePageEntryClass parent_class;
-};
-
-struct _TagsSidebarEntryPrivate {
- gchar* single_tag_icon;
- Tag* tag;
-};
-
-
-static gpointer tags_branch_parent_class = NULL;
-extern TagSourceCollection* tag_global;
-static gpointer tags_header_parent_class = NULL;
-static SidebarInternalDropTargetEntryIface * tags_header_sidebar_internal_drop_target_entry_parent_iface = NULL;
-static SidebarInternalDragSourceEntryIface * tags_header_sidebar_internal_drag_source_entry_parent_iface = NULL;
-static SidebarContextableIface * tags_header_sidebar_contextable_parent_iface = NULL;
-static gpointer tags_sidebar_entry_parent_class = NULL;
-static SidebarRenameableEntryIface * tags_sidebar_entry_sidebar_renameable_entry_parent_iface = NULL;
-static SidebarDestroyableEntryIface * tags_sidebar_entry_sidebar_destroyable_entry_parent_iface = NULL;
-static SidebarInternalDropTargetEntryIface * tags_sidebar_entry_sidebar_internal_drop_target_entry_parent_iface = NULL;
-static SidebarExpandableEntryIface * tags_sidebar_entry_sidebar_expandable_entry_parent_iface = NULL;
-static SidebarInternalDragSourceEntryIface * tags_sidebar_entry_sidebar_internal_drag_source_entry_parent_iface = NULL;
-
-GType sidebar_branch_get_type (void) G_GNUC_CONST;
-GType tags_branch_get_type (void) G_GNUC_CONST;
-GType data_object_get_type (void) G_GNUC_CONST;
-GType data_source_get_type (void) G_GNUC_CONST;
-GType tag_get_type (void) G_GNUC_CONST;
-GType sidebar_simple_page_entry_get_type (void) G_GNUC_CONST;
-GType tags_sidebar_entry_get_type (void) G_GNUC_CONST;
-#define TAGS_BRANCH_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TAGS_TYPE_BRANCH, TagsBranchPrivate))
-gpointer data_collection_ref (gpointer instance);
-void data_collection_unref (gpointer instance);
-GParamSpec* param_spec_data_collection (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_data_collection (GValue* value,
- gpointer v_object);
-void value_take_data_collection (GValue* value,
- gpointer v_object);
-gpointer value_get_data_collection (const GValue* value);
-GType data_collection_get_type (void) G_GNUC_CONST;
-GType source_collection_get_type (void) G_GNUC_CONST;
-GType database_source_collection_get_type (void) G_GNUC_CONST;
-GType container_source_collection_get_type (void) G_GNUC_CONST;
-GType tag_source_collection_get_type (void) G_GNUC_CONST;
-static void tags_branch_on_tags_added_removed (TagsBranch* self,
- GeeIterable* added_raw,
- GeeIterable* removed);
-static void _tags_branch_on_tags_added_removed_data_collection_contents_altered (DataCollection* _sender,
- GeeIterable* added,
- GeeIterable* removed,
- gpointer self);
-gpointer alteration_ref (gpointer instance);
-void alteration_unref (gpointer instance);
-GParamSpec* param_spec_alteration (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_alteration (GValue* value,
- gpointer v_object);
-void value_take_alteration (GValue* value,
- gpointer v_object);
-gpointer value_get_alteration (const GValue* value);
-GType alteration_get_type (void) G_GNUC_CONST;
-static void tags_branch_on_tags_altered (TagsBranch* self,
- GeeMap* altered);
-static void _tags_branch_on_tags_altered_data_collection_items_altered (DataCollection* _sender,
- GeeMap* items,
- gpointer self);
-TagsBranch* tags_branch_new (void);
-TagsBranch* tags_branch_construct (GType object_type);
-TagsHeader* tags_header_new (void);
-TagsHeader* tags_header_construct (GType object_type);
-GType sidebar_grouping_get_type (void) G_GNUC_CONST;
-GType sidebar_header_get_type (void) G_GNUC_CONST;
-GType tags_header_get_type (void) G_GNUC_CONST;
-GType sidebar_tree_get_type (void) G_GNUC_CONST;
-GType sidebar_entry_get_type (void) G_GNUC_CONST;
-GType sidebar_branch_options_get_type (void) G_GNUC_CONST;
-static gint tags_branch_comparator (SidebarEntry* a,
- SidebarEntry* b);
-static gint _tags_branch_comparator_gcompare_func (gconstpointer a,
- gconstpointer b);
-SidebarBranch* sidebar_branch_new (SidebarEntry* root,
- SidebarBranchOptions options,
- GCompareFunc default_comparator,
- GCompareFunc root_comparator);
-SidebarBranch* sidebar_branch_construct (GType object_type,
- SidebarEntry* root,
- SidebarBranchOptions options,
- GCompareFunc default_comparator,
- GCompareFunc root_comparator);
-GeeCollection* data_collection_get_all (DataCollection* self);
-TagsSidebarEntry* tags_branch_get_entry_for_tag (TagsBranch* self,
- Tag* tag);
-gboolean tags_branch_is_user_renameable (TagsBranch* self);
-gint tag_compare_names (Tag* a,
- Tag* b);
-Tag* tags_sidebar_entry_for_tag (TagsSidebarEntry* self);
-static gint _tag_compare_names_gcompare_data_func (gconstpointer a,
- gconstpointer b,
- gpointer self);
-Tag* tag_get_hierarchical_parent (Tag* self);
-TagsSidebarEntry* tags_sidebar_entry_new (Tag* tag);
-TagsSidebarEntry* tags_sidebar_entry_construct (GType object_type,
- Tag* tag);
-void sidebar_branch_graft (SidebarBranch* self,
- SidebarEntry* parent,
- SidebarEntry* entry,
- GCompareFunc comparator);
-SidebarEntry* sidebar_branch_get_root (SidebarBranch* self);
-void sidebar_branch_prune (SidebarBranch* self,
- SidebarEntry* entry);
-gboolean alteration_has_detail (Alteration* self,
- const gchar* subject,
- const gchar* detail);
-GType sidebar_renameable_entry_get_type (void) G_GNUC_CONST;
-gchar* tag_get_user_visible_name (Tag* self);
-void sidebar_branch_reorder (SidebarBranch* self,
- SidebarEntry* entry);
-static void tags_branch_finalize (GObject * obj);
-GType sidebar_expandable_entry_get_type (void) G_GNUC_CONST;
-GType sidebar_emphasizable_entry_get_type (void) G_GNUC_CONST;
-GType thumbnail_source_get_type (void) G_GNUC_CONST;
-GType media_source_get_type (void) G_GNUC_CONST;
-GType sidebar_internal_drop_target_entry_get_type (void) G_GNUC_CONST;
-GType sidebar_internal_drag_source_entry_get_type (void) G_GNUC_CONST;
-GType sidebar_contextable_get_type (void) G_GNUC_CONST;
-#define TAGS_HEADER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TAGS_TYPE_HEADER, TagsHeaderPrivate))
-SidebarHeader* sidebar_header_new (const gchar* name,
- const gchar* tooltip,
- gboolean emphasized);
-SidebarHeader* sidebar_header_construct (GType object_type,
- const gchar* name,
- const gchar* tooltip,
- gboolean emphasized);
-static void tags_header_setup_context_menu (TagsHeader* self);
-gchar* resources_get_ui (const gchar* filename);
-void app_window_error_message (const gchar* message,
- GtkWindow* parent);
-gpointer application_ref (gpointer instance);
-void application_unref (gpointer instance);
-GParamSpec* param_spec_application (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_application (GValue* value,
- gpointer v_object);
-void value_take_application (GValue* value,
- gpointer v_object);
-gpointer value_get_application (const GValue* value);
-GType application_get_type (void) G_GNUC_CONST;
-Application* application_get_instance (void);
-void application_panic (Application* self);
-static gboolean tags_header_real_internal_drop_received (SidebarInternalDropTargetEntry* base,
- GeeList* media);
-gpointer text_entry_dialog_mediator_ref (gpointer instance);
-void text_entry_dialog_mediator_unref (gpointer instance);
-GParamSpec* param_spec_text_entry_dialog_mediator (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_text_entry_dialog_mediator (GValue* value,
- gpointer v_object);
-void value_take_text_entry_dialog_mediator (GValue* value,
- gpointer v_object);
-gpointer value_get_text_entry_dialog_mediator (const GValue* value);
-GType text_entry_dialog_mediator_get_type (void) G_GNUC_CONST;
-GType tags_dialog_get_type (void) G_GNUC_CONST;
-GType add_tags_dialog_get_type (void) G_GNUC_CONST;
-AddTagsDialog* add_tags_dialog_new (void);
-AddTagsDialog* add_tags_dialog_construct (GType object_type);
-gchar** add_tags_dialog_execute (AddTagsDialog* self,
- int* result_length1);
-gpointer command_manager_ref (gpointer instance);
-void command_manager_unref (gpointer instance);
-GParamSpec* param_spec_command_manager (const gchar* name,
- const gchar* nick,
- const gchar* blurb,
- GType object_type,
- GParamFlags flags);
-void value_set_command_manager (GValue* value,
- gpointer v_object);
-void value_take_command_manager (GValue* value,
- gpointer v_object);
-gpointer value_get_command_manager (const GValue* value);
-GType command_manager_get_type (void) G_GNUC_CONST;
-CommandManager* app_window_get_command_manager (void);
-GType command_get_type (void) G_GNUC_CONST;
-void command_manager_execute (CommandManager* self,
- Command* command);
-AddTagsCommand* add_tags_command_new (gchar** paths,
- int paths_length1,
- GeeCollection* sources);
-AddTagsCommand* add_tags_command_construct (GType object_type,
- gchar** paths,
- int paths_length1,
- GeeCollection* sources);
-GType page_command_get_type (void) G_GNUC_CONST;
-GType add_tags_command_get_type (void) G_GNUC_CONST;
-static gboolean tags_header_real_internal_drop_received_arbitrary (SidebarInternalDropTargetEntry* base,
- GtkSelectionData* data);
-#define LIBRARY_WINDOW_TAG_PATH_MIME_TYPE "shotwell/tag-path"
-gboolean tag_source_collection_exists (TagSourceCollection* self,
- const gchar* name,
- gboolean treat_htags_as_root);
-GeeList* hierarchical_tag_utilities_enumerate_path_components (const gchar* in_path);
-Tag* tag_for_path (const gchar* name);
-ReparentTagCommand* reparent_tag_command_new (Tag* tag,
- const gchar* new_parent_path);
-ReparentTagCommand* reparent_tag_command_construct (GType object_type,
- Tag* tag,
- const gchar* new_parent_path);
-GType reparent_tag_command_get_type (void) G_GNUC_CONST;
-static void tags_header_real_prepare_selection_data (SidebarInternalDragSourceEntry* base,
- GtkSelectionData* data);
-static GtkMenu* tags_header_real_get_sidebar_context_menu (SidebarContextable* base,
- GdkEventButton* event);
-static void tags_header_finalize (GObject * obj);
-GType sidebar_selectable_entry_get_type (void) G_GNUC_CONST;
-GType page_get_type (void) G_GNUC_CONST;
-GType sidebar_page_representative_get_type (void) G_GNUC_CONST;
-GType sidebar_destroyable_entry_get_type (void) G_GNUC_CONST;
-#define TAGS_SIDEBAR_ENTRY_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntryPrivate))
-#define RESOURCES_ICON_ONE_TAG "one-tag"
-SidebarSimplePageEntry* sidebar_simple_page_entry_construct (GType object_type);
-void tags_sidebar_entry_init (void);
-void tags_sidebar_entry_terminate (void);
-static gchar* tags_sidebar_entry_real_get_sidebar_name (SidebarSimplePageEntry* base);
-static gchar* tags_sidebar_entry_real_get_sidebar_icon (SidebarSimplePageEntry* base);
-static Page* tags_sidebar_entry_real_create_page (SidebarSimplePageEntry* base);
-TagPage* tag_page_new (Tag* tag);
-TagPage* tag_page_construct (GType object_type,
- Tag* tag);
-GType checkerboard_page_get_type (void) G_GNUC_CONST;
-GType media_page_get_type (void) G_GNUC_CONST;
-GType collection_page_get_type (void) G_GNUC_CONST;
-GType tag_page_get_type (void) G_GNUC_CONST;
-static gboolean tags_sidebar_entry_real_is_user_renameable (SidebarRenameableEntry* base);
-static void tags_sidebar_entry_real_rename (SidebarRenameableEntry* base,
- const gchar* new_name);
-gchar* tag_prep_tag_name (const gchar* name);
-RenameTagCommand* rename_tag_command_new (Tag* tag,
- const gchar* new_name);
-RenameTagCommand* rename_tag_command_construct (GType object_type,
- Tag* tag,
- const gchar* new_name);
-GType simple_proxyable_command_get_type (void) G_GNUC_CONST;
-GType rename_tag_command_get_type (void) G_GNUC_CONST;
-static void tags_sidebar_entry_real_destroy_source (SidebarDestroyableEntry* base);
-gboolean dialogs_confirm_delete_tag (Tag* tag);
-DeleteTagCommand* delete_tag_command_new (Tag* tag);
-DeleteTagCommand* delete_tag_command_construct (GType object_type,
- Tag* tag);
-GType delete_tag_command_get_type (void) G_GNUC_CONST;
-static gboolean tags_sidebar_entry_real_internal_drop_received (SidebarInternalDropTargetEntry* base,
- GeeList* media);
-TagUntagPhotosCommand* tag_untag_photos_command_new (Tag* tag,
- GeeCollection* sources,
- gint count,
- gboolean attach);
-TagUntagPhotosCommand* tag_untag_photos_command_construct (GType object_type,
- Tag* tag,
- GeeCollection* sources,
- gint count,
- gboolean attach);
-GType tag_untag_photos_command_get_type (void) G_GNUC_CONST;
-static gboolean tags_sidebar_entry_real_internal_drop_received_arbitrary (SidebarInternalDropTargetEntry* base,
- GtkSelectionData* data);
-gchar* tag_get_path (Tag* self);
-GeeList* hierarchical_tag_utilities_enumerate_parent_paths (const gchar* in_path);
-static gboolean tags_sidebar_entry_real_expand_on_select (SidebarExpandableEntry* base);
-static void tags_sidebar_entry_real_prepare_selection_data (SidebarInternalDragSourceEntry* base,
- GtkSelectionData* data);
-static void tags_sidebar_entry_finalize (GObject * obj);
-static void _vala_array_destroy (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func);
-static void _vala_array_free (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func);
-
-
-static void
-_tags_branch_on_tags_added_removed_data_collection_contents_altered (DataCollection* _sender,
- GeeIterable* added,
- GeeIterable* removed,
- gpointer self)
-{
-#line 26 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_branch_on_tags_added_removed ((TagsBranch*) self, added, removed);
-#line 944 "TagsBranch.c"
-}
-
-
-static void
-_tags_branch_on_tags_altered_data_collection_items_altered (DataCollection* _sender,
- GeeMap* items,
- gpointer self)
-{
-#line 27 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_branch_on_tags_altered ((TagsBranch*) self, items);
-#line 955 "TagsBranch.c"
-}
-
-
-static gint
-_tags_branch_comparator_gcompare_func (gconstpointer a,
- gconstpointer b)
-{
- gint result;
- result = tags_branch_comparator ((SidebarEntry*) a, (SidebarEntry*) b);
-#line 11 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 967 "TagsBranch.c"
-}
-
-
-TagsBranch*
-tags_branch_construct (GType object_type)
-{
- TagsBranch * self = NULL;
- TagsHeader* _tmp0_;
- TagsHeader* _tmp1_;
- TagSourceCollection* _tmp2_;
- GeeCollection* _tmp3_;
- GeeCollection* _tmp4_;
- TagSourceCollection* _tmp5_;
- TagSourceCollection* _tmp6_;
-#line 11 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = tags_header_new ();
-#line 11 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = _tmp0_;
-#line 11 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = (TagsBranch*) sidebar_branch_construct (object_type, G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, SIDEBAR_TYPE_ENTRY, SidebarEntry), (SIDEBAR_BRANCH_OPTIONS_HIDE_IF_EMPTY | SIDEBAR_BRANCH_OPTIONS_AUTO_OPEN_ON_NEW_CHILD) | SIDEBAR_BRANCH_OPTIONS_STARTUP_OPEN_GROUPING, _tags_branch_comparator_gcompare_func, NULL);
-#line 11 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp1_);
-#line 18 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = tag_global;
-#line 18 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = data_collection_get_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_DATA_COLLECTION, DataCollection));
-#line 18 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = _tmp3_;
-#line 18 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_branch_on_tags_added_removed (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, GEE_TYPE_ITERABLE, GeeIterable), NULL);
-#line 18 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp4_);
-#line 21 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5_ = tag_global;
-#line 21 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_DATA_COLLECTION, DataCollection), "contents-altered", (GCallback) _tags_branch_on_tags_added_removed_data_collection_contents_altered, self, 0);
-#line 22 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp6_ = tag_global;
-#line 22 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_signal_connect_object (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_DATA_COLLECTION, DataCollection), "items-altered", (GCallback) _tags_branch_on_tags_altered_data_collection_items_altered, self, 0);
-#line 10 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return self;
-#line 1010 "TagsBranch.c"
-}
-
-
-TagsBranch*
-tags_branch_new (void)
-{
-#line 10 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return tags_branch_construct (TAGS_TYPE_BRANCH);
-#line 1019 "TagsBranch.c"
-}
-
-
-TagsSidebarEntry*
-tags_branch_get_entry_for_tag (TagsBranch* self,
- Tag* tag)
-{
- TagsSidebarEntry* result = NULL;
- GeeHashMap* _tmp0_;
- gpointer _tmp1_;
-#line 30 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (TAGS_IS_BRANCH (self), NULL);
-#line 30 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (IS_TAG (tag), NULL);
-#line 31 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = self->priv->entry_map;
-#line 31 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), tag);
-#line 31 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = (TagsSidebarEntry*) _tmp1_;
-#line 31 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 1042 "TagsBranch.c"
-}
-
-
-gboolean
-tags_branch_is_user_renameable (TagsBranch* self)
-{
- gboolean result = FALSE;
-#line 34 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (TAGS_IS_BRANCH (self), FALSE);
-#line 35 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = TRUE;
-#line 35 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 1056 "TagsBranch.c"
-}
-
-
-static gint
-tags_branch_comparator (SidebarEntry* a,
- SidebarEntry* b)
-{
- gint result = 0;
- Tag* _tmp0_;
- Tag* _tmp1_;
- Tag* _tmp2_;
- Tag* _tmp3_;
- gint _tmp4_;
-#line 38 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (SIDEBAR_IS_ENTRY (a), 0);
-#line 38 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (SIDEBAR_IS_ENTRY (b), 0);
-#line 39 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (a == b) {
-#line 40 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = 0;
-#line 40 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 1080 "TagsBranch.c"
- }
-#line 42 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = tags_sidebar_entry_for_tag (G_TYPE_CHECK_INSTANCE_CAST (a, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry));
-#line 42 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = _tmp0_;
-#line 42 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = tags_sidebar_entry_for_tag (G_TYPE_CHECK_INSTANCE_CAST (b, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry));
-#line 42 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = _tmp2_;
-#line 42 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = tag_compare_names (_tmp1_, _tmp3_);
-#line 42 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp3_);
-#line 42 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp1_);
-#line 42 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = _tmp4_;
-#line 42 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 1100 "TagsBranch.c"
-}
-
-
-static gint
-_tag_compare_names_gcompare_data_func (gconstpointer a,
- gconstpointer b,
- gpointer self)
-{
- gint result;
- result = tag_compare_names ((Tag*) a, (Tag*) b);
-#line 57 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 1113 "TagsBranch.c"
-}
-
-
-static gpointer
-_g_object_ref0 (gpointer self)
-{
-#line 59 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return self ? g_object_ref (self) : NULL;
-#line 1122 "TagsBranch.c"
-}
-
-
-static void
-tags_branch_on_tags_added_removed (TagsBranch* self,
- GeeIterable* added_raw,
- GeeIterable* removed)
-{
- Tag* restore_point = NULL;
-#line 46 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_if_fail (TAGS_IS_BRANCH (self));
-#line 46 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_if_fail ((added_raw == NULL) || GEE_IS_ITERABLE (added_raw));
-#line 46 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_if_fail ((removed == NULL) || GEE_IS_ITERABLE (removed));
-#line 51 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- restore_point = NULL;
-#line 53 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (added_raw != NULL) {
-#line 1142 "TagsBranch.c"
- GeeSortedSet* added = NULL;
- GeeTreeSet* _tmp0_;
-#line 57 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = gee_tree_set_new (TYPE_TAG, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, _tag_compare_names_gcompare_data_func, NULL, NULL);
-#line 57 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- added = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_SORTED_SET, GeeSortedSet);
-#line 1149 "TagsBranch.c"
- {
- GeeIterator* _object_it = NULL;
- GeeIterator* _tmp1_;
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = gee_iterable_iterator (added_raw);
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _object_it = _tmp1_;
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- while (TRUE) {
-#line 1159 "TagsBranch.c"
- GeeIterator* _tmp2_;
- DataObject* object = NULL;
- GeeIterator* _tmp3_;
- gpointer _tmp4_;
- Tag* tag = NULL;
- DataObject* _tmp5_;
- Tag* _tmp6_;
- GeeSortedSet* _tmp7_;
- Tag* _tmp8_;
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = _object_it;
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (!gee_iterator_next (_tmp2_)) {
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- break;
-#line 1175 "TagsBranch.c"
- }
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = _object_it;
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = gee_iterator_get (_tmp3_);
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- object = (DataObject*) _tmp4_;
-#line 59 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5_ = object;
-#line 59 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp6_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_TAG, Tag));
-#line 59 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tag = _tmp6_;
-#line 60 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp7_ = added;
-#line 60 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp8_ = tag;
-#line 60 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- gee_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, GEE_TYPE_COLLECTION, GeeCollection), _tmp8_);
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (tag);
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (object);
-#line 1199 "TagsBranch.c"
- }
-#line 58 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_object_it);
-#line 1203 "TagsBranch.c"
- }
- {
- GeeIterator* _tag_it = NULL;
- GeeSortedSet* _tmp9_;
- GeeIterator* _tmp10_;
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp9_ = added;
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp10_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, GEE_TYPE_ITERABLE, GeeIterable));
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tag_it = _tmp10_;
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- while (TRUE) {
-#line 1217 "TagsBranch.c"
- GeeIterator* _tmp11_;
- Tag* tag = NULL;
- GeeIterator* _tmp12_;
- gpointer _tmp13_;
- Tag* parent_tag = NULL;
- Tag* _tmp14_;
- Tag* _tmp15_;
- TagsSidebarEntry* entry = NULL;
- Tag* _tmp26_;
- TagsSidebarEntry* _tmp27_;
- GeeHashMap* _tmp28_;
- Tag* _tmp29_;
- TagsSidebarEntry* _tmp30_;
- Tag* _tmp31_;
- Tag* _tmp32_;
- Tag* _tmp33_;
- Tag* _tmp42_;
- Tag* _tmp43_;
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp11_ = _tag_it;
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (!gee_iterator_next (_tmp11_)) {
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- break;
-#line 1242 "TagsBranch.c"
- }
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp12_ = _tag_it;
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp13_ = gee_iterator_get (_tmp12_);
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tag = (Tag*) _tmp13_;
-#line 66 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp14_ = tag;
-#line 66 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp15_ = tag_get_hierarchical_parent (_tmp14_);
-#line 66 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- parent_tag = _tmp15_;
-#line 67 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- while (TRUE) {
-#line 1258 "TagsBranch.c"
- Tag* _tmp16_;
- GeeHashMap* _tmp17_;
- Tag* _tmp18_;
- Tag* _tmp24_;
- Tag* _tmp25_;
-#line 67 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp16_ = parent_tag;
-#line 67 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (!(_tmp16_ != NULL)) {
-#line 67 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- break;
-#line 1270 "TagsBranch.c"
- }
-#line 68 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp17_ = self->priv->entry_map;
-#line 68 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp18_ = parent_tag;
-#line 68 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (!gee_abstract_map_has_key (G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp18_)) {
-#line 1278 "TagsBranch.c"
- TagsSidebarEntry* parent_entry = NULL;
- Tag* _tmp19_;
- TagsSidebarEntry* _tmp20_;
- GeeHashMap* _tmp21_;
- Tag* _tmp22_;
- TagsSidebarEntry* _tmp23_;
-#line 69 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp19_ = parent_tag;
-#line 69 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp20_ = tags_sidebar_entry_new (_tmp19_);
-#line 69 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- parent_entry = _tmp20_;
-#line 70 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp21_ = self->priv->entry_map;
-#line 70 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp22_ = parent_tag;
-#line 70 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp23_ = parent_entry;
-#line 70 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp21_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp22_, _tmp23_);
-#line 68 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (parent_entry);
-#line 1301 "TagsBranch.c"
- }
-#line 73 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp24_ = parent_tag;
-#line 73 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp25_ = tag_get_hierarchical_parent (_tmp24_);
-#line 73 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (parent_tag);
-#line 73 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- parent_tag = _tmp25_;
-#line 1311 "TagsBranch.c"
- }
-#line 77 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp26_ = tag;
-#line 77 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp27_ = tags_sidebar_entry_new (_tmp26_);
-#line 77 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- entry = _tmp27_;
-#line 78 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp28_ = self->priv->entry_map;
-#line 78 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp29_ = tag;
-#line 78 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp30_ = entry;
-#line 78 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp28_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp29_, _tmp30_);
-#line 80 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp31_ = tag;
-#line 80 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp32_ = tag_get_hierarchical_parent (_tmp31_);
-#line 80 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (parent_tag);
-#line 80 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- parent_tag = _tmp32_;
-#line 81 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp33_ = parent_tag;
-#line 81 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp33_ != NULL) {
-#line 1339 "TagsBranch.c"
- TagsSidebarEntry* parent_entry = NULL;
- GeeHashMap* _tmp34_;
- Tag* _tmp35_;
- gpointer _tmp36_;
- TagsSidebarEntry* _tmp37_;
- TagsSidebarEntry* _tmp38_;
-#line 82 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp34_ = self->priv->entry_map;
-#line 82 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp35_ = parent_tag;
-#line 82 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp36_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp34_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp35_);
-#line 82 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- parent_entry = (TagsSidebarEntry*) _tmp36_;
-#line 83 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp37_ = parent_entry;
-#line 83 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp38_ = entry;
-#line 83 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- sidebar_branch_graft (G_TYPE_CHECK_INSTANCE_CAST (self, SIDEBAR_TYPE_BRANCH, SidebarBranch), G_TYPE_CHECK_INSTANCE_CAST (_tmp37_, SIDEBAR_TYPE_ENTRY, SidebarEntry), G_TYPE_CHECK_INSTANCE_CAST (_tmp38_, SIDEBAR_TYPE_ENTRY, SidebarEntry), NULL);
-#line 81 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (parent_entry);
-#line 1362 "TagsBranch.c"
- } else {
- SidebarEntry* _tmp39_;
- SidebarEntry* _tmp40_;
- TagsSidebarEntry* _tmp41_;
-#line 85 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp39_ = sidebar_branch_get_root (G_TYPE_CHECK_INSTANCE_CAST (self, SIDEBAR_TYPE_BRANCH, SidebarBranch));
-#line 85 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp40_ = _tmp39_;
-#line 85 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp41_ = entry;
-#line 85 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- sidebar_branch_graft (G_TYPE_CHECK_INSTANCE_CAST (self, SIDEBAR_TYPE_BRANCH, SidebarBranch), _tmp40_, G_TYPE_CHECK_INSTANCE_CAST (_tmp41_, SIDEBAR_TYPE_ENTRY, SidebarEntry), NULL);
-#line 85 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp40_);
-#line 1377 "TagsBranch.c"
- }
-#line 90 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp42_ = tag;
-#line 90 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp43_ = _g_object_ref0 (_tmp42_);
-#line 90 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (restore_point);
-#line 90 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- restore_point = _tmp43_;
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (entry);
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (parent_tag);
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (tag);
-#line 1393 "TagsBranch.c"
- }
-#line 63 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tag_it);
-#line 1397 "TagsBranch.c"
- }
-#line 53 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (added);
-#line 1401 "TagsBranch.c"
- }
-#line 94 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (removed != NULL) {
-#line 1405 "TagsBranch.c"
- {
- GeeIterator* _object_it = NULL;
- GeeIterator* _tmp44_;
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp44_ = gee_iterable_iterator (removed);
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _object_it = _tmp44_;
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- while (TRUE) {
-#line 1415 "TagsBranch.c"
- GeeIterator* _tmp45_;
- DataObject* object = NULL;
- GeeIterator* _tmp46_;
- gpointer _tmp47_;
- Tag* tag = NULL;
- DataObject* _tmp48_;
- Tag* _tmp49_;
- TagsSidebarEntry* entry = NULL;
- GeeHashMap* _tmp50_;
- Tag* _tmp51_;
- gpointer _tmp52_;
- TagsSidebarEntry* _tmp53_;
- gboolean is_removed = FALSE;
- GeeHashMap* _tmp54_;
- Tag* _tmp55_;
- gboolean _tmp56_;
- gboolean _tmp57_;
- TagsSidebarEntry* _tmp58_;
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp45_ = _object_it;
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (!gee_iterator_next (_tmp45_)) {
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- break;
-#line 1440 "TagsBranch.c"
- }
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp46_ = _object_it;
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp47_ = gee_iterator_get (_tmp46_);
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- object = (DataObject*) _tmp47_;
-#line 96 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp48_ = object;
-#line 96 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp49_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp48_, TYPE_TAG, Tag));
-#line 96 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tag = _tmp49_;
-#line 98 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp50_ = self->priv->entry_map;
-#line 98 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp51_ = tag;
-#line 98 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp52_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp50_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp51_);
-#line 98 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- entry = (TagsSidebarEntry*) _tmp52_;
-#line 99 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp53_ = entry;
-#line 99 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _vala_assert (_tmp53_ != NULL, "entry != null");
-#line 101 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp54_ = self->priv->entry_map;
-#line 101 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp55_ = tag;
-#line 101 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp56_ = gee_abstract_map_unset (G_TYPE_CHECK_INSTANCE_CAST (_tmp54_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp55_, NULL);
-#line 101 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- is_removed = _tmp56_;
-#line 102 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp57_ = is_removed;
-#line 102 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _vala_assert (_tmp57_, "is_removed");
-#line 104 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp58_ = entry;
-#line 104 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- sidebar_branch_prune (G_TYPE_CHECK_INSTANCE_CAST (self, SIDEBAR_TYPE_BRANCH, SidebarBranch), G_TYPE_CHECK_INSTANCE_CAST (_tmp58_, SIDEBAR_TYPE_ENTRY, SidebarEntry));
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (entry);
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (tag);
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (object);
-#line 1488 "TagsBranch.c"
- }
-#line 95 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_object_it);
-#line 1492 "TagsBranch.c"
- }
- }
-#line 46 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (restore_point);
-#line 1497 "TagsBranch.c"
-}
-
-
-static void
-tags_branch_on_tags_altered (TagsBranch* self,
- GeeMap* altered)
-{
-#line 109 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_if_fail (TAGS_IS_BRANCH (self));
-#line 109 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_if_fail (GEE_IS_MAP (altered));
-#line 1509 "TagsBranch.c"
- {
- GeeIterator* _object_it = NULL;
- GeeSet* _tmp0_;
- GeeSet* _tmp1_;
- GeeSet* _tmp2_;
- GeeIterator* _tmp3_;
- GeeIterator* _tmp4_;
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = gee_map_get_keys (altered);
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = _tmp0_;
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = _tmp1_;
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_ITERABLE, GeeIterable));
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = _tmp3_;
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp2_);
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _object_it = _tmp4_;
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- while (TRUE) {
-#line 1533 "TagsBranch.c"
- GeeIterator* _tmp5_;
- DataObject* object = NULL;
- GeeIterator* _tmp6_;
- gpointer _tmp7_;
- DataObject* _tmp8_;
- gpointer _tmp9_;
- Alteration* _tmp10_;
- gboolean _tmp11_;
- Tag* tag = NULL;
- DataObject* _tmp12_;
- Tag* _tmp13_;
- TagsSidebarEntry* entry = NULL;
- GeeHashMap* _tmp14_;
- Tag* _tmp15_;
- gpointer _tmp16_;
- TagsSidebarEntry* _tmp17_;
- TagsSidebarEntry* _tmp18_;
- Tag* _tmp19_;
- gchar* _tmp20_;
- gchar* _tmp21_;
- TagsSidebarEntry* _tmp22_;
- Tag* _tmp23_;
- gchar* _tmp24_;
- gchar* _tmp25_;
- TagsSidebarEntry* _tmp26_;
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5_ = _object_it;
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (!gee_iterator_next (_tmp5_)) {
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- break;
-#line 1565 "TagsBranch.c"
- }
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp6_ = _object_it;
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp7_ = gee_iterator_get (_tmp6_);
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- object = (DataObject*) _tmp7_;
-#line 111 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp8_ = object;
-#line 111 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp9_ = gee_map_get (altered, _tmp8_);
-#line 111 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp10_ = (Alteration*) _tmp9_;
-#line 111 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp11_ = !alteration_has_detail (_tmp10_, "metadata", "name");
-#line 111 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _alteration_unref0 (_tmp10_);
-#line 111 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp11_) {
-#line 112 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (object);
-#line 112 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- continue;
-#line 1589 "TagsBranch.c"
- }
-#line 114 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp12_ = object;
-#line 114 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp13_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, TYPE_TAG, Tag));
-#line 114 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tag = _tmp13_;
-#line 115 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp14_ = self->priv->entry_map;
-#line 115 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp15_ = tag;
-#line 115 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp16_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp15_);
-#line 115 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- entry = (TagsSidebarEntry*) _tmp16_;
-#line 116 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp17_ = entry;
-#line 116 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _vala_assert (_tmp17_ != NULL, "entry != null");
-#line 118 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp18_ = entry;
-#line 118 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp19_ = tag;
-#line 118 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp20_ = tag_get_user_visible_name (_tmp19_);
-#line 118 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp21_ = _tmp20_;
-#line 118 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_signal_emit_by_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp18_, SIDEBAR_TYPE_RENAMEABLE_ENTRY, SidebarRenameableEntry), "sidebar-name-changed", _tmp21_);
-#line 118 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp21_);
-#line 119 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp22_ = entry;
-#line 119 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp23_ = tag;
-#line 119 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp24_ = tag_get_user_visible_name (_tmp23_);
-#line 119 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp25_ = _tmp24_;
-#line 119 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_signal_emit_by_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp22_, SIDEBAR_TYPE_ENTRY, SidebarEntry), "sidebar-tooltip-changed", _tmp25_);
-#line 119 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp25_);
-#line 120 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp26_ = entry;
-#line 120 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- sidebar_branch_reorder (G_TYPE_CHECK_INSTANCE_CAST (self, SIDEBAR_TYPE_BRANCH, SidebarBranch), G_TYPE_CHECK_INSTANCE_CAST (_tmp26_, SIDEBAR_TYPE_ENTRY, SidebarEntry));
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (entry);
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (tag);
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (object);
-#line 1643 "TagsBranch.c"
- }
-#line 110 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_object_it);
-#line 1647 "TagsBranch.c"
- }
-}
-
-
-static void
-tags_branch_class_init (TagsBranchClass * klass)
-{
-#line 7 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_branch_parent_class = g_type_class_peek_parent (klass);
-#line 7 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_type_class_add_private (klass, sizeof (TagsBranchPrivate));
-#line 7 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- G_OBJECT_CLASS (klass)->finalize = tags_branch_finalize;
-#line 1661 "TagsBranch.c"
-}
-
-
-static void
-tags_branch_instance_init (TagsBranch * self)
-{
- GeeHashMap* _tmp0_;
-#line 7 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self->priv = TAGS_BRANCH_GET_PRIVATE (self);
-#line 8 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = gee_hash_map_new (TYPE_TAG, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, TAGS_TYPE_SIDEBAR_ENTRY, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-#line 8 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self->priv->entry_map = _tmp0_;
-#line 1675 "TagsBranch.c"
-}
-
-
-static void
-tags_branch_finalize (GObject * obj)
-{
- TagsBranch * self;
- TagSourceCollection* _tmp0_;
- guint _tmp1_;
- TagSourceCollection* _tmp2_;
- guint _tmp3_;
-#line 7 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (obj, TAGS_TYPE_BRANCH, TagsBranch);
-#line 26 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = tag_global;
-#line 26 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_signal_parse_name ("contents-altered", TYPE_DATA_COLLECTION, &_tmp1_, NULL, FALSE);
-#line 26 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_COLLECTION, DataCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _tags_branch_on_tags_added_removed_data_collection_contents_altered, self);
-#line 27 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = tag_global;
-#line 27 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_signal_parse_name ("items-altered", TYPE_DATA_COLLECTION, &_tmp3_, NULL, FALSE);
-#line 27 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_DATA_COLLECTION, DataCollection), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp3_, 0, NULL, (GCallback) _tags_branch_on_tags_altered_data_collection_items_altered, self);
-#line 8 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (self->priv->entry_map);
-#line 7 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- G_OBJECT_CLASS (tags_branch_parent_class)->finalize (obj);
-#line 1705 "TagsBranch.c"
-}
-
-
-GType
-tags_branch_get_type (void)
-{
- static volatile gsize tags_branch_type_id__volatile = 0;
- if (g_once_init_enter (&tags_branch_type_id__volatile)) {
- static const GTypeInfo g_define_type_info = { sizeof (TagsBranchClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tags_branch_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TagsBranch), 0, (GInstanceInitFunc) tags_branch_instance_init, NULL };
- GType tags_branch_type_id;
- tags_branch_type_id = g_type_register_static (SIDEBAR_TYPE_BRANCH, "TagsBranch", &g_define_type_info, 0);
- g_once_init_leave (&tags_branch_type_id__volatile, tags_branch_type_id);
- }
- return tags_branch_type_id__volatile;
-}
-
-
-TagsHeader*
-tags_header_construct (GType object_type)
-{
- TagsHeader * self = NULL;
-#line 131 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = (TagsHeader*) sidebar_header_construct (object_type, _ ("Tags"), _ ("Organize and browse your photo’s tags"), TRUE);
-#line 132 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_header_setup_context_menu (self);
-#line 130 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return self;
-#line 1733 "TagsBranch.c"
-}
-
-
-TagsHeader*
-tags_header_new (void)
-{
-#line 130 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return tags_header_construct (TAGS_TYPE_HEADER);
-#line 1742 "TagsBranch.c"
-}
-
-
-static void
-tags_header_setup_context_menu (TagsHeader* self)
-{
- GtkBuilder* _tmp0_;
- GError * _inner_error_ = NULL;
-#line 135 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_if_fail (TAGS_IS_HEADER (self));
-#line 136 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = gtk_builder_new ();
-#line 136 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (self->priv->builder);
-#line 136 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self->priv->builder = _tmp0_;
-#line 1759 "TagsBranch.c"
- {
- GtkBuilder* _tmp1_;
- gchar* _tmp2_;
- gchar* _tmp3_;
- GMenuModel* model = NULL;
- GtkBuilder* _tmp4_;
- GObject* _tmp5_;
- GMenuModel* _tmp6_;
- GMenuModel* _tmp7_;
- GtkMenu* _tmp8_;
-#line 138 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = self->priv->builder;
-#line 138 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = resources_get_ui ("tag_sidebar_context.ui");
-#line 138 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = _tmp2_;
-#line 138 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- gtk_builder_add_from_resource (_tmp1_, _tmp3_, &_inner_error_);
-#line 138 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp3_);
-#line 138 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (G_UNLIKELY (_inner_error_ != NULL)) {
-#line 1782 "TagsBranch.c"
- goto __catch61_g_error;
- }
-#line 139 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = self->priv->builder;
-#line 139 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5_ = gtk_builder_get_object (_tmp4_, "popup-menu");
-#line 139 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp6_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, g_menu_model_get_type ()) ? ((GMenuModel*) _tmp5_) : NULL);
-#line 139 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- model = _tmp6_;
-#line 140 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp7_ = model;
-#line 140 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp8_ = (GtkMenu*) gtk_menu_new_from_model (_tmp7_);
-#line 140 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_object_ref_sink (_tmp8_);
-#line 140 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (self->priv->context_menu);
-#line 140 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self->priv->context_menu = _tmp8_;
-#line 137 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (model);
-#line 1805 "TagsBranch.c"
- }
- goto __finally61;
- __catch61_g_error:
- {
- GError* _error_ = NULL;
- GError* _tmp9_;
- const gchar* _tmp10_;
- gchar* _tmp11_;
- gchar* _tmp12_;
- Application* _tmp13_;
- Application* _tmp14_;
-#line 137 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _error_ = _inner_error_;
-#line 137 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _inner_error_ = NULL;
-#line 142 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp9_ = _error_;
-#line 142 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp10_ = _tmp9_->message;
-#line 142 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp11_ = g_strdup_printf ("Error loading UI resource: %s", _tmp10_);
-#line 142 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp12_ = _tmp11_;
-#line 142 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- app_window_error_message (_tmp12_, NULL);
-#line 142 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp12_);
-#line 144 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp13_ = application_get_instance ();
-#line 144 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp14_ = _tmp13_;
-#line 144 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- application_panic (_tmp14_);
-#line 144 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _application_unref0 (_tmp14_);
-#line 137 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_error_free0 (_error_);
-#line 1843 "TagsBranch.c"
- }
- __finally61:
-#line 137 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (G_UNLIKELY (_inner_error_ != NULL)) {
-#line 137 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
-#line 137 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_clear_error (&_inner_error_);
-#line 137 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return;
-#line 1854 "TagsBranch.c"
- }
-}
-
-
-static gboolean
-tags_header_real_internal_drop_received (SidebarInternalDropTargetEntry* base,
- GeeList* media)
-{
- TagsHeader * self;
- gboolean result = FALSE;
- AddTagsDialog* dialog = NULL;
- AddTagsDialog* _tmp0_;
- gchar** names = NULL;
- AddTagsDialog* _tmp1_;
- gint _tmp2_;
- gchar** _tmp3_;
- gint names_length1;
- gint _names_size_;
- gboolean _tmp4_ = FALSE;
- gchar** _tmp5_;
- gint _tmp5__length1;
- CommandManager* _tmp7_;
- CommandManager* _tmp8_;
- gchar** _tmp9_;
- gint _tmp9__length1;
- AddTagsCommand* _tmp10_;
- AddTagsCommand* _tmp11_;
-#line 148 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_HEADER, TagsHeader);
-#line 148 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (GEE_IS_LIST (media), FALSE);
-#line 149 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = add_tags_dialog_new ();
-#line 149 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- dialog = _tmp0_;
-#line 150 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = dialog;
-#line 150 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = add_tags_dialog_execute (_tmp1_, &_tmp2_);
-#line 150 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- names = _tmp3_;
-#line 150 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- names_length1 = _tmp2_;
-#line 150 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _names_size_ = names_length1;
-#line 151 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5_ = names;
-#line 151 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5__length1 = names_length1;
-#line 151 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp5_ == NULL) {
-#line 151 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = TRUE;
-#line 1908 "TagsBranch.c"
- } else {
- gchar** _tmp6_;
- gint _tmp6__length1;
-#line 151 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp6_ = names;
-#line 151 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp6__length1 = names_length1;
-#line 151 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = _tmp6__length1 == 0;
-#line 1918 "TagsBranch.c"
- }
-#line 151 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp4_) {
-#line 152 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = FALSE;
-#line 152 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- names = (_vala_array_free (names, names_length1, (GDestroyNotify) g_free), NULL);
-#line 152 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _text_entry_dialog_mediator_unref0 (dialog);
-#line 152 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 1930 "TagsBranch.c"
- }
-#line 154 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp7_ = app_window_get_command_manager ();
-#line 154 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp8_ = _tmp7_;
-#line 154 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp9_ = names;
-#line 154 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp9__length1 = names_length1;
-#line 154 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp10_ = add_tags_command_new (_tmp9_, _tmp9__length1, G_TYPE_CHECK_INSTANCE_CAST (media, GEE_TYPE_COLLECTION, GeeCollection));
-#line 154 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp11_ = _tmp10_;
-#line 154 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- command_manager_execute (_tmp8_, G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_COMMAND, Command));
-#line 154 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp11_);
-#line 154 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _command_manager_unref0 (_tmp8_);
-#line 156 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = TRUE;
-#line 156 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- names = (_vala_array_free (names, names_length1, (GDestroyNotify) g_free), NULL);
-#line 156 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _text_entry_dialog_mediator_unref0 (dialog);
-#line 156 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 1958 "TagsBranch.c"
-}
-
-
-static gboolean
-tags_header_real_internal_drop_received_arbitrary (SidebarInternalDropTargetEntry* base,
- GtkSelectionData* data)
-{
- TagsHeader * self;
- gboolean result = FALSE;
- gchar* _tmp0_;
- gchar* _tmp1_;
- gboolean _tmp2_;
-#line 159 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_HEADER, TagsHeader);
-#line 159 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (data != NULL, FALSE);
-#line 160 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = gdk_atom_name (gtk_selection_data_get_data_type (data));
-#line 160 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = _tmp0_;
-#line 160 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = g_strcmp0 (_tmp1_, LIBRARY_WINDOW_TAG_PATH_MIME_TYPE) == 0;
-#line 160 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp1_);
-#line 160 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp2_) {
-#line 1985 "TagsBranch.c"
- gchar* old_tag_path = NULL;
- guint8* _tmp3_;
- gchar* _tmp4_;
- TagSourceCollection* _tmp5_;
- const gchar* _tmp6_;
- const gchar* _tmp7_;
- GeeList* _tmp8_;
- GeeList* _tmp9_;
- gint _tmp10_;
- gint _tmp11_;
- gboolean _tmp12_;
- CommandManager* _tmp13_;
- CommandManager* _tmp14_;
- const gchar* _tmp15_;
- Tag* _tmp16_;
- Tag* _tmp17_;
- ReparentTagCommand* _tmp18_;
- ReparentTagCommand* _tmp19_;
-#line 161 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = gtk_selection_data_get_data (data);
-#line 161 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = g_strdup ((const gchar*) _tmp3_);
-#line 161 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- old_tag_path = _tmp4_;
-#line 162 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5_ = tag_global;
-#line 162 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp6_ = old_tag_path;
-#line 162 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _vala_assert (tag_source_collection_exists (_tmp5_, _tmp6_, FALSE), "Tag.global.exists(old_tag_path)");
-#line 165 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp7_ = old_tag_path;
-#line 165 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp8_ = hierarchical_tag_utilities_enumerate_path_components (_tmp7_);
-#line 165 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp9_ = _tmp8_;
-#line 165 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp10_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 165 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp11_ = _tmp10_;
-#line 165 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp12_ = _tmp11_ < 2;
-#line 165 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp9_);
-#line 165 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp12_) {
-#line 166 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = TRUE;
-#line 166 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (old_tag_path);
-#line 166 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2038 "TagsBranch.c"
- }
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp13_ = app_window_get_command_manager ();
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp14_ = _tmp13_;
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp15_ = old_tag_path;
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp16_ = tag_for_path (_tmp15_);
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp17_ = _tmp16_;
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp18_ = reparent_tag_command_new (_tmp17_, "/");
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp19_ = _tmp18_;
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- command_manager_execute (_tmp14_, G_TYPE_CHECK_INSTANCE_CAST (_tmp19_, TYPE_COMMAND, Command));
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp19_);
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp17_);
-#line 168 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _command_manager_unref0 (_tmp14_);
-#line 171 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = TRUE;
-#line 171 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (old_tag_path);
-#line 171 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2068 "TagsBranch.c"
- }
-#line 174 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = FALSE;
-#line 174 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2074 "TagsBranch.c"
-}
-
-
-static void
-tags_header_real_prepare_selection_data (SidebarInternalDragSourceEntry* base,
- GtkSelectionData* data)
-{
- TagsHeader * self;
-#line 177 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_HEADER, TagsHeader);
-#line 177 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_if_fail (data != NULL);
-#line 2087 "TagsBranch.c"
-}
-
-
-static GtkMenu*
-tags_header_real_get_sidebar_context_menu (SidebarContextable* base,
- GdkEventButton* event)
-{
- TagsHeader * self;
- GtkMenu* result = NULL;
- GtkMenu* _tmp0_;
- GtkMenu* _tmp1_;
-#line 181 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_HEADER, TagsHeader);
-#line 182 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = self->priv->context_menu;
-#line 182 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = _g_object_ref0 (_tmp0_);
-#line 182 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = _tmp1_;
-#line 182 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2109 "TagsBranch.c"
-}
-
-
-static void
-tags_header_class_init (TagsHeaderClass * klass)
-{
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_header_parent_class = g_type_class_peek_parent (klass);
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_type_class_add_private (klass, sizeof (TagsHeaderPrivate));
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- G_OBJECT_CLASS (klass)->finalize = tags_header_finalize;
-#line 2122 "TagsBranch.c"
-}
-
-
-static void
-tags_header_sidebar_internal_drop_target_entry_interface_init (SidebarInternalDropTargetEntryIface * iface)
-{
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_header_sidebar_internal_drop_target_entry_parent_iface = g_type_interface_peek_parent (iface);
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->internal_drop_received = (gboolean (*) (SidebarInternalDropTargetEntry *, GeeList*)) tags_header_real_internal_drop_received;
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->internal_drop_received_arbitrary = (gboolean (*) (SidebarInternalDropTargetEntry *, GtkSelectionData*)) tags_header_real_internal_drop_received_arbitrary;
-#line 2135 "TagsBranch.c"
-}
-
-
-static void
-tags_header_sidebar_internal_drag_source_entry_interface_init (SidebarInternalDragSourceEntryIface * iface)
-{
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_header_sidebar_internal_drag_source_entry_parent_iface = g_type_interface_peek_parent (iface);
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->prepare_selection_data = (void (*) (SidebarInternalDragSourceEntry *, GtkSelectionData*)) tags_header_real_prepare_selection_data;
-#line 2146 "TagsBranch.c"
-}
-
-
-static void
-tags_header_sidebar_contextable_interface_init (SidebarContextableIface * iface)
-{
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_header_sidebar_contextable_parent_iface = g_type_interface_peek_parent (iface);
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->get_sidebar_context_menu = (GtkMenu* (*) (SidebarContextable *, GdkEventButton*)) tags_header_real_get_sidebar_context_menu;
-#line 2157 "TagsBranch.c"
-}
-
-
-static void
-tags_header_instance_init (TagsHeader * self)
-{
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self->priv = TAGS_HEADER_GET_PRIVATE (self);
-#line 128 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self->priv->context_menu = NULL;
-#line 2168 "TagsBranch.c"
-}
-
-
-static void
-tags_header_finalize (GObject * obj)
-{
- TagsHeader * self;
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (obj, TAGS_TYPE_HEADER, TagsHeader);
-#line 127 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (self->priv->builder);
-#line 128 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (self->priv->context_menu);
-#line 125 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- G_OBJECT_CLASS (tags_header_parent_class)->finalize (obj);
-#line 2184 "TagsBranch.c"
-}
-
-
-GType
-tags_header_get_type (void)
-{
- static volatile gsize tags_header_type_id__volatile = 0;
- if (g_once_init_enter (&tags_header_type_id__volatile)) {
- static const GTypeInfo g_define_type_info = { sizeof (TagsHeaderClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tags_header_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TagsHeader), 0, (GInstanceInitFunc) tags_header_instance_init, NULL };
- static const GInterfaceInfo sidebar_internal_drop_target_entry_info = { (GInterfaceInitFunc) tags_header_sidebar_internal_drop_target_entry_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
- static const GInterfaceInfo sidebar_internal_drag_source_entry_info = { (GInterfaceInitFunc) tags_header_sidebar_internal_drag_source_entry_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
- static const GInterfaceInfo sidebar_contextable_info = { (GInterfaceInitFunc) tags_header_sidebar_contextable_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
- GType tags_header_type_id;
- tags_header_type_id = g_type_register_static (SIDEBAR_TYPE_HEADER, "TagsHeader", &g_define_type_info, 0);
- g_type_add_interface_static (tags_header_type_id, SIDEBAR_TYPE_INTERNAL_DROP_TARGET_ENTRY, &sidebar_internal_drop_target_entry_info);
- g_type_add_interface_static (tags_header_type_id, SIDEBAR_TYPE_INTERNAL_DRAG_SOURCE_ENTRY, &sidebar_internal_drag_source_entry_info);
- g_type_add_interface_static (tags_header_type_id, SIDEBAR_TYPE_CONTEXTABLE, &sidebar_contextable_info);
- g_once_init_leave (&tags_header_type_id__volatile, tags_header_type_id);
- }
- return tags_header_type_id__volatile;
-}
-
-
-TagsSidebarEntry*
-tags_sidebar_entry_construct (GType object_type,
- Tag* tag)
-{
- TagsSidebarEntry * self = NULL;
- Tag* _tmp0_;
-#line 193 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (IS_TAG (tag), NULL);
-#line 193 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = (TagsSidebarEntry*) sidebar_simple_page_entry_construct (object_type);
-#line 194 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = _g_object_ref0 (tag);
-#line 194 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (self->priv->tag);
-#line 194 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self->priv->tag = _tmp0_;
-#line 193 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return self;
-#line 2226 "TagsBranch.c"
-}
-
-
-TagsSidebarEntry*
-tags_sidebar_entry_new (Tag* tag)
-{
-#line 193 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return tags_sidebar_entry_construct (TAGS_TYPE_SIDEBAR_ENTRY, tag);
-#line 2235 "TagsBranch.c"
-}
-
-
-void
-tags_sidebar_entry_init (void)
-{
-}
-
-
-void
-tags_sidebar_entry_terminate (void)
-{
-}
-
-
-Tag*
-tags_sidebar_entry_for_tag (TagsSidebarEntry* self)
-{
- Tag* result = NULL;
- Tag* _tmp0_;
- Tag* _tmp1_;
-#line 203 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (TAGS_IS_SIDEBAR_ENTRY (self), NULL);
-#line 204 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = self->priv->tag;
-#line 204 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = _g_object_ref0 (_tmp0_);
-#line 204 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = _tmp1_;
-#line 204 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2267 "TagsBranch.c"
-}
-
-
-static gchar*
-tags_sidebar_entry_real_get_sidebar_name (SidebarSimplePageEntry* base)
-{
- TagsSidebarEntry * self;
- gchar* result = NULL;
- Tag* _tmp0_;
- gchar* _tmp1_;
-#line 207 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 208 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = self->priv->tag;
-#line 208 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = tag_get_user_visible_name (_tmp0_);
-#line 208 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = _tmp1_;
-#line 208 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2288 "TagsBranch.c"
-}
-
-
-static gchar*
-tags_sidebar_entry_real_get_sidebar_icon (SidebarSimplePageEntry* base)
-{
- TagsSidebarEntry * self;
- gchar* result = NULL;
- const gchar* _tmp0_;
- gchar* _tmp1_;
-#line 211 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 212 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = self->priv->single_tag_icon;
-#line 212 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = g_strdup (_tmp0_);
-#line 212 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = _tmp1_;
-#line 212 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2309 "TagsBranch.c"
-}
-
-
-static Page*
-tags_sidebar_entry_real_create_page (SidebarSimplePageEntry* base)
-{
- TagsSidebarEntry * self;
- Page* result = NULL;
- Tag* _tmp0_;
- TagPage* _tmp1_;
-#line 215 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 216 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = self->priv->tag;
-#line 216 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = tag_page_new (_tmp0_);
-#line 216 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_object_ref_sink (_tmp1_);
-#line 216 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_PAGE, Page);
-#line 216 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2332 "TagsBranch.c"
-}
-
-
-static gboolean
-tags_sidebar_entry_real_is_user_renameable (SidebarRenameableEntry* base)
-{
- TagsSidebarEntry * self;
- gboolean result = FALSE;
-#line 219 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 220 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = TRUE;
-#line 220 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2347 "TagsBranch.c"
-}
-
-
-static gchar*
-string_replace (const gchar* self,
- const gchar* old,
- const gchar* replacement)
-{
- gchar* result = NULL;
- gboolean _tmp0_ = FALSE;
- gboolean _tmp1_ = FALSE;
- GError * _inner_error_ = NULL;
-#line 1421 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (self != NULL, NULL);
-#line 1421 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (old != NULL, NULL);
-#line 1421 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (replacement != NULL, NULL);
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if ((*((gchar*) self)) == '\0') {
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp1_ = TRUE;
-#line 2370 "TagsBranch.c"
- } else {
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp1_ = (*((gchar*) old)) == '\0';
-#line 2374 "TagsBranch.c"
- }
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp1_) {
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = TRUE;
-#line 2380 "TagsBranch.c"
- } else {
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = g_strcmp0 (old, replacement) == 0;
-#line 2384 "TagsBranch.c"
- }
-#line 1422 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_tmp0_) {
-#line 2388 "TagsBranch.c"
- gchar* _tmp2_;
-#line 1423 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp2_ = g_strdup (self);
-#line 1423 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = _tmp2_;
-#line 1423 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 2396 "TagsBranch.c"
- }
- {
- GRegex* regex = NULL;
- gchar* _tmp3_;
- gchar* _tmp4_;
- GRegex* _tmp5_;
- GRegex* _tmp6_;
- gchar* _tmp7_ = NULL;
- GRegex* _tmp8_;
- gchar* _tmp9_;
- gchar* _tmp10_;
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp3_ = g_regex_escape_string (old, -1);
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp4_ = _tmp3_;
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp5_ = g_regex_new (_tmp4_, 0, 0, &_inner_error_);
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp6_ = _tmp5_;
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_free0 (_tmp4_);
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- regex = _tmp6_;
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (G_UNLIKELY (_inner_error_ != NULL)) {
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_inner_error_->domain == G_REGEX_ERROR) {
-#line 2424 "TagsBranch.c"
- goto __catch62_g_regex_error;
- }
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_clear_error (&_inner_error_);
-#line 1426 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return NULL;
-#line 2433 "TagsBranch.c"
- }
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp8_ = regex;
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp9_ = g_regex_replace_literal (_tmp8_, self, (gssize) -1, 0, replacement, 0, &_inner_error_);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp7_ = _tmp9_;
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (G_UNLIKELY (_inner_error_ != NULL)) {
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_regex_unref0 (regex);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (_inner_error_->domain == G_REGEX_ERROR) {
-#line 2447 "TagsBranch.c"
- goto __catch62_g_regex_error;
- }
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_regex_unref0 (regex);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_clear_error (&_inner_error_);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return NULL;
-#line 2458 "TagsBranch.c"
- }
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp10_ = _tmp7_;
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp7_ = NULL;
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = _tmp10_;
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_free0 (_tmp7_);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_regex_unref0 (regex);
-#line 1427 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 2472 "TagsBranch.c"
- }
- goto __finally62;
- __catch62_g_regex_error:
- {
- GError* e = NULL;
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- e = _inner_error_;
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _inner_error_ = NULL;
-#line 1429 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_assert_not_reached ();
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _g_error_free0 (e);
-#line 2486 "TagsBranch.c"
- }
- __finally62:
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (G_UNLIKELY (_inner_error_ != NULL)) {
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_clear_error (&_inner_error_);
-#line 1425 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return NULL;
-#line 2497 "TagsBranch.c"
- }
-}
-
-
-static void
-tags_sidebar_entry_real_rename (SidebarRenameableEntry* base,
- const gchar* new_name)
-{
- TagsSidebarEntry * self;
- gchar* prepped = NULL;
- gchar* _tmp0_;
- const gchar* _tmp1_;
- const gchar* _tmp2_;
- gchar* _tmp3_;
- const gchar* _tmp4_;
- Tag* _tmp5_;
- gchar* _tmp6_;
- gchar* _tmp7_;
- gboolean _tmp8_;
- const gchar* _tmp9_;
- CommandManager* _tmp10_;
- CommandManager* _tmp11_;
- Tag* _tmp12_;
- const gchar* _tmp13_;
- RenameTagCommand* _tmp14_;
- RenameTagCommand* _tmp15_;
-#line 223 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 223 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_if_fail (new_name != NULL);
-#line 224 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = tag_prep_tag_name (new_name);
-#line 224 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- prepped = _tmp0_;
-#line 225 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = prepped;
-#line 225 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp1_ == NULL) {
-#line 226 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (prepped);
-#line 226 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return;
-#line 2540 "TagsBranch.c"
- }
-#line 228 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = prepped;
-#line 228 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = string_replace (_tmp2_, "/", "");
-#line 228 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (prepped);
-#line 228 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- prepped = _tmp3_;
-#line 230 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = prepped;
-#line 230 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5_ = self->priv->tag;
-#line 230 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp6_ = tag_get_user_visible_name (_tmp5_);
-#line 230 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp7_ = _tmp6_;
-#line 230 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp8_ = g_strcmp0 (_tmp4_, _tmp7_) == 0;
-#line 230 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp7_);
-#line 230 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp8_) {
-#line 231 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (prepped);
-#line 231 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return;
-#line 2568 "TagsBranch.c"
- }
-#line 233 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp9_ = prepped;
-#line 233 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (g_strcmp0 (_tmp9_, "") == 0) {
-#line 234 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (prepped);
-#line 234 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return;
-#line 2578 "TagsBranch.c"
- }
-#line 236 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp10_ = app_window_get_command_manager ();
-#line 236 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp11_ = _tmp10_;
-#line 236 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp12_ = self->priv->tag;
-#line 236 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp13_ = prepped;
-#line 236 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp14_ = rename_tag_command_new (_tmp12_, _tmp13_);
-#line 236 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp15_ = _tmp14_;
-#line 236 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- command_manager_execute (_tmp11_, G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, TYPE_COMMAND, Command));
-#line 236 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp15_);
-#line 236 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _command_manager_unref0 (_tmp11_);
-#line 223 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (prepped);
-#line 2600 "TagsBranch.c"
-}
-
-
-static void
-tags_sidebar_entry_real_destroy_source (SidebarDestroyableEntry* base)
-{
- TagsSidebarEntry * self;
- Tag* _tmp0_;
-#line 239 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 240 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = self->priv->tag;
-#line 240 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (dialogs_confirm_delete_tag (_tmp0_)) {
-#line 2615 "TagsBranch.c"
- CommandManager* _tmp1_;
- CommandManager* _tmp2_;
- Tag* _tmp3_;
- DeleteTagCommand* _tmp4_;
- DeleteTagCommand* _tmp5_;
-#line 241 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = app_window_get_command_manager ();
-#line 241 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = _tmp1_;
-#line 241 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = self->priv->tag;
-#line 241 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = delete_tag_command_new (_tmp3_);
-#line 241 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5_ = _tmp4_;
-#line 241 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- command_manager_execute (_tmp2_, G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_COMMAND, Command));
-#line 241 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp5_);
-#line 241 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _command_manager_unref0 (_tmp2_);
-#line 2637 "TagsBranch.c"
- }
-}
-
-
-static gboolean
-tags_sidebar_entry_real_internal_drop_received (SidebarInternalDropTargetEntry* base,
- GeeList* media)
-{
- TagsSidebarEntry * self;
- gboolean result = FALSE;
- CommandManager* _tmp0_;
- CommandManager* _tmp1_;
- Tag* _tmp2_;
- gint _tmp3_;
- gint _tmp4_;
- TagUntagPhotosCommand* _tmp5_;
- TagUntagPhotosCommand* _tmp6_;
-#line 244 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 244 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (GEE_IS_LIST (media), FALSE);
-#line 245 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = app_window_get_command_manager ();
-#line 245 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = _tmp0_;
-#line 245 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = self->priv->tag;
-#line 245 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (media, GEE_TYPE_COLLECTION, GeeCollection));
-#line 245 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = _tmp3_;
-#line 245 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5_ = tag_untag_photos_command_new (_tmp2_, G_TYPE_CHECK_INSTANCE_CAST (media, GEE_TYPE_COLLECTION, GeeCollection), _tmp4_, TRUE);
-#line 245 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp6_ = _tmp5_;
-#line 245 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- command_manager_execute (_tmp1_, G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_COMMAND, Command));
-#line 245 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp6_);
-#line 245 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _command_manager_unref0 (_tmp1_);
-#line 248 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = TRUE;
-#line 248 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2683 "TagsBranch.c"
-}
-
-
-static gboolean
-tags_sidebar_entry_real_internal_drop_received_arbitrary (SidebarInternalDropTargetEntry* base,
- GtkSelectionData* data)
-{
- TagsSidebarEntry * self;
- gboolean result = FALSE;
- gchar* _tmp0_;
- gchar* _tmp1_;
- gboolean _tmp2_;
-#line 251 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 251 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_val_if_fail (data != NULL, FALSE);
-#line 252 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = gdk_atom_name (gtk_selection_data_get_data_type (data));
-#line 252 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = _tmp0_;
-#line 252 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = g_strcmp0 (_tmp1_, LIBRARY_WINDOW_TAG_PATH_MIME_TYPE) == 0;
-#line 252 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp1_);
-#line 252 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp2_) {
-#line 2710 "TagsBranch.c"
- gchar* old_tag_path = NULL;
- guint8* _tmp3_;
- gchar* _tmp4_;
- const gchar* _tmp5_;
- Tag* _tmp6_;
- gchar* _tmp7_;
- gchar* _tmp8_;
- gboolean _tmp9_;
- TagSourceCollection* _tmp26_;
- const gchar* _tmp27_;
- Tag* old_tag = NULL;
- const gchar* _tmp28_;
- Tag* _tmp29_;
- Tag* old_tag_parent = NULL;
- Tag* _tmp30_;
- Tag* _tmp31_;
- gboolean _tmp32_ = FALSE;
- Tag* _tmp33_;
- CommandManager* _tmp40_;
- CommandManager* _tmp41_;
- Tag* _tmp42_;
- Tag* _tmp43_;
- gchar* _tmp44_;
- gchar* _tmp45_;
- ReparentTagCommand* _tmp46_;
- ReparentTagCommand* _tmp47_;
-#line 253 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = gtk_selection_data_get_data (data);
-#line 253 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = g_strdup ((const gchar*) _tmp3_);
-#line 253 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- old_tag_path = _tmp4_;
-#line 256 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp5_ = old_tag_path;
-#line 256 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp6_ = self->priv->tag;
-#line 256 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp7_ = tag_get_path (_tmp6_);
-#line 256 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp8_ = _tmp7_;
-#line 256 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp9_ = g_strcmp0 (_tmp5_, _tmp8_) == 0;
-#line 256 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp8_);
-#line 256 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp9_) {
-#line 257 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = TRUE;
-#line 257 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (old_tag_path);
-#line 257 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2763 "TagsBranch.c"
- }
- {
- GeeList* _parent_path_list = NULL;
- Tag* _tmp10_;
- gchar* _tmp11_;
- gchar* _tmp12_;
- GeeList* _tmp13_;
- GeeList* _tmp14_;
- gint _parent_path_size = 0;
- GeeList* _tmp15_;
- gint _tmp16_;
- gint _tmp17_;
- gint _parent_path_index = 0;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp10_ = self->priv->tag;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp11_ = tag_get_path (_tmp10_);
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp12_ = _tmp11_;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp13_ = hierarchical_tag_utilities_enumerate_parent_paths (_tmp12_);
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp14_ = _tmp13_;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp12_);
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _parent_path_list = _tmp14_;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp15_ = _parent_path_list;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp16_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, GEE_TYPE_COLLECTION, GeeCollection));
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp17_ = _tmp16_;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _parent_path_size = _tmp17_;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _parent_path_index = -1;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- while (TRUE) {
-#line 2803 "TagsBranch.c"
- gint _tmp18_;
- gint _tmp19_;
- gint _tmp20_;
- gchar* parent_path = NULL;
- GeeList* _tmp21_;
- gint _tmp22_;
- gpointer _tmp23_;
- const gchar* _tmp24_;
- const gchar* _tmp25_;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp18_ = _parent_path_index;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _parent_path_index = _tmp18_ + 1;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp19_ = _parent_path_index;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp20_ = _parent_path_size;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (!(_tmp19_ < _tmp20_)) {
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- break;
-#line 2825 "TagsBranch.c"
- }
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp21_ = _parent_path_list;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp22_ = _parent_path_index;
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp23_ = gee_list_get (_tmp21_, _tmp22_);
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- parent_path = (gchar*) _tmp23_;
-#line 261 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp24_ = parent_path;
-#line 261 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp25_ = old_tag_path;
-#line 261 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (g_strcmp0 (_tmp24_, _tmp25_) == 0) {
-#line 262 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = TRUE;
-#line 262 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (parent_path);
-#line 262 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_parent_path_list);
-#line 262 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (old_tag_path);
-#line 262 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2851 "TagsBranch.c"
- }
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (parent_path);
-#line 2855 "TagsBranch.c"
- }
-#line 260 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_parent_path_list);
-#line 2859 "TagsBranch.c"
- }
-#line 265 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp26_ = tag_global;
-#line 265 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp27_ = old_tag_path;
-#line 265 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _vala_assert (tag_source_collection_exists (_tmp26_, _tmp27_, FALSE), "Tag.global.exists(old_tag_path)");
-#line 268 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp28_ = old_tag_path;
-#line 268 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp29_ = tag_for_path (_tmp28_);
-#line 268 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- old_tag = _tmp29_;
-#line 269 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp30_ = old_tag;
-#line 269 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp31_ = tag_get_hierarchical_parent (_tmp30_);
-#line 269 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- old_tag_parent = _tmp31_;
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp33_ = old_tag_parent;
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp33_ != NULL) {
-#line 2883 "TagsBranch.c"
- Tag* _tmp34_;
- gchar* _tmp35_;
- gchar* _tmp36_;
- Tag* _tmp37_;
- gchar* _tmp38_;
- gchar* _tmp39_;
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp34_ = old_tag_parent;
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp35_ = tag_get_path (_tmp34_);
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp36_ = _tmp35_;
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp37_ = self->priv->tag;
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp38_ = tag_get_path (_tmp37_);
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp39_ = _tmp38_;
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp32_ = g_strcmp0 (_tmp36_, _tmp39_) == 0;
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp39_);
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp36_);
-#line 2908 "TagsBranch.c"
- } else {
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp32_ = FALSE;
-#line 2912 "TagsBranch.c"
- }
-#line 270 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- if (_tmp32_) {
-#line 271 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = TRUE;
-#line 271 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (old_tag_parent);
-#line 271 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (old_tag);
-#line 271 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (old_tag_path);
-#line 271 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2926 "TagsBranch.c"
- }
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp40_ = app_window_get_command_manager ();
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp41_ = _tmp40_;
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp42_ = old_tag;
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp43_ = self->priv->tag;
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp44_ = tag_get_path (_tmp43_);
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp45_ = _tmp44_;
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp46_ = reparent_tag_command_new (_tmp42_, _tmp45_);
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp47_ = _tmp46_;
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- command_manager_execute (_tmp41_, G_TYPE_CHECK_INSTANCE_CAST (_tmp47_, TYPE_COMMAND, Command));
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (_tmp47_);
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp45_);
-#line 273 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _command_manager_unref0 (_tmp41_);
-#line 276 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = TRUE;
-#line 276 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (old_tag_parent);
-#line 276 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (old_tag);
-#line 276 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (old_tag_path);
-#line 276 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2962 "TagsBranch.c"
- }
-#line 279 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = FALSE;
-#line 279 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2968 "TagsBranch.c"
-}
-
-
-static gboolean
-tags_sidebar_entry_real_expand_on_select (SidebarExpandableEntry* base)
-{
- TagsSidebarEntry * self;
- gboolean result = FALSE;
-#line 282 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 283 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- result = FALSE;
-#line 283 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- return result;
-#line 2983 "TagsBranch.c"
-}
-
-
-static guint8*
-string_get_data (const gchar* self,
- int* result_length1)
-{
- guint8* result;
- guint8* res = NULL;
- gint res_length1;
- gint _res_size_;
- gint _tmp0_;
- gint _tmp1_;
- gint _tmp2_;
- guint8* _tmp3_;
- gint _tmp3__length1;
- guint8* _tmp4_;
- gint _tmp4__length1;
-#line 1442 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- g_return_val_if_fail (self != NULL, NULL);
-#line 1443 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- res = (guint8*) self;
-#line 1443 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- res_length1 = -1;
-#line 1443 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _res_size_ = res_length1;
-#line 1444 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp0_ = strlen (self);
-#line 1444 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp1_ = _tmp0_;
-#line 1444 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- res_length1 = (gint) _tmp1_;
-#line 1444 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp2_ = res_length1;
-#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp3_ = res;
-#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp3__length1 = res_length1;
-#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp4_ = _tmp3_;
-#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- _tmp4__length1 = _tmp3__length1;
-#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- if (result_length1) {
-#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- *result_length1 = _tmp4__length1;
-#line 3030 "TagsBranch.c"
- }
-#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- result = _tmp4_;
-#line 1445 "/usr/share/vala-0.40/vapi/glib-2.0.vapi"
- return result;
-#line 3036 "TagsBranch.c"
-}
-
-
-static void
-tags_sidebar_entry_real_prepare_selection_data (SidebarInternalDragSourceEntry* base,
- GtkSelectionData* data)
-{
- TagsSidebarEntry * self;
- Tag* _tmp0_;
- gchar* _tmp1_;
- gchar* _tmp2_;
- guint8* _tmp3_;
- gint _tmp3__length1;
- guint8* _tmp4_;
- gint _tmp4__length1;
-#line 286 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (base, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 286 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_return_if_fail (data != NULL);
-#line 287 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = self->priv->tag;
-#line 287 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp1_ = tag_get_path (_tmp0_);
-#line 287 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp2_ = _tmp1_;
-#line 287 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp3_ = string_get_data (_tmp2_, &_tmp3__length1);
-#line 287 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4_ = _tmp3_;
-#line 287 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp4__length1 = _tmp3__length1;
-#line 287 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- gtk_selection_data_set (data, gdk_atom_intern_static_string (LIBRARY_WINDOW_TAG_PATH_MIME_TYPE), 0, _tmp4_, _tmp4__length1);
-#line 287 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (_tmp2_);
-#line 3072 "TagsBranch.c"
-}
-
-
-static void
-tags_sidebar_entry_class_init (TagsSidebarEntryClass * klass)
-{
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_sidebar_entry_parent_class = g_type_class_peek_parent (klass);
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- g_type_class_add_private (klass, sizeof (TagsSidebarEntryPrivate));
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- ((SidebarSimplePageEntryClass *) klass)->get_sidebar_name = (gchar* (*) (SidebarSimplePageEntry *)) tags_sidebar_entry_real_get_sidebar_name;
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- ((SidebarSimplePageEntryClass *) klass)->get_sidebar_icon = (gchar* (*) (SidebarSimplePageEntry *)) tags_sidebar_entry_real_get_sidebar_icon;
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- ((SidebarSimplePageEntryClass *) klass)->create_page = (Page* (*) (SidebarSimplePageEntry *)) tags_sidebar_entry_real_create_page;
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- G_OBJECT_CLASS (klass)->finalize = tags_sidebar_entry_finalize;
-#line 3091 "TagsBranch.c"
-}
-
-
-static void
-tags_sidebar_entry_sidebar_renameable_entry_interface_init (SidebarRenameableEntryIface * iface)
-{
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_sidebar_entry_sidebar_renameable_entry_parent_iface = g_type_interface_peek_parent (iface);
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->is_user_renameable = (gboolean (*) (SidebarRenameableEntry *)) tags_sidebar_entry_real_is_user_renameable;
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->rename = (void (*) (SidebarRenameableEntry *, const gchar*)) tags_sidebar_entry_real_rename;
-#line 3104 "TagsBranch.c"
-}
-
-
-static void
-tags_sidebar_entry_sidebar_destroyable_entry_interface_init (SidebarDestroyableEntryIface * iface)
-{
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_sidebar_entry_sidebar_destroyable_entry_parent_iface = g_type_interface_peek_parent (iface);
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->destroy_source = (void (*) (SidebarDestroyableEntry *)) tags_sidebar_entry_real_destroy_source;
-#line 3115 "TagsBranch.c"
-}
-
-
-static void
-tags_sidebar_entry_sidebar_internal_drop_target_entry_interface_init (SidebarInternalDropTargetEntryIface * iface)
-{
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_sidebar_entry_sidebar_internal_drop_target_entry_parent_iface = g_type_interface_peek_parent (iface);
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->internal_drop_received = (gboolean (*) (SidebarInternalDropTargetEntry *, GeeList*)) tags_sidebar_entry_real_internal_drop_received;
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->internal_drop_received_arbitrary = (gboolean (*) (SidebarInternalDropTargetEntry *, GtkSelectionData*)) tags_sidebar_entry_real_internal_drop_received_arbitrary;
-#line 3128 "TagsBranch.c"
-}
-
-
-static void
-tags_sidebar_entry_sidebar_expandable_entry_interface_init (SidebarExpandableEntryIface * iface)
-{
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_sidebar_entry_sidebar_expandable_entry_parent_iface = g_type_interface_peek_parent (iface);
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->expand_on_select = (gboolean (*) (SidebarExpandableEntry *)) tags_sidebar_entry_real_expand_on_select;
-#line 3139 "TagsBranch.c"
-}
-
-
-static void
-tags_sidebar_entry_sidebar_internal_drag_source_entry_interface_init (SidebarInternalDragSourceEntryIface * iface)
-{
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- tags_sidebar_entry_sidebar_internal_drag_source_entry_parent_iface = g_type_interface_peek_parent (iface);
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- iface->prepare_selection_data = (void (*) (SidebarInternalDragSourceEntry *, GtkSelectionData*)) tags_sidebar_entry_real_prepare_selection_data;
-#line 3150 "TagsBranch.c"
-}
-
-
-static void
-tags_sidebar_entry_instance_init (TagsSidebarEntry * self)
-{
- gchar* _tmp0_;
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self->priv = TAGS_SIDEBAR_ENTRY_GET_PRIVATE (self);
-#line 189 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _tmp0_ = g_strdup (RESOURCES_ICON_ONE_TAG);
-#line 189 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self->priv->single_tag_icon = _tmp0_;
-#line 3164 "TagsBranch.c"
-}
-
-
-static void
-tags_sidebar_entry_finalize (GObject * obj)
-{
- TagsSidebarEntry * self;
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- self = G_TYPE_CHECK_INSTANCE_CAST (obj, TAGS_TYPE_SIDEBAR_ENTRY, TagsSidebarEntry);
-#line 189 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_free0 (self->priv->single_tag_icon);
-#line 191 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- _g_object_unref0 (self->priv->tag);
-#line 186 "/home/jens/Source/shotwell/src/tags/TagsBranch.vala"
- G_OBJECT_CLASS (tags_sidebar_entry_parent_class)->finalize (obj);
-#line 3180 "TagsBranch.c"
-}
-
-
-GType
-tags_sidebar_entry_get_type (void)
-{
- static volatile gsize tags_sidebar_entry_type_id__volatile = 0;
- if (g_once_init_enter (&tags_sidebar_entry_type_id__volatile)) {
- static const GTypeInfo g_define_type_info = { sizeof (TagsSidebarEntryClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tags_sidebar_entry_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TagsSidebarEntry), 0, (GInstanceInitFunc) tags_sidebar_entry_instance_init, NULL };
- static const GInterfaceInfo sidebar_renameable_entry_info = { (GInterfaceInitFunc) tags_sidebar_entry_sidebar_renameable_entry_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
- static const GInterfaceInfo sidebar_destroyable_entry_info = { (GInterfaceInitFunc) tags_sidebar_entry_sidebar_destroyable_entry_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
- static const GInterfaceInfo sidebar_internal_drop_target_entry_info = { (GInterfaceInitFunc) tags_sidebar_entry_sidebar_internal_drop_target_entry_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
- static const GInterfaceInfo sidebar_expandable_entry_info = { (GInterfaceInitFunc) tags_sidebar_entry_sidebar_expandable_entry_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
- static const GInterfaceInfo sidebar_internal_drag_source_entry_info = { (GInterfaceInitFunc) tags_sidebar_entry_sidebar_internal_drag_source_entry_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
- GType tags_sidebar_entry_type_id;
- tags_sidebar_entry_type_id = g_type_register_static (SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY, "TagsSidebarEntry", &g_define_type_info, 0);
- g_type_add_interface_static (tags_sidebar_entry_type_id, SIDEBAR_TYPE_RENAMEABLE_ENTRY, &sidebar_renameable_entry_info);
- g_type_add_interface_static (tags_sidebar_entry_type_id, SIDEBAR_TYPE_DESTROYABLE_ENTRY, &sidebar_destroyable_entry_info);
- g_type_add_interface_static (tags_sidebar_entry_type_id, SIDEBAR_TYPE_INTERNAL_DROP_TARGET_ENTRY, &sidebar_internal_drop_target_entry_info);
- g_type_add_interface_static (tags_sidebar_entry_type_id, SIDEBAR_TYPE_EXPANDABLE_ENTRY, &sidebar_expandable_entry_info);
- g_type_add_interface_static (tags_sidebar_entry_type_id, SIDEBAR_TYPE_INTERNAL_DRAG_SOURCE_ENTRY, &sidebar_internal_drag_source_entry_info);
- g_once_init_leave (&tags_sidebar_entry_type_id__volatile, tags_sidebar_entry_type_id);
- }
- return tags_sidebar_entry_type_id__volatile;
-}
-
-
-static void
-_vala_array_destroy (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func)
-{
- if ((array != NULL) && (destroy_func != NULL)) {
- int i;
- for (i = 0; i < array_length; i = i + 1) {
- if (((gpointer*) array)[i] != NULL) {
- destroy_func (((gpointer*) array)[i]);
- }
- }
- }
-}
-
-
-static void
-_vala_array_free (gpointer array,
- gint array_length,
- GDestroyNotify destroy_func)
-{
- _vala_array_destroy (array, array_length, destroy_func);
- g_free (array);
-}
-
-
-