diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2016-08-20 15:09:31 +0200 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2016-08-20 15:09:31 +0200 |
commit | 143bfc9f801c84428074312d661f8e08803df83b (patch) | |
tree | 59a8a447529bd9ce3807aa8bacef861dc5aafd70 /src/searches | |
parent | 29a7aef998e975b42401cfa96d1b750d91eadf06 (diff) |
Imported Upstream version 0.23.5upstream/0.23.5
Diffstat (limited to 'src/searches')
-rw-r--r-- | src/searches/Branch.c | 1655 | ||||
-rw-r--r-- | src/searches/SavedSearchDialog.c | 6493 | ||||
-rw-r--r-- | src/searches/SavedSearchDialog.vala | 2 | ||||
-rw-r--r-- | src/searches/SavedSearchPage.c | 1493 | ||||
-rw-r--r-- | src/searches/SearchBoolean.c | 6902 | ||||
-rw-r--r-- | src/searches/Searches.c | 49 | ||||
-rw-r--r-- | src/searches/mk/searches.mk | 31 |
7 files changed, 16593 insertions, 32 deletions
diff --git a/src/searches/Branch.c b/src/searches/Branch.c new file mode 100644 index 0000000..81618ba --- /dev/null +++ b/src/searches/Branch.c @@ -0,0 +1,1655 @@ +/* Branch.c generated by valac 0.32.1, the Vala compiler + * generated from Branch.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 <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 SEARCHES_TYPE_BRANCH (searches_branch_get_type ()) +#define SEARCHES_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SEARCHES_TYPE_BRANCH, SearchesBranch)) +#define SEARCHES_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SEARCHES_TYPE_BRANCH, SearchesBranchClass)) +#define SEARCHES_IS_BRANCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SEARCHES_TYPE_BRANCH)) +#define SEARCHES_IS_BRANCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SEARCHES_TYPE_BRANCH)) +#define SEARCHES_BRANCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SEARCHES_TYPE_BRANCH, SearchesBranchClass)) + +typedef struct _SearchesBranch SearchesBranch; +typedef struct _SearchesBranchClass SearchesBranchClass; +typedef struct _SearchesBranchPrivate SearchesBranchPrivate; + +#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_SAVED_SEARCH (saved_search_get_type ()) +#define SAVED_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH, SavedSearch)) +#define SAVED_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH, SavedSearchClass)) +#define IS_SAVED_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH)) +#define IS_SAVED_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH)) +#define SAVED_SEARCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH, SavedSearchClass)) + +typedef struct _SavedSearch SavedSearch; +typedef struct _SavedSearchClass SavedSearchClass; + +#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 SEARCHES_TYPE_SIDEBAR_ENTRY (searches_sidebar_entry_get_type ()) +#define SEARCHES_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry)) +#define SEARCHES_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntryClass)) +#define SEARCHES_IS_SIDEBAR_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SEARCHES_TYPE_SIDEBAR_ENTRY)) +#define SEARCHES_IS_SIDEBAR_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SEARCHES_TYPE_SIDEBAR_ENTRY)) +#define SEARCHES_SIDEBAR_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntryClass)) + +typedef struct _SearchesSidebarEntry SearchesSidebarEntry; +typedef struct _SearchesSidebarEntryClass SearchesSidebarEntryClass; + +#define TYPE_SAVED_SEARCH_TABLE (saved_search_table_get_type ()) +#define SAVED_SEARCH_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_TABLE, SavedSearchTable)) +#define SAVED_SEARCH_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_TABLE, SavedSearchTableClass)) +#define IS_SAVED_SEARCH_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_TABLE)) +#define IS_SAVED_SEARCH_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_TABLE)) +#define SAVED_SEARCH_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_TABLE, SavedSearchTableClass)) + +typedef struct _SavedSearchTable SavedSearchTable; +typedef struct _SavedSearchTableClass SavedSearchTableClass; +#define _saved_search_table_unref0(var) ((var == NULL) ? NULL : (var = (saved_search_table_unref (var), NULL))) +#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 SEARCHES_TYPE_HEADER (searches_header_get_type ()) +#define SEARCHES_HEADER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SEARCHES_TYPE_HEADER, SearchesHeader)) +#define SEARCHES_HEADER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SEARCHES_TYPE_HEADER, SearchesHeaderClass)) +#define SEARCHES_IS_HEADER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SEARCHES_TYPE_HEADER)) +#define SEARCHES_IS_HEADER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SEARCHES_TYPE_HEADER)) +#define SEARCHES_HEADER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SEARCHES_TYPE_HEADER, SearchesHeaderClass)) + +typedef struct _SearchesHeader SearchesHeader; +typedef struct _SearchesHeaderClass SearchesHeaderClass; + +#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 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; + +#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; +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_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 _SearchesHeaderPrivate SearchesHeaderPrivate; +#define _g_free0(var) (var = (g_free (var), NULL)) + +#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_SAVED_SEARCH_DIALOG (saved_search_dialog_get_type ()) +#define SAVED_SEARCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialog)) +#define SAVED_SEARCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialogClass)) +#define IS_SAVED_SEARCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_DIALOG)) +#define IS_SAVED_SEARCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_DIALOG)) +#define SAVED_SEARCH_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialogClass)) + +typedef struct _SavedSearchDialog SavedSearchDialog; +typedef struct _SavedSearchDialogClass SavedSearchDialogClass; +#define _saved_search_dialog_unref0(var) ((var == NULL) ? NULL : (var = (saved_search_dialog_unref (var), NULL))) + +#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 _SearchesSidebarEntryPrivate SearchesSidebarEntryPrivate; + +#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_SAVED_SEARCH_PAGE (saved_search_page_get_type ()) +#define SAVED_SEARCH_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_PAGE, SavedSearchPage)) +#define SAVED_SEARCH_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_PAGE, SavedSearchPageClass)) +#define IS_SAVED_SEARCH_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_PAGE)) +#define IS_SAVED_SEARCH_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_PAGE)) +#define SAVED_SEARCH_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_PAGE, SavedSearchPageClass)) + +typedef struct _SavedSearchPage SavedSearchPage; +typedef struct _SavedSearchPageClass SavedSearchPageClass; + +#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_SINGLE_DATA_SOURCE_COMMAND (single_data_source_command_get_type ()) +#define SINGLE_DATA_SOURCE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SINGLE_DATA_SOURCE_COMMAND, SingleDataSourceCommand)) +#define SINGLE_DATA_SOURCE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SINGLE_DATA_SOURCE_COMMAND, SingleDataSourceCommandClass)) +#define IS_SINGLE_DATA_SOURCE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SINGLE_DATA_SOURCE_COMMAND)) +#define IS_SINGLE_DATA_SOURCE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SINGLE_DATA_SOURCE_COMMAND)) +#define SINGLE_DATA_SOURCE_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SINGLE_DATA_SOURCE_COMMAND, SingleDataSourceCommandClass)) + +typedef struct _SingleDataSourceCommand SingleDataSourceCommand; +typedef struct _SingleDataSourceCommandClass SingleDataSourceCommandClass; + +#define TYPE_RENAME_SAVED_SEARCH_COMMAND (rename_saved_search_command_get_type ()) +#define RENAME_SAVED_SEARCH_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RENAME_SAVED_SEARCH_COMMAND, RenameSavedSearchCommand)) +#define RENAME_SAVED_SEARCH_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RENAME_SAVED_SEARCH_COMMAND, RenameSavedSearchCommandClass)) +#define IS_RENAME_SAVED_SEARCH_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RENAME_SAVED_SEARCH_COMMAND)) +#define IS_RENAME_SAVED_SEARCH_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RENAME_SAVED_SEARCH_COMMAND)) +#define RENAME_SAVED_SEARCH_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RENAME_SAVED_SEARCH_COMMAND, RenameSavedSearchCommandClass)) + +typedef struct _RenameSavedSearchCommand RenameSavedSearchCommand; +typedef struct _RenameSavedSearchCommandClass RenameSavedSearchCommandClass; +#define _command_manager_unref0(var) ((var == NULL) ? NULL : (var = (command_manager_unref (var), NULL))) + +#define TYPE_DELETE_SAVED_SEARCH_COMMAND (delete_saved_search_command_get_type ()) +#define DELETE_SAVED_SEARCH_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DELETE_SAVED_SEARCH_COMMAND, DeleteSavedSearchCommand)) +#define DELETE_SAVED_SEARCH_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DELETE_SAVED_SEARCH_COMMAND, DeleteSavedSearchCommandClass)) +#define IS_DELETE_SAVED_SEARCH_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DELETE_SAVED_SEARCH_COMMAND)) +#define IS_DELETE_SAVED_SEARCH_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DELETE_SAVED_SEARCH_COMMAND)) +#define DELETE_SAVED_SEARCH_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DELETE_SAVED_SEARCH_COMMAND, DeleteSavedSearchCommandClass)) + +typedef struct _DeleteSavedSearchCommand DeleteSavedSearchCommand; +typedef struct _DeleteSavedSearchCommandClass DeleteSavedSearchCommandClass; +#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 _SearchesBranch { + SidebarBranch parent_instance; + SearchesBranchPrivate * priv; +}; + +struct _SearchesBranchClass { + SidebarBranchClass parent_class; +}; + +struct _SearchesBranchPrivate { + 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 _SidebarExpandableEntryIface { + GTypeInterface parent_iface; + gboolean (*expand_on_select) (SidebarExpandableEntry* self); +}; + +struct _SidebarRenameableEntryIface { + GTypeInterface parent_iface; + void (*rename) (SidebarRenameableEntry* self, const gchar* new_name); + gboolean (*is_user_renameable) (SidebarRenameableEntry* 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 _SidebarContextableIface { + GTypeInterface parent_iface; + GtkMenu* (*get_sidebar_context_menu) (SidebarContextable* self, GdkEventButton* event); +}; + +struct _SearchesHeader { + SidebarHeader parent_instance; + SearchesHeaderPrivate * priv; +}; + +struct _SearchesHeaderClass { + SidebarHeaderClass parent_class; +}; + +struct _SearchesHeaderPrivate { + GtkUIManager* ui; + 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 _SearchesSidebarEntry { + SidebarSimplePageEntry parent_instance; + SearchesSidebarEntryPrivate * priv; +}; + +struct _SearchesSidebarEntryClass { + SidebarSimplePageEntryClass parent_class; +}; + +struct _SearchesSidebarEntryPrivate { + SavedSearch* search; +}; + + +static gpointer searches_branch_parent_class = NULL; +static gpointer searches_header_parent_class = NULL; +static SidebarContextableIface* searches_header_sidebar_contextable_parent_iface = NULL; +static gpointer searches_sidebar_entry_parent_class = NULL; +static gchar* searches_sidebar_entry_single_search_icon; +static gchar* searches_sidebar_entry_single_search_icon = NULL; +static SidebarRenameableEntryIface* searches_sidebar_entry_sidebar_renameable_entry_parent_iface = NULL; +static SidebarDestroyableEntryIface* searches_sidebar_entry_sidebar_destroyable_entry_parent_iface = NULL; + +GType sidebar_branch_get_type (void) G_GNUC_CONST; +GType searches_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 saved_search_get_type (void) G_GNUC_CONST; +GType sidebar_simple_page_entry_get_type (void) G_GNUC_CONST; +GType searches_sidebar_entry_get_type (void) G_GNUC_CONST; +#define SEARCHES_BRANCH_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SEARCHES_TYPE_BRANCH, SearchesBranchPrivate)) +enum { + SEARCHES_BRANCH_DUMMY_PROPERTY +}; +gpointer saved_search_table_ref (gpointer instance); +void saved_search_table_unref (gpointer instance); +GParamSpec* param_spec_saved_search_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_saved_search_table (GValue* value, gpointer v_object); +void value_take_saved_search_table (GValue* value, gpointer v_object); +gpointer value_get_saved_search_table (const GValue* value); +GType saved_search_table_get_type (void) G_GNUC_CONST; +SavedSearchTable* saved_search_table_get_instance (void); +static void searches_branch_on_saved_search_added (SearchesBranch* self, SavedSearch* search); +static void _searches_branch_on_saved_search_added_saved_search_table_search_added (SavedSearchTable* _sender, SavedSearch* search, gpointer self); +static void searches_branch_on_saved_search_removed (SearchesBranch* self, SavedSearch* search); +static void _searches_branch_on_saved_search_removed_saved_search_table_search_removed (SavedSearchTable* _sender, SavedSearch* search, gpointer self); +SearchesBranch* searches_branch_new (void); +SearchesBranch* searches_branch_construct (GType object_type); +SearchesHeader* searches_header_new (void); +SearchesHeader* searches_header_construct (GType object_type); +GType sidebar_grouping_get_type (void) G_GNUC_CONST; +GType sidebar_header_get_type (void) G_GNUC_CONST; +GType searches_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 searches_branch_comparator (SidebarEntry* a, SidebarEntry* b); +static gint _searches_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* saved_search_table_get_all (SavedSearchTable* self); +SearchesSidebarEntry* searches_branch_get_entry_for_saved_search (SearchesBranch* self, SavedSearch* search); +gint saved_search_compare_names (void* a, void* b); +SavedSearch* searches_sidebar_entry_for_saved_search (SearchesSidebarEntry* self); +SearchesSidebarEntry* searches_sidebar_entry_new (SavedSearch* search); +SearchesSidebarEntry* searches_sidebar_entry_construct (GType object_type, SavedSearch* search); +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); +static void searches_branch_finalize (GObject* obj); +GType sidebar_expandable_entry_get_type (void) G_GNUC_CONST; +GType sidebar_renameable_entry_get_type (void) G_GNUC_CONST; +GType sidebar_emphasizable_entry_get_type (void) G_GNUC_CONST; +GType sidebar_contextable_get_type (void) G_GNUC_CONST; +#define SEARCHES_HEADER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SEARCHES_TYPE_HEADER, SearchesHeaderPrivate)) +enum { + SEARCHES_HEADER_DUMMY_PROPERTY +}; +SidebarHeader* sidebar_header_new (const gchar* name, gboolean emphasized); +SidebarHeader* sidebar_header_construct (GType object_type, const gchar* name, gboolean emphasized); +static void searches_header_setup_context_menu (SearchesHeader* self); +#define TRANSLATABLE "translatable" +static void searches_header_on_new_search (SearchesHeader* self); +static void _searches_header_on_new_search_gtk_action_callback (GtkAction* action, gpointer self); +static void _vala_array_add146 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value); +GFile* 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 GtkMenu* searches_header_real_get_sidebar_context_menu (SidebarContextable* base, GdkEventButton* event); +SavedSearchDialog* saved_search_dialog_new (void); +SavedSearchDialog* saved_search_dialog_construct (GType object_type); +gpointer saved_search_dialog_ref (gpointer instance); +void saved_search_dialog_unref (gpointer instance); +GParamSpec* param_spec_saved_search_dialog (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_saved_search_dialog (GValue* value, gpointer v_object); +void value_take_saved_search_dialog (GValue* value, gpointer v_object); +gpointer value_get_saved_search_dialog (const GValue* value); +GType saved_search_dialog_get_type (void) G_GNUC_CONST; +void saved_search_dialog_show (SavedSearchDialog* self); +static void searches_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 SEARCHES_SIDEBAR_ENTRY_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntryPrivate)) +enum { + SEARCHES_SIDEBAR_ENTRY_DUMMY_PROPERTY +}; +SidebarSimplePageEntry* sidebar_simple_page_entry_construct (GType object_type); +void searches_sidebar_entry_init (void); +void searches_sidebar_entry_terminate (void); +static gchar* searches_sidebar_entry_real_get_sidebar_name (SidebarSimplePageEntry* base); +gchar* data_object_get_name (DataObject* self); +static gchar* searches_sidebar_entry_real_get_sidebar_icon (SidebarSimplePageEntry* base); +static Page* searches_sidebar_entry_real_create_page (SidebarSimplePageEntry* base); +SavedSearchPage* saved_search_page_new (SavedSearch* search); +SavedSearchPage* saved_search_page_construct (GType object_type, SavedSearch* search); +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 saved_search_page_get_type (void) G_GNUC_CONST; +static gboolean searches_sidebar_entry_real_is_user_renameable (SidebarRenameableEntry* base); +static void searches_sidebar_entry_real_rename (SidebarRenameableEntry* base, const gchar* new_name); +gboolean saved_search_table_exists (SavedSearchTable* self, const gchar* search_name); +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); +RenameSavedSearchCommand* rename_saved_search_command_new (SavedSearch* search, const gchar* new_name); +RenameSavedSearchCommand* rename_saved_search_command_construct (GType object_type, SavedSearch* search, const gchar* new_name); +GType page_command_get_type (void) G_GNUC_CONST; +GType single_data_source_command_get_type (void) G_GNUC_CONST; +GType rename_saved_search_command_get_type (void) G_GNUC_CONST; +gchar* resources_rename_search_exists_message (const gchar* name); +static void searches_sidebar_entry_real_destroy_source (SidebarDestroyableEntry* base); +gboolean dialogs_confirm_delete_saved_search (SavedSearch* search); +DeleteSavedSearchCommand* delete_saved_search_command_new (SavedSearch* search); +DeleteSavedSearchCommand* delete_saved_search_command_construct (GType object_type, SavedSearch* search); +GType delete_saved_search_command_get_type (void) G_GNUC_CONST; +static void searches_sidebar_entry_finalize (GObject* obj); + + +static void _searches_branch_on_saved_search_added_saved_search_table_search_added (SavedSearchTable* _sender, SavedSearch* search, gpointer self) { +#line 28 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_branch_on_saved_search_added ((SearchesBranch*) self, search); +#line 637 "Branch.c" +} + + +static void _searches_branch_on_saved_search_removed_saved_search_table_search_removed (SavedSearchTable* _sender, SavedSearch* search, gpointer self) { +#line 29 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_branch_on_saved_search_removed ((SearchesBranch*) self, search); +#line 644 "Branch.c" +} + + +static gint _searches_branch_comparator_gcompare_func (gconstpointer a, gconstpointer b) { + gint result; + result = searches_branch_comparator ((SidebarEntry*) a, (SidebarEntry*) b); +#line 12 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return result; +#line 653 "Branch.c" +} + + +SearchesBranch* searches_branch_construct (GType object_type) { + SearchesBranch * self = NULL; + SearchesHeader* _tmp0_ = NULL; + SearchesHeader* _tmp1_ = NULL; + SavedSearchTable* _tmp13_ = NULL; + SavedSearchTable* _tmp14_ = NULL; + SavedSearchTable* _tmp15_ = NULL; + SavedSearchTable* _tmp16_ = NULL; +#line 12 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = searches_header_new (); +#line 12 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = _tmp0_; +#line 12 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = (SearchesBranch*) 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_EXPAND_TO_FIRST_CHILD, _searches_branch_comparator_gcompare_func, NULL); +#line 12 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (_tmp1_); +#line 673 "Branch.c" + { + GeeIterator* _search_it = NULL; + SavedSearchTable* _tmp2_ = NULL; + SavedSearchTable* _tmp3_ = NULL; + GeeCollection* _tmp4_ = NULL; + GeeCollection* _tmp5_ = NULL; + GeeIterator* _tmp6_ = NULL; + GeeIterator* _tmp7_ = NULL; +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_ = saved_search_table_get_instance (); +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp3_ = _tmp2_; +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp4_ = saved_search_table_get_all (_tmp3_); +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp5_ = _tmp4_; +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp6_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, GEE_TYPE_ITERABLE, GeeIterable)); +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp7_ = _tmp6_; +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (_tmp5_); +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _saved_search_table_unref0 (_tmp3_); +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _search_it = _tmp7_; +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + while (TRUE) { +#line 702 "Branch.c" + GeeIterator* _tmp8_ = NULL; + gboolean _tmp9_ = FALSE; + SavedSearch* search = NULL; + GeeIterator* _tmp10_ = NULL; + gpointer _tmp11_ = NULL; + SavedSearch* _tmp12_ = NULL; +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp8_ = _search_it; +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp9_ = gee_iterator_next (_tmp8_); +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + if (!_tmp9_) { +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + break; +#line 717 "Branch.c" + } +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp10_ = _search_it; +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp11_ = gee_iterator_get (_tmp10_); +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + search = (SavedSearch*) _tmp11_; +#line 20 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp12_ = search; +#line 20 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_branch_on_saved_search_added (self, _tmp12_); +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (search); +#line 731 "Branch.c" + } +#line 19 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (_search_it); +#line 735 "Branch.c" + } +#line 23 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp13_ = saved_search_table_get_instance (); +#line 23 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp14_ = _tmp13_; +#line 23 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_signal_connect_object (_tmp14_, "search-added", (GCallback) _searches_branch_on_saved_search_added_saved_search_table_search_added, self, 0); +#line 23 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _saved_search_table_unref0 (_tmp14_); +#line 24 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp15_ = saved_search_table_get_instance (); +#line 24 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp16_ = _tmp15_; +#line 24 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_signal_connect_object (_tmp16_, "search-removed", (GCallback) _searches_branch_on_saved_search_removed_saved_search_table_search_removed, self, 0); +#line 24 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _saved_search_table_unref0 (_tmp16_); +#line 11 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return self; +#line 755 "Branch.c" +} + + +SearchesBranch* searches_branch_new (void) { +#line 11 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return searches_branch_construct (SEARCHES_TYPE_BRANCH); +#line 762 "Branch.c" +} + + +SearchesSidebarEntry* searches_branch_get_entry_for_saved_search (SearchesBranch* self, SavedSearch* search) { + SearchesSidebarEntry* result = NULL; + GeeHashMap* _tmp0_ = NULL; + SavedSearch* _tmp1_ = NULL; + gpointer _tmp2_ = NULL; +#line 32 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_val_if_fail (SEARCHES_IS_BRANCH (self), NULL); +#line 32 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_val_if_fail (IS_SAVED_SEARCH (search), NULL); +#line 33 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = self->priv->entry_map; +#line 33 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = search; +#line 33 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp1_); +#line 33 "/home/jens/Source/shotwell/src/searches/Branch.vala" + result = (SearchesSidebarEntry*) _tmp2_; +#line 33 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return result; +#line 785 "Branch.c" +} + + +static gint searches_branch_comparator (SidebarEntry* a, SidebarEntry* b) { + gint result = 0; + SidebarEntry* _tmp0_ = NULL; + SidebarEntry* _tmp1_ = NULL; + SidebarEntry* _tmp2_ = NULL; + SavedSearch* _tmp3_ = NULL; + SidebarEntry* _tmp4_ = NULL; + SavedSearch* _tmp5_ = NULL; + gint _tmp6_ = 0; +#line 36 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_val_if_fail (SIDEBAR_IS_ENTRY (a), 0); +#line 36 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_val_if_fail (SIDEBAR_IS_ENTRY (b), 0); +#line 37 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = a; +#line 37 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = b; +#line 37 "/home/jens/Source/shotwell/src/searches/Branch.vala" + if (_tmp0_ == _tmp1_) { +#line 38 "/home/jens/Source/shotwell/src/searches/Branch.vala" + result = 0; +#line 38 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return result; +#line 812 "Branch.c" + } +#line 40 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_ = a; +#line 40 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp3_ = searches_sidebar_entry_for_saved_search (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry)); +#line 40 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp4_ = b; +#line 40 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp5_ = searches_sidebar_entry_for_saved_search (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry)); +#line 40 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp6_ = saved_search_compare_names (_tmp3_, _tmp5_); +#line 40 "/home/jens/Source/shotwell/src/searches/Branch.vala" + result = _tmp6_; +#line 40 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return result; +#line 828 "Branch.c" +} + + +static void searches_branch_on_saved_search_added (SearchesBranch* self, SavedSearch* search) { + SearchesSidebarEntry* entry = NULL; + SavedSearch* _tmp0_ = NULL; + SearchesSidebarEntry* _tmp1_ = NULL; + GeeHashMap* _tmp2_ = NULL; + SavedSearch* _tmp3_ = NULL; + SidebarEntry* _tmp4_ = NULL; + SidebarEntry* _tmp5_ = NULL; +#line 44 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_if_fail (SEARCHES_IS_BRANCH (self)); +#line 44 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_if_fail (IS_SAVED_SEARCH (search)); +#line 45 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_debug ("Branch.vala:45: search added"); +#line 46 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = search; +#line 46 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = searches_sidebar_entry_new (_tmp0_); +#line 46 "/home/jens/Source/shotwell/src/searches/Branch.vala" + entry = _tmp1_; +#line 47 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_ = self->priv->entry_map; +#line 47 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp3_ = search; +#line 47 "/home/jens/Source/shotwell/src/searches/Branch.vala" + gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp3_, entry); +#line 48 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp4_ = sidebar_branch_get_root (G_TYPE_CHECK_INSTANCE_CAST (self, SIDEBAR_TYPE_BRANCH, SidebarBranch)); +#line 48 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp5_ = _tmp4_; +#line 48 "/home/jens/Source/shotwell/src/searches/Branch.vala" + sidebar_branch_graft (G_TYPE_CHECK_INSTANCE_CAST (self, SIDEBAR_TYPE_BRANCH, SidebarBranch), _tmp5_, G_TYPE_CHECK_INSTANCE_CAST (entry, SIDEBAR_TYPE_ENTRY, SidebarEntry), NULL); +#line 48 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (_tmp5_); +#line 44 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (entry); +#line 868 "Branch.c" +} + + +static void searches_branch_on_saved_search_removed (SearchesBranch* self, SavedSearch* search) { + SearchesSidebarEntry* entry = NULL; + GeeHashMap* _tmp0_ = NULL; + SavedSearch* _tmp1_ = NULL; + gpointer _tmp2_ = NULL; + gboolean is_removed = FALSE; + GeeHashMap* _tmp3_ = NULL; + SavedSearch* _tmp4_ = NULL; + gboolean _tmp5_ = FALSE; +#line 51 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_if_fail (SEARCHES_IS_BRANCH (self)); +#line 51 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_if_fail (IS_SAVED_SEARCH (search)); +#line 52 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_debug ("Branch.vala:52: search removed"); +#line 53 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = self->priv->entry_map; +#line 53 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = search; +#line 53 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp1_); +#line 53 "/home/jens/Source/shotwell/src/searches/Branch.vala" + entry = (SearchesSidebarEntry*) _tmp2_; +#line 54 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _vala_assert (entry != NULL, "entry != null"); +#line 56 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp3_ = self->priv->entry_map; +#line 56 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp4_ = search; +#line 56 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp5_ = gee_abstract_map_unset (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp4_, NULL); +#line 56 "/home/jens/Source/shotwell/src/searches/Branch.vala" + is_removed = _tmp5_; +#line 57 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _vala_assert (is_removed, "is_removed"); +#line 59 "/home/jens/Source/shotwell/src/searches/Branch.vala" + sidebar_branch_prune (G_TYPE_CHECK_INSTANCE_CAST (self, SIDEBAR_TYPE_BRANCH, SidebarBranch), G_TYPE_CHECK_INSTANCE_CAST (entry, SIDEBAR_TYPE_ENTRY, SidebarEntry)); +#line 51 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (entry); +#line 911 "Branch.c" +} + + +static void searches_branch_class_init (SearchesBranchClass * klass) { +#line 7 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_branch_parent_class = g_type_class_peek_parent (klass); +#line 7 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_type_class_add_private (klass, sizeof (SearchesBranchPrivate)); +#line 7 "/home/jens/Source/shotwell/src/searches/Branch.vala" + G_OBJECT_CLASS (klass)->finalize = searches_branch_finalize; +#line 922 "Branch.c" +} + + +static void searches_branch_instance_init (SearchesBranch * self) { + GeeHashMap* _tmp0_ = NULL; +#line 7 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self->priv = SEARCHES_BRANCH_GET_PRIVATE (self); +#line 8 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = gee_hash_map_new (TYPE_SAVED_SEARCH, (GBoxedCopyFunc) g_object_ref, g_object_unref, SEARCHES_TYPE_SIDEBAR_ENTRY, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +#line 8 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self->priv->entry_map = _tmp0_; +#line 934 "Branch.c" +} + + +static void searches_branch_finalize (GObject* obj) { + SearchesBranch * self; + SavedSearchTable* _tmp0_ = NULL; + SavedSearchTable* _tmp1_ = NULL; + guint _tmp2_ = 0U; + SavedSearchTable* _tmp3_ = NULL; + SavedSearchTable* _tmp4_ = NULL; + guint _tmp5_ = 0U; +#line 7 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SEARCHES_TYPE_BRANCH, SearchesBranch); +#line 28 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = saved_search_table_get_instance (); +#line 28 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = _tmp0_; +#line 28 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_signal_parse_name ("search-added", TYPE_SAVED_SEARCH_TABLE, &_tmp2_, NULL, FALSE); +#line 28 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_signal_handlers_disconnect_matched (_tmp1_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp2_, 0, NULL, (GCallback) _searches_branch_on_saved_search_added_saved_search_table_search_added, self); +#line 28 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _saved_search_table_unref0 (_tmp1_); +#line 29 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp3_ = saved_search_table_get_instance (); +#line 29 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp4_ = _tmp3_; +#line 29 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_signal_parse_name ("search-removed", TYPE_SAVED_SEARCH_TABLE, &_tmp5_, NULL, FALSE); +#line 29 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_signal_handlers_disconnect_matched (_tmp4_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp5_, 0, NULL, (GCallback) _searches_branch_on_saved_search_removed_saved_search_table_search_removed, self); +#line 29 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _saved_search_table_unref0 (_tmp4_); +#line 8 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (self->priv->entry_map); +#line 7 "/home/jens/Source/shotwell/src/searches/Branch.vala" + G_OBJECT_CLASS (searches_branch_parent_class)->finalize (obj); +#line 972 "Branch.c" +} + + +GType searches_branch_get_type (void) { + static volatile gsize searches_branch_type_id__volatile = 0; + if (g_once_init_enter (&searches_branch_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SearchesBranchClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) searches_branch_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SearchesBranch), 0, (GInstanceInitFunc) searches_branch_instance_init, NULL }; + GType searches_branch_type_id; + searches_branch_type_id = g_type_register_static (SIDEBAR_TYPE_BRANCH, "SearchesBranch", &g_define_type_info, 0); + g_once_init_leave (&searches_branch_type_id__volatile, searches_branch_type_id); + } + return searches_branch_type_id__volatile; +} + + +SearchesHeader* searches_header_construct (GType object_type) { + SearchesHeader * self = NULL; + const gchar* _tmp0_ = NULL; +#line 68 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = _ ("Saved Searches"); +#line 68 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = (SearchesHeader*) sidebar_header_construct (object_type, _tmp0_, TRUE); +#line 69 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_header_setup_context_menu (self); +#line 67 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return self; +#line 999 "Branch.c" +} + + +SearchesHeader* searches_header_new (void) { +#line 67 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return searches_header_construct (SEARCHES_TYPE_HEADER); +#line 1006 "Branch.c" +} + + +static void _searches_header_on_new_search_gtk_action_callback (GtkAction* action, gpointer self) { +#line 76 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_header_on_new_search ((SearchesHeader*) self); +#line 1013 "Branch.c" +} + + +static void _vala_array_add146 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value) { +#line 78 "/home/jens/Source/shotwell/src/searches/Branch.vala" + if ((*length) == (*size)) { +#line 78 "/home/jens/Source/shotwell/src/searches/Branch.vala" + *size = (*size) ? (2 * (*size)) : 4; +#line 78 "/home/jens/Source/shotwell/src/searches/Branch.vala" + *array = g_renew (GtkActionEntry, *array, *size); +#line 1024 "Branch.c" + } +#line 78 "/home/jens/Source/shotwell/src/searches/Branch.vala" + (*array)[(*length)++] = *value; +#line 1028 "Branch.c" +} + + +static gpointer _g_object_ref0 (gpointer self) { +#line 91 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return self ? g_object_ref (self) : NULL; +#line 1035 "Branch.c" +} + + +static void searches_header_setup_context_menu (SearchesHeader* self) { + GtkActionGroup* group = NULL; + GtkActionGroup* _tmp0_ = NULL; + GtkActionEntry* actions = NULL; + GtkActionEntry* _tmp1_ = NULL; + gint actions_length1 = 0; + gint _actions_size_ = 0; + GtkActionEntry new_search = {0}; + GtkActionEntry _tmp2_ = {0}; + const gchar* _tmp3_ = NULL; + GtkActionEntry* _tmp4_ = NULL; + gint _tmp4__length1 = 0; + GtkActionEntry _tmp5_ = {0}; + GtkActionEntry* _tmp6_ = NULL; + gint _tmp6__length1 = 0; + GtkUIManager* _tmp7_ = NULL; + GFile* ui_file = NULL; + GFile* _tmp8_ = NULL; + GtkUIManager* _tmp20_ = NULL; + GtkWidget* _tmp21_ = NULL; + GtkMenu* _tmp22_ = NULL; + GtkUIManager* _tmp23_ = NULL; + GError * _inner_error_ = NULL; +#line 72 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_if_fail (SEARCHES_IS_HEADER (self)); +#line 73 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = gtk_action_group_new ("SidebarDefault"); +#line 73 "/home/jens/Source/shotwell/src/searches/Branch.vala" + group = _tmp0_; +#line 74 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = g_new0 (GtkActionEntry, 0); +#line 74 "/home/jens/Source/shotwell/src/searches/Branch.vala" + actions = _tmp1_; +#line 74 "/home/jens/Source/shotwell/src/searches/Branch.vala" + actions_length1 = 0; +#line 74 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _actions_size_ = actions_length1; +#line 76 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_.name = "CommonNewSearch"; +#line 76 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_.stock_id = NULL; +#line 76 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_.label = TRANSLATABLE; +#line 76 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_.accelerator = NULL; +#line 76 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_.tooltip = NULL; +#line 76 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_.callback = (GCallback) _searches_header_on_new_search_gtk_action_callback; +#line 76 "/home/jens/Source/shotwell/src/searches/Branch.vala" + new_search = _tmp2_; +#line 77 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp3_ = _ ("Ne_w Saved Search..."); +#line 77 "/home/jens/Source/shotwell/src/searches/Branch.vala" + new_search.label = _tmp3_; +#line 78 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp4_ = actions; +#line 78 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp4__length1 = actions_length1; +#line 78 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp5_ = new_search; +#line 78 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _vala_array_add146 (&actions, &actions_length1, &_actions_size_, &_tmp5_); +#line 80 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp6_ = actions; +#line 80 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp6__length1 = actions_length1; +#line 80 "/home/jens/Source/shotwell/src/searches/Branch.vala" + gtk_action_group_add_actions (group, _tmp6_, _tmp6__length1, self); +#line 81 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp7_ = self->priv->ui; +#line 81 "/home/jens/Source/shotwell/src/searches/Branch.vala" + gtk_ui_manager_insert_action_group (_tmp7_, group, 0); +#line 83 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp8_ = resources_get_ui ("search_sidebar_context.ui"); +#line 83 "/home/jens/Source/shotwell/src/searches/Branch.vala" + ui_file = _tmp8_; +#line 1116 "Branch.c" + { + GtkUIManager* _tmp9_ = NULL; + gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; +#line 85 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp9_ = self->priv->ui; +#line 85 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp10_ = g_file_get_path (ui_file); +#line 85 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp11_ = _tmp10_; +#line 85 "/home/jens/Source/shotwell/src/searches/Branch.vala" + gtk_ui_manager_add_ui_from_file (_tmp9_, _tmp11_, &_inner_error_); +#line 85 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_free0 (_tmp11_); +#line 85 "/home/jens/Source/shotwell/src/searches/Branch.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 1133 "Branch.c" + goto __catch73_g_error; + } + } + goto __finally73; + __catch73_g_error: + { + GError* err = NULL; + gchar* _tmp12_ = NULL; + gchar* _tmp13_ = NULL; + GError* _tmp14_ = NULL; + const gchar* _tmp15_ = NULL; + gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + Application* _tmp18_ = NULL; + Application* _tmp19_ = NULL; +#line 84 "/home/jens/Source/shotwell/src/searches/Branch.vala" + err = _inner_error_; +#line 84 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _inner_error_ = NULL; +#line 87 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp12_ = g_file_get_path (ui_file); +#line 87 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp13_ = _tmp12_; +#line 87 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp14_ = err; +#line 87 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp15_ = _tmp14_->message; +#line 87 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp16_ = g_strdup_printf ("Error loading UI file %s: %s", _tmp13_, _tmp15_); +#line 87 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp17_ = _tmp16_; +#line 87 "/home/jens/Source/shotwell/src/searches/Branch.vala" + app_window_error_message (_tmp17_, NULL); +#line 87 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_free0 (_tmp17_); +#line 87 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_free0 (_tmp13_); +#line 89 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp18_ = application_get_instance (); +#line 89 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp19_ = _tmp18_; +#line 89 "/home/jens/Source/shotwell/src/searches/Branch.vala" + application_panic (_tmp19_); +#line 89 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _application_unref0 (_tmp19_); +#line 84 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_error_free0 (err); +#line 1181 "Branch.c" + } + __finally73: +#line 84 "/home/jens/Source/shotwell/src/searches/Branch.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 84 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (ui_file); +#line 84 "/home/jens/Source/shotwell/src/searches/Branch.vala" + actions = (g_free (actions), NULL); +#line 84 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (group); +#line 84 "/home/jens/Source/shotwell/src/searches/Branch.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 84 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_clear_error (&_inner_error_); +#line 84 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return; +#line 1198 "Branch.c" + } +#line 91 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp20_ = self->priv->ui; +#line 91 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp21_ = gtk_ui_manager_get_widget (_tmp20_, "/SidebarSearchContextMenu"); +#line 91 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp22_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp21_, gtk_menu_get_type (), GtkMenu)); +#line 91 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (self->priv->context_menu); +#line 91 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self->priv->context_menu = _tmp22_; +#line 93 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp23_ = self->priv->ui; +#line 93 "/home/jens/Source/shotwell/src/searches/Branch.vala" + gtk_ui_manager_ensure_update (_tmp23_); +#line 72 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (ui_file); +#line 72 "/home/jens/Source/shotwell/src/searches/Branch.vala" + actions = (g_free (actions), NULL); +#line 72 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (group); +#line 1220 "Branch.c" +} + + +static GtkMenu* searches_header_real_get_sidebar_context_menu (SidebarContextable* base, GdkEventButton* event) { + SearchesHeader * self; + GtkMenu* result = NULL; + GtkMenu* _tmp0_ = NULL; + GtkMenu* _tmp1_ = NULL; +#line 96 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SEARCHES_TYPE_HEADER, SearchesHeader); +#line 97 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = self->priv->context_menu; +#line 97 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = _g_object_ref0 (_tmp0_); +#line 97 "/home/jens/Source/shotwell/src/searches/Branch.vala" + result = _tmp1_; +#line 97 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return result; +#line 1239 "Branch.c" +} + + +static void searches_header_on_new_search (SearchesHeader* self) { + SavedSearchDialog* _tmp0_ = NULL; + SavedSearchDialog* _tmp1_ = NULL; +#line 100 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_if_fail (SEARCHES_IS_HEADER (self)); +#line 101 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = saved_search_dialog_new (); +#line 101 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = _tmp0_; +#line 101 "/home/jens/Source/shotwell/src/searches/Branch.vala" + saved_search_dialog_show (_tmp1_); +#line 101 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _saved_search_dialog_unref0 (_tmp1_); +#line 1256 "Branch.c" +} + + +static void searches_header_class_init (SearchesHeaderClass * klass) { +#line 63 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_header_parent_class = g_type_class_peek_parent (klass); +#line 63 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_type_class_add_private (klass, sizeof (SearchesHeaderPrivate)); +#line 63 "/home/jens/Source/shotwell/src/searches/Branch.vala" + G_OBJECT_CLASS (klass)->finalize = searches_header_finalize; +#line 1267 "Branch.c" +} + + +static void searches_header_sidebar_contextable_interface_init (SidebarContextableIface * iface) { +#line 63 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_header_sidebar_contextable_parent_iface = g_type_interface_peek_parent (iface); +#line 63 "/home/jens/Source/shotwell/src/searches/Branch.vala" + iface->get_sidebar_context_menu = (GtkMenu* (*)(SidebarContextable*, GdkEventButton*)) searches_header_real_get_sidebar_context_menu; +#line 1276 "Branch.c" +} + + +static void searches_header_instance_init (SearchesHeader * self) { + GtkUIManager* _tmp0_ = NULL; +#line 63 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self->priv = SEARCHES_HEADER_GET_PRIVATE (self); +#line 64 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = gtk_ui_manager_new (); +#line 64 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self->priv->ui = _tmp0_; +#line 65 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self->priv->context_menu = NULL; +#line 1290 "Branch.c" +} + + +static void searches_header_finalize (GObject* obj) { + SearchesHeader * self; +#line 63 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SEARCHES_TYPE_HEADER, SearchesHeader); +#line 64 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (self->priv->ui); +#line 65 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (self->priv->context_menu); +#line 63 "/home/jens/Source/shotwell/src/searches/Branch.vala" + G_OBJECT_CLASS (searches_header_parent_class)->finalize (obj); +#line 1304 "Branch.c" +} + + +GType searches_header_get_type (void) { + static volatile gsize searches_header_type_id__volatile = 0; + if (g_once_init_enter (&searches_header_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SearchesHeaderClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) searches_header_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SearchesHeader), 0, (GInstanceInitFunc) searches_header_instance_init, NULL }; + static const GInterfaceInfo sidebar_contextable_info = { (GInterfaceInitFunc) searches_header_sidebar_contextable_interface_init, (GInterfaceFinalizeFunc) NULL, NULL}; + GType searches_header_type_id; + searches_header_type_id = g_type_register_static (SIDEBAR_TYPE_HEADER, "SearchesHeader", &g_define_type_info, 0); + g_type_add_interface_static (searches_header_type_id, SIDEBAR_TYPE_CONTEXTABLE, &sidebar_contextable_info); + g_once_init_leave (&searches_header_type_id__volatile, searches_header_type_id); + } + return searches_header_type_id__volatile; +} + + +SearchesSidebarEntry* searches_sidebar_entry_construct (GType object_type, SavedSearch* search) { + SearchesSidebarEntry * self = NULL; + SavedSearch* _tmp0_ = NULL; + SavedSearch* _tmp1_ = NULL; +#line 111 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_val_if_fail (IS_SAVED_SEARCH (search), NULL); +#line 111 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = (SearchesSidebarEntry*) sidebar_simple_page_entry_construct (object_type); +#line 112 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = search; +#line 112 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = _g_object_ref0 (_tmp0_); +#line 112 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (self->priv->search); +#line 112 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self->priv->search = _tmp1_; +#line 111 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return self; +#line 1340 "Branch.c" +} + + +SearchesSidebarEntry* searches_sidebar_entry_new (SavedSearch* search) { +#line 111 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return searches_sidebar_entry_construct (SEARCHES_TYPE_SIDEBAR_ENTRY, search); +#line 1347 "Branch.c" +} + + +void searches_sidebar_entry_init (void) { +} + + +void searches_sidebar_entry_terminate (void) { +} + + +SavedSearch* searches_sidebar_entry_for_saved_search (SearchesSidebarEntry* self) { + SavedSearch* result = NULL; + SavedSearch* _tmp0_ = NULL; + SavedSearch* _tmp1_ = NULL; +#line 121 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_val_if_fail (SEARCHES_IS_SIDEBAR_ENTRY (self), NULL); +#line 122 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = self->priv->search; +#line 122 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = _g_object_ref0 (_tmp0_); +#line 122 "/home/jens/Source/shotwell/src/searches/Branch.vala" + result = _tmp1_; +#line 122 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return result; +#line 1373 "Branch.c" +} + + +static gchar* searches_sidebar_entry_real_get_sidebar_name (SidebarSimplePageEntry* base) { + SearchesSidebarEntry * self; + gchar* result = NULL; + SavedSearch* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; +#line 125 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry); +#line 126 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = self->priv->search; +#line 126 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_OBJECT, DataObject)); +#line 126 "/home/jens/Source/shotwell/src/searches/Branch.vala" + result = _tmp1_; +#line 126 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return result; +#line 1392 "Branch.c" +} + + +static gchar* searches_sidebar_entry_real_get_sidebar_icon (SidebarSimplePageEntry* base) { + SearchesSidebarEntry * self; + gchar* result = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; +#line 129 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry); +#line 130 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = searches_sidebar_entry_single_search_icon; +#line 130 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = g_strdup (_tmp0_); +#line 130 "/home/jens/Source/shotwell/src/searches/Branch.vala" + result = _tmp1_; +#line 130 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return result; +#line 1411 "Branch.c" +} + + +static Page* searches_sidebar_entry_real_create_page (SidebarSimplePageEntry* base) { + SearchesSidebarEntry * self; + Page* result = NULL; + SavedSearch* _tmp0_ = NULL; + SavedSearchPage* _tmp1_ = NULL; +#line 133 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry); +#line 134 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = self->priv->search; +#line 134 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = saved_search_page_new (_tmp0_); +#line 134 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_object_ref_sink (_tmp1_); +#line 134 "/home/jens/Source/shotwell/src/searches/Branch.vala" + result = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_PAGE, Page); +#line 134 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return result; +#line 1432 "Branch.c" +} + + +static gboolean searches_sidebar_entry_real_is_user_renameable (SidebarRenameableEntry* base) { + SearchesSidebarEntry * self; + gboolean result = FALSE; +#line 137 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry); +#line 138 "/home/jens/Source/shotwell/src/searches/Branch.vala" + result = TRUE; +#line 138 "/home/jens/Source/shotwell/src/searches/Branch.vala" + return result; +#line 1445 "Branch.c" +} + + +static void searches_sidebar_entry_real_rename (SidebarRenameableEntry* base, const gchar* new_name) { + SearchesSidebarEntry * self; + SavedSearchTable* _tmp0_ = NULL; + SavedSearchTable* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + gboolean _tmp3_ = FALSE; + gboolean _tmp4_ = FALSE; +#line 141 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry); +#line 141 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_return_if_fail (new_name != NULL); +#line 142 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = saved_search_table_get_instance (); +#line 142 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = _tmp0_; +#line 142 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_ = new_name; +#line 142 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp3_ = saved_search_table_exists (_tmp1_, _tmp2_); +#line 142 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp4_ = !_tmp3_; +#line 142 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _saved_search_table_unref0 (_tmp1_); +#line 142 "/home/jens/Source/shotwell/src/searches/Branch.vala" + if (_tmp4_) { +#line 1474 "Branch.c" + CommandManager* _tmp5_ = NULL; + CommandManager* _tmp6_ = NULL; + SavedSearch* _tmp7_ = NULL; + const gchar* _tmp8_ = NULL; + RenameSavedSearchCommand* _tmp9_ = NULL; + RenameSavedSearchCommand* _tmp10_ = NULL; +#line 143 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp5_ = app_window_get_command_manager (); +#line 143 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp6_ = _tmp5_; +#line 143 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp7_ = self->priv->search; +#line 143 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp8_ = new_name; +#line 143 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp9_ = rename_saved_search_command_new (_tmp7_, _tmp8_); +#line 143 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp10_ = _tmp9_; +#line 143 "/home/jens/Source/shotwell/src/searches/Branch.vala" + command_manager_execute (_tmp6_, G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, TYPE_COMMAND, Command)); +#line 143 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (_tmp10_); +#line 143 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _command_manager_unref0 (_tmp6_); +#line 1499 "Branch.c" + } else { + const gchar* _tmp11_ = NULL; + SavedSearch* _tmp12_ = NULL; + gchar* _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + gboolean _tmp15_ = FALSE; +#line 144 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp11_ = new_name; +#line 144 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp12_ = self->priv->search; +#line 144 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp13_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, TYPE_DATA_OBJECT, DataObject)); +#line 144 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp14_ = _tmp13_; +#line 144 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp15_ = g_strcmp0 (_tmp11_, _tmp14_) != 0; +#line 144 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_free0 (_tmp14_); +#line 144 "/home/jens/Source/shotwell/src/searches/Branch.vala" + if (_tmp15_) { +#line 1520 "Branch.c" + const gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; +#line 145 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp16_ = new_name; +#line 145 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp17_ = resources_rename_search_exists_message (_tmp16_); +#line 145 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp18_ = _tmp17_; +#line 145 "/home/jens/Source/shotwell/src/searches/Branch.vala" + app_window_error_message (_tmp18_, NULL); +#line 145 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_free0 (_tmp18_); +#line 1534 "Branch.c" + } + } +} + + +static void searches_sidebar_entry_real_destroy_source (SidebarDestroyableEntry* base) { + SearchesSidebarEntry * self; + SavedSearch* _tmp0_ = NULL; + gboolean _tmp1_ = FALSE; +#line 148 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry); +#line 149 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = self->priv->search; +#line 149 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp1_ = dialogs_confirm_delete_saved_search (_tmp0_); +#line 149 "/home/jens/Source/shotwell/src/searches/Branch.vala" + if (_tmp1_) { +#line 1552 "Branch.c" + CommandManager* _tmp2_ = NULL; + CommandManager* _tmp3_ = NULL; + SavedSearch* _tmp4_ = NULL; + DeleteSavedSearchCommand* _tmp5_ = NULL; + DeleteSavedSearchCommand* _tmp6_ = NULL; +#line 150 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp2_ = app_window_get_command_manager (); +#line 150 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp3_ = _tmp2_; +#line 150 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp4_ = self->priv->search; +#line 150 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp5_ = delete_saved_search_command_new (_tmp4_); +#line 150 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp6_ = _tmp5_; +#line 150 "/home/jens/Source/shotwell/src/searches/Branch.vala" + command_manager_execute (_tmp3_, G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_COMMAND, Command)); +#line 150 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (_tmp6_); +#line 150 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _command_manager_unref0 (_tmp3_); +#line 1574 "Branch.c" + } +} + + +static void searches_sidebar_entry_class_init (SearchesSidebarEntryClass * klass) { + gchar* _tmp0_ = NULL; +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_sidebar_entry_parent_class = g_type_class_peek_parent (klass); +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + g_type_class_add_private (klass, sizeof (SearchesSidebarEntryPrivate)); +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + ((SidebarSimplePageEntryClass *) klass)->get_sidebar_name = searches_sidebar_entry_real_get_sidebar_name; +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + ((SidebarSimplePageEntryClass *) klass)->get_sidebar_icon = searches_sidebar_entry_real_get_sidebar_icon; +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + ((SidebarSimplePageEntryClass *) klass)->create_page = searches_sidebar_entry_real_create_page; +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + G_OBJECT_CLASS (klass)->finalize = searches_sidebar_entry_finalize; +#line 107 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _tmp0_ = g_strdup ("find"); +#line 107 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_sidebar_entry_single_search_icon = _tmp0_; +#line 1597 "Branch.c" +} + + +static void searches_sidebar_entry_sidebar_renameable_entry_interface_init (SidebarRenameableEntryIface * iface) { +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_sidebar_entry_sidebar_renameable_entry_parent_iface = g_type_interface_peek_parent (iface); +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + iface->is_user_renameable = (gboolean (*)(SidebarRenameableEntry*)) searches_sidebar_entry_real_is_user_renameable; +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + iface->rename = (void (*)(SidebarRenameableEntry*, const gchar*)) searches_sidebar_entry_real_rename; +#line 1608 "Branch.c" +} + + +static void searches_sidebar_entry_sidebar_destroyable_entry_interface_init (SidebarDestroyableEntryIface * iface) { +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + searches_sidebar_entry_sidebar_destroyable_entry_parent_iface = g_type_interface_peek_parent (iface); +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + iface->destroy_source = (void (*)(SidebarDestroyableEntry*)) searches_sidebar_entry_real_destroy_source; +#line 1617 "Branch.c" +} + + +static void searches_sidebar_entry_instance_init (SearchesSidebarEntry * self) { +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self->priv = SEARCHES_SIDEBAR_ENTRY_GET_PRIVATE (self); +#line 1624 "Branch.c" +} + + +static void searches_sidebar_entry_finalize (GObject* obj) { + SearchesSidebarEntry * self; +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SEARCHES_TYPE_SIDEBAR_ENTRY, SearchesSidebarEntry); +#line 109 "/home/jens/Source/shotwell/src/searches/Branch.vala" + _g_object_unref0 (self->priv->search); +#line 105 "/home/jens/Source/shotwell/src/searches/Branch.vala" + G_OBJECT_CLASS (searches_sidebar_entry_parent_class)->finalize (obj); +#line 1636 "Branch.c" +} + + +GType searches_sidebar_entry_get_type (void) { + static volatile gsize searches_sidebar_entry_type_id__volatile = 0; + if (g_once_init_enter (&searches_sidebar_entry_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SearchesSidebarEntryClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) searches_sidebar_entry_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SearchesSidebarEntry), 0, (GInstanceInitFunc) searches_sidebar_entry_instance_init, NULL }; + static const GInterfaceInfo sidebar_renameable_entry_info = { (GInterfaceInitFunc) searches_sidebar_entry_sidebar_renameable_entry_interface_init, (GInterfaceFinalizeFunc) NULL, NULL}; + static const GInterfaceInfo sidebar_destroyable_entry_info = { (GInterfaceInitFunc) searches_sidebar_entry_sidebar_destroyable_entry_interface_init, (GInterfaceFinalizeFunc) NULL, NULL}; + GType searches_sidebar_entry_type_id; + searches_sidebar_entry_type_id = g_type_register_static (SIDEBAR_TYPE_SIMPLE_PAGE_ENTRY, "SearchesSidebarEntry", &g_define_type_info, 0); + g_type_add_interface_static (searches_sidebar_entry_type_id, SIDEBAR_TYPE_RENAMEABLE_ENTRY, &sidebar_renameable_entry_info); + g_type_add_interface_static (searches_sidebar_entry_type_id, SIDEBAR_TYPE_DESTROYABLE_ENTRY, &sidebar_destroyable_entry_info); + g_once_init_leave (&searches_sidebar_entry_type_id__volatile, searches_sidebar_entry_type_id); + } + return searches_sidebar_entry_type_id__volatile; +} + + + diff --git a/src/searches/SavedSearchDialog.c b/src/searches/SavedSearchDialog.c new file mode 100644 index 0000000..4731710 --- /dev/null +++ b/src/searches/SavedSearchDialog.c @@ -0,0 +1,6493 @@ +/* SavedSearchDialog.c generated by valac 0.32.1, the Vala compiler + * generated from SavedSearchDialog.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. + */ +/* This dialog displays a boolean search configuration.*/ + +#include <glib.h> +#include <glib-object.h> +#include <gtk/gtk.h> +#include <gee.h> +#include <stdlib.h> +#include <string.h> +#include <glib/gi18n-lib.h> +#include <gdk/gdk.h> +#include <float.h> +#include <math.h> +#include <gobject/gvaluecollector.h> + + +#define TYPE_SAVED_SEARCH_DIALOG (saved_search_dialog_get_type ()) +#define SAVED_SEARCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialog)) +#define SAVED_SEARCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialogClass)) +#define IS_SAVED_SEARCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_DIALOG)) +#define IS_SAVED_SEARCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_DIALOG)) +#define SAVED_SEARCH_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialogClass)) + +typedef struct _SavedSearchDialog SavedSearchDialog; +typedef struct _SavedSearchDialogClass SavedSearchDialogClass; +typedef struct _SavedSearchDialogPrivate SavedSearchDialogPrivate; + +#define SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER (saved_search_dialog_search_row_container_get_type ()) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, SavedSearchDialogSearchRowContainer)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, SavedSearchDialogSearchRowContainerClass)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, SavedSearchDialogSearchRowContainerClass)) + +typedef struct _SavedSearchDialogSearchRowContainer SavedSearchDialogSearchRowContainer; +typedef struct _SavedSearchDialogSearchRowContainerClass SavedSearchDialogSearchRowContainerClass; + +#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_SAVED_SEARCH (saved_search_get_type ()) +#define SAVED_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH, SavedSearch)) +#define SAVED_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH, SavedSearchClass)) +#define IS_SAVED_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH)) +#define IS_SAVED_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH)) +#define SAVED_SEARCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH, SavedSearchClass)) + +typedef struct _SavedSearch SavedSearch; +typedef struct _SavedSearchClass SavedSearchClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +#define TYPE_SAVED_SEARCH_TABLE (saved_search_table_get_type ()) +#define SAVED_SEARCH_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_TABLE, SavedSearchTable)) +#define SAVED_SEARCH_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_TABLE, SavedSearchTableClass)) +#define IS_SAVED_SEARCH_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_TABLE)) +#define IS_SAVED_SEARCH_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_TABLE)) +#define SAVED_SEARCH_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_TABLE, SavedSearchTableClass)) + +typedef struct _SavedSearchTable SavedSearchTable; +typedef struct _SavedSearchTableClass SavedSearchTableClass; +#define _g_free0(var) (var = (g_free (var), NULL)) +#define _saved_search_table_unref0(var) ((var == NULL) ? NULL : (var = (saved_search_table_unref (var), NULL))) +#define _saved_search_dialog_search_row_container_unref0(var) ((var == NULL) ? NULL : (var = (saved_search_dialog_search_row_container_unref (var), NULL))) + +#define TYPE_SEARCH_OPERATOR (search_operator_get_type ()) + +#define TYPE_SEARCH_CONDITION (search_condition_get_type ()) +#define SEARCH_CONDITION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION, SearchCondition)) +#define SEARCH_CONDITION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION, SearchConditionClass)) +#define IS_SEARCH_CONDITION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION)) +#define IS_SEARCH_CONDITION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION)) +#define SEARCH_CONDITION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION, SearchConditionClass)) + +typedef struct _SearchCondition SearchCondition; +typedef struct _SearchConditionClass SearchConditionClass; +#define _search_condition_unref0(var) ((var == NULL) ? NULL : (var = (search_condition_unref (var), NULL))) + +#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_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; +typedef struct _SavedSearchDialogSearchRowContainerPrivate SavedSearchDialogSearchRowContainerPrivate; + +#define SEARCH_CONDITION_TYPE_SEARCH_TYPE (search_condition_search_type_get_type ()) + +#define SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW (saved_search_dialog_search_row_get_type ()) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, SavedSearchDialogSearchRow)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, SavedSearchDialogSearchRowClass)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, SavedSearchDialogSearchRowClass)) + +typedef struct _SavedSearchDialogSearchRow SavedSearchDialogSearchRow; +typedef struct _SavedSearchDialogSearchRowClass SavedSearchDialogSearchRowClass; +#define _saved_search_dialog_search_row_unref0(var) ((var == NULL) ? NULL : (var = (saved_search_dialog_search_row_unref (var), NULL))) + +#define SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT (saved_search_dialog_search_row_text_get_type ()) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_TEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT, SavedSearchDialogSearchRowText)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_TEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT, SavedSearchDialogSearchRowTextClass)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_TEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_TEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_TEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT, SavedSearchDialogSearchRowTextClass)) + +typedef struct _SavedSearchDialogSearchRowText SavedSearchDialogSearchRowText; +typedef struct _SavedSearchDialogSearchRowTextClass SavedSearchDialogSearchRowTextClass; + +#define SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE (saved_search_dialog_search_row_media_type_get_type ()) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_MEDIA_TYPE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE, SavedSearchDialogSearchRowMediaType)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_MEDIA_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE, SavedSearchDialogSearchRowMediaTypeClass)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_MEDIA_TYPE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_MEDIA_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_MEDIA_TYPE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE, SavedSearchDialogSearchRowMediaTypeClass)) + +typedef struct _SavedSearchDialogSearchRowMediaType SavedSearchDialogSearchRowMediaType; +typedef struct _SavedSearchDialogSearchRowMediaTypeClass SavedSearchDialogSearchRowMediaTypeClass; + +#define SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED (saved_search_dialog_search_row_flagged_get_type ()) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_FLAGGED(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED, SavedSearchDialogSearchRowFlagged)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_FLAGGED_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED, SavedSearchDialogSearchRowFlaggedClass)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_FLAGGED(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_FLAGGED_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_FLAGGED_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED, SavedSearchDialogSearchRowFlaggedClass)) + +typedef struct _SavedSearchDialogSearchRowFlagged SavedSearchDialogSearchRowFlagged; +typedef struct _SavedSearchDialogSearchRowFlaggedClass SavedSearchDialogSearchRowFlaggedClass; + +#define SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED (saved_search_dialog_search_row_modified_get_type ()) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_MODIFIED(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED, SavedSearchDialogSearchRowModified)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_MODIFIED_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED, SavedSearchDialogSearchRowModifiedClass)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_MODIFIED(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_MODIFIED_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_MODIFIED_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED, SavedSearchDialogSearchRowModifiedClass)) + +typedef struct _SavedSearchDialogSearchRowModified SavedSearchDialogSearchRowModified; +typedef struct _SavedSearchDialogSearchRowModifiedClass SavedSearchDialogSearchRowModifiedClass; + +#define SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING (saved_search_dialog_search_row_rating_get_type ()) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_RATING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING, SavedSearchDialogSearchRowRating)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_RATING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING, SavedSearchDialogSearchRowRatingClass)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_RATING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_RATING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_RATING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING, SavedSearchDialogSearchRowRatingClass)) + +typedef struct _SavedSearchDialogSearchRowRating SavedSearchDialogSearchRowRating; +typedef struct _SavedSearchDialogSearchRowRatingClass SavedSearchDialogSearchRowRatingClass; + +#define SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE (saved_search_dialog_search_row_date_get_type ()) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_DATE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE, SavedSearchDialogSearchRowDate)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_DATE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE, SavedSearchDialogSearchRowDateClass)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE)) +#define SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE)) +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_DATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE, SavedSearchDialogSearchRowDateClass)) + +typedef struct _SavedSearchDialogSearchRowDate SavedSearchDialogSearchRowDate; +typedef struct _SavedSearchDialogSearchRowDateClass SavedSearchDialogSearchRowDateClass; +typedef struct _SavedSearchDialogParamSpecSearchRowContainer SavedSearchDialogParamSpecSearchRowContainer; +typedef struct _SavedSearchDialogSearchRowPrivate SavedSearchDialogSearchRowPrivate; +typedef struct _SavedSearchDialogParamSpecSearchRow SavedSearchDialogParamSpecSearchRow; +typedef struct _SavedSearchDialogSearchRowTextPrivate SavedSearchDialogSearchRowTextPrivate; + +#define SEARCH_CONDITION_TEXT_TYPE_CONTEXT (search_condition_text_context_get_type ()) + +#define TYPE_SEARCH_CONDITION_TEXT (search_condition_text_get_type ()) +#define SEARCH_CONDITION_TEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_TEXT, SearchConditionText)) +#define SEARCH_CONDITION_TEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_TEXT, SearchConditionTextClass)) +#define IS_SEARCH_CONDITION_TEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_TEXT)) +#define IS_SEARCH_CONDITION_TEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_TEXT)) +#define SEARCH_CONDITION_TEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_TEXT, SearchConditionTextClass)) + +typedef struct _SearchConditionText SearchConditionText; +typedef struct _SearchConditionTextClass SearchConditionTextClass; +typedef struct _SavedSearchDialogSearchRowMediaTypePrivate SavedSearchDialogSearchRowMediaTypePrivate; + +#define SEARCH_CONDITION_MEDIA_TYPE_TYPE_CONTEXT (search_condition_media_type_context_get_type ()) + +#define SEARCH_CONDITION_MEDIA_TYPE_TYPE_MEDIA_TYPE (search_condition_media_type_media_type_get_type ()) + +#define TYPE_SEARCH_CONDITION_MEDIA_TYPE (search_condition_media_type_get_type ()) +#define SEARCH_CONDITION_MEDIA_TYPE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_MEDIA_TYPE, SearchConditionMediaType)) +#define SEARCH_CONDITION_MEDIA_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_MEDIA_TYPE, SearchConditionMediaTypeClass)) +#define IS_SEARCH_CONDITION_MEDIA_TYPE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_MEDIA_TYPE)) +#define IS_SEARCH_CONDITION_MEDIA_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_MEDIA_TYPE)) +#define SEARCH_CONDITION_MEDIA_TYPE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_MEDIA_TYPE, SearchConditionMediaTypeClass)) + +typedef struct _SearchConditionMediaType SearchConditionMediaType; +typedef struct _SearchConditionMediaTypeClass SearchConditionMediaTypeClass; +typedef struct _SavedSearchDialogSearchRowModifiedPrivate SavedSearchDialogSearchRowModifiedPrivate; + +#define SEARCH_CONDITION_MODIFIED_TYPE_CONTEXT (search_condition_modified_context_get_type ()) + +#define SEARCH_CONDITION_MODIFIED_TYPE_STATE (search_condition_modified_state_get_type ()) + +#define TYPE_SEARCH_CONDITION_MODIFIED (search_condition_modified_get_type ()) +#define SEARCH_CONDITION_MODIFIED(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_MODIFIED, SearchConditionModified)) +#define SEARCH_CONDITION_MODIFIED_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_MODIFIED, SearchConditionModifiedClass)) +#define IS_SEARCH_CONDITION_MODIFIED(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_MODIFIED)) +#define IS_SEARCH_CONDITION_MODIFIED_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_MODIFIED)) +#define SEARCH_CONDITION_MODIFIED_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_MODIFIED, SearchConditionModifiedClass)) + +typedef struct _SearchConditionModified SearchConditionModified; +typedef struct _SearchConditionModifiedClass SearchConditionModifiedClass; +typedef struct _SavedSearchDialogSearchRowFlaggedPrivate SavedSearchDialogSearchRowFlaggedPrivate; + +#define SEARCH_CONDITION_FLAGGED_TYPE_STATE (search_condition_flagged_state_get_type ()) + +#define TYPE_SEARCH_CONDITION_FLAGGED (search_condition_flagged_get_type ()) +#define SEARCH_CONDITION_FLAGGED(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_FLAGGED, SearchConditionFlagged)) +#define SEARCH_CONDITION_FLAGGED_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_FLAGGED, SearchConditionFlaggedClass)) +#define IS_SEARCH_CONDITION_FLAGGED(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_FLAGGED)) +#define IS_SEARCH_CONDITION_FLAGGED_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_FLAGGED)) +#define SEARCH_CONDITION_FLAGGED_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_FLAGGED, SearchConditionFlaggedClass)) + +typedef struct _SearchConditionFlagged SearchConditionFlagged; +typedef struct _SearchConditionFlaggedClass SearchConditionFlaggedClass; +typedef struct _SavedSearchDialogSearchRowRatingPrivate SavedSearchDialogSearchRowRatingPrivate; + +#define TYPE_RATING (rating_get_type ()) + +#define SEARCH_CONDITION_RATING_TYPE_CONTEXT (search_condition_rating_context_get_type ()) + +#define TYPE_SEARCH_CONDITION_RATING (search_condition_rating_get_type ()) +#define SEARCH_CONDITION_RATING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_RATING, SearchConditionRating)) +#define SEARCH_CONDITION_RATING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_RATING, SearchConditionRatingClass)) +#define IS_SEARCH_CONDITION_RATING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_RATING)) +#define IS_SEARCH_CONDITION_RATING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_RATING)) +#define SEARCH_CONDITION_RATING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_RATING, SearchConditionRatingClass)) + +typedef struct _SearchConditionRating SearchConditionRating; +typedef struct _SearchConditionRatingClass SearchConditionRatingClass; +typedef struct _SavedSearchDialogSearchRowDatePrivate SavedSearchDialogSearchRowDatePrivate; + +#define SEARCH_CONDITION_DATE_TYPE_CONTEXT (search_condition_date_context_get_type ()) +#define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL))) + +#define TYPE_SEARCH_CONDITION_DATE (search_condition_date_get_type ()) +#define SEARCH_CONDITION_DATE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_DATE, SearchConditionDate)) +#define SEARCH_CONDITION_DATE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_DATE, SearchConditionDateClass)) +#define IS_SEARCH_CONDITION_DATE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_DATE)) +#define IS_SEARCH_CONDITION_DATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_DATE)) +#define SEARCH_CONDITION_DATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_DATE, SearchConditionDateClass)) + +typedef struct _SearchConditionDate SearchConditionDate; +typedef struct _SearchConditionDateClass SearchConditionDateClass; +typedef struct _Block9Data Block9Data; +typedef struct _ParamSpecSavedSearchDialog ParamSpecSavedSearchDialog; +#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 _SavedSearchDialog { + GTypeInstance parent_instance; + volatile int ref_count; + SavedSearchDialogPrivate * priv; +}; + +struct _SavedSearchDialogClass { + GTypeClass parent_class; + void (*finalize) (SavedSearchDialog *self); +}; + +struct _SavedSearchDialogPrivate { + GtkBuilder* builder; + GtkDialog* dialog; + GtkButton* add_criteria; + GtkComboBoxText* operator; + GtkBox* row_box; + GtkEntry* search_title; + GeeArrayList* row_list; + gboolean edit_mode; + SavedSearch* previous_search; + gboolean valid; +}; + +typedef enum { + SEARCH_OPERATOR_ANY = 0, + SEARCH_OPERATOR_ALL, + SEARCH_OPERATOR_NONE +} SearchOperator; + +struct _SavedSearchDialogSearchRowContainer { + GTypeInstance parent_instance; + volatile int ref_count; + SavedSearchDialogSearchRowContainerPrivate * priv; +}; + +struct _SavedSearchDialogSearchRowContainerClass { + GTypeClass parent_class; + void (*finalize) (SavedSearchDialogSearchRowContainer *self); +}; + +typedef enum { + SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT = 0, + SEARCH_CONDITION_SEARCH_TYPE_TITLE, + SEARCH_CONDITION_SEARCH_TYPE_TAG, + SEARCH_CONDITION_SEARCH_TYPE_EVENT_NAME, + SEARCH_CONDITION_SEARCH_TYPE_FILE_NAME, + SEARCH_CONDITION_SEARCH_TYPE_MEDIA_TYPE, + SEARCH_CONDITION_SEARCH_TYPE_FLAG_STATE, + SEARCH_CONDITION_SEARCH_TYPE_MODIFIED_STATE, + SEARCH_CONDITION_SEARCH_TYPE_RATING, + SEARCH_CONDITION_SEARCH_TYPE_COMMENT, + SEARCH_CONDITION_SEARCH_TYPE_DATE +} SearchConditionSearchType; + +struct _SavedSearchDialogSearchRowContainerPrivate { + GtkComboBoxText* type_combo; + GtkBox* box; + GtkAlignment* align; + GtkButton* remove_button; + SearchConditionSearchType* search_types; + gint search_types_length1; + gint _search_types_size_; + GeeHashMap* search_types_index; + SavedSearchDialogSearchRow* my_row; +}; + +struct _SavedSearchDialogParamSpecSearchRowContainer { + GParamSpec parent_instance; +}; + +struct _SavedSearchDialogSearchRow { + GTypeInstance parent_instance; + volatile int ref_count; + SavedSearchDialogSearchRowPrivate * priv; +}; + +struct _SavedSearchDialogSearchRowClass { + GTypeClass parent_class; + void (*finalize) (SavedSearchDialogSearchRow *self); + GtkWidget* (*get_widget) (SavedSearchDialogSearchRow* self); + SearchCondition* (*get_search_condition) (SavedSearchDialogSearchRow* self); + void (*populate) (SavedSearchDialogSearchRow* self, SearchCondition* sc); + gboolean (*is_complete) (SavedSearchDialogSearchRow* self); +}; + +struct _SavedSearchDialogParamSpecSearchRow { + GParamSpec parent_instance; +}; + +struct _SavedSearchDialogSearchRowText { + SavedSearchDialogSearchRow parent_instance; + SavedSearchDialogSearchRowTextPrivate * priv; +}; + +struct _SavedSearchDialogSearchRowTextClass { + SavedSearchDialogSearchRowClass parent_class; +}; + +struct _SavedSearchDialogSearchRowTextPrivate { + GtkBox* box; + GtkComboBoxText* text_context; + GtkEntry* entry; + SavedSearchDialogSearchRowContainer* parent; +}; + +typedef enum { + SEARCH_CONDITION_TEXT_CONTEXT_CONTAINS = 0, + SEARCH_CONDITION_TEXT_CONTEXT_IS_EXACTLY, + SEARCH_CONDITION_TEXT_CONTEXT_STARTS_WITH, + SEARCH_CONDITION_TEXT_CONTEXT_ENDS_WITH, + SEARCH_CONDITION_TEXT_CONTEXT_DOES_NOT_CONTAIN, + SEARCH_CONDITION_TEXT_CONTEXT_IS_NOT_SET, + SEARCH_CONDITION_TEXT_CONTEXT_IS_SET +} SearchConditionTextContext; + +struct _SavedSearchDialogSearchRowMediaType { + SavedSearchDialogSearchRow parent_instance; + SavedSearchDialogSearchRowMediaTypePrivate * priv; +}; + +struct _SavedSearchDialogSearchRowMediaTypeClass { + SavedSearchDialogSearchRowClass parent_class; +}; + +struct _SavedSearchDialogSearchRowMediaTypePrivate { + GtkBox* box; + GtkComboBoxText* media_context; + GtkComboBoxText* media_type; + SavedSearchDialogSearchRowContainer* parent; +}; + +typedef enum { + SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS = 0, + SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS_NOT +} SearchConditionMediaTypeContext; + +typedef enum { + SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_ALL = 0, + SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_RAW, + SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_VIDEO +} SearchConditionMediaTypeMediaType; + +struct _SavedSearchDialogSearchRowModified { + SavedSearchDialogSearchRow parent_instance; + SavedSearchDialogSearchRowModifiedPrivate * priv; +}; + +struct _SavedSearchDialogSearchRowModifiedClass { + SavedSearchDialogSearchRowClass parent_class; +}; + +struct _SavedSearchDialogSearchRowModifiedPrivate { + GtkBox* box; + GtkComboBoxText* modified_context; + GtkComboBoxText* modified_state; + SavedSearchDialogSearchRowContainer* parent; +}; + +typedef enum { + SEARCH_CONDITION_MODIFIED_CONTEXT_HAS = 0, + SEARCH_CONDITION_MODIFIED_CONTEXT_HAS_NO +} SearchConditionModifiedContext; + +typedef enum { + SEARCH_CONDITION_MODIFIED_STATE_MODIFIED = 0, + SEARCH_CONDITION_MODIFIED_STATE_INTERNAL_CHANGES, + SEARCH_CONDITION_MODIFIED_STATE_EXTERNAL_CHANGES +} SearchConditionModifiedState; + +struct _SavedSearchDialogSearchRowFlagged { + SavedSearchDialogSearchRow parent_instance; + SavedSearchDialogSearchRowFlaggedPrivate * priv; +}; + +struct _SavedSearchDialogSearchRowFlaggedClass { + SavedSearchDialogSearchRowClass parent_class; +}; + +struct _SavedSearchDialogSearchRowFlaggedPrivate { + GtkBox* box; + GtkComboBoxText* flagged_state; + SavedSearchDialogSearchRowContainer* parent; +}; + +typedef enum { + SEARCH_CONDITION_FLAGGED_STATE_FLAGGED = 0, + SEARCH_CONDITION_FLAGGED_STATE_UNFLAGGED +} SearchConditionFlaggedState; + +struct _SavedSearchDialogSearchRowRating { + SavedSearchDialogSearchRow parent_instance; + SavedSearchDialogSearchRowRatingPrivate * priv; +}; + +struct _SavedSearchDialogSearchRowRatingClass { + SavedSearchDialogSearchRowClass parent_class; +}; + +struct _SavedSearchDialogSearchRowRatingPrivate { + GtkBox* box; + GtkComboBoxText* rating; + GtkComboBoxText* context; + SavedSearchDialogSearchRowContainer* parent; +}; + +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 { + SEARCH_CONDITION_RATING_CONTEXT_AND_HIGHER = 0, + SEARCH_CONDITION_RATING_CONTEXT_ONLY, + SEARCH_CONDITION_RATING_CONTEXT_AND_LOWER +} SearchConditionRatingContext; + +struct _SavedSearchDialogSearchRowDate { + SavedSearchDialogSearchRow parent_instance; + SavedSearchDialogSearchRowDatePrivate * priv; +}; + +struct _SavedSearchDialogSearchRowDateClass { + SavedSearchDialogSearchRowClass parent_class; +}; + +struct _SavedSearchDialogSearchRowDatePrivate { + GtkBox* box; + GtkComboBoxText* context; + GtkButton* label_one; + GtkButton* label_two; + GtkCalendar* cal_one; + GtkCalendar* cal_two; + GtkLabel* and; + SavedSearchDialogSearchRowContainer* parent; +}; + +typedef enum { + SEARCH_CONDITION_DATE_CONTEXT_EXACT = 0, + SEARCH_CONDITION_DATE_CONTEXT_AFTER, + SEARCH_CONDITION_DATE_CONTEXT_BEFORE, + SEARCH_CONDITION_DATE_CONTEXT_BETWEEN, + SEARCH_CONDITION_DATE_CONTEXT_IS_NOT_SET +} SearchConditionDateContext; + +struct _Block9Data { + int _ref_count_; + SavedSearchDialogSearchRowDate* self; + GtkDialog* d; +}; + +struct _ParamSpecSavedSearchDialog { + GParamSpec parent_instance; +}; + + +static gpointer saved_search_dialog_parent_class = NULL; +static gpointer saved_search_dialog_search_row_container_parent_class = NULL; +static gpointer saved_search_dialog_search_row_parent_class = NULL; +static gpointer saved_search_dialog_search_row_text_parent_class = NULL; +static gpointer saved_search_dialog_search_row_media_type_parent_class = NULL; +static gpointer saved_search_dialog_search_row_modified_parent_class = NULL; +static gpointer saved_search_dialog_search_row_flagged_parent_class = NULL; +static gpointer saved_search_dialog_search_row_rating_parent_class = NULL; +static gpointer saved_search_dialog_search_row_date_parent_class = NULL; + +gpointer saved_search_dialog_ref (gpointer instance); +void saved_search_dialog_unref (gpointer instance); +GParamSpec* param_spec_saved_search_dialog (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_saved_search_dialog (GValue* value, gpointer v_object); +void value_take_saved_search_dialog (GValue* value, gpointer v_object); +gpointer value_get_saved_search_dialog (const GValue* value); +GType saved_search_dialog_get_type (void) G_GNUC_CONST; +static gpointer saved_search_dialog_search_row_container_ref (gpointer instance); +static void saved_search_dialog_search_row_container_unref (gpointer instance); +static GParamSpec* saved_search_dialog_param_spec_search_row_container (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) G_GNUC_UNUSED; +static void saved_search_dialog_value_set_search_row_container (GValue* value, gpointer v_object) G_GNUC_UNUSED; +static void saved_search_dialog_value_take_search_row_container (GValue* value, gpointer v_object) G_GNUC_UNUSED; +static gpointer saved_search_dialog_value_get_search_row_container (const GValue* value) G_GNUC_UNUSED; +static GType saved_search_dialog_search_row_container_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; +GType data_object_get_type (void) G_GNUC_CONST; +GType data_source_get_type (void) G_GNUC_CONST; +GType saved_search_get_type (void) G_GNUC_CONST; +#define SAVED_SEARCH_DIALOG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialogPrivate)) +enum { + SAVED_SEARCH_DIALOG_DUMMY_PROPERTY +}; +static void saved_search_dialog_on_title_changed (SavedSearchDialog* self); +static void _saved_search_dialog_on_title_changed_gtk_editable_changed (GtkEditable* _sender, gpointer self); +SavedSearchDialog* saved_search_dialog_new (void); +SavedSearchDialog* saved_search_dialog_construct (GType object_type); +static void saved_search_dialog_setup_dialog (SavedSearchDialog* self); +gpointer saved_search_table_ref (gpointer instance); +void saved_search_table_unref (gpointer instance); +GParamSpec* param_spec_saved_search_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_saved_search_table (GValue* value, gpointer v_object); +void value_take_saved_search_table (GValue* value, gpointer v_object); +gpointer value_get_saved_search_table (const GValue* value); +GType saved_search_table_get_type (void) G_GNUC_CONST; +SavedSearchTable* saved_search_table_get_instance (void); +gchar* saved_search_table_generate_unique_name (SavedSearchTable* self); +static void saved_search_dialog_add_text_search (SavedSearchDialog* self); +static void saved_search_dialog_search_row_container_allow_removal (SavedSearchDialogSearchRowContainer* self, gboolean allow); +static void saved_search_dialog_set_valid (SavedSearchDialog* self, gboolean v); +SavedSearchDialog* saved_search_dialog_new_edit_existing (SavedSearch* saved_search); +SavedSearchDialog* saved_search_dialog_construct_edit_existing (GType object_type, SavedSearch* saved_search); +GType search_operator_get_type (void) G_GNUC_CONST; +SearchOperator saved_search_get_operator (SavedSearch* self); +gchar* data_object_get_name (DataObject* self); +gpointer search_condition_ref (gpointer instance); +void search_condition_unref (gpointer instance); +GParamSpec* param_spec_search_condition (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_search_condition (GValue* value, gpointer v_object); +void value_take_search_condition (GValue* value, gpointer v_object); +gpointer value_get_search_condition (const GValue* value); +GType search_condition_get_type (void) G_GNUC_CONST; +GeeList* saved_search_get_conditions (SavedSearch* self); +static void saved_search_dialog_add_row (SavedSearchDialog* self, SavedSearchDialogSearchRowContainer* row); +static SavedSearchDialogSearchRowContainer* saved_search_dialog_search_row_container_new_edit_existing (SearchCondition* sc); +static SavedSearchDialogSearchRowContainer* saved_search_dialog_search_row_container_construct_edit_existing (GType object_type, SearchCondition* sc); +GtkBuilder* app_window_create_builder (const gchar* glade_filename, void* user); +GType page_window_get_type (void) G_GNUC_CONST; +GType app_window_get_type (void) G_GNUC_CONST; +AppWindow* app_window_get_instance (void); +static void saved_search_dialog_on_response (SavedSearchDialog* self, gint response_id); +static void _saved_search_dialog_on_response_gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self); +static gboolean saved_search_dialog_on_add_criteria (SavedSearchDialog* self, GdkEventButton* event); +static gboolean _saved_search_dialog_on_add_criteria_gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self); +void saved_search_dialog_show (SavedSearchDialog* self); +static SavedSearchDialogSearchRowContainer* saved_search_dialog_search_row_container_new (void); +static SavedSearchDialogSearchRowContainer* saved_search_dialog_search_row_container_construct (GType object_type); +static GtkWidget* saved_search_dialog_search_row_container_get_widget (SavedSearchDialogSearchRowContainer* self); +static void saved_search_dialog_on_remove_row (SavedSearchDialog* self, SavedSearchDialogSearchRowContainer* row); +static void _saved_search_dialog_on_remove_row_saved_search_dialog_search_row_container_remove (SavedSearchDialogSearchRowContainer* _sender, SavedSearchDialogSearchRowContainer* this_row, gpointer self); +static void saved_search_dialog_on_row_changed (SavedSearchDialog* self, SavedSearchDialogSearchRowContainer* row); +static void _saved_search_dialog_on_row_changed_saved_search_dialog_search_row_container_changed (SavedSearchDialogSearchRowContainer* _sender, SavedSearchDialogSearchRowContainer* this_row, gpointer self); +static gboolean saved_search_dialog_search_row_container_is_complete (SavedSearchDialogSearchRowContainer* self); +gboolean saved_search_table_exists (SavedSearchTable* self, const gchar* search_name); +void app_window_error_message (const gchar* message, GtkWindow* parent); +gchar* resources_rename_search_exists_message (const gchar* name); +void saved_search_table_remove (SavedSearchTable* self, SavedSearch* search); +static SearchCondition* saved_search_dialog_search_row_container_get_search_condition (SavedSearchDialogSearchRowContainer* self); +SavedSearch* saved_search_table_create (SavedSearchTable* self, const gchar* name, SearchOperator operator, GeeArrayList* conditions); +static gboolean saved_search_dialog_is_title_valid (SavedSearchDialog* self); +GType search_condition_search_type_get_type (void) G_GNUC_CONST; +static gpointer saved_search_dialog_search_row_ref (gpointer instance); +static void saved_search_dialog_search_row_unref (gpointer instance); +static GParamSpec* saved_search_dialog_param_spec_search_row (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) G_GNUC_UNUSED; +static void saved_search_dialog_value_set_search_row (GValue* value, gpointer v_object) G_GNUC_UNUSED; +static void saved_search_dialog_value_take_search_row (GValue* value, gpointer v_object) G_GNUC_UNUSED; +static gpointer saved_search_dialog_value_get_search_row (const GValue* value) G_GNUC_UNUSED; +static GType saved_search_dialog_search_row_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, SavedSearchDialogSearchRowContainerPrivate)) +enum { + SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER_DUMMY_PROPERTY +}; +static void saved_search_dialog_search_row_container_setup_gui (SavedSearchDialogSearchRowContainer* self); +static void saved_search_dialog_search_row_container_set_type (SavedSearchDialogSearchRowContainer* self, SearchConditionSearchType type); +SearchConditionSearchType search_condition_get_search_type (SearchCondition* self); +static void saved_search_dialog_search_row_container_set_type_combo_box (SavedSearchDialogSearchRowContainer* self, SearchConditionSearchType st); +static void saved_search_dialog_search_row_populate (SavedSearchDialogSearchRow* self, SearchCondition* sc); +SearchConditionSearchType* search_condition_search_type_as_array (int* result_length1); +void search_condition_search_type_sort_array (SearchConditionSearchType** array, int* array_length1); +gchar* search_condition_search_type_display_text (SearchConditionSearchType self); +static void saved_search_dialog_search_row_container_on_type_changed (SavedSearchDialogSearchRowContainer* self); +static void _saved_search_dialog_search_row_container_on_type_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self); +static gboolean saved_search_dialog_search_row_container_on_removed (SavedSearchDialogSearchRowContainer* self, GdkEventButton* event); +static gboolean _saved_search_dialog_search_row_container_on_removed_gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self); +static SearchConditionSearchType saved_search_dialog_search_row_container_get_search_type (SavedSearchDialogSearchRowContainer* self); +static GtkWidget* saved_search_dialog_search_row_get_widget (SavedSearchDialogSearchRow* self); +static SavedSearchDialogSearchRowText* saved_search_dialog_search_row_text_new (SavedSearchDialogSearchRowContainer* parent); +static SavedSearchDialogSearchRowText* saved_search_dialog_search_row_text_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent); +static GType saved_search_dialog_search_row_text_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; +static SavedSearchDialogSearchRowMediaType* saved_search_dialog_search_row_media_type_new (SavedSearchDialogSearchRowContainer* parent); +static SavedSearchDialogSearchRowMediaType* saved_search_dialog_search_row_media_type_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent); +static GType saved_search_dialog_search_row_media_type_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; +static SavedSearchDialogSearchRowFlagged* saved_search_dialog_search_row_flagged_new (SavedSearchDialogSearchRowContainer* parent); +static SavedSearchDialogSearchRowFlagged* saved_search_dialog_search_row_flagged_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent); +static GType saved_search_dialog_search_row_flagged_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; +static SavedSearchDialogSearchRowModified* saved_search_dialog_search_row_modified_new (SavedSearchDialogSearchRowContainer* parent); +static SavedSearchDialogSearchRowModified* saved_search_dialog_search_row_modified_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent); +static GType saved_search_dialog_search_row_modified_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; +static SavedSearchDialogSearchRowRating* saved_search_dialog_search_row_rating_new (SavedSearchDialogSearchRowContainer* parent); +static SavedSearchDialogSearchRowRating* saved_search_dialog_search_row_rating_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent); +static GType saved_search_dialog_search_row_rating_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; +static SavedSearchDialogSearchRowDate* saved_search_dialog_search_row_date_new (SavedSearchDialogSearchRowContainer* parent); +static SavedSearchDialogSearchRowDate* saved_search_dialog_search_row_date_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent); +static GType saved_search_dialog_search_row_date_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; +static SearchCondition* saved_search_dialog_search_row_get_search_condition (SavedSearchDialogSearchRow* self); +static gboolean saved_search_dialog_search_row_is_complete (SavedSearchDialogSearchRow* self); +static void g_cclosure_user_marshal_VOID__SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data); +static void saved_search_dialog_search_row_container_finalize (SavedSearchDialogSearchRowContainer* obj); +enum { + SAVED_SEARCH_DIALOG_SEARCH_ROW_DUMMY_PROPERTY +}; +static GtkWidget* saved_search_dialog_search_row_real_get_widget (SavedSearchDialogSearchRow* self); +static SearchCondition* saved_search_dialog_search_row_real_get_search_condition (SavedSearchDialogSearchRow* self); +static void saved_search_dialog_search_row_real_populate (SavedSearchDialogSearchRow* self, SearchCondition* sc); +static gboolean saved_search_dialog_search_row_real_is_complete (SavedSearchDialogSearchRow* self); +static SavedSearchDialogSearchRow* saved_search_dialog_search_row_construct (GType object_type); +static void saved_search_dialog_search_row_finalize (SavedSearchDialogSearchRow* obj); +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_TEXT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT, SavedSearchDialogSearchRowTextPrivate)) +enum { + SAVED_SEARCH_DIALOG_SEARCH_ROW_TEXT_DUMMY_PROPERTY +}; +static void saved_search_dialog_search_row_text_on_changed (SavedSearchDialogSearchRowText* self); +static void _saved_search_dialog_search_row_text_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self); +static void _saved_search_dialog_search_row_text_on_changed_gtk_editable_changed (GtkEditable* _sender, gpointer self); +static GtkWidget* saved_search_dialog_search_row_text_real_get_widget (SavedSearchDialogSearchRow* base); +static SearchCondition* saved_search_dialog_search_row_text_real_get_search_condition (SavedSearchDialogSearchRow* base); +GType search_condition_text_context_get_type (void) G_GNUC_CONST; +static SearchConditionTextContext saved_search_dialog_search_row_text_get_text_context (SavedSearchDialogSearchRowText* self); +GType search_condition_text_get_type (void) G_GNUC_CONST; +SearchConditionText* search_condition_text_new (SearchConditionSearchType search_type, const gchar* text, SearchConditionTextContext context); +SearchConditionText* search_condition_text_construct (GType object_type, SearchConditionSearchType search_type, const gchar* text, SearchConditionTextContext context); +static void saved_search_dialog_search_row_text_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc); +SearchConditionTextContext search_condition_text_get_context (SearchConditionText* self); +const gchar* search_condition_text_get_text (SearchConditionText* self); +static gboolean saved_search_dialog_search_row_text_real_is_complete (SavedSearchDialogSearchRow* base); +static void saved_search_dialog_search_row_text_finalize (SavedSearchDialogSearchRow* obj); +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_MEDIA_TYPE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE, SavedSearchDialogSearchRowMediaTypePrivate)) +enum { + SAVED_SEARCH_DIALOG_SEARCH_ROW_MEDIA_TYPE_DUMMY_PROPERTY +}; +static void saved_search_dialog_search_row_media_type_on_changed (SavedSearchDialogSearchRowMediaType* self); +static void _saved_search_dialog_search_row_media_type_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self); +static GtkWidget* saved_search_dialog_search_row_media_type_real_get_widget (SavedSearchDialogSearchRow* base); +static SearchCondition* saved_search_dialog_search_row_media_type_real_get_search_condition (SavedSearchDialogSearchRow* base); +GType search_condition_media_type_context_get_type (void) G_GNUC_CONST; +GType search_condition_media_type_media_type_get_type (void) G_GNUC_CONST; +GType search_condition_media_type_get_type (void) G_GNUC_CONST; +SearchConditionMediaType* search_condition_media_type_new (SearchConditionSearchType search_type, SearchConditionMediaTypeContext context, SearchConditionMediaTypeMediaType media_type); +SearchConditionMediaType* search_condition_media_type_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionMediaTypeContext context, SearchConditionMediaTypeMediaType media_type); +static void saved_search_dialog_search_row_media_type_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc); +SearchConditionMediaTypeContext search_condition_media_type_get_context (SearchConditionMediaType* self); +SearchConditionMediaTypeMediaType search_condition_media_type_get_media_type (SearchConditionMediaType* self); +static gboolean saved_search_dialog_search_row_media_type_real_is_complete (SavedSearchDialogSearchRow* base); +static void saved_search_dialog_search_row_media_type_finalize (SavedSearchDialogSearchRow* obj); +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_MODIFIED_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED, SavedSearchDialogSearchRowModifiedPrivate)) +enum { + SAVED_SEARCH_DIALOG_SEARCH_ROW_MODIFIED_DUMMY_PROPERTY +}; +static void saved_search_dialog_search_row_modified_on_changed (SavedSearchDialogSearchRowModified* self); +static void _saved_search_dialog_search_row_modified_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self); +static GtkWidget* saved_search_dialog_search_row_modified_real_get_widget (SavedSearchDialogSearchRow* base); +static SearchCondition* saved_search_dialog_search_row_modified_real_get_search_condition (SavedSearchDialogSearchRow* base); +GType search_condition_modified_context_get_type (void) G_GNUC_CONST; +GType search_condition_modified_state_get_type (void) G_GNUC_CONST; +GType search_condition_modified_get_type (void) G_GNUC_CONST; +SearchConditionModified* search_condition_modified_new (SearchConditionSearchType search_type, SearchConditionModifiedContext context, SearchConditionModifiedState state); +SearchConditionModified* search_condition_modified_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionModifiedContext context, SearchConditionModifiedState state); +static void saved_search_dialog_search_row_modified_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc); +SearchConditionModifiedState search_condition_modified_get_state (SearchConditionModified* self); +SearchConditionModifiedContext search_condition_modified_get_context (SearchConditionModified* self); +static gboolean saved_search_dialog_search_row_modified_real_is_complete (SavedSearchDialogSearchRow* base); +static void saved_search_dialog_search_row_modified_finalize (SavedSearchDialogSearchRow* obj); +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_FLAGGED_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED, SavedSearchDialogSearchRowFlaggedPrivate)) +enum { + SAVED_SEARCH_DIALOG_SEARCH_ROW_FLAGGED_DUMMY_PROPERTY +}; +static void saved_search_dialog_search_row_flagged_on_changed (SavedSearchDialogSearchRowFlagged* self); +static void _saved_search_dialog_search_row_flagged_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self); +static GtkWidget* saved_search_dialog_search_row_flagged_real_get_widget (SavedSearchDialogSearchRow* base); +static SearchCondition* saved_search_dialog_search_row_flagged_real_get_search_condition (SavedSearchDialogSearchRow* base); +GType search_condition_flagged_state_get_type (void) G_GNUC_CONST; +GType search_condition_flagged_get_type (void) G_GNUC_CONST; +SearchConditionFlagged* search_condition_flagged_new (SearchConditionSearchType search_type, SearchConditionFlaggedState state); +SearchConditionFlagged* search_condition_flagged_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionFlaggedState state); +static void saved_search_dialog_search_row_flagged_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc); +SearchConditionFlaggedState search_condition_flagged_get_state (SearchConditionFlagged* self); +static gboolean saved_search_dialog_search_row_flagged_real_is_complete (SavedSearchDialogSearchRow* base); +static void saved_search_dialog_search_row_flagged_finalize (SavedSearchDialogSearchRow* obj); +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_RATING_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING, SavedSearchDialogSearchRowRatingPrivate)) +enum { + SAVED_SEARCH_DIALOG_SEARCH_ROW_RATING_DUMMY_PROPERTY +}; +static void saved_search_dialog_search_row_rating_on_changed (SavedSearchDialogSearchRowRating* self); +static void _saved_search_dialog_search_row_rating_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self); +GType rating_get_type (void) G_GNUC_CONST; +const gchar* resources_rating_combo_box (Rating rating); +static GtkWidget* saved_search_dialog_search_row_rating_real_get_widget (SavedSearchDialogSearchRow* base); +static SearchCondition* saved_search_dialog_search_row_rating_real_get_search_condition (SavedSearchDialogSearchRow* base); +GType search_condition_rating_context_get_type (void) G_GNUC_CONST; +GType search_condition_rating_get_type (void) G_GNUC_CONST; +SearchConditionRating* search_condition_rating_new (SearchConditionSearchType search_type, Rating rating, SearchConditionRatingContext context); +SearchConditionRating* search_condition_rating_construct (GType object_type, SearchConditionSearchType search_type, Rating rating, SearchConditionRatingContext context); +static void saved_search_dialog_search_row_rating_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc); +SearchConditionRatingContext search_condition_rating_get_context (SearchConditionRating* self); +Rating search_condition_rating_get_rating (SearchConditionRating* self); +static gboolean saved_search_dialog_search_row_rating_real_is_complete (SavedSearchDialogSearchRow* base); +static void saved_search_dialog_search_row_rating_finalize (SavedSearchDialogSearchRow* obj); +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_DATE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE, SavedSearchDialogSearchRowDatePrivate)) +enum { + SAVED_SEARCH_DIALOG_SEARCH_ROW_DATE_DUMMY_PROPERTY +}; +static void saved_search_dialog_search_row_date_on_changed (SavedSearchDialogSearchRowDate* self); +static void _saved_search_dialog_search_row_date_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self); +#define SAVED_SEARCH_DIALOG_SEARCH_ROW_DATE_DATE_FORMAT "%x" +static void saved_search_dialog_search_row_date_on_one_clicked (SavedSearchDialogSearchRowDate* self); +static void _saved_search_dialog_search_row_date_on_one_clicked_gtk_button_clicked (GtkButton* _sender, gpointer self); +static void saved_search_dialog_search_row_date_on_two_clicked (SavedSearchDialogSearchRowDate* self); +static void _saved_search_dialog_search_row_date_on_two_clicked_gtk_button_clicked (GtkButton* _sender, gpointer self); +static void saved_search_dialog_search_row_date_update_date_labels (SavedSearchDialogSearchRowDate* self); +GType search_condition_date_context_get_type (void) G_GNUC_CONST; +static GDateTime* saved_search_dialog_search_row_date_get_date_one (SavedSearchDialogSearchRowDate* self); +static GDateTime* saved_search_dialog_search_row_date_get_date_two (SavedSearchDialogSearchRowDate* self); +static GtkWidget* saved_search_dialog_search_row_date_real_get_widget (SavedSearchDialogSearchRow* base); +static void saved_search_dialog_search_row_date_set_date_one (SavedSearchDialogSearchRowDate* self, GDateTime* date); +static void saved_search_dialog_search_row_date_set_date_two (SavedSearchDialogSearchRowDate* self, GDateTime* date); +static SearchCondition* saved_search_dialog_search_row_date_real_get_search_condition (SavedSearchDialogSearchRow* base); +GType search_condition_date_get_type (void) G_GNUC_CONST; +SearchConditionDate* search_condition_date_new (SearchConditionSearchType search_type, SearchConditionDateContext context, GDateTime* date_one, GDateTime* date_two); +SearchConditionDate* search_condition_date_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionDateContext context, GDateTime* date_one, GDateTime* date_two); +static void saved_search_dialog_search_row_date_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc); +SearchConditionDateContext search_condition_date_get_context (SearchConditionDate* self); +GDateTime* search_condition_date_get_date_one (SearchConditionDate* self); +GDateTime* search_condition_date_get_date_two (SearchConditionDate* self); +static gboolean saved_search_dialog_search_row_date_real_is_complete (SavedSearchDialogSearchRow* base); +static void saved_search_dialog_search_row_date_popup_calendar (SavedSearchDialogSearchRowDate* self, GtkCalendar* cal); +static Block9Data* block9_data_ref (Block9Data* _data9_); +static void block9_data_unref (void * _userdata_); +#define RESOURCES_CANCEL_LABEL _ ("_Cancel") +#define RESOURCES_OK_LABEL _ ("_OK") +static void __lambda12_ (SavedSearchDialogSearchRowDate* self); +static void ___lambda12__gtk_calendar_day_selected (GtkCalendar* _sender, gpointer self); +static void __lambda13_ (Block9Data* _data9_); +static void ___lambda13__gtk_calendar_day_selected_double_click (GtkCalendar* _sender, gpointer self); +static void saved_search_dialog_search_row_date_finalize (SavedSearchDialogSearchRow* obj); +static void saved_search_dialog_finalize (SavedSearchDialog* obj); + + +static void _saved_search_dialog_on_title_changed_gtk_editable_changed (GtkEditable* _sender, gpointer self) { +#line 690 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_on_title_changed ((SavedSearchDialog*) self); +#line 830 "SavedSearchDialog.c" +} + + +SavedSearchDialog* saved_search_dialog_construct (GType object_type) { + SavedSearchDialog* self = NULL; + GtkEntry* _tmp0_ = NULL; + SavedSearchTable* _tmp1_ = NULL; + SavedSearchTable* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + GtkEntry* _tmp5_ = NULL; + GeeArrayList* _tmp6_ = NULL; + gpointer _tmp7_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp8_ = NULL; + GtkDialog* _tmp9_ = NULL; +#line 654 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialog*) g_type_create_instance (object_type); +#line 655 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_setup_dialog (self); +#line 658 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->search_title; +#line 658 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_table_get_instance (); +#line 658 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = _tmp1_; +#line 658 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = saved_search_table_generate_unique_name (_tmp2_); +#line 658 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _tmp3_; +#line 658 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_entry_set_text (_tmp0_, _tmp4_); +#line 658 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (_tmp4_); +#line 658 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_table_unref0 (_tmp2_); +#line 659 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->search_title; +#line 659 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_editable_select_region (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, GTK_TYPE_EDITABLE, GtkEditable), 0, -1); +#line 662 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_add_text_search (self); +#line 663 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = self->priv->row_list; +#line 663 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), 0); +#line 663 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = (SavedSearchDialogSearchRowContainer*) _tmp7_; +#line 663 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_allow_removal (_tmp8_, FALSE); +#line 663 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (_tmp8_); +#line 665 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = self->priv->dialog; +#line 665 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, gtk_widget_get_type (), GtkWidget)); +#line 666 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_set_valid (self, FALSE); +#line 654 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 890 "SavedSearchDialog.c" +} + + +SavedSearchDialog* saved_search_dialog_new (void) { +#line 654 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return saved_search_dialog_construct (TYPE_SAVED_SEARCH_DIALOG); +#line 897 "SavedSearchDialog.c" +} + + +static gpointer _g_object_ref0 (gpointer self) { +#line 670 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self ? g_object_ref (self) : NULL; +#line 904 "SavedSearchDialog.c" +} + + +SavedSearchDialog* saved_search_dialog_construct_edit_existing (GType object_type, SavedSearch* saved_search) { + SavedSearchDialog* self = NULL; + SavedSearch* _tmp0_ = NULL; + SavedSearch* _tmp1_ = NULL; + GtkDialog* _tmp2_ = NULL; + GtkComboBoxText* _tmp3_ = NULL; + SavedSearch* _tmp4_ = NULL; + SearchOperator _tmp5_ = 0; + GtkEntry* _tmp6_ = NULL; + SavedSearch* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + GeeArrayList* _tmp24_ = NULL; + gint _tmp25_ = 0; + gint _tmp26_ = 0; +#line 669 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (IS_SAVED_SEARCH (saved_search), NULL); +#line 669 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialog*) g_type_create_instance (object_type); +#line 670 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = saved_search; +#line 670 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _g_object_ref0 (_tmp0_); +#line 670 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->previous_search); +#line 670 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->previous_search = _tmp1_; +#line 671 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->edit_mode = TRUE; +#line 672 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_setup_dialog (self); +#line 674 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->dialog; +#line 674 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_widget_get_type (), GtkWidget)); +#line 677 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->operator; +#line 677 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = saved_search; +#line 677 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = saved_search_get_operator (_tmp4_); +#line 677 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_combo_box_get_type (), GtkComboBox), (gint) ((SearchOperator) _tmp5_)); +#line 678 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = self->priv->search_title; +#line 678 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = saved_search; +#line 678 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_DATA_OBJECT, DataObject)); +#line 678 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = _tmp8_; +#line 678 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_entry_set_text (_tmp6_, _tmp9_); +#line 678 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (_tmp9_); +#line 963 "SavedSearchDialog.c" + { + GeeList* _sc_list = NULL; + SavedSearch* _tmp10_ = NULL; + GeeList* _tmp11_ = NULL; + gint _sc_size = 0; + GeeList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gint _tmp14_ = 0; + gint _sc_index = 0; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = saved_search; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = saved_search_get_conditions (_tmp10_); +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _sc_list = _tmp11_; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = _sc_list; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, GEE_TYPE_COLLECTION, GeeCollection)); +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = _tmp13_; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _sc_size = _tmp14_; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _sc_index = -1; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + while (TRUE) { +#line 991 "SavedSearchDialog.c" + gint _tmp15_ = 0; + gint _tmp16_ = 0; + gint _tmp17_ = 0; + SearchCondition* sc = NULL; + GeeList* _tmp18_ = NULL; + gint _tmp19_ = 0; + gpointer _tmp20_ = NULL; + SearchCondition* _tmp21_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp22_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp23_ = NULL; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = _sc_index; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _sc_index = _tmp15_ + 1; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = _sc_index; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = _sc_size; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!(_tmp16_ < _tmp17_)) { +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 1014 "SavedSearchDialog.c" + } +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = _sc_list; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = _sc_index; +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = gee_list_get (_tmp18_, _tmp19_); +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + sc = (SearchCondition*) _tmp20_; +#line 680 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = sc; +#line 680 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = saved_search_dialog_search_row_container_new_edit_existing (_tmp21_); +#line 680 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = _tmp22_; +#line 680 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_add_row (self, _tmp23_); +#line 680 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (_tmp23_); +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _search_condition_unref0 (sc); +#line 1036 "SavedSearchDialog.c" + } +#line 679 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_sc_list); +#line 1040 "SavedSearchDialog.c" + } +#line 683 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp24_ = self->priv->row_list; +#line 683 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp25_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp24_, GEE_TYPE_COLLECTION, GeeCollection)); +#line 683 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp26_ = _tmp25_; +#line 683 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp26_ == 1) { +#line 1050 "SavedSearchDialog.c" + GeeArrayList* _tmp27_ = NULL; + gpointer _tmp28_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp29_ = NULL; +#line 684 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp27_ = self->priv->row_list; +#line 684 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp28_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp27_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), 0); +#line 684 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp29_ = (SavedSearchDialogSearchRowContainer*) _tmp28_; +#line 684 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_allow_removal (_tmp29_, FALSE); +#line 684 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (_tmp29_); +#line 1064 "SavedSearchDialog.c" + } +#line 686 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_set_valid (self, TRUE); +#line 669 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 1070 "SavedSearchDialog.c" +} + + +SavedSearchDialog* saved_search_dialog_new_edit_existing (SavedSearch* saved_search) { +#line 669 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return saved_search_dialog_construct_edit_existing (TYPE_SAVED_SEARCH_DIALOG, saved_search); +#line 1077 "SavedSearchDialog.c" +} + + +static void _saved_search_dialog_on_response_gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self) { +#line 708 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_on_response ((SavedSearchDialog*) self, response_id); +#line 1084 "SavedSearchDialog.c" +} + + +static gboolean _saved_search_dialog_on_add_criteria_gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) { + gboolean result; + result = saved_search_dialog_on_add_criteria ((SavedSearchDialog*) self, event); +#line 712 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 1093 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_setup_dialog (SavedSearchDialog* self) { + GtkBuilder* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + AppWindow* _tmp2_ = NULL; + AppWindow* _tmp3_ = NULL; + GdkWindow* _tmp4_ = NULL; + const gchar* _tmp5_ = NULL; + const gchar* _tmp6_ = NULL; + GtkDialog* _tmp7_ = NULL; + GtkDialog* _tmp8_ = NULL; + GtkDialog* _tmp9_ = NULL; + AppWindow* _tmp10_ = NULL; + AppWindow* _tmp11_ = NULL; + GtkDialog* _tmp12_ = NULL; + GtkDialog* _tmp13_ = NULL; + GtkDialog* _tmp14_ = NULL; + GtkBox* _tmp15_ = NULL; + GtkBuilder* _tmp16_ = NULL; + GObject* _tmp17_ = NULL; + GtkBuilder* _tmp18_ = NULL; + GObject* _tmp19_ = NULL; + GtkButton* _tmp20_ = NULL; + GtkButton* _tmp21_ = NULL; + GtkBuilder* _tmp22_ = NULL; + GObject* _tmp23_ = NULL; + GtkEntry* _tmp24_ = NULL; + GtkEntry* _tmp25_ = NULL; + GtkEntry* _tmp26_ = NULL; + GtkBuilder* _tmp27_ = NULL; + GObject* _tmp28_ = NULL; + GtkBox* _tmp29_ = NULL; + GtkBuilder* _tmp30_ = NULL; + GObject* _tmp31_ = NULL; + GtkComboBoxText* _tmp32_ = NULL; + GtkComboBoxText* _tmp33_ = NULL; + const gchar* _tmp34_ = NULL; + GtkComboBoxText* _tmp35_ = NULL; + const gchar* _tmp36_ = NULL; + GtkComboBoxText* _tmp37_ = NULL; + const gchar* _tmp38_ = NULL; + GtkComboBoxText* _tmp39_ = NULL; +#line 694 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SAVED_SEARCH_DIALOG (self)); +#line 695 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = app_window_create_builder ("shotwell.ui", NULL); +#line 695 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->builder); +#line 695 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->builder = _tmp0_; +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _ ("Search"); +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = app_window_get_instance (); +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = _tmp2_; +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = gtk_widget_get_parent_window (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_widget_get_type (), GtkWidget)); +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = _ ("Cancel"); +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = _ ("OK"); +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = (GtkDialog*) gtk_dialog_new_with_buttons (_tmp1_, G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, gtk_window_get_type (), GtkWindow), (GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT) | GTK_DIALOG_USE_HEADER_BAR, _tmp5_, GTK_RESPONSE_CANCEL, _tmp6_, GTK_RESPONSE_OK, NULL, NULL); +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp7_); +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->dialog); +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->dialog = _tmp7_; +#line 697 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_tmp3_); +#line 705 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = self->priv->dialog; +#line 705 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_window_set_resizable (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, gtk_window_get_type (), GtkWindow), FALSE); +#line 706 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = self->priv->dialog; +#line 706 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = app_window_get_instance (); +#line 706 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = _tmp10_; +#line 706 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_window_set_transient_for (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, gtk_window_get_type (), GtkWindow), G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, gtk_window_get_type (), GtkWindow)); +#line 706 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_tmp11_); +#line 707 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = self->priv->dialog; +#line 707 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_dialog_set_default_response (_tmp12_, (gint) GTK_RESPONSE_OK); +#line 708 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = self->priv->dialog; +#line 708 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (_tmp13_, "response", (GCallback) _saved_search_dialog_on_response_gtk_dialog_response, self); +#line 709 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = self->priv->dialog; +#line 709 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = (GtkBox*) gtk_dialog_get_content_area (_tmp14_); +#line 709 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = self->priv->builder; +#line 709 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = gtk_builder_get_object (_tmp16_, "criteria"); +#line 709 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_TYPE (_tmp17_, gtk_widget_get_type ()) ? ((GtkWidget*) _tmp17_) : NULL); +#line 711 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = self->priv->builder; +#line 711 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = gtk_builder_get_object (_tmp18_, "Add search button"); +#line 711 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp19_, gtk_button_get_type ()) ? ((GtkButton*) _tmp19_) : NULL); +#line 711 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->add_criteria); +#line 711 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->add_criteria = _tmp20_; +#line 712 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = self->priv->add_criteria; +#line 712 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp21_, gtk_widget_get_type (), GtkWidget), "button-press-event", (GCallback) _saved_search_dialog_on_add_criteria_gtk_widget_button_press_event, self); +#line 714 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = self->priv->builder; +#line 714 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = gtk_builder_get_object (_tmp22_, "Search title"); +#line 714 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp24_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp23_, gtk_entry_get_type ()) ? ((GtkEntry*) _tmp23_) : NULL); +#line 714 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->search_title); +#line 714 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->search_title = _tmp24_; +#line 715 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp25_ = self->priv->search_title; +#line 715 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_entry_set_activates_default (_tmp25_, TRUE); +#line 716 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp26_ = self->priv->search_title; +#line 716 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp26_, GTK_TYPE_EDITABLE, GtkEditable), "changed", (GCallback) _saved_search_dialog_on_title_changed_gtk_editable_changed, self); +#line 718 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp27_ = self->priv->builder; +#line 718 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp28_ = gtk_builder_get_object (_tmp27_, "row_box"); +#line 718 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp29_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp28_, gtk_box_get_type ()) ? ((GtkBox*) _tmp28_) : NULL); +#line 718 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->row_box); +#line 718 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->row_box = _tmp29_; +#line 720 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp30_ = self->priv->builder; +#line 720 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp31_ = gtk_builder_get_object (_tmp30_, "Type of search criteria"); +#line 720 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp32_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp31_, gtk_combo_box_text_get_type ()) ? ((GtkComboBoxText*) _tmp31_) : NULL); +#line 720 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->operator); +#line 720 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->operator = _tmp32_; +#line 721 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp33_ = self->priv->operator; +#line 721 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp34_ = _ ("any"); +#line 721 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp33_, _tmp34_); +#line 722 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp35_ = self->priv->operator; +#line 722 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp36_ = _ ("all"); +#line 722 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp35_, _tmp36_); +#line 723 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp37_ = self->priv->operator; +#line 723 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp38_ = _ ("none"); +#line 723 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp37_, _tmp38_); +#line 724 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp39_ = self->priv->operator; +#line 724 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp39_, gtk_combo_box_get_type (), GtkComboBox), 0); +#line 1274 "SavedSearchDialog.c" +} + + +void saved_search_dialog_show (SavedSearchDialog* self) { + GtkDialog* _tmp0_ = NULL; + GtkDialog* _tmp1_ = NULL; +#line 728 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SAVED_SEARCH_DIALOG (self)); +#line 729 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->dialog; +#line 729 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_dialog_run (_tmp0_); +#line 730 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = self->priv->dialog; +#line 730 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_destroy (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, gtk_widget_get_type (), GtkWidget)); +#line 1291 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_on_add_criteria (SavedSearchDialog* self, GdkEventButton* event) { + gboolean result = FALSE; +#line 734 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (IS_SAVED_SEARCH_DIALOG (self), FALSE); +#line 734 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (event != NULL, FALSE); +#line 735 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_add_text_search (self); +#line 736 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = FALSE; +#line 736 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 1307 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_add_text_search (SavedSearchDialog* self) { + SavedSearchDialogSearchRowContainer* text = NULL; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; +#line 739 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SAVED_SEARCH_DIALOG (self)); +#line 740 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = saved_search_dialog_search_row_container_new (); +#line 740 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + text = _tmp0_; +#line 741 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_add_row (self, text); +#line 739 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (text); +#line 1324 "SavedSearchDialog.c" +} + + +static void _saved_search_dialog_on_remove_row_saved_search_dialog_search_row_container_remove (SavedSearchDialogSearchRowContainer* _sender, SavedSearchDialogSearchRowContainer* this_row, gpointer self) { +#line 750 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_on_remove_row ((SavedSearchDialog*) self, this_row); +#line 1331 "SavedSearchDialog.c" +} + + +static void _saved_search_dialog_on_row_changed_saved_search_dialog_search_row_container_changed (SavedSearchDialogSearchRowContainer* _sender, SavedSearchDialogSearchRowContainer* this_row, gpointer self) { +#line 751 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_on_row_changed ((SavedSearchDialog*) self, this_row); +#line 1338 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_add_row (SavedSearchDialog* self, SavedSearchDialogSearchRowContainer* row) { + GeeArrayList* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + GtkBox* _tmp6_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp7_ = NULL; + GtkWidget* _tmp8_ = NULL; + GtkWidget* _tmp9_ = NULL; + GeeArrayList* _tmp10_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp11_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp12_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp13_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp14_ = NULL; + gboolean _tmp15_ = FALSE; +#line 745 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SAVED_SEARCH_DIALOG (self)); +#line 745 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (row)); +#line 746 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->row_list; +#line 746 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_COLLECTION, GeeCollection)); +#line 746 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = _tmp1_; +#line 746 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp2_ == 1) { +#line 1368 "SavedSearchDialog.c" + GeeArrayList* _tmp3_ = NULL; + gpointer _tmp4_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp5_ = NULL; +#line 747 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->row_list; +#line 747 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), 0); +#line 747 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = (SavedSearchDialogSearchRowContainer*) _tmp4_; +#line 747 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_allow_removal (_tmp5_, TRUE); +#line 747 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (_tmp5_); +#line 1382 "SavedSearchDialog.c" + } +#line 748 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = self->priv->row_box; +#line 748 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = row; +#line 748 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = saved_search_dialog_search_row_container_get_widget (_tmp7_); +#line 748 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = _tmp8_; +#line 748 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, gtk_container_get_type (), GtkContainer), _tmp9_); +#line 748 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_tmp9_); +#line 749 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = self->priv->row_list; +#line 749 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = row; +#line 749 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp11_); +#line 750 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = row; +#line 750 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (_tmp12_, "remove", (GCallback) _saved_search_dialog_on_remove_row_saved_search_dialog_search_row_container_remove, self); +#line 751 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = row; +#line 751 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (_tmp13_, "changed", (GCallback) _saved_search_dialog_on_row_changed_saved_search_dialog_search_row_container_changed, self); +#line 752 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = row; +#line 752 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = saved_search_dialog_search_row_container_is_complete (_tmp14_); +#line 752 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_set_valid (self, _tmp15_); +#line 1416 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_on_remove_row (SavedSearchDialog* self, SavedSearchDialogSearchRowContainer* row) { + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + guint _tmp1_ = 0U; + SavedSearchDialogSearchRowContainer* _tmp2_ = NULL; + guint _tmp3_ = 0U; + GtkBox* _tmp4_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp5_ = NULL; + GtkWidget* _tmp6_ = NULL; + GtkWidget* _tmp7_ = NULL; + GeeArrayList* _tmp8_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp9_ = NULL; + GeeArrayList* _tmp10_ = NULL; + gint _tmp11_ = 0; + gint _tmp12_ = 0; +#line 756 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SAVED_SEARCH_DIALOG (self)); +#line 756 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (row)); +#line 757 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = row; +#line 757 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("remove", SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, &_tmp1_, NULL, FALSE); +#line 757 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (_tmp0_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _saved_search_dialog_on_remove_row_saved_search_dialog_search_row_container_remove, self); +#line 758 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = row; +#line 758 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, &_tmp3_, NULL, FALSE); +#line 758 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (_tmp2_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp3_, 0, NULL, (GCallback) _saved_search_dialog_on_row_changed_saved_search_dialog_search_row_container_changed, self); +#line 759 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = self->priv->row_box; +#line 759 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = row; +#line 759 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = saved_search_dialog_search_row_container_get_widget (_tmp5_); +#line 759 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = _tmp6_; +#line 759 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_container_remove (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, gtk_container_get_type (), GtkContainer), _tmp7_); +#line 759 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_tmp7_); +#line 760 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = self->priv->row_list; +#line 760 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = row; +#line 760 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gee_abstract_collection_remove (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp9_); +#line 761 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = self->priv->row_list; +#line 761 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, GEE_TYPE_COLLECTION, GeeCollection)); +#line 761 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = _tmp11_; +#line 761 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp12_ == 1) { +#line 1476 "SavedSearchDialog.c" + GeeArrayList* _tmp13_ = NULL; + gpointer _tmp14_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp15_ = NULL; +#line 762 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = self->priv->row_list; +#line 762 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), 0); +#line 762 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = (SavedSearchDialogSearchRowContainer*) _tmp14_; +#line 762 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_allow_removal (_tmp15_, FALSE); +#line 762 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (_tmp15_); +#line 1490 "SavedSearchDialog.c" + } +#line 763 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_set_valid (self, TRUE); +#line 1494 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_on_response (SavedSearchDialog* self, gint response_id) { + gint _tmp0_ = 0; +#line 766 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SAVED_SEARCH_DIALOG (self)); +#line 767 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = response_id; +#line 767 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp0_ == ((gint) GTK_RESPONSE_OK)) { +#line 1506 "SavedSearchDialog.c" + gboolean _tmp1_ = FALSE; + SavedSearchTable* _tmp2_ = NULL; + SavedSearchTable* _tmp3_ = NULL; + GtkEntry* _tmp4_ = NULL; + const gchar* _tmp5_ = NULL; + gboolean _tmp6_ = FALSE; + gboolean _tmp7_ = FALSE; + gboolean _tmp19_ = FALSE; + GeeArrayList* conditions = NULL; + GeeArrayList* _tmp23_ = NULL; + SearchOperator search_operator = 0; + GtkComboBoxText* _tmp39_ = NULL; + gint _tmp40_ = 0; + SavedSearchTable* _tmp41_ = NULL; + SavedSearchTable* _tmp42_ = NULL; + GtkEntry* _tmp43_ = NULL; + const gchar* _tmp44_ = NULL; + SearchOperator _tmp45_ = 0; + GeeArrayList* _tmp46_ = NULL; + SavedSearch* _tmp47_ = NULL; + SavedSearch* _tmp48_ = NULL; +#line 768 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = saved_search_table_get_instance (); +#line 768 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = _tmp2_; +#line 768 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = self->priv->search_title; +#line 768 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = gtk_entry_get_text (_tmp4_); +#line 768 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = saved_search_table_exists (_tmp3_, _tmp5_); +#line 768 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = _tmp6_; +#line 768 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_table_unref0 (_tmp3_); +#line 768 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp7_) { +#line 1544 "SavedSearchDialog.c" + gboolean _tmp8_ = FALSE; + gboolean _tmp9_ = FALSE; +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = self->priv->edit_mode; +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp9_) { +#line 1551 "SavedSearchDialog.c" + SavedSearch* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + GtkEntry* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = self->priv->previous_search; +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, TYPE_DATA_OBJECT, DataObject)); +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = _tmp11_; +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = self->priv->search_title; +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = gtk_entry_get_text (_tmp13_); +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = g_strcmp0 (_tmp12_, _tmp14_) == 0; +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (_tmp12_); +#line 1571 "SavedSearchDialog.c" + } else { +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = FALSE; +#line 1575 "SavedSearchDialog.c" + } +#line 769 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = !_tmp8_; +#line 1579 "SavedSearchDialog.c" + } else { +#line 768 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = FALSE; +#line 1583 "SavedSearchDialog.c" + } +#line 768 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp1_) { +#line 1587 "SavedSearchDialog.c" + GtkEntry* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; +#line 770 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = self->priv->search_title; +#line 770 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = gtk_entry_get_text (_tmp15_); +#line 770 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = resources_rename_search_exists_message (_tmp16_); +#line 770 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = _tmp17_; +#line 770 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + app_window_error_message (_tmp18_, NULL); +#line 770 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (_tmp18_); +#line 771 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return; +#line 1606 "SavedSearchDialog.c" + } +#line 774 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = self->priv->edit_mode; +#line 774 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp19_) { +#line 1612 "SavedSearchDialog.c" + SavedSearchTable* _tmp20_ = NULL; + SavedSearchTable* _tmp21_ = NULL; + SavedSearch* _tmp22_ = NULL; +#line 776 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = saved_search_table_get_instance (); +#line 776 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = _tmp20_; +#line 776 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = self->priv->previous_search; +#line 776 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_table_remove (_tmp21_, _tmp22_); +#line 776 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_table_unref0 (_tmp21_); +#line 1626 "SavedSearchDialog.c" + } +#line 780 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = gee_array_list_new (TYPE_SEARCH_CONDITION, (GBoxedCopyFunc) search_condition_ref, search_condition_unref, NULL, NULL, NULL); +#line 780 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + conditions = _tmp23_; +#line 1632 "SavedSearchDialog.c" + { + GeeArrayList* _c_list = NULL; + GeeArrayList* _tmp24_ = NULL; + GeeArrayList* _tmp25_ = NULL; + gint _c_size = 0; + GeeArrayList* _tmp26_ = NULL; + gint _tmp27_ = 0; + gint _tmp28_ = 0; + gint _c_index = 0; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp24_ = self->priv->row_list; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp25_ = _g_object_ref0 (_tmp24_); +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _c_list = _tmp25_; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp26_ = _c_list; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp27_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp26_, GEE_TYPE_COLLECTION, GeeCollection)); +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp28_ = _tmp27_; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _c_size = _tmp28_; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _c_index = -1; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + while (TRUE) { +#line 1660 "SavedSearchDialog.c" + gint _tmp29_ = 0; + gint _tmp30_ = 0; + gint _tmp31_ = 0; + SavedSearchDialogSearchRowContainer* c = NULL; + GeeArrayList* _tmp32_ = NULL; + gint _tmp33_ = 0; + gpointer _tmp34_ = NULL; + GeeArrayList* _tmp35_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp36_ = NULL; + SearchCondition* _tmp37_ = NULL; + SearchCondition* _tmp38_ = NULL; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp29_ = _c_index; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _c_index = _tmp29_ + 1; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp30_ = _c_index; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp31_ = _c_size; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!(_tmp30_ < _tmp31_)) { +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 1684 "SavedSearchDialog.c" + } +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp32_ = _c_list; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp33_ = _c_index; +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp34_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp32_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp33_); +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + c = (SavedSearchDialogSearchRowContainer*) _tmp34_; +#line 782 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp35_ = conditions; +#line 782 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp36_ = c; +#line 782 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp37_ = saved_search_dialog_search_row_container_get_search_condition (_tmp36_); +#line 782 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp38_ = _tmp37_; +#line 782 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp35_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp38_); +#line 782 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _search_condition_unref0 (_tmp38_); +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (c); +#line 1708 "SavedSearchDialog.c" + } +#line 781 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_c_list); +#line 1712 "SavedSearchDialog.c" + } +#line 786 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp39_ = self->priv->operator; +#line 786 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp40_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp39_, gtk_combo_box_get_type (), GtkComboBox)); +#line 786 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + search_operator = (SearchOperator) _tmp40_; +#line 787 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp41_ = saved_search_table_get_instance (); +#line 787 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp42_ = _tmp41_; +#line 787 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp43_ = self->priv->search_title; +#line 787 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp44_ = gtk_entry_get_text (_tmp43_); +#line 787 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp45_ = search_operator; +#line 787 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp46_ = conditions; +#line 787 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp47_ = saved_search_table_create (_tmp42_, _tmp44_, _tmp45_, _tmp46_); +#line 787 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp48_ = _tmp47_; +#line 787 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_tmp48_); +#line 787 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_table_unref0 (_tmp42_); +#line 767 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (conditions); +#line 1742 "SavedSearchDialog.c" + } +} + + +static void saved_search_dialog_on_row_changed (SavedSearchDialog* self, SavedSearchDialogSearchRowContainer* row) { + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + gboolean _tmp1_ = FALSE; +#line 791 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SAVED_SEARCH_DIALOG (self)); +#line 791 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (row)); +#line 792 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = row; +#line 792 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_dialog_search_row_container_is_complete (_tmp0_); +#line 792 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_set_valid (self, _tmp1_); +#line 1760 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_on_title_changed (SavedSearchDialog* self) { + gboolean _tmp0_ = FALSE; +#line 795 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SAVED_SEARCH_DIALOG (self)); +#line 796 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = saved_search_dialog_is_title_valid (self); +#line 796 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_set_valid (self, _tmp0_); +#line 1772 "SavedSearchDialog.c" +} + + +static gchar* string_chomp (const gchar* self) { + gchar* result = NULL; + gchar* _result_ = NULL; + gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; +#line 1191 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + g_return_val_if_fail (self != NULL, NULL); +#line 1192 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp0_ = g_strdup (self); +#line 1192 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _result_ = _tmp0_; +#line 1193 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp1_ = _result_; +#line 1193 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + g_strchomp (_tmp1_); +#line 1194 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + result = _result_; +#line 1194 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + return result; +#line 1795 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_is_title_valid (SavedSearchDialog* self) { + gboolean result = FALSE; + gboolean _tmp0_ = FALSE; + gboolean _tmp1_ = FALSE; + gboolean _tmp2_ = FALSE; + GtkEntry* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + gboolean _tmp13_ = FALSE; + SavedSearchTable* _tmp14_ = NULL; + SavedSearchTable* _tmp15_ = NULL; + GtkEntry* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + gboolean _tmp18_ = FALSE; + gboolean _tmp19_ = FALSE; +#line 799 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (IS_SAVED_SEARCH_DIALOG (self), FALSE); +#line 800 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->edit_mode; +#line 800 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp2_) { +#line 1821 "SavedSearchDialog.c" + SavedSearch* _tmp3_ = NULL; +#line 800 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->previous_search; +#line 800 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _tmp3_ != NULL; +#line 1827 "SavedSearchDialog.c" + } else { +#line 800 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = FALSE; +#line 1831 "SavedSearchDialog.c" + } +#line 800 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp1_) { +#line 1835 "SavedSearchDialog.c" + SavedSearch* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + GtkEntry* _tmp7_ = NULL; + const gchar* _tmp8_ = NULL; +#line 801 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = self->priv->previous_search; +#line 801 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_DATA_OBJECT, DataObject)); +#line 801 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = _tmp5_; +#line 801 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = self->priv->search_title; +#line 801 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = gtk_entry_get_text (_tmp7_); +#line 801 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = g_strcmp0 (_tmp6_, _tmp8_) == 0; +#line 801 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (_tmp6_); +#line 1855 "SavedSearchDialog.c" + } else { +#line 800 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = FALSE; +#line 1859 "SavedSearchDialog.c" + } +#line 800 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp0_) { +#line 802 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = TRUE; +#line 802 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 1867 "SavedSearchDialog.c" + } +#line 803 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = self->priv->search_title; +#line 803 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = gtk_entry_get_text (_tmp9_); +#line 803 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = string_chomp (_tmp10_); +#line 803 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = _tmp11_; +#line 803 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = g_strcmp0 (_tmp12_, "") == 0; +#line 803 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (_tmp12_); +#line 803 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp13_) { +#line 804 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = FALSE; +#line 804 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 1887 "SavedSearchDialog.c" + } +#line 805 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = saved_search_table_get_instance (); +#line 805 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = _tmp14_; +#line 805 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = self->priv->search_title; +#line 805 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = gtk_entry_get_text (_tmp16_); +#line 805 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = saved_search_table_exists (_tmp15_, _tmp17_); +#line 805 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = _tmp18_; +#line 805 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_table_unref0 (_tmp15_); +#line 805 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp19_) { +#line 806 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = FALSE; +#line 806 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 1909 "SavedSearchDialog.c" + } +#line 807 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = TRUE; +#line 807 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 1915 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_set_valid (SavedSearchDialog* self, gboolean v) { + gboolean _tmp0_ = FALSE; + GtkDialog* _tmp22_ = NULL; + gboolean _tmp23_ = FALSE; +#line 811 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SAVED_SEARCH_DIALOG (self)); +#line 812 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = v; +#line 812 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!_tmp0_) { +#line 813 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->valid = FALSE; +#line 1931 "SavedSearchDialog.c" + } else { + gboolean _tmp1_ = FALSE; + gboolean _tmp2_ = FALSE; +#line 814 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = v; +#line 814 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->valid; +#line 814 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp1_ != _tmp2_) { +#line 1941 "SavedSearchDialog.c" + gboolean _tmp3_ = FALSE; +#line 815 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = saved_search_dialog_is_title_valid (self); +#line 815 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp3_) { +#line 1947 "SavedSearchDialog.c" + gint valid_rows = 0; + gint _tmp18_ = 0; + GeeArrayList* _tmp19_ = NULL; + gint _tmp20_ = 0; + gint _tmp21_ = 0; +#line 817 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + valid_rows = 0; +#line 1955 "SavedSearchDialog.c" + { + GeeArrayList* _c_list = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _c_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _c_index = 0; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = self->priv->row_list; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = _g_object_ref0 (_tmp4_); +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _c_list = _tmp5_; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = _c_list; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, GEE_TYPE_COLLECTION, GeeCollection)); +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = _tmp7_; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _c_size = _tmp8_; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _c_index = -1; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + while (TRUE) { +#line 1983 "SavedSearchDialog.c" + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + SavedSearchDialogSearchRowContainer* c = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp15_ = NULL; + gboolean _tmp16_ = FALSE; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = _c_index; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _c_index = _tmp9_ + 1; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = _c_index; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = _c_size; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!(_tmp10_ < _tmp11_)) { +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 2005 "SavedSearchDialog.c" + } +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = _c_list; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = _c_index; +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp13_); +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + c = (SavedSearchDialogSearchRowContainer*) _tmp14_; +#line 819 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = c; +#line 819 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = saved_search_dialog_search_row_container_is_complete (_tmp15_); +#line 819 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp16_) { +#line 2021 "SavedSearchDialog.c" + gint _tmp17_ = 0; +#line 820 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = valid_rows; +#line 820 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + valid_rows = _tmp17_ + 1; +#line 2027 "SavedSearchDialog.c" + } +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (c); +#line 2031 "SavedSearchDialog.c" + } +#line 818 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_c_list); +#line 2035 "SavedSearchDialog.c" + } +#line 822 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = valid_rows; +#line 822 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = self->priv->row_list; +#line 822 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp19_, GEE_TYPE_COLLECTION, GeeCollection)); +#line 822 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = _tmp20_; +#line 822 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->valid = _tmp18_ == _tmp21_; +#line 2047 "SavedSearchDialog.c" + } else { +#line 824 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->valid = FALSE; +#line 2051 "SavedSearchDialog.c" + } + } + } +#line 828 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = self->priv->dialog; +#line 828 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = self->priv->valid; +#line 828 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_dialog_set_response_sensitive (_tmp22_, (gint) GTK_RESPONSE_OK, _tmp23_); +#line 2061 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowContainer* saved_search_dialog_search_row_container_construct (GType object_type) { + SavedSearchDialogSearchRowContainer* self = NULL; +#line 24 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialogSearchRowContainer*) g_type_create_instance (object_type); +#line 25 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_setup_gui (self); +#line 26 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_set_type (self, SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT); +#line 24 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 2075 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowContainer* saved_search_dialog_search_row_container_new (void) { +#line 24 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return saved_search_dialog_search_row_container_construct (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER); +#line 2082 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowContainer* saved_search_dialog_search_row_container_construct_edit_existing (GType object_type, SearchCondition* sc) { + SavedSearchDialogSearchRowContainer* self = NULL; + SearchCondition* _tmp0_ = NULL; + SearchConditionSearchType _tmp1_ = 0; + SearchConditionSearchType _tmp2_ = 0; + SearchCondition* _tmp3_ = NULL; + SearchConditionSearchType _tmp4_ = 0; + SearchConditionSearchType _tmp5_ = 0; + SavedSearchDialogSearchRow* _tmp6_ = NULL; + SearchCondition* _tmp7_ = NULL; +#line 29 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION (sc), NULL); +#line 29 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialogSearchRowContainer*) g_type_create_instance (object_type); +#line 30 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_setup_gui (self); +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = sc; +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = search_condition_get_search_type (_tmp0_); +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = _tmp1_; +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_set_type (self, _tmp2_); +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = sc; +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = search_condition_get_search_type (_tmp3_); +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = _tmp4_; +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_set_type_combo_box (self, _tmp5_); +#line 33 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = self->priv->my_row; +#line 33 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = sc; +#line 33 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_populate (_tmp6_, _tmp7_); +#line 29 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 2126 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowContainer* saved_search_dialog_search_row_container_new_edit_existing (SearchCondition* sc) { +#line 29 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return saved_search_dialog_search_row_container_construct_edit_existing (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, sc); +#line 2133 "SavedSearchDialog.c" +} + + +static void _saved_search_dialog_search_row_container_on_type_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self) { +#line 49 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_on_type_changed ((SavedSearchDialogSearchRowContainer*) self); +#line 2140 "SavedSearchDialog.c" +} + + +static gboolean _saved_search_dialog_search_row_container_on_removed_gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) { + gboolean result; + result = saved_search_dialog_search_row_container_on_removed ((SavedSearchDialogSearchRowContainer*) self, event); +#line 52 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 2149 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_container_setup_gui (SavedSearchDialogSearchRowContainer* self) { + gint _tmp0_ = 0; + SearchConditionSearchType* _tmp1_ = NULL; + GeeHashMap* _tmp2_ = NULL; + GtkComboBoxText* _tmp3_ = NULL; + GtkComboBoxText* _tmp18_ = NULL; + GtkButton* _tmp19_ = NULL; + GtkButton* _tmp20_ = NULL; + GtkAlignment* _tmp21_ = NULL; + GtkBox* _tmp22_ = NULL; + GtkBox* _tmp23_ = NULL; + GtkComboBoxText* _tmp24_ = NULL; + GtkBox* _tmp25_ = NULL; + GtkAlignment* _tmp26_ = NULL; + GtkBox* _tmp27_ = NULL; + GtkAlignment* _tmp28_ = NULL; + GtkAlignment* _tmp29_ = NULL; + GtkBox* _tmp30_ = NULL; + GtkButton* _tmp31_ = NULL; + GtkBox* _tmp32_ = NULL; +#line 37 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (self)); +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = search_condition_search_type_as_array (&_tmp0_); +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->search_types = (g_free (self->priv->search_types), NULL); +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->search_types = _tmp1_; +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->search_types_length1 = _tmp0_; +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->_search_types_size_ = self->priv->search_types_length1; +#line 39 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = gee_hash_map_new (SEARCH_CONDITION_TYPE_SEARCH_TYPE, NULL, NULL, G_TYPE_INT, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +#line 39 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->search_types_index); +#line 39 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->search_types_index = _tmp2_; +#line 40 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + search_condition_search_type_sort_array (&self->priv->search_types, &self->priv->search_types_length1); +#line 42 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = (GtkComboBoxText*) gtk_combo_box_text_new (); +#line 42 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp3_); +#line 42 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->type_combo); +#line 42 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->type_combo = _tmp3_; +#line 2201 "SavedSearchDialog.c" + { + gint i = 0; +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + i = 0; +#line 2206 "SavedSearchDialog.c" + { + gboolean _tmp4_ = FALSE; +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = TRUE; +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + while (TRUE) { +#line 2213 "SavedSearchDialog.c" + gint _tmp6_ = 0; + SearchConditionSearchType* _tmp7_ = NULL; + gint _tmp7__length1 = 0; + SearchConditionSearchType st = 0; + SearchConditionSearchType* _tmp8_ = NULL; + gint _tmp8__length1 = 0; + gint _tmp9_ = 0; + SearchConditionSearchType _tmp10_ = 0; + GeeHashMap* _tmp11_ = NULL; + SearchConditionSearchType _tmp12_ = 0; + gint _tmp13_ = 0; + GtkComboBoxText* _tmp14_ = NULL; + SearchConditionSearchType _tmp15_ = 0; + gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!_tmp4_) { +#line 2231 "SavedSearchDialog.c" + gint _tmp5_ = 0; +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = i; +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + i = _tmp5_ + 1; +#line 2237 "SavedSearchDialog.c" + } +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = FALSE; +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = i; +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = self->priv->search_types; +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7__length1 = self->priv->search_types_length1; +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!(_tmp6_ < _tmp7__length1)) { +#line 43 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 2251 "SavedSearchDialog.c" + } +#line 44 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = self->priv->search_types; +#line 44 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8__length1 = self->priv->search_types_length1; +#line 44 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = i; +#line 44 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = _tmp8_[_tmp9_]; +#line 44 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + st = _tmp10_; +#line 45 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = self->priv->search_types_index; +#line 45 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = st; +#line 45 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = i; +#line 45 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), (gpointer) ((gintptr) _tmp12_), (gpointer) ((gintptr) _tmp13_)); +#line 46 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = self->priv->type_combo; +#line 46 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = st; +#line 46 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = search_condition_search_type_display_text (_tmp15_); +#line 46 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = _tmp16_; +#line 46 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp14_, _tmp17_); +#line 46 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (_tmp17_); +#line 2283 "SavedSearchDialog.c" + } + } + } +#line 48 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_set_type_combo_box (self, SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT); +#line 49 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = self->priv->type_combo; +#line 49 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp18_, gtk_combo_box_get_type (), GtkComboBox), "changed", (GCallback) _saved_search_dialog_search_row_container_on_type_changed_gtk_combo_box_changed, self); +#line 51 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = (GtkButton*) gtk_button_new_from_icon_name ("list-remove-symbolic", GTK_ICON_SIZE_BUTTON); +#line 51 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp19_); +#line 51 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->remove_button); +#line 51 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->remove_button = _tmp19_; +#line 52 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = self->priv->remove_button; +#line 52 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp20_, gtk_widget_get_type (), GtkWidget), "button-press-event", (GCallback) _saved_search_dialog_search_row_container_on_removed_gtk_widget_button_press_event, self); +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = (GtkAlignment*) gtk_alignment_new ((gfloat) 0, (gfloat) 0, (gfloat) 0, (gfloat) 0); +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp21_); +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->align); +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->align = _tmp21_; +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3); +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp22_); +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->box = _tmp22_; +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = self->priv->box; +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp24_ = self->priv->type_combo; +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp23_, G_TYPE_CHECK_INSTANCE_CAST (_tmp24_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 58 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp25_ = self->priv->box; +#line 58 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp26_ = self->priv->align; +#line 58 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp25_, G_TYPE_CHECK_INSTANCE_CAST (_tmp26_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp27_ = self->priv->box; +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp28_ = (GtkAlignment*) gtk_alignment_new ((gfloat) 0, (gfloat) 0, (gfloat) 0, (gfloat) 0); +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp28_); +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp29_ = _tmp28_; +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp27_, G_TYPE_CHECK_INSTANCE_CAST (_tmp29_, gtk_widget_get_type (), GtkWidget), TRUE, TRUE, (guint) 0); +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_tmp29_); +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp30_ = self->priv->box; +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp31_ = self->priv->remove_button; +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp30_, G_TYPE_CHECK_INSTANCE_CAST (_tmp31_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 61 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp32_ = self->priv->box; +#line 61 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp32_, gtk_widget_get_type (), GtkWidget)); +#line 2355 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_container_on_type_changed (SavedSearchDialogSearchRowContainer* self) { + SearchConditionSearchType _tmp0_ = 0; +#line 64 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (self)); +#line 65 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = saved_search_dialog_search_row_container_get_search_type (self); +#line 65 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_set_type (self, _tmp0_); +#line 66 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_emit_by_name (self, "changed", self); +#line 2369 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_container_set_type_combo_box (SavedSearchDialogSearchRowContainer* self, SearchConditionSearchType st) { + GtkComboBoxText* _tmp0_ = NULL; + GeeHashMap* _tmp1_ = NULL; + SearchConditionSearchType _tmp2_ = 0; + gpointer _tmp3_ = NULL; +#line 69 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (self)); +#line 70 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->type_combo; +#line 70 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = self->priv->search_types_index; +#line 70 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = st; +#line 70 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), (gpointer) ((gintptr) _tmp2_)); +#line 70 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_combo_box_get_type (), GtkComboBox), (gint) ((gintptr) _tmp3_)); +#line 2390 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_container_set_type (SavedSearchDialogSearchRowContainer* self, SearchConditionSearchType type) { + SavedSearchDialogSearchRow* _tmp0_ = NULL; + SearchConditionSearchType _tmp5_ = 0; + GtkAlignment* _tmp12_ = NULL; + SavedSearchDialogSearchRow* _tmp13_ = NULL; + GtkWidget* _tmp14_ = NULL; + GtkWidget* _tmp15_ = NULL; +#line 73 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (self)); +#line 74 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->my_row; +#line 74 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp0_ != NULL) { +#line 2407 "SavedSearchDialog.c" + GtkAlignment* _tmp1_ = NULL; + SavedSearchDialogSearchRow* _tmp2_ = NULL; + GtkWidget* _tmp3_ = NULL; + GtkWidget* _tmp4_ = NULL; +#line 75 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = self->priv->align; +#line 75 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->my_row; +#line 75 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = saved_search_dialog_search_row_get_widget (_tmp2_); +#line 75 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _tmp3_; +#line 75 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_container_remove (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, gtk_container_get_type (), GtkContainer), _tmp4_); +#line 75 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_tmp4_); +#line 2424 "SavedSearchDialog.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = type; +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + switch (_tmp5_) { +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT: +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_EVENT_NAME: +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_FILE_NAME: +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_TAG: +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_COMMENT: +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_TITLE: +#line 2442 "SavedSearchDialog.c" + { + SavedSearchDialogSearchRowText* _tmp6_ = NULL; +#line 84 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = saved_search_dialog_search_row_text_new (self); +#line 84 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_unref0 (self->priv->my_row); +#line 84 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->my_row = G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, SavedSearchDialogSearchRow); +#line 85 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 2453 "SavedSearchDialog.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_MEDIA_TYPE: +#line 2457 "SavedSearchDialog.c" + { + SavedSearchDialogSearchRowMediaType* _tmp7_ = NULL; +#line 88 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = saved_search_dialog_search_row_media_type_new (self); +#line 88 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_unref0 (self->priv->my_row); +#line 88 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->my_row = G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, SavedSearchDialogSearchRow); +#line 89 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 2468 "SavedSearchDialog.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_FLAG_STATE: +#line 2472 "SavedSearchDialog.c" + { + SavedSearchDialogSearchRowFlagged* _tmp8_ = NULL; +#line 92 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = saved_search_dialog_search_row_flagged_new (self); +#line 92 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_unref0 (self->priv->my_row); +#line 92 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->my_row = G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, SavedSearchDialogSearchRow); +#line 93 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 2483 "SavedSearchDialog.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_MODIFIED_STATE: +#line 2487 "SavedSearchDialog.c" + { + SavedSearchDialogSearchRowModified* _tmp9_ = NULL; +#line 96 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = saved_search_dialog_search_row_modified_new (self); +#line 96 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_unref0 (self->priv->my_row); +#line 96 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->my_row = G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, SavedSearchDialogSearchRow); +#line 97 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 2498 "SavedSearchDialog.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_RATING: +#line 2502 "SavedSearchDialog.c" + { + SavedSearchDialogSearchRowRating* _tmp10_ = NULL; +#line 100 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = saved_search_dialog_search_row_rating_new (self); +#line 100 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_unref0 (self->priv->my_row); +#line 100 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->my_row = G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, SavedSearchDialogSearchRow); +#line 101 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 2513 "SavedSearchDialog.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + case SEARCH_CONDITION_SEARCH_TYPE_DATE: +#line 2517 "SavedSearchDialog.c" + { + SavedSearchDialogSearchRowDate* _tmp11_ = NULL; +#line 104 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = saved_search_dialog_search_row_date_new (self); +#line 104 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_unref0 (self->priv->my_row); +#line 104 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->my_row = G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, SavedSearchDialogSearchRow); +#line 105 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 2528 "SavedSearchDialog.c" + } + default: + { +#line 108 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _vala_assert (FALSE, "false"); +#line 109 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + break; +#line 2536 "SavedSearchDialog.c" + } + } +#line 112 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = self->priv->align; +#line 112 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = self->priv->my_row; +#line 112 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = saved_search_dialog_search_row_get_widget (_tmp13_); +#line 112 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = _tmp14_; +#line 112 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, gtk_container_get_type (), GtkContainer), _tmp15_); +#line 112 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_tmp15_); +#line 2551 "SavedSearchDialog.c" +} + + +static SearchConditionSearchType saved_search_dialog_search_row_container_get_search_type (SavedSearchDialogSearchRowContainer* self) { + SearchConditionSearchType result = 0; + SearchConditionSearchType* _tmp0_ = NULL; + gint _tmp0__length1 = 0; + GtkComboBoxText* _tmp1_ = NULL; + gint _tmp2_ = 0; + SearchConditionSearchType _tmp3_ = 0; +#line 115 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (self), 0); +#line 116 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->search_types; +#line 116 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0__length1 = self->priv->search_types_length1; +#line 116 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = self->priv->type_combo; +#line 116 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, gtk_combo_box_get_type (), GtkComboBox)); +#line 116 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = _tmp0_[_tmp2_]; +#line 116 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp3_; +#line 116 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 2578 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_search_row_container_on_removed (SavedSearchDialogSearchRowContainer* self, GdkEventButton* event) { + gboolean result = FALSE; +#line 119 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (self), FALSE); +#line 119 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (event != NULL, FALSE); +#line 120 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_emit_by_name (self, "remove", self); +#line 121 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = FALSE; +#line 121 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 2594 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_container_allow_removal (SavedSearchDialogSearchRowContainer* self, gboolean allow) { + GtkButton* _tmp0_ = NULL; + gboolean _tmp1_ = FALSE; +#line 124 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (self)); +#line 125 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->remove_button; +#line 125 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = allow; +#line 125 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_set_sensitive (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget), _tmp1_); +#line 2609 "SavedSearchDialog.c" +} + + +static GtkWidget* saved_search_dialog_search_row_container_get_widget (SavedSearchDialogSearchRowContainer* self) { + GtkWidget* result = NULL; + GtkBox* _tmp0_ = NULL; + GtkWidget* _tmp1_ = NULL; +#line 128 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (self), NULL); +#line 129 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->box; +#line 129 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget)); +#line 129 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp1_; +#line 129 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 2627 "SavedSearchDialog.c" +} + + +static SearchCondition* saved_search_dialog_search_row_container_get_search_condition (SavedSearchDialogSearchRowContainer* self) { + SearchCondition* result = NULL; + SavedSearchDialogSearchRow* _tmp0_ = NULL; + SearchCondition* _tmp1_ = NULL; +#line 132 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (self), NULL); +#line 133 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->my_row; +#line 133 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_dialog_search_row_get_search_condition (_tmp0_); +#line 133 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp1_; +#line 133 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 2645 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_search_row_container_is_complete (SavedSearchDialogSearchRowContainer* self) { + gboolean result = FALSE; + SavedSearchDialogSearchRow* _tmp0_ = NULL; + gboolean _tmp1_ = FALSE; +#line 136 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (self), FALSE); +#line 137 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->my_row; +#line 137 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_dialog_search_row_is_complete (_tmp0_); +#line 137 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp1_; +#line 137 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 2663 "SavedSearchDialog.c" +} + + +static void g_cclosure_user_marshal_VOID__SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data) { + typedef void (*GMarshalFunc_VOID__SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER) (gpointer data1, gpointer arg_1, gpointer data2); + register GMarshalFunc_VOID__SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER callback; + register GCClosure * cc; + register gpointer data1; + register gpointer data2; + cc = (GCClosure *) closure; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (n_param_values == 2); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (G_CCLOSURE_SWAP_DATA (closure)) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + data1 = closure->data; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + data2 = param_values->data[0].v_pointer; +#line 2682 "SavedSearchDialog.c" + } else { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + data1 = param_values->data[0].v_pointer; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + data2 = closure->data; +#line 2688 "SavedSearchDialog.c" + } +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + callback = (GMarshalFunc_VOID__SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER) (marshal_data ? marshal_data : cc->callback); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + callback (data1, saved_search_dialog_value_get_search_row_container (param_values + 1), data2); +#line 2694 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_value_search_row_container_init (GValue* value) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 2701 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_value_search_row_container_free_value (GValue* value) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (value->data[0].v_pointer) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_unref (value->data[0].v_pointer); +#line 2710 "SavedSearchDialog.c" + } +} + + +static void saved_search_dialog_value_search_row_container_copy_value (const GValue* src_value, GValue* dest_value) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (src_value->data[0].v_pointer) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + dest_value->data[0].v_pointer = saved_search_dialog_search_row_container_ref (src_value->data[0].v_pointer); +#line 2720 "SavedSearchDialog.c" + } else { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + dest_value->data[0].v_pointer = NULL; +#line 2724 "SavedSearchDialog.c" + } +} + + +static gpointer saved_search_dialog_value_search_row_container_peek_pointer (const GValue* value) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return value->data[0].v_pointer; +#line 2732 "SavedSearchDialog.c" +} + + +static gchar* saved_search_dialog_value_search_row_container_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (collect_values[0].v_pointer) { +#line 2739 "SavedSearchDialog.c" + SavedSearchDialogSearchRowContainer* object; + object = collect_values[0].v_pointer; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (object->parent_instance.g_class == NULL) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); +#line 2746 "SavedSearchDialog.c" + } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.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 2750 "SavedSearchDialog.c" + } +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = saved_search_dialog_search_row_container_ref (object); +#line 2754 "SavedSearchDialog.c" + } else { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 2758 "SavedSearchDialog.c" + } +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return NULL; +#line 2762 "SavedSearchDialog.c" +} + + +static gchar* saved_search_dialog_value_search_row_container_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { + SavedSearchDialogSearchRowContainer** object_p; + object_p = collect_values[0].v_pointer; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!object_p) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); +#line 2773 "SavedSearchDialog.c" + } +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!value->data[0].v_pointer) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + *object_p = NULL; +#line 2779 "SavedSearchDialog.c" + } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + *object_p = value->data[0].v_pointer; +#line 2783 "SavedSearchDialog.c" + } else { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + *object_p = saved_search_dialog_search_row_container_ref (value->data[0].v_pointer); +#line 2787 "SavedSearchDialog.c" + } +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return NULL; +#line 2791 "SavedSearchDialog.c" +} + + +static GParamSpec* saved_search_dialog_param_spec_search_row_container (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { + SavedSearchDialogParamSpecSearchRowContainer* spec; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (g_type_is_a (object_type, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER), NULL); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + G_PARAM_SPEC (spec)->value_type = object_type; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return G_PARAM_SPEC (spec); +#line 2805 "SavedSearchDialog.c" +} + + +static gpointer saved_search_dialog_value_get_search_row_container (const GValue* value) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER), NULL); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return value->data[0].v_pointer; +#line 2814 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_value_set_search_row_container (GValue* value, gpointer v_object) { + SavedSearchDialogSearchRowContainer* old; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER)); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + old = value->data[0].v_pointer; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (v_object) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER)); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = v_object; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_ref (value->data[0].v_pointer); +#line 2834 "SavedSearchDialog.c" + } else { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 2838 "SavedSearchDialog.c" + } +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (old) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_unref (old); +#line 2844 "SavedSearchDialog.c" + } +} + + +static void saved_search_dialog_value_take_search_row_container (GValue* value, gpointer v_object) { + SavedSearchDialogSearchRowContainer* old; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER)); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + old = value->data[0].v_pointer; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (v_object) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER)); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = v_object; +#line 2863 "SavedSearchDialog.c" + } else { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 2867 "SavedSearchDialog.c" + } +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (old) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_unref (old); +#line 2873 "SavedSearchDialog.c" + } +} + + +static void saved_search_dialog_search_row_container_class_init (SavedSearchDialogSearchRowContainerClass * klass) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_container_parent_class = g_type_class_peek_parent (klass); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowContainerClass *) klass)->finalize = saved_search_dialog_search_row_container_finalize; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_class_add_private (klass, sizeof (SavedSearchDialogSearchRowContainerPrivate)); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_new ("remove", SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER, G_TYPE_NONE, 1, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_new ("changed", SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER, G_TYPE_NONE, 1, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER); +#line 2889 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_container_instance_init (SavedSearchDialogSearchRowContainer * self) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv = SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER_GET_PRIVATE (self); +#line 22 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->my_row = NULL; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->ref_count = 1; +#line 2900 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_container_finalize (SavedSearchDialogSearchRowContainer* obj) { + SavedSearchDialogSearchRowContainer * self; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, SavedSearchDialogSearchRowContainer); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_destroy (self); +#line 15 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->type_combo); +#line 16 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 17 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->align); +#line 18 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->remove_button); +#line 19 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->search_types = (g_free (self->priv->search_types), NULL); +#line 20 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->search_types_index); +#line 22 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_unref0 (self->priv->my_row); +#line 2924 "SavedSearchDialog.c" +} + + +static GType saved_search_dialog_search_row_container_get_type (void) { + static volatile gsize saved_search_dialog_search_row_container_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_dialog_search_row_container_type_id__volatile)) { + static const GTypeValueTable g_define_type_value_table = { saved_search_dialog_value_search_row_container_init, saved_search_dialog_value_search_row_container_free_value, saved_search_dialog_value_search_row_container_copy_value, saved_search_dialog_value_search_row_container_peek_pointer, "p", saved_search_dialog_value_search_row_container_collect_value, "p", saved_search_dialog_value_search_row_container_lcopy_value }; + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchDialogSearchRowContainerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_dialog_search_row_container_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchDialogSearchRowContainer), 0, (GInstanceInitFunc) saved_search_dialog_search_row_container_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 saved_search_dialog_search_row_container_type_id; + saved_search_dialog_search_row_container_type_id = g_type_register_fundamental (g_type_fundamental_next (), "SavedSearchDialogSearchRowContainer", &g_define_type_info, &g_define_type_fundamental_info, 0); + g_once_init_leave (&saved_search_dialog_search_row_container_type_id__volatile, saved_search_dialog_search_row_container_type_id); + } + return saved_search_dialog_search_row_container_type_id__volatile; +} + + +static gpointer saved_search_dialog_search_row_container_ref (gpointer instance) { + SavedSearchDialogSearchRowContainer* self; + self = instance; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_atomic_int_inc (&self->ref_count); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return instance; +#line 2949 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_container_unref (gpointer instance) { + SavedSearchDialogSearchRowContainer* self; + self = instance; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (g_atomic_int_dec_and_test (&self->ref_count)) { +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + SAVED_SEARCH_DIALOG_SEARCH_ROW_CONTAINER_GET_CLASS (self)->finalize (self); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_free_instance ((GTypeInstance *) self); +#line 2962 "SavedSearchDialog.c" + } +} + + +static GtkWidget* saved_search_dialog_search_row_real_get_widget (SavedSearchDialogSearchRow* self) { +#line 144 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_critical ("Type `%s' does not implement abstract method `saved_search_dialog_search_row_get_widget'", g_type_name (G_TYPE_FROM_INSTANCE (self))); +#line 144 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return NULL; +#line 2972 "SavedSearchDialog.c" +} + + +GtkWidget* saved_search_dialog_search_row_get_widget (SavedSearchDialogSearchRow* self) { +#line 144 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW (self), NULL); +#line 144 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return SAVED_SEARCH_DIALOG_SEARCH_ROW_GET_CLASS (self)->get_widget (self); +#line 2981 "SavedSearchDialog.c" +} + + +static SearchCondition* saved_search_dialog_search_row_real_get_search_condition (SavedSearchDialogSearchRow* self) { +#line 147 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_critical ("Type `%s' does not implement abstract method `saved_search_dialog_search_row_get_search_condition'", g_type_name (G_TYPE_FROM_INSTANCE (self))); +#line 147 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return NULL; +#line 2990 "SavedSearchDialog.c" +} + + +SearchCondition* saved_search_dialog_search_row_get_search_condition (SavedSearchDialogSearchRow* self) { +#line 147 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW (self), NULL); +#line 147 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return SAVED_SEARCH_DIALOG_SEARCH_ROW_GET_CLASS (self)->get_search_condition (self); +#line 2999 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_real_populate (SavedSearchDialogSearchRow* self, SearchCondition* sc) { +#line 150 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_critical ("Type `%s' does not implement abstract method `saved_search_dialog_search_row_populate'", g_type_name (G_TYPE_FROM_INSTANCE (self))); +#line 150 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return; +#line 3008 "SavedSearchDialog.c" +} + + +void saved_search_dialog_search_row_populate (SavedSearchDialogSearchRow* self, SearchCondition* sc) { +#line 150 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW (self)); +#line 150 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + SAVED_SEARCH_DIALOG_SEARCH_ROW_GET_CLASS (self)->populate (self, sc); +#line 3017 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_search_row_real_is_complete (SavedSearchDialogSearchRow* self) { +#line 153 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_critical ("Type `%s' does not implement abstract method `saved_search_dialog_search_row_is_complete'", g_type_name (G_TYPE_FROM_INSTANCE (self))); +#line 153 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return FALSE; +#line 3026 "SavedSearchDialog.c" +} + + +gboolean saved_search_dialog_search_row_is_complete (SavedSearchDialogSearchRow* self) { +#line 153 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW (self), FALSE); +#line 153 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return SAVED_SEARCH_DIALOG_SEARCH_ROW_GET_CLASS (self)->is_complete (self); +#line 3035 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRow* saved_search_dialog_search_row_construct (GType object_type) { + SavedSearchDialogSearchRow* self = NULL; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialogSearchRow*) g_type_create_instance (object_type); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 3045 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_value_search_row_init (GValue* value) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 3052 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_value_search_row_free_value (GValue* value) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (value->data[0].v_pointer) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_unref (value->data[0].v_pointer); +#line 3061 "SavedSearchDialog.c" + } +} + + +static void saved_search_dialog_value_search_row_copy_value (const GValue* src_value, GValue* dest_value) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (src_value->data[0].v_pointer) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + dest_value->data[0].v_pointer = saved_search_dialog_search_row_ref (src_value->data[0].v_pointer); +#line 3071 "SavedSearchDialog.c" + } else { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + dest_value->data[0].v_pointer = NULL; +#line 3075 "SavedSearchDialog.c" + } +} + + +static gpointer saved_search_dialog_value_search_row_peek_pointer (const GValue* value) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return value->data[0].v_pointer; +#line 3083 "SavedSearchDialog.c" +} + + +static gchar* saved_search_dialog_value_search_row_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (collect_values[0].v_pointer) { +#line 3090 "SavedSearchDialog.c" + SavedSearchDialogSearchRow* object; + object = collect_values[0].v_pointer; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (object->parent_instance.g_class == NULL) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); +#line 3097 "SavedSearchDialog.c" + } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.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 3101 "SavedSearchDialog.c" + } +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = saved_search_dialog_search_row_ref (object); +#line 3105 "SavedSearchDialog.c" + } else { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 3109 "SavedSearchDialog.c" + } +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return NULL; +#line 3113 "SavedSearchDialog.c" +} + + +static gchar* saved_search_dialog_value_search_row_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { + SavedSearchDialogSearchRow** object_p; + object_p = collect_values[0].v_pointer; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!object_p) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); +#line 3124 "SavedSearchDialog.c" + } +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!value->data[0].v_pointer) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + *object_p = NULL; +#line 3130 "SavedSearchDialog.c" + } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + *object_p = value->data[0].v_pointer; +#line 3134 "SavedSearchDialog.c" + } else { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + *object_p = saved_search_dialog_search_row_ref (value->data[0].v_pointer); +#line 3138 "SavedSearchDialog.c" + } +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return NULL; +#line 3142 "SavedSearchDialog.c" +} + + +static GParamSpec* saved_search_dialog_param_spec_search_row (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { + SavedSearchDialogParamSpecSearchRow* spec; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (g_type_is_a (object_type, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW), NULL); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + G_PARAM_SPEC (spec)->value_type = object_type; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return G_PARAM_SPEC (spec); +#line 3156 "SavedSearchDialog.c" +} + + +static gpointer saved_search_dialog_value_get_search_row (const GValue* value) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW), NULL); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return value->data[0].v_pointer; +#line 3165 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_value_set_search_row (GValue* value, gpointer v_object) { + SavedSearchDialogSearchRow* old; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW)); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + old = value->data[0].v_pointer; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (v_object) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW)); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = v_object; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_ref (value->data[0].v_pointer); +#line 3185 "SavedSearchDialog.c" + } else { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 3189 "SavedSearchDialog.c" + } +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (old) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_unref (old); +#line 3195 "SavedSearchDialog.c" + } +} + + +static void saved_search_dialog_value_take_search_row (GValue* value, gpointer v_object) { + SavedSearchDialogSearchRow* old; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW)); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + old = value->data[0].v_pointer; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (v_object) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW)); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = v_object; +#line 3214 "SavedSearchDialog.c" + } else { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 3218 "SavedSearchDialog.c" + } +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (old) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_unref (old); +#line 3224 "SavedSearchDialog.c" + } +} + + +static void saved_search_dialog_search_row_class_init (SavedSearchDialogSearchRowClass * klass) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_parent_class = g_type_class_peek_parent (klass); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->finalize = saved_search_dialog_search_row_finalize; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_widget = saved_search_dialog_search_row_real_get_widget; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_search_condition = saved_search_dialog_search_row_real_get_search_condition; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->populate = saved_search_dialog_search_row_real_populate; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->is_complete = saved_search_dialog_search_row_real_is_complete; +#line 3242 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_instance_init (SavedSearchDialogSearchRow * self) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->ref_count = 1; +#line 3249 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_finalize (SavedSearchDialogSearchRow* obj) { + SavedSearchDialogSearchRow * self; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, SavedSearchDialogSearchRow); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_destroy (self); +#line 3259 "SavedSearchDialog.c" +} + + +static GType saved_search_dialog_search_row_get_type (void) { + static volatile gsize saved_search_dialog_search_row_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_dialog_search_row_type_id__volatile)) { + static const GTypeValueTable g_define_type_value_table = { saved_search_dialog_value_search_row_init, saved_search_dialog_value_search_row_free_value, saved_search_dialog_value_search_row_copy_value, saved_search_dialog_value_search_row_peek_pointer, "p", saved_search_dialog_value_search_row_collect_value, "p", saved_search_dialog_value_search_row_lcopy_value }; + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchDialogSearchRowClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_dialog_search_row_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchDialogSearchRow), 0, (GInstanceInitFunc) saved_search_dialog_search_row_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 saved_search_dialog_search_row_type_id; + saved_search_dialog_search_row_type_id = g_type_register_fundamental (g_type_fundamental_next (), "SavedSearchDialogSearchRow", &g_define_type_info, &g_define_type_fundamental_info, G_TYPE_FLAG_ABSTRACT); + g_once_init_leave (&saved_search_dialog_search_row_type_id__volatile, saved_search_dialog_search_row_type_id); + } + return saved_search_dialog_search_row_type_id__volatile; +} + + +static gpointer saved_search_dialog_search_row_ref (gpointer instance) { + SavedSearchDialogSearchRow* self; + self = instance; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_atomic_int_inc (&self->ref_count); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return instance; +#line 3284 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_unref (gpointer instance) { + SavedSearchDialogSearchRow* self; + self = instance; +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (g_atomic_int_dec_and_test (&self->ref_count)) { +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + SAVED_SEARCH_DIALOG_SEARCH_ROW_GET_CLASS (self)->finalize (self); +#line 142 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_free_instance ((GTypeInstance *) self); +#line 3297 "SavedSearchDialog.c" + } +} + + +static void _saved_search_dialog_search_row_text_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self) { +#line 190 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_text_on_changed ((SavedSearchDialogSearchRowText*) self); +#line 3305 "SavedSearchDialog.c" +} + + +static void _saved_search_dialog_search_row_text_on_changed_gtk_editable_changed (GtkEditable* _sender, gpointer self) { +#line 191 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_text_on_changed ((SavedSearchDialogSearchRowText*) self); +#line 3312 "SavedSearchDialog.c" +} + + +static gpointer _saved_search_dialog_search_row_container_ref0 (gpointer self) { +#line 164 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self ? saved_search_dialog_search_row_container_ref (self) : NULL; +#line 3319 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowText* saved_search_dialog_search_row_text_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent) { + SavedSearchDialogSearchRowText* self = NULL; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + GtkComboBoxText* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + GtkComboBoxText* _tmp5_ = NULL; + const gchar* _tmp6_ = NULL; + GtkComboBoxText* _tmp7_ = NULL; + const gchar* _tmp8_ = NULL; + GtkComboBoxText* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + GtkComboBoxText* _tmp11_ = NULL; + const gchar* _tmp12_ = NULL; + GtkComboBoxText* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; + GtkComboBoxText* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + GtkComboBoxText* _tmp17_ = NULL; + GtkComboBoxText* _tmp18_ = NULL; + GtkEntry* _tmp19_ = NULL; + GtkEntry* _tmp20_ = NULL; + GtkEntry* _tmp21_ = NULL; + GtkEntry* _tmp22_ = NULL; + GtkBox* _tmp23_ = NULL; + GtkBox* _tmp24_ = NULL; + GtkComboBoxText* _tmp25_ = NULL; + GtkBox* _tmp26_ = NULL; + GtkEntry* _tmp27_ = NULL; + GtkBox* _tmp28_ = NULL; +#line 163 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (parent), NULL); +#line 163 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialogSearchRowText*) saved_search_dialog_search_row_construct (object_type); +#line 164 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = parent; +#line 164 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _saved_search_dialog_search_row_container_ref0 (_tmp0_); +#line 164 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 164 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->parent = _tmp1_; +#line 167 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = (GtkComboBoxText*) gtk_combo_box_text_new (); +#line 167 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp2_); +#line 167 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->text_context); +#line 167 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->text_context = _tmp2_; +#line 168 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->text_context; +#line 168 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _ ("contains"); +#line 168 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp3_, _tmp4_); +#line 169 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->text_context; +#line 169 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = _ ("is exactly"); +#line 169 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp5_, _tmp6_); +#line 170 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = self->priv->text_context; +#line 170 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = _ ("starts with"); +#line 170 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp7_, _tmp8_); +#line 171 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = self->priv->text_context; +#line 171 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = _ ("ends with"); +#line 171 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp9_, _tmp10_); +#line 172 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = self->priv->text_context; +#line 172 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = _ ("does not contain"); +#line 172 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp11_, _tmp12_); +#line 173 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = self->priv->text_context; +#line 173 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = _ ("is not set"); +#line 173 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp13_, _tmp14_); +#line 174 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = self->priv->text_context; +#line 174 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = _ ("is set"); +#line 174 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp15_, _tmp16_); +#line 175 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = self->priv->text_context; +#line 175 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, gtk_combo_box_get_type (), GtkComboBox), 0); +#line 176 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = self->priv->text_context; +#line 176 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp18_, gtk_combo_box_get_type (), GtkComboBox), "changed", (GCallback) _saved_search_dialog_search_row_text_on_changed_gtk_combo_box_changed, self); +#line 178 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = (GtkEntry*) gtk_entry_new (); +#line 178 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp19_); +#line 178 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->entry); +#line 178 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->entry = _tmp19_; +#line 179 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = self->priv->entry; +#line 179 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_entry_set_width_chars (_tmp20_, 25); +#line 180 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = self->priv->entry; +#line 180 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_entry_set_activates_default (_tmp21_, TRUE); +#line 181 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = self->priv->entry; +#line 181 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp22_, GTK_TYPE_EDITABLE, GtkEditable), "changed", (GCallback) _saved_search_dialog_search_row_text_on_changed_gtk_editable_changed, self); +#line 183 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3); +#line 183 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp23_); +#line 183 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 183 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->box = _tmp23_; +#line 184 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp24_ = self->priv->box; +#line 184 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp25_ = self->priv->text_context; +#line 184 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp24_, G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 185 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp26_ = self->priv->box; +#line 185 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp27_ = self->priv->entry; +#line 185 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp26_, G_TYPE_CHECK_INSTANCE_CAST (_tmp27_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 186 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp28_ = self->priv->box; +#line 186 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp28_, gtk_widget_get_type (), GtkWidget)); +#line 163 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 3470 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowText* saved_search_dialog_search_row_text_new (SavedSearchDialogSearchRowContainer* parent) { +#line 163 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return saved_search_dialog_search_row_text_construct (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT, parent); +#line 3477 "SavedSearchDialog.c" +} + + +static GtkWidget* saved_search_dialog_search_row_text_real_get_widget (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowText * self; + GtkWidget* result = NULL; + GtkBox* _tmp0_ = NULL; + GtkWidget* _tmp1_ = NULL; +#line 194 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT, SavedSearchDialogSearchRowText); +#line 195 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->box; +#line 195 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget)); +#line 195 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp1_; +#line 195 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 3496 "SavedSearchDialog.c" +} + + +static SearchCondition* saved_search_dialog_search_row_text_real_get_search_condition (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowText * self; + SearchCondition* result = NULL; + SearchConditionSearchType type = 0; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SearchConditionSearchType _tmp1_ = 0; + gchar* text = NULL; + GtkEntry* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + SearchConditionTextContext context = 0; + SearchConditionTextContext _tmp5_ = 0; + SearchConditionText* c = NULL; + SearchConditionText* _tmp6_ = NULL; +#line 198 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT, SavedSearchDialogSearchRowText); +#line 199 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 199 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_dialog_search_row_container_get_search_type (_tmp0_); +#line 199 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + type = _tmp1_; +#line 200 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->entry; +#line 200 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = gtk_entry_get_text (_tmp2_); +#line 200 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = g_strdup (_tmp3_); +#line 200 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + text = _tmp4_; +#line 201 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = saved_search_dialog_search_row_text_get_text_context (self); +#line 201 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + context = _tmp5_; +#line 202 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = search_condition_text_new (type, text, context); +#line 202 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + c = _tmp6_; +#line 203 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = G_TYPE_CHECK_INSTANCE_CAST (c, TYPE_SEARCH_CONDITION, SearchCondition); +#line 203 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (text); +#line 203 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 3544 "SavedSearchDialog.c" +} + + +static gpointer _search_condition_ref0 (gpointer self) { +#line 207 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self ? search_condition_ref (self) : NULL; +#line 3551 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_text_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc) { + SavedSearchDialogSearchRowText * self; + SearchConditionText* text = NULL; + SearchCondition* _tmp0_ = NULL; + SearchConditionText* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + SearchConditionTextContext _tmp3_ = 0; + SearchConditionTextContext _tmp4_ = 0; + GtkEntry* _tmp5_ = NULL; + const gchar* _tmp6_ = NULL; + const gchar* _tmp7_ = NULL; +#line 206 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT, SavedSearchDialogSearchRowText); +#line 206 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SEARCH_CONDITION (sc)); +#line 207 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = sc; +#line 207 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _search_condition_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, TYPE_SEARCH_CONDITION_TEXT) ? ((SearchConditionText*) _tmp0_) : NULL); +#line 207 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + text = _tmp1_; +#line 208 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _vala_assert (text != NULL, "text != null"); +#line 209 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->text_context; +#line 209 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = search_condition_text_get_context (text); +#line 209 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _tmp3_; +#line 209 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox), (gint) _tmp4_); +#line 210 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->entry; +#line 210 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = search_condition_text_get_text (text); +#line 210 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = _tmp6_; +#line 210 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_entry_set_text (_tmp5_, _tmp7_); +#line 211 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_text_on_changed (self); +#line 206 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _search_condition_unref0 (text); +#line 3598 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_search_row_text_real_is_complete (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowText * self; + gboolean result = FALSE; + gboolean _tmp0_ = FALSE; + gboolean _tmp1_ = FALSE; + GtkEntry* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + gboolean _tmp7_ = FALSE; +#line 214 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT, SavedSearchDialogSearchRowText); +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->entry; +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = gtk_entry_get_text (_tmp2_); +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _tmp3_; +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = string_chomp (_tmp4_); +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = _tmp5_; +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = g_strcmp0 (_tmp6_, "") != 0; +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (_tmp6_); +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp7_) { +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = TRUE; +#line 3633 "SavedSearchDialog.c" + } else { + SearchConditionTextContext _tmp8_ = 0; +#line 216 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = saved_search_dialog_search_row_text_get_text_context (self); +#line 216 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _tmp8_ == SEARCH_CONDITION_TEXT_CONTEXT_IS_NOT_SET; +#line 3640 "SavedSearchDialog.c" + } +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp1_) { +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = TRUE; +#line 3646 "SavedSearchDialog.c" + } else { + SearchConditionTextContext _tmp9_ = 0; +#line 217 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = saved_search_dialog_search_row_text_get_text_context (self); +#line 217 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = _tmp9_ == SEARCH_CONDITION_TEXT_CONTEXT_IS_SET; +#line 3653 "SavedSearchDialog.c" + } +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp0_; +#line 215 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 3659 "SavedSearchDialog.c" +} + + +static SearchConditionTextContext saved_search_dialog_search_row_text_get_text_context (SavedSearchDialogSearchRowText* self) { + SearchConditionTextContext result = 0; + GtkComboBoxText* _tmp0_ = NULL; + gint _tmp1_ = 0; +#line 220 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_TEXT (self), 0); +#line 221 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->text_context; +#line 221 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_combo_box_get_type (), GtkComboBox)); +#line 221 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = (SearchConditionTextContext) _tmp1_; +#line 221 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 3677 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_text_on_changed (SavedSearchDialogSearchRowText* self) { + gboolean _tmp0_ = FALSE; + SearchConditionTextContext _tmp1_ = 0; + SavedSearchDialogSearchRowContainer* _tmp5_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp6_ = NULL; +#line 224 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_TEXT (self)); +#line 225 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_dialog_search_row_text_get_text_context (self); +#line 225 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp1_ == SEARCH_CONDITION_TEXT_CONTEXT_IS_NOT_SET) { +#line 225 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = TRUE; +#line 3694 "SavedSearchDialog.c" + } else { + SearchConditionTextContext _tmp2_ = 0; +#line 226 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = saved_search_dialog_search_row_text_get_text_context (self); +#line 226 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = _tmp2_ == SEARCH_CONDITION_TEXT_CONTEXT_IS_SET; +#line 3701 "SavedSearchDialog.c" + } +#line 225 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp0_) { +#line 3705 "SavedSearchDialog.c" + GtkEntry* _tmp3_ = NULL; +#line 227 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->entry; +#line 227 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_hide (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_widget_get_type (), GtkWidget)); +#line 3711 "SavedSearchDialog.c" + } else { + GtkEntry* _tmp4_ = NULL; +#line 229 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = self->priv->entry; +#line 229 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, gtk_widget_get_type (), GtkWidget)); +#line 3718 "SavedSearchDialog.c" + } +#line 232 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->parent; +#line 232 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = self->priv->parent; +#line 232 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_emit_by_name (_tmp5_, "changed", _tmp6_); +#line 3726 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_text_class_init (SavedSearchDialogSearchRowTextClass * klass) { +#line 156 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_text_parent_class = g_type_class_peek_parent (klass); +#line 156 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->finalize = saved_search_dialog_search_row_text_finalize; +#line 156 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_class_add_private (klass, sizeof (SavedSearchDialogSearchRowTextPrivate)); +#line 156 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_widget = saved_search_dialog_search_row_text_real_get_widget; +#line 156 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_search_condition = saved_search_dialog_search_row_text_real_get_search_condition; +#line 156 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->populate = saved_search_dialog_search_row_text_real_populate; +#line 156 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->is_complete = saved_search_dialog_search_row_text_real_is_complete; +#line 3745 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_text_instance_init (SavedSearchDialogSearchRowText * self) { +#line 156 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv = SAVED_SEARCH_DIALOG_SEARCH_ROW_TEXT_GET_PRIVATE (self); +#line 3752 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_text_finalize (SavedSearchDialogSearchRow* obj) { + SavedSearchDialogSearchRowText * self; + GtkComboBoxText* _tmp0_ = NULL; + guint _tmp1_ = 0U; + GtkEntry* _tmp2_ = NULL; + guint _tmp3_ = 0U; +#line 156 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_TEXT, SavedSearchDialogSearchRowText); +#line 190 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->text_context; +#line 190 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", gtk_combo_box_get_type (), &_tmp1_, NULL, FALSE); +#line 190 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_combo_box_get_type (), GtkComboBox), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _saved_search_dialog_search_row_text_on_changed_gtk_combo_box_changed, self); +#line 191 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->entry; +#line 191 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", GTK_TYPE_EDITABLE, &_tmp3_, NULL, FALSE); +#line 191 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GTK_TYPE_EDITABLE, GtkEditable), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp3_, 0, NULL, (GCallback) _saved_search_dialog_search_row_text_on_changed_gtk_editable_changed, self); +#line 157 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 158 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->text_context); +#line 159 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->entry); +#line 161 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 156 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + SAVED_SEARCH_DIALOG_SEARCH_ROW_CLASS (saved_search_dialog_search_row_text_parent_class)->finalize (obj); +#line 3786 "SavedSearchDialog.c" +} + + +static GType saved_search_dialog_search_row_text_get_type (void) { + static volatile gsize saved_search_dialog_search_row_text_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_dialog_search_row_text_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchDialogSearchRowTextClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_dialog_search_row_text_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchDialogSearchRowText), 0, (GInstanceInitFunc) saved_search_dialog_search_row_text_instance_init, NULL }; + GType saved_search_dialog_search_row_text_type_id; + saved_search_dialog_search_row_text_type_id = g_type_register_static (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, "SavedSearchDialogSearchRowText", &g_define_type_info, 0); + g_once_init_leave (&saved_search_dialog_search_row_text_type_id__volatile, saved_search_dialog_search_row_text_type_id); + } + return saved_search_dialog_search_row_text_type_id__volatile; +} + + +static void _saved_search_dialog_search_row_media_type_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self) { +#line 268 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_media_type_on_changed ((SavedSearchDialogSearchRowMediaType*) self); +#line 3805 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowMediaType* saved_search_dialog_search_row_media_type_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent) { + SavedSearchDialogSearchRowMediaType* self = NULL; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + GtkComboBoxText* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + GtkComboBoxText* _tmp5_ = NULL; + const gchar* _tmp6_ = NULL; + GtkComboBoxText* _tmp7_ = NULL; + GtkComboBoxText* _tmp8_ = NULL; + GtkComboBoxText* _tmp9_ = NULL; + GtkComboBoxText* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; + GtkComboBoxText* _tmp12_ = NULL; + const gchar* _tmp13_ = NULL; + GtkComboBoxText* _tmp14_ = NULL; + const gchar* _tmp15_ = NULL; + GtkComboBoxText* _tmp16_ = NULL; + GtkComboBoxText* _tmp17_ = NULL; + GtkBox* _tmp18_ = NULL; + GtkBox* _tmp19_ = NULL; + GtkComboBoxText* _tmp20_ = NULL; + GtkBox* _tmp21_ = NULL; + GtkComboBoxText* _tmp22_ = NULL; + GtkBox* _tmp23_ = NULL; +#line 243 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (parent), NULL); +#line 243 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialogSearchRowMediaType*) saved_search_dialog_search_row_construct (object_type); +#line 244 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = parent; +#line 244 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _saved_search_dialog_search_row_container_ref0 (_tmp0_); +#line 244 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 244 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->parent = _tmp1_; +#line 247 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = (GtkComboBoxText*) gtk_combo_box_text_new (); +#line 247 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp2_); +#line 247 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->media_context); +#line 247 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->media_context = _tmp2_; +#line 248 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->media_context; +#line 248 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _ ("is"); +#line 248 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp3_, _tmp4_); +#line 249 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->media_context; +#line 249 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = _ ("is not"); +#line 249 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp5_, _tmp6_); +#line 250 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = self->priv->media_context; +#line 250 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, gtk_combo_box_get_type (), GtkComboBox), 0); +#line 251 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = self->priv->media_context; +#line 251 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, gtk_combo_box_get_type (), GtkComboBox), "changed", (GCallback) _saved_search_dialog_search_row_media_type_on_changed_gtk_combo_box_changed, self); +#line 254 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = (GtkComboBoxText*) gtk_combo_box_text_new (); +#line 254 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp9_); +#line 254 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->media_type); +#line 254 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->media_type = _tmp9_; +#line 255 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = self->priv->media_type; +#line 255 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = _ ("any photo"); +#line 255 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp10_, _tmp11_); +#line 256 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = self->priv->media_type; +#line 256 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = _ ("a raw photo"); +#line 256 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp12_, _tmp13_); +#line 257 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = self->priv->media_type; +#line 257 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = _ ("a video"); +#line 257 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp14_, _tmp15_); +#line 258 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = self->priv->media_type; +#line 258 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp16_, gtk_combo_box_get_type (), GtkComboBox), 0); +#line 259 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = self->priv->media_type; +#line 259 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, gtk_combo_box_get_type (), GtkComboBox), "changed", (GCallback) _saved_search_dialog_search_row_media_type_on_changed_gtk_combo_box_changed, self); +#line 261 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3); +#line 261 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp18_); +#line 261 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 261 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->box = _tmp18_; +#line 262 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = self->priv->box; +#line 262 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = self->priv->media_context; +#line 262 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp19_, G_TYPE_CHECK_INSTANCE_CAST (_tmp20_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 263 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = self->priv->box; +#line 263 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = self->priv->media_type; +#line 263 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp21_, G_TYPE_CHECK_INSTANCE_CAST (_tmp22_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 264 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = self->priv->box; +#line 264 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp23_, gtk_widget_get_type (), GtkWidget)); +#line 243 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 3935 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowMediaType* saved_search_dialog_search_row_media_type_new (SavedSearchDialogSearchRowContainer* parent) { +#line 243 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return saved_search_dialog_search_row_media_type_construct (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE, parent); +#line 3942 "SavedSearchDialog.c" +} + + +static GtkWidget* saved_search_dialog_search_row_media_type_real_get_widget (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowMediaType * self; + GtkWidget* result = NULL; + GtkBox* _tmp0_ = NULL; + GtkWidget* _tmp1_ = NULL; +#line 272 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE, SavedSearchDialogSearchRowMediaType); +#line 273 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->box; +#line 273 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget)); +#line 273 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp1_; +#line 273 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 3961 "SavedSearchDialog.c" +} + + +static SearchCondition* saved_search_dialog_search_row_media_type_real_get_search_condition (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowMediaType * self; + SearchCondition* result = NULL; + SearchConditionSearchType search_type = 0; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SearchConditionSearchType _tmp1_ = 0; + SearchConditionMediaTypeContext context = 0; + GtkComboBoxText* _tmp2_ = NULL; + gint _tmp3_ = 0; + SearchConditionMediaTypeMediaType type = 0; + GtkComboBoxText* _tmp4_ = NULL; + gint _tmp5_ = 0; + SearchConditionMediaType* c = NULL; + SearchConditionMediaType* _tmp6_ = NULL; +#line 276 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE, SavedSearchDialogSearchRowMediaType); +#line 277 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 277 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_dialog_search_row_container_get_search_type (_tmp0_); +#line 277 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + search_type = _tmp1_; +#line 278 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->media_context; +#line 278 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox)); +#line 278 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + context = (SearchConditionMediaTypeContext) _tmp3_; +#line 279 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = self->priv->media_type; +#line 279 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, gtk_combo_box_get_type (), GtkComboBox)); +#line 279 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + type = (SearchConditionMediaTypeMediaType) _tmp5_; +#line 280 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = search_condition_media_type_new (search_type, context, type); +#line 280 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + c = _tmp6_; +#line 281 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = G_TYPE_CHECK_INSTANCE_CAST (c, TYPE_SEARCH_CONDITION, SearchCondition); +#line 281 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 4007 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_media_type_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc) { + SavedSearchDialogSearchRowMediaType * self; + SearchConditionMediaType* media = NULL; + SearchCondition* _tmp0_ = NULL; + SearchConditionMediaType* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + SearchConditionMediaTypeContext _tmp3_ = 0; + SearchConditionMediaTypeContext _tmp4_ = 0; + GtkComboBoxText* _tmp5_ = NULL; + SearchConditionMediaTypeMediaType _tmp6_ = 0; + SearchConditionMediaTypeMediaType _tmp7_ = 0; +#line 284 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE, SavedSearchDialogSearchRowMediaType); +#line 284 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SEARCH_CONDITION (sc)); +#line 285 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = sc; +#line 285 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _search_condition_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, TYPE_SEARCH_CONDITION_MEDIA_TYPE) ? ((SearchConditionMediaType*) _tmp0_) : NULL); +#line 285 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + media = _tmp1_; +#line 286 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _vala_assert (media != NULL, "media != null"); +#line 287 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->media_context; +#line 287 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = search_condition_media_type_get_context (media); +#line 287 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _tmp3_; +#line 287 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox), (gint) _tmp4_); +#line 288 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->media_type; +#line 288 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = search_condition_media_type_get_media_type (media); +#line 288 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = _tmp6_; +#line 288 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, gtk_combo_box_get_type (), GtkComboBox), (gint) _tmp7_); +#line 284 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _search_condition_unref0 (media); +#line 4052 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_search_row_media_type_real_is_complete (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowMediaType * self; + gboolean result = FALSE; +#line 291 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE, SavedSearchDialogSearchRowMediaType); +#line 292 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = TRUE; +#line 292 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 4065 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_media_type_on_changed (SavedSearchDialogSearchRowMediaType* self) { + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; +#line 295 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_MEDIA_TYPE (self)); +#line 296 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 296 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = self->priv->parent; +#line 296 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_emit_by_name (_tmp0_, "changed", _tmp1_); +#line 4080 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_media_type_class_init (SavedSearchDialogSearchRowMediaTypeClass * klass) { +#line 236 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_media_type_parent_class = g_type_class_peek_parent (klass); +#line 236 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->finalize = saved_search_dialog_search_row_media_type_finalize; +#line 236 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_class_add_private (klass, sizeof (SavedSearchDialogSearchRowMediaTypePrivate)); +#line 236 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_widget = saved_search_dialog_search_row_media_type_real_get_widget; +#line 236 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_search_condition = saved_search_dialog_search_row_media_type_real_get_search_condition; +#line 236 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->populate = saved_search_dialog_search_row_media_type_real_populate; +#line 236 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->is_complete = saved_search_dialog_search_row_media_type_real_is_complete; +#line 4099 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_media_type_instance_init (SavedSearchDialogSearchRowMediaType * self) { +#line 236 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv = SAVED_SEARCH_DIALOG_SEARCH_ROW_MEDIA_TYPE_GET_PRIVATE (self); +#line 4106 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_media_type_finalize (SavedSearchDialogSearchRow* obj) { + SavedSearchDialogSearchRowMediaType * self; + GtkComboBoxText* _tmp0_ = NULL; + guint _tmp1_ = 0U; + GtkComboBoxText* _tmp2_ = NULL; + guint _tmp3_ = 0U; +#line 236 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MEDIA_TYPE, SavedSearchDialogSearchRowMediaType); +#line 268 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->media_context; +#line 268 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", gtk_combo_box_get_type (), &_tmp1_, NULL, FALSE); +#line 268 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_combo_box_get_type (), GtkComboBox), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _saved_search_dialog_search_row_media_type_on_changed_gtk_combo_box_changed, self); +#line 269 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->media_type; +#line 269 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", gtk_combo_box_get_type (), &_tmp3_, NULL, FALSE); +#line 269 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp3_, 0, NULL, (GCallback) _saved_search_dialog_search_row_media_type_on_changed_gtk_combo_box_changed, self); +#line 237 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 238 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->media_context); +#line 239 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->media_type); +#line 241 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 236 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + SAVED_SEARCH_DIALOG_SEARCH_ROW_CLASS (saved_search_dialog_search_row_media_type_parent_class)->finalize (obj); +#line 4140 "SavedSearchDialog.c" +} + + +static GType saved_search_dialog_search_row_media_type_get_type (void) { + static volatile gsize saved_search_dialog_search_row_media_type_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_dialog_search_row_media_type_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchDialogSearchRowMediaTypeClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_dialog_search_row_media_type_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchDialogSearchRowMediaType), 0, (GInstanceInitFunc) saved_search_dialog_search_row_media_type_instance_init, NULL }; + GType saved_search_dialog_search_row_media_type_type_id; + saved_search_dialog_search_row_media_type_type_id = g_type_register_static (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, "SavedSearchDialogSearchRowMediaType", &g_define_type_info, 0); + g_once_init_leave (&saved_search_dialog_search_row_media_type_type_id__volatile, saved_search_dialog_search_row_media_type_type_id); + } + return saved_search_dialog_search_row_media_type_type_id__volatile; +} + + +static void _saved_search_dialog_search_row_modified_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self) { +#line 330 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_modified_on_changed ((SavedSearchDialogSearchRowModified*) self); +#line 4159 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowModified* saved_search_dialog_search_row_modified_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent) { + SavedSearchDialogSearchRowModified* self = NULL; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + GtkComboBoxText* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + GtkComboBoxText* _tmp5_ = NULL; + const gchar* _tmp6_ = NULL; + GtkComboBoxText* _tmp7_ = NULL; + GtkComboBoxText* _tmp8_ = NULL; + GtkComboBoxText* _tmp9_ = NULL; + GtkComboBoxText* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; + GtkComboBoxText* _tmp12_ = NULL; + const gchar* _tmp13_ = NULL; + GtkComboBoxText* _tmp14_ = NULL; + const gchar* _tmp15_ = NULL; + GtkComboBoxText* _tmp16_ = NULL; + GtkComboBoxText* _tmp17_ = NULL; + GtkBox* _tmp18_ = NULL; + GtkBox* _tmp19_ = NULL; + GtkComboBoxText* _tmp20_ = NULL; + GtkBox* _tmp21_ = NULL; + GtkComboBoxText* _tmp22_ = NULL; + GtkBox* _tmp23_ = NULL; +#line 307 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (parent), NULL); +#line 307 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialogSearchRowModified*) saved_search_dialog_search_row_construct (object_type); +#line 308 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = parent; +#line 308 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _saved_search_dialog_search_row_container_ref0 (_tmp0_); +#line 308 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 308 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->parent = _tmp1_; +#line 310 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = (GtkComboBoxText*) gtk_combo_box_text_new (); +#line 310 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp2_); +#line 310 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->modified_context); +#line 310 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->modified_context = _tmp2_; +#line 311 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->modified_context; +#line 311 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _ ("has"); +#line 311 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp3_, _tmp4_); +#line 312 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->modified_context; +#line 312 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = _ ("has no"); +#line 312 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp5_, _tmp6_); +#line 313 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = self->priv->modified_context; +#line 313 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, gtk_combo_box_get_type (), GtkComboBox), 0); +#line 314 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = self->priv->modified_context; +#line 314 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, gtk_combo_box_get_type (), GtkComboBox), "changed", (GCallback) _saved_search_dialog_search_row_modified_on_changed_gtk_combo_box_changed, self); +#line 316 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = (GtkComboBoxText*) gtk_combo_box_text_new (); +#line 316 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp9_); +#line 316 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->modified_state); +#line 316 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->modified_state = _tmp9_; +#line 317 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = self->priv->modified_state; +#line 317 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = _ ("modifications"); +#line 317 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp10_, _tmp11_); +#line 318 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = self->priv->modified_state; +#line 318 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = _ ("internal modifications"); +#line 318 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp12_, _tmp13_); +#line 319 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = self->priv->modified_state; +#line 319 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = _ ("external modifications"); +#line 319 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp14_, _tmp15_); +#line 320 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = self->priv->modified_state; +#line 320 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp16_, gtk_combo_box_get_type (), GtkComboBox), 0); +#line 321 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = self->priv->modified_state; +#line 321 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, gtk_combo_box_get_type (), GtkComboBox), "changed", (GCallback) _saved_search_dialog_search_row_modified_on_changed_gtk_combo_box_changed, self); +#line 323 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3); +#line 323 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp18_); +#line 323 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 323 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->box = _tmp18_; +#line 324 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = self->priv->box; +#line 324 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = self->priv->modified_context; +#line 324 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp19_, G_TYPE_CHECK_INSTANCE_CAST (_tmp20_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 325 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = self->priv->box; +#line 325 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = self->priv->modified_state; +#line 325 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp21_, G_TYPE_CHECK_INSTANCE_CAST (_tmp22_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 326 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = self->priv->box; +#line 326 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp23_, gtk_widget_get_type (), GtkWidget)); +#line 307 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 4289 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowModified* saved_search_dialog_search_row_modified_new (SavedSearchDialogSearchRowContainer* parent) { +#line 307 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return saved_search_dialog_search_row_modified_construct (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED, parent); +#line 4296 "SavedSearchDialog.c" +} + + +static GtkWidget* saved_search_dialog_search_row_modified_real_get_widget (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowModified * self; + GtkWidget* result = NULL; + GtkBox* _tmp0_ = NULL; + GtkWidget* _tmp1_ = NULL; +#line 334 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED, SavedSearchDialogSearchRowModified); +#line 335 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->box; +#line 335 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget)); +#line 335 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp1_; +#line 335 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 4315 "SavedSearchDialog.c" +} + + +static SearchCondition* saved_search_dialog_search_row_modified_real_get_search_condition (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowModified * self; + SearchCondition* result = NULL; + SearchConditionSearchType search_type = 0; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SearchConditionSearchType _tmp1_ = 0; + SearchConditionModifiedContext context = 0; + GtkComboBoxText* _tmp2_ = NULL; + gint _tmp3_ = 0; + SearchConditionModifiedState state = 0; + GtkComboBoxText* _tmp4_ = NULL; + gint _tmp5_ = 0; + SearchConditionModified* c = NULL; + SearchConditionModified* _tmp6_ = NULL; +#line 338 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED, SavedSearchDialogSearchRowModified); +#line 339 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 339 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_dialog_search_row_container_get_search_type (_tmp0_); +#line 339 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + search_type = _tmp1_; +#line 340 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->modified_context; +#line 340 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox)); +#line 340 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + context = (SearchConditionModifiedContext) _tmp3_; +#line 341 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = self->priv->modified_state; +#line 341 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, gtk_combo_box_get_type (), GtkComboBox)); +#line 341 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + state = (SearchConditionModifiedState) _tmp5_; +#line 342 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = search_condition_modified_new (search_type, context, state); +#line 342 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + c = _tmp6_; +#line 343 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = G_TYPE_CHECK_INSTANCE_CAST (c, TYPE_SEARCH_CONDITION, SearchCondition); +#line 343 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 4361 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_modified_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc) { + SavedSearchDialogSearchRowModified * self; + SearchConditionModified* scm = NULL; + SearchCondition* _tmp0_ = NULL; + SearchConditionModified* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + SearchConditionModifiedState _tmp3_ = 0; + SearchConditionModifiedState _tmp4_ = 0; + GtkComboBoxText* _tmp5_ = NULL; + SearchConditionModifiedContext _tmp6_ = 0; + SearchConditionModifiedContext _tmp7_ = 0; +#line 346 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED, SavedSearchDialogSearchRowModified); +#line 346 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SEARCH_CONDITION (sc)); +#line 347 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = sc; +#line 347 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _search_condition_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, TYPE_SEARCH_CONDITION_MODIFIED) ? ((SearchConditionModified*) _tmp0_) : NULL); +#line 347 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + scm = _tmp1_; +#line 348 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _vala_assert (scm != NULL, "scm != null"); +#line 349 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->modified_state; +#line 349 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = search_condition_modified_get_state (scm); +#line 349 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _tmp3_; +#line 349 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox), (gint) _tmp4_); +#line 350 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->modified_context; +#line 350 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = search_condition_modified_get_context (scm); +#line 350 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = _tmp6_; +#line 350 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, gtk_combo_box_get_type (), GtkComboBox), (gint) _tmp7_); +#line 346 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _search_condition_unref0 (scm); +#line 4406 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_search_row_modified_real_is_complete (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowModified * self; + gboolean result = FALSE; +#line 353 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED, SavedSearchDialogSearchRowModified); +#line 354 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = TRUE; +#line 354 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 4419 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_modified_on_changed (SavedSearchDialogSearchRowModified* self) { + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; +#line 357 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_MODIFIED (self)); +#line 358 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 358 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = self->priv->parent; +#line 358 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_emit_by_name (_tmp0_, "changed", _tmp1_); +#line 4434 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_modified_class_init (SavedSearchDialogSearchRowModifiedClass * klass) { +#line 300 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_modified_parent_class = g_type_class_peek_parent (klass); +#line 300 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->finalize = saved_search_dialog_search_row_modified_finalize; +#line 300 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_class_add_private (klass, sizeof (SavedSearchDialogSearchRowModifiedPrivate)); +#line 300 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_widget = saved_search_dialog_search_row_modified_real_get_widget; +#line 300 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_search_condition = saved_search_dialog_search_row_modified_real_get_search_condition; +#line 300 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->populate = saved_search_dialog_search_row_modified_real_populate; +#line 300 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->is_complete = saved_search_dialog_search_row_modified_real_is_complete; +#line 4453 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_modified_instance_init (SavedSearchDialogSearchRowModified * self) { +#line 300 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv = SAVED_SEARCH_DIALOG_SEARCH_ROW_MODIFIED_GET_PRIVATE (self); +#line 4460 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_modified_finalize (SavedSearchDialogSearchRow* obj) { + SavedSearchDialogSearchRowModified * self; + GtkComboBoxText* _tmp0_ = NULL; + guint _tmp1_ = 0U; + GtkComboBoxText* _tmp2_ = NULL; + guint _tmp3_ = 0U; +#line 300 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_MODIFIED, SavedSearchDialogSearchRowModified); +#line 330 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->modified_state; +#line 330 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", gtk_combo_box_get_type (), &_tmp1_, NULL, FALSE); +#line 330 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_combo_box_get_type (), GtkComboBox), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _saved_search_dialog_search_row_modified_on_changed_gtk_combo_box_changed, self); +#line 331 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->modified_context; +#line 331 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", gtk_combo_box_get_type (), &_tmp3_, NULL, FALSE); +#line 331 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp3_, 0, NULL, (GCallback) _saved_search_dialog_search_row_modified_on_changed_gtk_combo_box_changed, self); +#line 301 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 302 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->modified_context); +#line 303 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->modified_state); +#line 305 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 300 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + SAVED_SEARCH_DIALOG_SEARCH_ROW_CLASS (saved_search_dialog_search_row_modified_parent_class)->finalize (obj); +#line 4494 "SavedSearchDialog.c" +} + + +static GType saved_search_dialog_search_row_modified_get_type (void) { + static volatile gsize saved_search_dialog_search_row_modified_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_dialog_search_row_modified_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchDialogSearchRowModifiedClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_dialog_search_row_modified_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchDialogSearchRowModified), 0, (GInstanceInitFunc) saved_search_dialog_search_row_modified_instance_init, NULL }; + GType saved_search_dialog_search_row_modified_type_id; + saved_search_dialog_search_row_modified_type_id = g_type_register_static (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, "SavedSearchDialogSearchRowModified", &g_define_type_info, 0); + g_once_init_leave (&saved_search_dialog_search_row_modified_type_id__volatile, saved_search_dialog_search_row_modified_type_id); + } + return saved_search_dialog_search_row_modified_type_id__volatile; +} + + +static void _saved_search_dialog_search_row_flagged_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self) { +#line 385 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_flagged_on_changed ((SavedSearchDialogSearchRowFlagged*) self); +#line 4513 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowFlagged* saved_search_dialog_search_row_flagged_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent) { + SavedSearchDialogSearchRowFlagged* self = NULL; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + GtkComboBoxText* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + GtkComboBoxText* _tmp5_ = NULL; + const gchar* _tmp6_ = NULL; + GtkComboBoxText* _tmp7_ = NULL; + GtkComboBoxText* _tmp8_ = NULL; + GtkBox* _tmp9_ = NULL; + GtkBox* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; + GtkLabel* _tmp12_ = NULL; + GtkLabel* _tmp13_ = NULL; + GtkBox* _tmp14_ = NULL; + GtkComboBoxText* _tmp15_ = NULL; + GtkBox* _tmp16_ = NULL; +#line 368 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (parent), NULL); +#line 368 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialogSearchRowFlagged*) saved_search_dialog_search_row_construct (object_type); +#line 369 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = parent; +#line 369 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _saved_search_dialog_search_row_container_ref0 (_tmp0_); +#line 369 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 369 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->parent = _tmp1_; +#line 372 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = (GtkComboBoxText*) gtk_combo_box_text_new (); +#line 372 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp2_); +#line 372 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->flagged_state); +#line 372 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->flagged_state = _tmp2_; +#line 373 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->flagged_state; +#line 373 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _ ("flagged"); +#line 373 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp3_, _tmp4_); +#line 374 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->flagged_state; +#line 374 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = _ ("not flagged"); +#line 374 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp5_, _tmp6_); +#line 375 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = self->priv->flagged_state; +#line 375 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, gtk_combo_box_get_type (), GtkComboBox), 0); +#line 376 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = self->priv->flagged_state; +#line 376 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, gtk_combo_box_get_type (), GtkComboBox), "changed", (GCallback) _saved_search_dialog_search_row_flagged_on_changed_gtk_combo_box_changed, self); +#line 378 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3); +#line 378 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp9_); +#line 378 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 378 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->box = _tmp9_; +#line 379 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = self->priv->box; +#line 379 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = _ ("is"); +#line 379 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = (GtkLabel*) gtk_label_new (_tmp11_); +#line 379 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp12_); +#line 379 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = _tmp12_; +#line 379 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp10_, G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 379 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_tmp13_); +#line 380 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = self->priv->box; +#line 380 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = self->priv->flagged_state; +#line 380 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp14_, G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 381 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = self->priv->box; +#line 381 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp16_, gtk_widget_get_type (), GtkWidget)); +#line 368 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 4610 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowFlagged* saved_search_dialog_search_row_flagged_new (SavedSearchDialogSearchRowContainer* parent) { +#line 368 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return saved_search_dialog_search_row_flagged_construct (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED, parent); +#line 4617 "SavedSearchDialog.c" +} + + +static GtkWidget* saved_search_dialog_search_row_flagged_real_get_widget (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowFlagged * self; + GtkWidget* result = NULL; + GtkBox* _tmp0_ = NULL; + GtkWidget* _tmp1_ = NULL; +#line 388 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED, SavedSearchDialogSearchRowFlagged); +#line 389 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->box; +#line 389 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget)); +#line 389 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp1_; +#line 389 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 4636 "SavedSearchDialog.c" +} + + +static SearchCondition* saved_search_dialog_search_row_flagged_real_get_search_condition (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowFlagged * self; + SearchCondition* result = NULL; + SearchConditionSearchType search_type = 0; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SearchConditionSearchType _tmp1_ = 0; + SearchConditionFlaggedState state = 0; + GtkComboBoxText* _tmp2_ = NULL; + gint _tmp3_ = 0; + SearchConditionFlagged* c = NULL; + SearchConditionFlagged* _tmp4_ = NULL; +#line 392 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED, SavedSearchDialogSearchRowFlagged); +#line 393 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 393 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_dialog_search_row_container_get_search_type (_tmp0_); +#line 393 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + search_type = _tmp1_; +#line 394 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->flagged_state; +#line 394 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox)); +#line 394 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + state = (SearchConditionFlaggedState) _tmp3_; +#line 395 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = search_condition_flagged_new (search_type, state); +#line 395 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + c = _tmp4_; +#line 396 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = G_TYPE_CHECK_INSTANCE_CAST (c, TYPE_SEARCH_CONDITION, SearchCondition); +#line 396 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 4673 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_flagged_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc) { + SavedSearchDialogSearchRowFlagged * self; + SearchConditionFlagged* f = NULL; + SearchCondition* _tmp0_ = NULL; + SearchConditionFlagged* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + SearchConditionFlaggedState _tmp3_ = 0; + SearchConditionFlaggedState _tmp4_ = 0; +#line 399 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED, SavedSearchDialogSearchRowFlagged); +#line 399 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SEARCH_CONDITION (sc)); +#line 400 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = sc; +#line 400 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _search_condition_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, TYPE_SEARCH_CONDITION_FLAGGED) ? ((SearchConditionFlagged*) _tmp0_) : NULL); +#line 400 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + f = _tmp1_; +#line 401 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _vala_assert (f != NULL, "f != null"); +#line 402 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->flagged_state; +#line 402 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = search_condition_flagged_get_state (f); +#line 402 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _tmp3_; +#line 402 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox), (gint) _tmp4_); +#line 399 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _search_condition_unref0 (f); +#line 4707 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_search_row_flagged_real_is_complete (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowFlagged * self; + gboolean result = FALSE; +#line 405 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED, SavedSearchDialogSearchRowFlagged); +#line 406 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = TRUE; +#line 406 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 4720 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_flagged_on_changed (SavedSearchDialogSearchRowFlagged* self) { + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; +#line 409 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_FLAGGED (self)); +#line 410 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 410 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = self->priv->parent; +#line 410 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_emit_by_name (_tmp0_, "changed", _tmp1_); +#line 4735 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_flagged_class_init (SavedSearchDialogSearchRowFlaggedClass * klass) { +#line 362 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_flagged_parent_class = g_type_class_peek_parent (klass); +#line 362 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->finalize = saved_search_dialog_search_row_flagged_finalize; +#line 362 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_class_add_private (klass, sizeof (SavedSearchDialogSearchRowFlaggedPrivate)); +#line 362 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_widget = saved_search_dialog_search_row_flagged_real_get_widget; +#line 362 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_search_condition = saved_search_dialog_search_row_flagged_real_get_search_condition; +#line 362 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->populate = saved_search_dialog_search_row_flagged_real_populate; +#line 362 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->is_complete = saved_search_dialog_search_row_flagged_real_is_complete; +#line 4754 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_flagged_instance_init (SavedSearchDialogSearchRowFlagged * self) { +#line 362 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv = SAVED_SEARCH_DIALOG_SEARCH_ROW_FLAGGED_GET_PRIVATE (self); +#line 4761 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_flagged_finalize (SavedSearchDialogSearchRow* obj) { + SavedSearchDialogSearchRowFlagged * self; + GtkComboBoxText* _tmp0_ = NULL; + guint _tmp1_ = 0U; +#line 362 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_FLAGGED, SavedSearchDialogSearchRowFlagged); +#line 385 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->flagged_state; +#line 385 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", gtk_combo_box_get_type (), &_tmp1_, NULL, FALSE); +#line 385 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_combo_box_get_type (), GtkComboBox), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _saved_search_dialog_search_row_flagged_on_changed_gtk_combo_box_changed, self); +#line 363 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 364 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->flagged_state); +#line 366 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 362 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + SAVED_SEARCH_DIALOG_SEARCH_ROW_CLASS (saved_search_dialog_search_row_flagged_parent_class)->finalize (obj); +#line 4785 "SavedSearchDialog.c" +} + + +static GType saved_search_dialog_search_row_flagged_get_type (void) { + static volatile gsize saved_search_dialog_search_row_flagged_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_dialog_search_row_flagged_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchDialogSearchRowFlaggedClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_dialog_search_row_flagged_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchDialogSearchRowFlagged), 0, (GInstanceInitFunc) saved_search_dialog_search_row_flagged_instance_init, NULL }; + GType saved_search_dialog_search_row_flagged_type_id; + saved_search_dialog_search_row_flagged_type_id = g_type_register_static (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, "SavedSearchDialogSearchRowFlagged", &g_define_type_info, 0); + g_once_init_leave (&saved_search_dialog_search_row_flagged_type_id__volatile, saved_search_dialog_search_row_flagged_type_id); + } + return saved_search_dialog_search_row_flagged_type_id__volatile; +} + + +static void _saved_search_dialog_search_row_rating_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self) { +#line 451 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_rating_on_changed ((SavedSearchDialogSearchRowRating*) self); +#line 4804 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowRating* saved_search_dialog_search_row_rating_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent) { + SavedSearchDialogSearchRowRating* self = NULL; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + GtkComboBoxText* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + GtkComboBoxText* _tmp5_ = NULL; + const gchar* _tmp6_ = NULL; + GtkComboBoxText* _tmp7_ = NULL; + const gchar* _tmp8_ = NULL; + GtkComboBoxText* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + GtkComboBoxText* _tmp11_ = NULL; + const gchar* _tmp12_ = NULL; + GtkComboBoxText* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; + GtkComboBoxText* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + GtkComboBoxText* _tmp17_ = NULL; + GtkComboBoxText* _tmp18_ = NULL; + GtkComboBoxText* _tmp19_ = NULL; + GtkComboBoxText* _tmp20_ = NULL; + const gchar* _tmp21_ = NULL; + GtkComboBoxText* _tmp22_ = NULL; + const gchar* _tmp23_ = NULL; + GtkComboBoxText* _tmp24_ = NULL; + const gchar* _tmp25_ = NULL; + GtkComboBoxText* _tmp26_ = NULL; + GtkComboBoxText* _tmp27_ = NULL; + GtkBox* _tmp28_ = NULL; + GtkBox* _tmp29_ = NULL; + const gchar* _tmp30_ = NULL; + GtkLabel* _tmp31_ = NULL; + GtkLabel* _tmp32_ = NULL; + GtkBox* _tmp33_ = NULL; + GtkComboBoxText* _tmp34_ = NULL; + GtkBox* _tmp35_ = NULL; + GtkComboBoxText* _tmp36_ = NULL; + GtkBox* _tmp37_ = NULL; +#line 421 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (parent), NULL); +#line 421 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialogSearchRowRating*) saved_search_dialog_search_row_construct (object_type); +#line 422 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = parent; +#line 422 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _saved_search_dialog_search_row_container_ref0 (_tmp0_); +#line 422 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 422 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->parent = _tmp1_; +#line 425 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = (GtkComboBoxText*) gtk_combo_box_text_new (); +#line 425 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp2_); +#line 425 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->rating); +#line 425 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->rating = _tmp2_; +#line 426 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->rating; +#line 426 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = resources_rating_combo_box (RATING_REJECTED); +#line 426 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp3_, _tmp4_); +#line 427 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->rating; +#line 427 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = resources_rating_combo_box (RATING_UNRATED); +#line 427 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp5_, _tmp6_); +#line 428 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = self->priv->rating; +#line 428 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = resources_rating_combo_box (RATING_ONE); +#line 428 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp7_, _tmp8_); +#line 429 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = self->priv->rating; +#line 429 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = resources_rating_combo_box (RATING_TWO); +#line 429 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp9_, _tmp10_); +#line 430 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = self->priv->rating; +#line 430 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = resources_rating_combo_box (RATING_THREE); +#line 430 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp11_, _tmp12_); +#line 431 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = self->priv->rating; +#line 431 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = resources_rating_combo_box (RATING_FOUR); +#line 431 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp13_, _tmp14_); +#line 432 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = self->priv->rating; +#line 432 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = resources_rating_combo_box (RATING_FIVE); +#line 432 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp15_, _tmp16_); +#line 433 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = self->priv->rating; +#line 433 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, gtk_combo_box_get_type (), GtkComboBox), 0); +#line 434 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = self->priv->rating; +#line 434 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp18_, gtk_combo_box_get_type (), GtkComboBox), "changed", (GCallback) _saved_search_dialog_search_row_rating_on_changed_gtk_combo_box_changed, self); +#line 436 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = (GtkComboBoxText*) gtk_combo_box_text_new (); +#line 436 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp19_); +#line 436 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->context); +#line 436 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->context = _tmp19_; +#line 437 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = self->priv->context; +#line 437 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = _ ("and higher"); +#line 437 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp20_, _tmp21_); +#line 438 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = self->priv->context; +#line 438 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = _ ("only"); +#line 438 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp22_, _tmp23_); +#line 439 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp24_ = self->priv->context; +#line 439 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp25_ = _ ("and lower"); +#line 439 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp24_, _tmp25_); +#line 440 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp26_ = self->priv->context; +#line 440 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp26_, gtk_combo_box_get_type (), GtkComboBox), 0); +#line 441 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp27_ = self->priv->context; +#line 441 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp27_, gtk_combo_box_get_type (), GtkComboBox), "changed", (GCallback) _saved_search_dialog_search_row_rating_on_changed_gtk_combo_box_changed, self); +#line 443 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp28_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3); +#line 443 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp28_); +#line 443 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 443 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->box = _tmp28_; +#line 444 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp29_ = self->priv->box; +#line 444 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp30_ = _ ("is"); +#line 444 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp31_ = (GtkLabel*) gtk_label_new (_tmp30_); +#line 444 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp31_); +#line 444 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp32_ = _tmp31_; +#line 444 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp29_, G_TYPE_CHECK_INSTANCE_CAST (_tmp32_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 444 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_tmp32_); +#line 445 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp33_ = self->priv->box; +#line 445 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp34_ = self->priv->rating; +#line 445 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp33_, G_TYPE_CHECK_INSTANCE_CAST (_tmp34_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 446 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp35_ = self->priv->box; +#line 446 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp36_ = self->priv->context; +#line 446 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp35_, G_TYPE_CHECK_INSTANCE_CAST (_tmp36_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 447 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp37_ = self->priv->box; +#line 447 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp37_, gtk_widget_get_type (), GtkWidget)); +#line 421 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 4992 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowRating* saved_search_dialog_search_row_rating_new (SavedSearchDialogSearchRowContainer* parent) { +#line 421 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return saved_search_dialog_search_row_rating_construct (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING, parent); +#line 4999 "SavedSearchDialog.c" +} + + +static GtkWidget* saved_search_dialog_search_row_rating_real_get_widget (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowRating * self; + GtkWidget* result = NULL; + GtkBox* _tmp0_ = NULL; + GtkWidget* _tmp1_ = NULL; +#line 455 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING, SavedSearchDialogSearchRowRating); +#line 456 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->box; +#line 456 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget)); +#line 456 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp1_; +#line 456 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 5018 "SavedSearchDialog.c" +} + + +static SearchCondition* saved_search_dialog_search_row_rating_real_get_search_condition (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowRating * self; + SearchCondition* result = NULL; + SearchConditionSearchType search_type = 0; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SearchConditionSearchType _tmp1_ = 0; + Rating search_rating = 0; + GtkComboBoxText* _tmp2_ = NULL; + gint _tmp3_ = 0; + SearchConditionRatingContext search_context = 0; + GtkComboBoxText* _tmp4_ = NULL; + gint _tmp5_ = 0; + SearchConditionRating* c = NULL; + SearchConditionRating* _tmp6_ = NULL; +#line 459 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING, SavedSearchDialogSearchRowRating); +#line 460 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 460 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_dialog_search_row_container_get_search_type (_tmp0_); +#line 460 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + search_type = _tmp1_; +#line 461 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->rating; +#line 461 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox)); +#line 461 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + search_rating = ((Rating) _tmp3_) + RATING_REJECTED; +#line 462 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = self->priv->context; +#line 462 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, gtk_combo_box_get_type (), GtkComboBox)); +#line 462 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + search_context = (SearchConditionRatingContext) _tmp5_; +#line 463 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = search_condition_rating_new (search_type, search_rating, search_context); +#line 463 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + c = _tmp6_; +#line 464 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = G_TYPE_CHECK_INSTANCE_CAST (c, TYPE_SEARCH_CONDITION, SearchCondition); +#line 464 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 5064 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_rating_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc) { + SavedSearchDialogSearchRowRating * self; + SearchConditionRating* r = NULL; + SearchCondition* _tmp0_ = NULL; + SearchConditionRating* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + SearchConditionRatingContext _tmp3_ = 0; + SearchConditionRatingContext _tmp4_ = 0; + GtkComboBoxText* _tmp5_ = NULL; + Rating _tmp6_ = 0; + Rating _tmp7_ = 0; +#line 467 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING, SavedSearchDialogSearchRowRating); +#line 467 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SEARCH_CONDITION (sc)); +#line 468 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = sc; +#line 468 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _search_condition_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, TYPE_SEARCH_CONDITION_RATING) ? ((SearchConditionRating*) _tmp0_) : NULL); +#line 468 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + r = _tmp1_; +#line 469 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _vala_assert (r != NULL, "r != null"); +#line 470 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->context; +#line 470 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = search_condition_rating_get_context (r); +#line 470 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _tmp3_; +#line 470 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox), (gint) _tmp4_); +#line 471 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->rating; +#line 471 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = search_condition_rating_get_rating (r); +#line 471 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = _tmp6_; +#line 471 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, gtk_combo_box_get_type (), GtkComboBox), (gint) (_tmp7_ - RATING_REJECTED)); +#line 467 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _search_condition_unref0 (r); +#line 5109 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_search_row_rating_real_is_complete (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowRating * self; + gboolean result = FALSE; +#line 474 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING, SavedSearchDialogSearchRowRating); +#line 475 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = TRUE; +#line 475 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 5122 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_rating_on_changed (SavedSearchDialogSearchRowRating* self) { + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; +#line 478 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_RATING (self)); +#line 479 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 479 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = self->priv->parent; +#line 479 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_emit_by_name (_tmp0_, "changed", _tmp1_); +#line 5137 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_rating_class_init (SavedSearchDialogSearchRowRatingClass * klass) { +#line 414 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_rating_parent_class = g_type_class_peek_parent (klass); +#line 414 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->finalize = saved_search_dialog_search_row_rating_finalize; +#line 414 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_class_add_private (klass, sizeof (SavedSearchDialogSearchRowRatingPrivate)); +#line 414 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_widget = saved_search_dialog_search_row_rating_real_get_widget; +#line 414 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_search_condition = saved_search_dialog_search_row_rating_real_get_search_condition; +#line 414 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->populate = saved_search_dialog_search_row_rating_real_populate; +#line 414 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->is_complete = saved_search_dialog_search_row_rating_real_is_complete; +#line 5156 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_rating_instance_init (SavedSearchDialogSearchRowRating * self) { +#line 414 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv = SAVED_SEARCH_DIALOG_SEARCH_ROW_RATING_GET_PRIVATE (self); +#line 5163 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_rating_finalize (SavedSearchDialogSearchRow* obj) { + SavedSearchDialogSearchRowRating * self; + GtkComboBoxText* _tmp0_ = NULL; + guint _tmp1_ = 0U; + GtkComboBoxText* _tmp2_ = NULL; + guint _tmp3_ = 0U; +#line 414 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_RATING, SavedSearchDialogSearchRowRating); +#line 451 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->rating; +#line 451 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", gtk_combo_box_get_type (), &_tmp1_, NULL, FALSE); +#line 451 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_combo_box_get_type (), GtkComboBox), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _saved_search_dialog_search_row_rating_on_changed_gtk_combo_box_changed, self); +#line 452 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->context; +#line 452 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", gtk_combo_box_get_type (), &_tmp3_, NULL, FALSE); +#line 452 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp3_, 0, NULL, (GCallback) _saved_search_dialog_search_row_rating_on_changed_gtk_combo_box_changed, self); +#line 415 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 416 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->rating); +#line 417 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->context); +#line 419 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 414 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + SAVED_SEARCH_DIALOG_SEARCH_ROW_CLASS (saved_search_dialog_search_row_rating_parent_class)->finalize (obj); +#line 5197 "SavedSearchDialog.c" +} + + +static GType saved_search_dialog_search_row_rating_get_type (void) { + static volatile gsize saved_search_dialog_search_row_rating_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_dialog_search_row_rating_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchDialogSearchRowRatingClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_dialog_search_row_rating_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchDialogSearchRowRating), 0, (GInstanceInitFunc) saved_search_dialog_search_row_rating_instance_init, NULL }; + GType saved_search_dialog_search_row_rating_type_id; + saved_search_dialog_search_row_rating_type_id = g_type_register_static (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, "SavedSearchDialogSearchRowRating", &g_define_type_info, 0); + g_once_init_leave (&saved_search_dialog_search_row_rating_type_id__volatile, saved_search_dialog_search_row_rating_type_id); + } + return saved_search_dialog_search_row_rating_type_id__volatile; +} + + +static void _saved_search_dialog_search_row_date_on_changed_gtk_combo_box_changed (GtkComboBox* _sender, gpointer self) { +#line 529 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_on_changed ((SavedSearchDialogSearchRowDate*) self); +#line 5216 "SavedSearchDialog.c" +} + + +static void _saved_search_dialog_search_row_date_on_one_clicked_gtk_button_clicked (GtkButton* _sender, gpointer self) { +#line 512 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_on_one_clicked ((SavedSearchDialogSearchRowDate*) self); +#line 5223 "SavedSearchDialog.c" +} + + +static void _saved_search_dialog_search_row_date_on_two_clicked_gtk_button_clicked (GtkButton* _sender, gpointer self) { +#line 514 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_on_two_clicked ((SavedSearchDialogSearchRowDate*) self); +#line 5230 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowDate* saved_search_dialog_search_row_date_construct (GType object_type, SavedSearchDialogSearchRowContainer* parent) { + SavedSearchDialogSearchRowDate* self = NULL; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + GtkComboBoxText* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + GtkComboBoxText* _tmp5_ = NULL; + const gchar* _tmp6_ = NULL; + GtkComboBoxText* _tmp7_ = NULL; + const gchar* _tmp8_ = NULL; + GtkComboBoxText* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + GtkComboBoxText* _tmp11_ = NULL; + const gchar* _tmp12_ = NULL; + GtkComboBoxText* _tmp13_ = NULL; + GtkComboBoxText* _tmp14_ = NULL; + GtkCalendar* _tmp15_ = NULL; + GtkCalendar* _tmp16_ = NULL; + GtkButton* _tmp17_ = NULL; + GtkButton* _tmp18_ = NULL; + GtkButton* _tmp19_ = NULL; + GtkButton* _tmp20_ = NULL; + const gchar* _tmp21_ = NULL; + GtkLabel* _tmp22_ = NULL; + GtkBox* _tmp23_ = NULL; + GtkBox* _tmp24_ = NULL; + GtkComboBoxText* _tmp25_ = NULL; + GtkBox* _tmp26_ = NULL; + GtkButton* _tmp27_ = NULL; + GtkBox* _tmp28_ = NULL; + GtkLabel* _tmp29_ = NULL; + GtkBox* _tmp30_ = NULL; + GtkButton* _tmp31_ = NULL; + GtkBox* _tmp32_ = NULL; +#line 495 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_CONTAINER (parent), NULL); +#line 495 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = (SavedSearchDialogSearchRowDate*) saved_search_dialog_search_row_construct (object_type); +#line 496 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = parent; +#line 496 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _saved_search_dialog_search_row_container_ref0 (_tmp0_); +#line 496 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 496 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->parent = _tmp1_; +#line 499 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = (GtkComboBoxText*) gtk_combo_box_text_new (); +#line 499 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp2_); +#line 499 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->context); +#line 499 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->context = _tmp2_; +#line 500 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->context; +#line 500 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _ ("is exactly"); +#line 500 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp3_, _tmp4_); +#line 501 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->context; +#line 501 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = _ ("is after"); +#line 501 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp5_, _tmp6_); +#line 502 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = self->priv->context; +#line 502 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = _ ("is before"); +#line 502 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp7_, _tmp8_); +#line 503 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = self->priv->context; +#line 503 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = _ ("is between"); +#line 503 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp9_, _tmp10_); +#line 504 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = self->priv->context; +#line 504 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = _ ("is not set"); +#line 504 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_text_append_text (_tmp11_, _tmp12_); +#line 505 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = self->priv->context; +#line 505 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, gtk_combo_box_get_type (), GtkComboBox), 0); +#line 506 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = self->priv->context; +#line 506 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, gtk_combo_box_get_type (), GtkComboBox), "changed", (GCallback) _saved_search_dialog_search_row_date_on_changed_gtk_combo_box_changed, self); +#line 508 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = (GtkCalendar*) gtk_calendar_new (); +#line 508 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp15_); +#line 508 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->cal_one); +#line 508 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->cal_one = _tmp15_; +#line 509 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = (GtkCalendar*) gtk_calendar_new (); +#line 509 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp16_); +#line 509 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->cal_two); +#line 509 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->cal_two = _tmp16_; +#line 511 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = (GtkButton*) gtk_button_new (); +#line 511 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp17_); +#line 511 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->label_one); +#line 511 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->label_one = _tmp17_; +#line 512 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = self->priv->label_one; +#line 512 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (_tmp18_, "clicked", (GCallback) _saved_search_dialog_search_row_date_on_one_clicked_gtk_button_clicked, self); +#line 513 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = (GtkButton*) gtk_button_new (); +#line 513 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp19_); +#line 513 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->label_two); +#line 513 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->label_two = _tmp19_; +#line 514 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = self->priv->label_two; +#line 514 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_connect (_tmp20_, "clicked", (GCallback) _saved_search_dialog_search_row_date_on_two_clicked_gtk_button_clicked, self); +#line 516 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = _ ("and"); +#line 516 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = (GtkLabel*) gtk_label_new (_tmp21_); +#line 516 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp22_); +#line 516 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->and); +#line 516 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->and = _tmp22_; +#line 518 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3); +#line 518 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp23_); +#line 518 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 518 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->box = _tmp23_; +#line 519 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp24_ = self->priv->box; +#line 519 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp25_ = self->priv->context; +#line 519 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp24_, G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 520 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp26_ = self->priv->box; +#line 520 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp27_ = self->priv->label_one; +#line 520 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp26_, G_TYPE_CHECK_INSTANCE_CAST (_tmp27_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 521 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp28_ = self->priv->box; +#line 521 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp29_ = self->priv->and; +#line 521 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp28_, G_TYPE_CHECK_INSTANCE_CAST (_tmp29_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 522 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp30_ = self->priv->box; +#line 522 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp31_ = self->priv->label_two; +#line 522 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_box_pack_start (_tmp30_, G_TYPE_CHECK_INSTANCE_CAST (_tmp31_, gtk_widget_get_type (), GtkWidget), FALSE, FALSE, (guint) 0); +#line 524 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp32_ = self->priv->box; +#line 524 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp32_, gtk_widget_get_type (), GtkWidget)); +#line 525 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_update_date_labels (self); +#line 495 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return self; +#line 5417 "SavedSearchDialog.c" +} + + +static SavedSearchDialogSearchRowDate* saved_search_dialog_search_row_date_new (SavedSearchDialogSearchRowContainer* parent) { +#line 495 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return saved_search_dialog_search_row_date_construct (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE, parent); +#line 5424 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_update_date_labels (SavedSearchDialogSearchRowDate* self) { + SearchConditionDateContext c = 0; + GtkComboBoxText* _tmp0_ = NULL; + gint _tmp1_ = 0; + SearchConditionDateContext _tmp2_ = 0; + GtkButton* _tmp13_ = NULL; + GDateTime* _tmp14_ = NULL; + GDateTime* _tmp15_ = NULL; + gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + GtkButton* _tmp18_ = NULL; + GDateTime* _tmp19_ = NULL; + GDateTime* _tmp20_ = NULL; + gchar* _tmp21_ = NULL; + gchar* _tmp22_ = NULL; +#line 532 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE (self)); +#line 533 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->context; +#line 533 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_combo_box_get_type (), GtkComboBox)); +#line 533 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + c = (SearchConditionDateContext) _tmp1_; +#line 536 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = c; +#line 536 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp2_ == SEARCH_CONDITION_DATE_CONTEXT_BETWEEN) { +#line 5455 "SavedSearchDialog.c" + GtkButton* _tmp3_ = NULL; + GtkLabel* _tmp4_ = NULL; + GtkButton* _tmp5_ = NULL; +#line 537 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->label_one; +#line 537 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_widget_get_type (), GtkWidget)); +#line 538 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = self->priv->and; +#line 538 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, gtk_widget_get_type (), GtkWidget)); +#line 539 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = self->priv->label_two; +#line 539 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, gtk_widget_get_type (), GtkWidget)); +#line 5471 "SavedSearchDialog.c" + } else { + SearchConditionDateContext _tmp6_ = 0; +#line 540 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = c; +#line 540 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp6_ == SEARCH_CONDITION_DATE_CONTEXT_IS_NOT_SET) { +#line 5478 "SavedSearchDialog.c" + GtkButton* _tmp7_ = NULL; + GtkLabel* _tmp8_ = NULL; + GtkButton* _tmp9_ = NULL; +#line 541 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = self->priv->label_one; +#line 541 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_hide (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, gtk_widget_get_type (), GtkWidget)); +#line 542 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = self->priv->and; +#line 542 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_hide (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, gtk_widget_get_type (), GtkWidget)); +#line 543 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = self->priv->label_two; +#line 543 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_hide (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, gtk_widget_get_type (), GtkWidget)); +#line 5494 "SavedSearchDialog.c" + } else { + GtkButton* _tmp10_ = NULL; + GtkLabel* _tmp11_ = NULL; + GtkButton* _tmp12_ = NULL; +#line 545 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = self->priv->label_one; +#line 545 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, gtk_widget_get_type (), GtkWidget)); +#line 546 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = self->priv->and; +#line 546 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_hide (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, gtk_widget_get_type (), GtkWidget)); +#line 547 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = self->priv->label_two; +#line 547 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_hide (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, gtk_widget_get_type (), GtkWidget)); +#line 5511 "SavedSearchDialog.c" + } + } +#line 551 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = self->priv->label_one; +#line 551 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = saved_search_dialog_search_row_date_get_date_one (self); +#line 551 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = _tmp14_; +#line 551 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = g_date_time_format (_tmp15_, SAVED_SEARCH_DIALOG_SEARCH_ROW_DATE_DATE_FORMAT); +#line 551 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = _tmp16_; +#line 551 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_button_set_label (_tmp13_, _tmp17_); +#line 551 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (_tmp17_); +#line 551 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_date_time_unref0 (_tmp15_); +#line 552 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = self->priv->label_two; +#line 552 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = saved_search_dialog_search_row_date_get_date_two (self); +#line 552 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = _tmp19_; +#line 552 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = g_date_time_format (_tmp20_, SAVED_SEARCH_DIALOG_SEARCH_ROW_DATE_DATE_FORMAT); +#line 552 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = _tmp21_; +#line 552 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_button_set_label (_tmp18_, _tmp22_); +#line 552 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_free0 (_tmp22_); +#line 552 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_date_time_unref0 (_tmp20_); +#line 5546 "SavedSearchDialog.c" +} + + +static GtkWidget* saved_search_dialog_search_row_date_real_get_widget (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowDate * self; + GtkWidget* result = NULL; + GtkBox* _tmp0_ = NULL; + GtkWidget* _tmp1_ = NULL; +#line 555 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE, SavedSearchDialogSearchRowDate); +#line 556 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->box; +#line 556 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_widget_get_type (), GtkWidget)); +#line 556 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp1_; +#line 556 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 5565 "SavedSearchDialog.c" +} + + +static GDateTime* saved_search_dialog_search_row_date_get_date_one (SavedSearchDialogSearchRowDate* self) { + GDateTime* result = NULL; + GtkCalendar* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + GtkCalendar* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + GtkCalendar* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + GDateTime* _tmp9_ = NULL; +#line 559 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE (self), NULL); +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->cal_one; +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_get (_tmp0_, "year", &_tmp1_, NULL); +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = _tmp1_; +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->cal_one; +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_get (_tmp3_, "month", &_tmp4_, NULL); +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = _tmp4_; +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = self->priv->cal_one; +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_get (_tmp6_, "day", &_tmp7_, NULL); +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = _tmp7_; +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = g_date_time_new_local (_tmp2_, _tmp5_ + 1, _tmp8_, 0, 0, 0.0); +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp9_; +#line 560 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 5607 "SavedSearchDialog.c" +} + + +static GDateTime* saved_search_dialog_search_row_date_get_date_two (SavedSearchDialogSearchRowDate* self) { + GDateTime* result = NULL; + GtkCalendar* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + GtkCalendar* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + GtkCalendar* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + GDateTime* _tmp9_ = NULL; +#line 563 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE (self), NULL); +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->cal_two; +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_get (_tmp0_, "year", &_tmp1_, NULL); +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = _tmp1_; +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->cal_two; +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_get (_tmp3_, "month", &_tmp4_, NULL); +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = _tmp4_; +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = self->priv->cal_two; +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_get (_tmp6_, "day", &_tmp7_, NULL); +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = _tmp7_; +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = g_date_time_new_local (_tmp2_, _tmp5_ + 1, _tmp8_, 0, 0, 0.0); +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = _tmp9_; +#line 564 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 5649 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_set_date_one (SavedSearchDialogSearchRowDate* self, GDateTime* date) { + GtkCalendar* _tmp0_ = NULL; + GDateTime* _tmp1_ = NULL; + gint _tmp2_ = 0; + GtkCalendar* _tmp3_ = NULL; + GDateTime* _tmp4_ = NULL; + gint _tmp5_ = 0; + GtkCalendar* _tmp6_ = NULL; + GDateTime* _tmp7_ = NULL; + gint _tmp8_ = 0; +#line 567 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE (self)); +#line 567 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (date != NULL); +#line 568 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->cal_one; +#line 568 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = date; +#line 568 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = g_date_time_get_day_of_month (_tmp1_); +#line 568 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_set (_tmp0_, "day", _tmp2_, NULL); +#line 569 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->cal_one; +#line 569 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = date; +#line 569 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = g_date_time_get_month (_tmp4_); +#line 569 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_set (_tmp3_, "month", _tmp5_ - 1, NULL); +#line 570 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = self->priv->cal_one; +#line 570 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = date; +#line 570 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = g_date_time_get_year (_tmp7_); +#line 570 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_set (_tmp6_, "year", _tmp8_, NULL); +#line 5691 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_set_date_two (SavedSearchDialogSearchRowDate* self, GDateTime* date) { + GtkCalendar* _tmp0_ = NULL; + GDateTime* _tmp1_ = NULL; + gint _tmp2_ = 0; + GtkCalendar* _tmp3_ = NULL; + GDateTime* _tmp4_ = NULL; + gint _tmp5_ = 0; + GtkCalendar* _tmp6_ = NULL; + GDateTime* _tmp7_ = NULL; + gint _tmp8_ = 0; +#line 573 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE (self)); +#line 573 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (date != NULL); +#line 574 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->cal_two; +#line 574 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = date; +#line 574 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = g_date_time_get_day_of_month (_tmp1_); +#line 574 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_set (_tmp0_, "day", _tmp2_, NULL); +#line 575 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = self->priv->cal_two; +#line 575 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = date; +#line 575 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = g_date_time_get_month (_tmp4_); +#line 575 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_set (_tmp3_, "month", _tmp5_ - 1, NULL); +#line 576 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = self->priv->cal_two; +#line 576 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = date; +#line 576 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = g_date_time_get_year (_tmp7_); +#line 576 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_set (_tmp6_, "year", _tmp8_, NULL); +#line 5733 "SavedSearchDialog.c" +} + + +static SearchCondition* saved_search_dialog_search_row_date_real_get_search_condition (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowDate * self; + SearchCondition* result = NULL; + SearchConditionSearchType search_type = 0; + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SearchConditionSearchType _tmp1_ = 0; + SearchConditionDateContext search_context = 0; + GtkComboBoxText* _tmp2_ = NULL; + gint _tmp3_ = 0; + SearchConditionDate* c = NULL; + GDateTime* _tmp4_ = NULL; + GDateTime* _tmp5_ = NULL; + GDateTime* _tmp6_ = NULL; + GDateTime* _tmp7_ = NULL; + SearchConditionDate* _tmp8_ = NULL; + SearchConditionDate* _tmp9_ = NULL; +#line 579 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE, SavedSearchDialogSearchRowDate); +#line 580 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 580 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = saved_search_dialog_search_row_container_get_search_type (_tmp0_); +#line 580 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + search_type = _tmp1_; +#line 581 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->context; +#line 581 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = gtk_combo_box_get_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox)); +#line 581 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + search_context = (SearchConditionDateContext) _tmp3_; +#line 582 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = saved_search_dialog_search_row_date_get_date_one (self); +#line 582 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = _tmp4_; +#line 582 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = saved_search_dialog_search_row_date_get_date_two (self); +#line 582 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = _tmp6_; +#line 582 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = search_condition_date_new (search_type, search_context, _tmp5_, _tmp7_); +#line 582 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = _tmp8_; +#line 582 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_date_time_unref0 (_tmp7_); +#line 582 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_date_time_unref0 (_tmp5_); +#line 582 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + c = _tmp9_; +#line 584 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = G_TYPE_CHECK_INSTANCE_CAST (c, TYPE_SEARCH_CONDITION, SearchCondition); +#line 584 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 5789 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_real_populate (SavedSearchDialogSearchRow* base, SearchCondition* sc) { + SavedSearchDialogSearchRowDate * self; + SearchConditionDate* cond = NULL; + SearchCondition* _tmp0_ = NULL; + SearchConditionDate* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + SearchConditionDateContext _tmp3_ = 0; + SearchConditionDateContext _tmp4_ = 0; + GDateTime* _tmp5_ = NULL; + GDateTime* _tmp6_ = NULL; + GDateTime* _tmp7_ = NULL; + GDateTime* _tmp8_ = NULL; +#line 587 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE, SavedSearchDialogSearchRowDate); +#line 587 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (IS_SEARCH_CONDITION (sc)); +#line 588 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = sc; +#line 588 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = _search_condition_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, TYPE_SEARCH_CONDITION_DATE) ? ((SearchConditionDate*) _tmp0_) : NULL); +#line 588 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + cond = _tmp1_; +#line 589 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _vala_assert (cond != NULL, "cond != null"); +#line 590 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = self->priv->context; +#line 590 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = search_condition_date_get_context (cond); +#line 590 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp4_ = _tmp3_; +#line 590 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_combo_box_set_active (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_combo_box_get_type (), GtkComboBox), (gint) _tmp4_); +#line 591 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = search_condition_date_get_date_one (cond); +#line 591 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = _tmp5_; +#line 591 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_set_date_one (self, _tmp6_); +#line 592 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp7_ = search_condition_date_get_date_two (cond); +#line 592 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = _tmp7_; +#line 592 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_set_date_two (self, _tmp8_); +#line 593 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_update_date_labels (self); +#line 587 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _search_condition_unref0 (cond); +#line 5841 "SavedSearchDialog.c" +} + + +static gboolean saved_search_dialog_search_row_date_real_is_complete (SavedSearchDialogSearchRow* base) { + SavedSearchDialogSearchRowDate * self; + gboolean result = FALSE; +#line 596 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE, SavedSearchDialogSearchRowDate); +#line 597 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + result = TRUE; +#line 597 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return result; +#line 5854 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_on_changed (SavedSearchDialogSearchRowDate* self) { + SavedSearchDialogSearchRowContainer* _tmp0_ = NULL; + SavedSearchDialogSearchRowContainer* _tmp1_ = NULL; +#line 600 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE (self)); +#line 601 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->parent; +#line 601 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp1_ = self->priv->parent; +#line 601 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_emit_by_name (_tmp0_, "changed", _tmp1_); +#line 602 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_update_date_labels (self); +#line 5871 "SavedSearchDialog.c" +} + + +static Block9Data* block9_data_ref (Block9Data* _data9_) { +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_atomic_int_inc (&_data9_->_ref_count_); +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return _data9_; +#line 5880 "SavedSearchDialog.c" +} + + +static void block9_data_unref (void * _userdata_) { + Block9Data* _data9_; + _data9_ = (Block9Data*) _userdata_; +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (g_atomic_int_dec_and_test (&_data9_->_ref_count_)) { +#line 5889 "SavedSearchDialog.c" + SavedSearchDialogSearchRowDate* self; +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = _data9_->self; +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (_data9_->d); +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_unref0 (self); +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_slice_free (Block9Data, _data9_); +#line 5899 "SavedSearchDialog.c" + } +} + + +static void __lambda12_ (SavedSearchDialogSearchRowDate* self) { +#line 616 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_update_date_labels (self); +#line 5907 "SavedSearchDialog.c" +} + + +static void ___lambda12__gtk_calendar_day_selected (GtkCalendar* _sender, gpointer self) { +#line 616 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + __lambda12_ ((SavedSearchDialogSearchRowDate*) self); +#line 5914 "SavedSearchDialog.c" +} + + +static void __lambda13_ (Block9Data* _data9_) { + SavedSearchDialogSearchRowDate* self; + GtkDialog* _tmp0_ = NULL; +#line 617 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = _data9_->self; +#line 618 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = _data9_->d; +#line 618 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_dialog_response (_tmp0_, (gint) GTK_RESPONSE_ACCEPT); +#line 5927 "SavedSearchDialog.c" +} + + +static void ___lambda13__gtk_calendar_day_selected_double_click (GtkCalendar* _sender, gpointer self) { +#line 617 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + __lambda13_ (self); +#line 5934 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_popup_calendar (SavedSearchDialogSearchRowDate* self, GtkCalendar* cal) { + Block9Data* _data9_; + gint orig_day = 0; + GtkCalendar* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + gint orig_month = 0; + GtkCalendar* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + gint orig_year = 0; + GtkCalendar* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + GtkDialog* _tmp9_ = NULL; + GtkDialog* _tmp10_ = NULL; + GtkDialog* _tmp11_ = NULL; + GtkDialog* _tmp12_ = NULL; + GtkDialog* _tmp13_ = NULL; + GtkBox* _tmp14_ = NULL; + GtkCalendar* _tmp15_ = NULL; + gulong id_1 = 0UL; + GtkCalendar* _tmp16_ = NULL; + gulong _tmp17_ = 0UL; + gulong id_2 = 0UL; + GtkCalendar* _tmp18_ = NULL; + gulong _tmp19_ = 0UL; + GtkDialog* _tmp20_ = NULL; + gint res = 0; + GtkDialog* _tmp21_ = NULL; + gint _tmp22_ = 0; + gint _tmp23_ = 0; + GtkCalendar* _tmp30_ = NULL; + gulong _tmp31_ = 0UL; + GtkCalendar* _tmp32_ = NULL; + gulong _tmp33_ = 0UL; + GtkDialog* _tmp34_ = NULL; +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE (self)); +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (GTK_IS_CALENDAR (cal)); +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _data9_ = g_slice_new0 (Block9Data); +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _data9_->_ref_count_ = 1; +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _data9_->self = saved_search_dialog_search_row_ref (self); +#line 606 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = cal; +#line 606 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_get (_tmp0_, "day", &_tmp1_, NULL); +#line 606 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp2_ = _tmp1_; +#line 606 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + orig_day = _tmp2_; +#line 607 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp3_ = cal; +#line 607 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_get (_tmp3_, "month", &_tmp4_, NULL); +#line 607 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp5_ = _tmp4_; +#line 607 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + orig_month = _tmp5_; +#line 608 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp6_ = cal; +#line 608 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_get (_tmp6_, "year", &_tmp7_, NULL); +#line 608 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp8_ = _tmp7_; +#line 608 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + orig_year = _tmp8_; +#line 609 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp9_ = (GtkDialog*) gtk_dialog_new_with_buttons (NULL, NULL, GTK_DIALOG_MODAL, RESOURCES_CANCEL_LABEL, GTK_RESPONSE_REJECT, RESOURCES_OK_LABEL, GTK_RESPONSE_ACCEPT, NULL); +#line 609 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_ref_sink (_tmp9_); +#line 609 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _data9_->d = _tmp9_; +#line 612 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp10_ = _data9_->d; +#line 612 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_window_set_modal (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, gtk_window_get_type (), GtkWindow), TRUE); +#line 613 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp11_ = _data9_->d; +#line 613 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_window_set_resizable (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, gtk_window_get_type (), GtkWindow), FALSE); +#line 614 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp12_ = _data9_->d; +#line 614 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_window_set_decorated (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, gtk_window_get_type (), GtkWindow), FALSE); +#line 615 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp13_ = _data9_->d; +#line 615 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp14_ = (GtkBox*) gtk_dialog_get_content_area (_tmp13_); +#line 615 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp15_ = cal; +#line 615 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, gtk_box_get_type (), GtkBox), gtk_container_get_type (), GtkContainer), G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, gtk_widget_get_type (), GtkWidget)); +#line 616 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp16_ = cal; +#line 616 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp17_ = g_signal_connect (_tmp16_, "day-selected", (GCallback) ___lambda12__gtk_calendar_day_selected, self); +#line 616 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + id_1 = _tmp17_; +#line 617 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp18_ = cal; +#line 617 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp19_ = g_signal_connect_data (_tmp18_, "day-selected-double-click", (GCallback) ___lambda13__gtk_calendar_day_selected_double_click, block9_data_ref (_data9_), (GClosureNotify) block9_data_unref, 0); +#line 617 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + id_2 = _tmp19_; +#line 620 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp20_ = _data9_->d; +#line 620 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_show_all (G_TYPE_CHECK_INSTANCE_CAST (_tmp20_, gtk_widget_get_type (), GtkWidget)); +#line 621 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp21_ = _data9_->d; +#line 621 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp22_ = gtk_dialog_run (_tmp21_); +#line 621 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + res = _tmp22_; +#line 622 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp23_ = res; +#line 622 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (_tmp23_ != ((gint) GTK_RESPONSE_ACCEPT)) { +#line 6061 "SavedSearchDialog.c" + GtkCalendar* _tmp24_ = NULL; + gint _tmp25_ = 0; + GtkCalendar* _tmp26_ = NULL; + gint _tmp27_ = 0; + GtkCalendar* _tmp28_ = NULL; + gint _tmp29_ = 0; +#line 624 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp24_ = cal; +#line 624 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp25_ = orig_day; +#line 624 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_set (_tmp24_, "day", _tmp25_, NULL); +#line 625 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp26_ = cal; +#line 625 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp27_ = orig_month; +#line 625 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_set (_tmp26_, "month", _tmp27_, NULL); +#line 626 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp28_ = cal; +#line 626 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp29_ = orig_year; +#line 626 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_object_set (_tmp28_, "year", _tmp29_, NULL); +#line 6086 "SavedSearchDialog.c" + } +#line 628 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp30_ = cal; +#line 628 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp31_ = id_1; +#line 628 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handler_disconnect (G_TYPE_CHECK_INSTANCE_CAST (_tmp30_, G_TYPE_OBJECT, GObject), _tmp31_); +#line 629 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp32_ = cal; +#line 629 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp33_ = id_2; +#line 629 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handler_disconnect (G_TYPE_CHECK_INSTANCE_CAST (_tmp32_, G_TYPE_OBJECT, GObject), _tmp33_); +#line 630 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp34_ = _data9_->d; +#line 630 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + gtk_widget_destroy (G_TYPE_CHECK_INSTANCE_CAST (_tmp34_, gtk_widget_get_type (), GtkWidget)); +#line 631 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_update_date_labels (self); +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + block9_data_unref (_data9_); +#line 605 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _data9_ = NULL; +#line 6110 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_on_one_clicked (SavedSearchDialogSearchRowDate* self) { + GtkCalendar* _tmp0_ = NULL; +#line 634 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE (self)); +#line 635 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->cal_one; +#line 635 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_popup_calendar (self, _tmp0_); +#line 6122 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_on_two_clicked (SavedSearchDialogSearchRowDate* self) { + GtkCalendar* _tmp0_ = NULL; +#line 638 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (SAVED_SEARCH_DIALOG_IS_SEARCH_ROW_DATE (self)); +#line 639 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->cal_two; +#line 639 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_popup_calendar (self, _tmp0_); +#line 6134 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_class_init (SavedSearchDialogSearchRowDateClass * klass) { +#line 483 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_search_row_date_parent_class = g_type_class_peek_parent (klass); +#line 483 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->finalize = saved_search_dialog_search_row_date_finalize; +#line 483 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_class_add_private (klass, sizeof (SavedSearchDialogSearchRowDatePrivate)); +#line 483 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_widget = saved_search_dialog_search_row_date_real_get_widget; +#line 483 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->get_search_condition = saved_search_dialog_search_row_date_real_get_search_condition; +#line 483 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->populate = saved_search_dialog_search_row_date_real_populate; +#line 483 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogSearchRowClass *) klass)->is_complete = saved_search_dialog_search_row_date_real_is_complete; +#line 6153 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_instance_init (SavedSearchDialogSearchRowDate * self) { +#line 483 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv = SAVED_SEARCH_DIALOG_SEARCH_ROW_DATE_GET_PRIVATE (self); +#line 6160 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_search_row_date_finalize (SavedSearchDialogSearchRow* obj) { + SavedSearchDialogSearchRowDate * self; + GtkComboBoxText* _tmp0_ = NULL; + guint _tmp1_ = 0U; +#line 483 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_DATE, SavedSearchDialogSearchRowDate); +#line 529 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->context; +#line 529 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", gtk_combo_box_get_type (), &_tmp1_, NULL, FALSE); +#line 529 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, gtk_combo_box_get_type (), GtkComboBox), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _saved_search_dialog_search_row_date_on_changed_gtk_combo_box_changed, self); +#line 485 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->box); +#line 486 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->context); +#line 487 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->label_one); +#line 488 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->label_two); +#line 489 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->cal_one); +#line 490 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->cal_two); +#line 491 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->and); +#line 493 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _saved_search_dialog_search_row_container_unref0 (self->priv->parent); +#line 483 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + SAVED_SEARCH_DIALOG_SEARCH_ROW_CLASS (saved_search_dialog_search_row_date_parent_class)->finalize (obj); +#line 6194 "SavedSearchDialog.c" +} + + +static GType saved_search_dialog_search_row_date_get_type (void) { + static volatile gsize saved_search_dialog_search_row_date_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_dialog_search_row_date_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchDialogSearchRowDateClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_dialog_search_row_date_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchDialogSearchRowDate), 0, (GInstanceInitFunc) saved_search_dialog_search_row_date_instance_init, NULL }; + GType saved_search_dialog_search_row_date_type_id; + saved_search_dialog_search_row_date_type_id = g_type_register_static (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW, "SavedSearchDialogSearchRowDate", &g_define_type_info, 0); + g_once_init_leave (&saved_search_dialog_search_row_date_type_id__volatile, saved_search_dialog_search_row_date_type_id); + } + return saved_search_dialog_search_row_date_type_id__volatile; +} + + +static void value_saved_search_dialog_init (GValue* value) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 6213 "SavedSearchDialog.c" +} + + +static void value_saved_search_dialog_free_value (GValue* value) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (value->data[0].v_pointer) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_unref (value->data[0].v_pointer); +#line 6222 "SavedSearchDialog.c" + } +} + + +static void value_saved_search_dialog_copy_value (const GValue* src_value, GValue* dest_value) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (src_value->data[0].v_pointer) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + dest_value->data[0].v_pointer = saved_search_dialog_ref (src_value->data[0].v_pointer); +#line 6232 "SavedSearchDialog.c" + } else { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + dest_value->data[0].v_pointer = NULL; +#line 6236 "SavedSearchDialog.c" + } +} + + +static gpointer value_saved_search_dialog_peek_pointer (const GValue* value) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return value->data[0].v_pointer; +#line 6244 "SavedSearchDialog.c" +} + + +static gchar* value_saved_search_dialog_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (collect_values[0].v_pointer) { +#line 6251 "SavedSearchDialog.c" + SavedSearchDialog* object; + object = collect_values[0].v_pointer; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (object->parent_instance.g_class == NULL) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); +#line 6258 "SavedSearchDialog.c" + } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.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 6262 "SavedSearchDialog.c" + } +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = saved_search_dialog_ref (object); +#line 6266 "SavedSearchDialog.c" + } else { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 6270 "SavedSearchDialog.c" + } +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return NULL; +#line 6274 "SavedSearchDialog.c" +} + + +static gchar* value_saved_search_dialog_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { + SavedSearchDialog** object_p; + object_p = collect_values[0].v_pointer; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!object_p) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); +#line 6285 "SavedSearchDialog.c" + } +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (!value->data[0].v_pointer) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + *object_p = NULL; +#line 6291 "SavedSearchDialog.c" + } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + *object_p = value->data[0].v_pointer; +#line 6295 "SavedSearchDialog.c" + } else { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + *object_p = saved_search_dialog_ref (value->data[0].v_pointer); +#line 6299 "SavedSearchDialog.c" + } +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return NULL; +#line 6303 "SavedSearchDialog.c" +} + + +GParamSpec* param_spec_saved_search_dialog (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { + ParamSpecSavedSearchDialog* spec; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (g_type_is_a (object_type, TYPE_SAVED_SEARCH_DIALOG), NULL); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + G_PARAM_SPEC (spec)->value_type = object_type; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return G_PARAM_SPEC (spec); +#line 6317 "SavedSearchDialog.c" +} + + +gpointer value_get_saved_search_dialog (const GValue* value) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_SAVED_SEARCH_DIALOG), NULL); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return value->data[0].v_pointer; +#line 6326 "SavedSearchDialog.c" +} + + +void value_set_saved_search_dialog (GValue* value, gpointer v_object) { + SavedSearchDialog* old; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_SAVED_SEARCH_DIALOG)); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + old = value->data[0].v_pointer; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (v_object) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_SAVED_SEARCH_DIALOG)); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = v_object; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_ref (value->data[0].v_pointer); +#line 6346 "SavedSearchDialog.c" + } else { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 6350 "SavedSearchDialog.c" + } +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (old) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_unref (old); +#line 6356 "SavedSearchDialog.c" + } +} + + +void value_take_saved_search_dialog (GValue* value, gpointer v_object) { + SavedSearchDialog* old; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_SAVED_SEARCH_DIALOG)); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + old = value->data[0].v_pointer; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (v_object) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_SAVED_SEARCH_DIALOG)); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = v_object; +#line 6375 "SavedSearchDialog.c" + } else { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + value->data[0].v_pointer = NULL; +#line 6379 "SavedSearchDialog.c" + } +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (old) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_unref (old); +#line 6385 "SavedSearchDialog.c" + } +} + + +static void saved_search_dialog_class_init (SavedSearchDialogClass * klass) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + saved_search_dialog_parent_class = g_type_class_peek_parent (klass); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + ((SavedSearchDialogClass *) klass)->finalize = saved_search_dialog_finalize; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_class_add_private (klass, sizeof (SavedSearchDialogPrivate)); +#line 6397 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_instance_init (SavedSearchDialog * self) { + GeeArrayList* _tmp0_ = NULL; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv = SAVED_SEARCH_DIALOG_GET_PRIVATE (self); +#line 649 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = gee_array_list_new (SAVED_SEARCH_DIALOG_TYPE_SEARCH_ROW_CONTAINER, (GBoxedCopyFunc) saved_search_dialog_search_row_container_ref, saved_search_dialog_search_row_container_unref, NULL, NULL, NULL); +#line 649 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->row_list = _tmp0_; +#line 650 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->edit_mode = FALSE; +#line 651 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->previous_search = NULL; +#line 652 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->priv->valid = FALSE; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self->ref_count = 1; +#line 6417 "SavedSearchDialog.c" +} + + +static void saved_search_dialog_finalize (SavedSearchDialog* obj) { + SavedSearchDialog * self; + GtkEntry* _tmp0_ = NULL; + guint _tmp1_ = 0U; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialog); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_destroy (self); +#line 690 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _tmp0_ = self->priv->search_title; +#line 690 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_parse_name ("changed", GTK_TYPE_EDITABLE, &_tmp1_, NULL, FALSE); +#line 690 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_signal_handlers_disconnect_matched (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GTK_TYPE_EDITABLE, GtkEditable), G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp1_, 0, NULL, (GCallback) _saved_search_dialog_on_title_changed_gtk_editable_changed, self); +#line 643 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->builder); +#line 644 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->dialog); +#line 645 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->add_criteria); +#line 646 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->operator); +#line 647 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->row_box); +#line 648 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->search_title); +#line 649 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->row_list); +#line 651 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + _g_object_unref0 (self->priv->previous_search); +#line 6451 "SavedSearchDialog.c" +} + + +GType saved_search_dialog_get_type (void) { + static volatile gsize saved_search_dialog_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_dialog_type_id__volatile)) { + static const GTypeValueTable g_define_type_value_table = { value_saved_search_dialog_init, value_saved_search_dialog_free_value, value_saved_search_dialog_copy_value, value_saved_search_dialog_peek_pointer, "p", value_saved_search_dialog_collect_value, "p", value_saved_search_dialog_lcopy_value }; + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchDialogClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_dialog_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchDialog), 0, (GInstanceInitFunc) saved_search_dialog_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 saved_search_dialog_type_id; + saved_search_dialog_type_id = g_type_register_fundamental (g_type_fundamental_next (), "SavedSearchDialog", &g_define_type_info, &g_define_type_fundamental_info, 0); + g_once_init_leave (&saved_search_dialog_type_id__volatile, saved_search_dialog_type_id); + } + return saved_search_dialog_type_id__volatile; +} + + +gpointer saved_search_dialog_ref (gpointer instance) { + SavedSearchDialog* self; + self = instance; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_atomic_int_inc (&self->ref_count); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + return instance; +#line 6476 "SavedSearchDialog.c" +} + + +void saved_search_dialog_unref (gpointer instance) { + SavedSearchDialog* self; + self = instance; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + if (g_atomic_int_dec_and_test (&self->ref_count)) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + SAVED_SEARCH_DIALOG_GET_CLASS (self)->finalize (self); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchDialog.vala" + g_type_free_instance ((GTypeInstance *) self); +#line 6489 "SavedSearchDialog.c" + } +} + + + diff --git a/src/searches/SavedSearchDialog.vala b/src/searches/SavedSearchDialog.vala index 7e0b3ec..1716a26 100644 --- a/src/searches/SavedSearchDialog.vala +++ b/src/searches/SavedSearchDialog.vala @@ -7,7 +7,7 @@ // This dialog displays a boolean search configuration. public class SavedSearchDialog { - // Conatins a search row, with a type selector and remove button. + // Contains a search row, with a type selector and remove button. private class SearchRowContainer { public signal void remove(SearchRowContainer this_row); public signal void changed(SearchRowContainer this_row); diff --git a/src/searches/SavedSearchPage.c b/src/searches/SavedSearchPage.c new file mode 100644 index 0000000..a9aa029 --- /dev/null +++ b/src/searches/SavedSearchPage.c @@ -0,0 +1,1493 @@ +/* SavedSearchPage.c generated by valac 0.32.1, the Vala compiler + * generated from SavedSearchPage.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. + */ +/* Source monitoring for saved searches.*/ + +#include <glib.h> +#include <glib-object.h> +#include <gtk/gtk.h> +#include <stdlib.h> +#include <string.h> +#include <gee.h> +#include <gdk/gdk.h> +#include <glib/gi18n-lib.h> + + +#define TYPE_VIEW_MANAGER (view_manager_get_type ()) +#define VIEW_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIEW_MANAGER, ViewManager)) +#define VIEW_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIEW_MANAGER, ViewManagerClass)) +#define IS_VIEW_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIEW_MANAGER)) +#define IS_VIEW_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIEW_MANAGER)) +#define VIEW_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIEW_MANAGER, ViewManagerClass)) + +typedef struct _ViewManager ViewManager; +typedef struct _ViewManagerClass ViewManagerClass; +typedef struct _ViewManagerPrivate ViewManagerPrivate; + +#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_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_COLLECTION_VIEW_MANAGER (collection_view_manager_get_type ()) +#define COLLECTION_VIEW_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_COLLECTION_VIEW_MANAGER, CollectionViewManager)) +#define COLLECTION_VIEW_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_COLLECTION_VIEW_MANAGER, CollectionViewManagerClass)) +#define IS_COLLECTION_VIEW_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_COLLECTION_VIEW_MANAGER)) +#define IS_COLLECTION_VIEW_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_COLLECTION_VIEW_MANAGER)) +#define COLLECTION_VIEW_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_COLLECTION_VIEW_MANAGER, CollectionViewManagerClass)) + +typedef struct _CollectionViewManager CollectionViewManager; +typedef struct _CollectionViewManagerClass CollectionViewManagerClass; +typedef struct _CollectionViewManagerPrivate CollectionViewManagerPrivate; + +#define TYPE_SAVED_SEARCH_MANAGER (saved_search_manager_get_type ()) +#define SAVED_SEARCH_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_MANAGER, SavedSearchManager)) +#define SAVED_SEARCH_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_MANAGER, SavedSearchManagerClass)) +#define IS_SAVED_SEARCH_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_MANAGER)) +#define IS_SAVED_SEARCH_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_MANAGER)) +#define SAVED_SEARCH_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_MANAGER, SavedSearchManagerClass)) + +typedef struct _SavedSearchManager SavedSearchManager; +typedef struct _SavedSearchManagerClass SavedSearchManagerClass; +typedef struct _SavedSearchManagerPrivate SavedSearchManagerPrivate; + +#define TYPE_SAVED_SEARCH (saved_search_get_type ()) +#define SAVED_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH, SavedSearch)) +#define SAVED_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH, SavedSearchClass)) +#define IS_SAVED_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH)) +#define IS_SAVED_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH)) +#define SAVED_SEARCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH, SavedSearchClass)) + +typedef struct _SavedSearch SavedSearch; +typedef struct _SavedSearchClass SavedSearchClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +#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; + +#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_SAVED_SEARCH_PAGE (saved_search_page_get_type ()) +#define SAVED_SEARCH_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_PAGE, SavedSearchPage)) +#define SAVED_SEARCH_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_PAGE, SavedSearchPageClass)) +#define IS_SAVED_SEARCH_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_PAGE)) +#define IS_SAVED_SEARCH_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_PAGE)) +#define SAVED_SEARCH_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_PAGE, SavedSearchPageClass)) + +typedef struct _SavedSearchPage SavedSearchPage; +typedef struct _SavedSearchPageClass SavedSearchPageClass; + +#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; +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; +typedef struct _CheckerboardPagePrivate CheckerboardPagePrivate; + +#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; +typedef struct _MediaPagePrivate MediaPagePrivate; + +#define TYPE_RATING (rating_get_type ()) + +#define TYPE_RAW_DEVELOPER (raw_developer_get_type ()) +typedef struct _CollectionPagePrivate CollectionPagePrivate; +typedef struct _SavedSearchPagePrivate SavedSearchPagePrivate; +#define _g_free0(var) (var = (g_free (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_MEDIA_SOURCE_COLLECTION (media_source_collection_get_type ()) +#define MEDIA_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollection)) +#define MEDIA_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollectionClass)) +#define IS_MEDIA_SOURCE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_SOURCE_COLLECTION)) +#define IS_MEDIA_SOURCE_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_SOURCE_COLLECTION)) +#define MEDIA_SOURCE_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_SOURCE_COLLECTION, MediaSourceCollectionClass)) + +typedef struct _MediaSourceCollection MediaSourceCollection; +typedef struct _MediaSourceCollectionClass MediaSourceCollectionClass; + +#define TYPE_MEDIA_COLLECTION_REGISTRY (media_collection_registry_get_type ()) +#define MEDIA_COLLECTION_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_COLLECTION_REGISTRY, MediaCollectionRegistry)) +#define MEDIA_COLLECTION_REGISTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_COLLECTION_REGISTRY, MediaCollectionRegistryClass)) +#define IS_MEDIA_COLLECTION_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_COLLECTION_REGISTRY)) +#define IS_MEDIA_COLLECTION_REGISTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_COLLECTION_REGISTRY)) +#define MEDIA_COLLECTION_REGISTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_COLLECTION_REGISTRY, MediaCollectionRegistryClass)) + +typedef struct _MediaCollectionRegistry MediaCollectionRegistry; +typedef struct _MediaCollectionRegistryClass MediaCollectionRegistryClass; +#define _media_collection_registry_unref0(var) ((var == NULL) ? NULL : (var = (media_collection_registry_unref (var), NULL))) + +#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 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 VIEW_COLLECTION_TYPE_MONITOR (view_collection_monitor_get_type ()) +#define VIEW_COLLECTION_MONITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VIEW_COLLECTION_TYPE_MONITOR, ViewCollectionMonitor)) +#define VIEW_COLLECTION_MONITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VIEW_COLLECTION_TYPE_MONITOR, ViewCollectionMonitorClass)) +#define VIEW_COLLECTION_IS_MONITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VIEW_COLLECTION_TYPE_MONITOR)) +#define VIEW_COLLECTION_IS_MONITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VIEW_COLLECTION_TYPE_MONITOR)) +#define VIEW_COLLECTION_MONITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VIEW_COLLECTION_TYPE_MONITOR, ViewCollectionMonitorClass)) + +typedef struct _ViewCollectionMonitor ViewCollectionMonitor; +typedef struct _ViewCollectionMonitorClass ViewCollectionMonitorClass; +#define _view_collection_monitor_unref0(var) ((var == NULL) ? NULL : (var = (view_collection_monitor_unref (var), NULL))) +#define _view_manager_unref0(var) ((var == NULL) ? NULL : (var = (view_manager_unref (var), NULL))) +#define _data_collection_unref0(var) ((var == NULL) ? NULL : (var = (data_collection_unref (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_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_SINGLE_DATA_SOURCE_COMMAND (single_data_source_command_get_type ()) +#define SINGLE_DATA_SOURCE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SINGLE_DATA_SOURCE_COMMAND, SingleDataSourceCommand)) +#define SINGLE_DATA_SOURCE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SINGLE_DATA_SOURCE_COMMAND, SingleDataSourceCommandClass)) +#define IS_SINGLE_DATA_SOURCE_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SINGLE_DATA_SOURCE_COMMAND)) +#define IS_SINGLE_DATA_SOURCE_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SINGLE_DATA_SOURCE_COMMAND)) +#define SINGLE_DATA_SOURCE_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SINGLE_DATA_SOURCE_COMMAND, SingleDataSourceCommandClass)) + +typedef struct _SingleDataSourceCommand SingleDataSourceCommand; +typedef struct _SingleDataSourceCommandClass SingleDataSourceCommandClass; + +#define TYPE_DELETE_SAVED_SEARCH_COMMAND (delete_saved_search_command_get_type ()) +#define DELETE_SAVED_SEARCH_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DELETE_SAVED_SEARCH_COMMAND, DeleteSavedSearchCommand)) +#define DELETE_SAVED_SEARCH_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DELETE_SAVED_SEARCH_COMMAND, DeleteSavedSearchCommandClass)) +#define IS_DELETE_SAVED_SEARCH_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DELETE_SAVED_SEARCH_COMMAND)) +#define IS_DELETE_SAVED_SEARCH_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DELETE_SAVED_SEARCH_COMMAND)) +#define DELETE_SAVED_SEARCH_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DELETE_SAVED_SEARCH_COMMAND, DeleteSavedSearchCommandClass)) + +typedef struct _DeleteSavedSearchCommand DeleteSavedSearchCommand; +typedef struct _DeleteSavedSearchCommandClass DeleteSavedSearchCommandClass; +#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_SAVED_SEARCH_DIALOG (saved_search_dialog_get_type ()) +#define SAVED_SEARCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialog)) +#define SAVED_SEARCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialogClass)) +#define IS_SAVED_SEARCH_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_DIALOG)) +#define IS_SAVED_SEARCH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_DIALOG)) +#define SAVED_SEARCH_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_DIALOG, SavedSearchDialogClass)) + +typedef struct _SavedSearchDialog SavedSearchDialog; +typedef struct _SavedSearchDialogClass SavedSearchDialogClass; +#define _saved_search_dialog_unref0(var) ((var == NULL) ? NULL : (var = (saved_search_dialog_unref (var), NULL))) + +struct _ViewManager { + GTypeInstance parent_instance; + volatile int ref_count; + ViewManagerPrivate * priv; +}; + +struct _ViewManagerClass { + GTypeClass parent_class; + void (*finalize) (ViewManager *self); + gboolean (*include_in_view) (ViewManager* self, DataSource* source); + DataView* (*create_view) (ViewManager* self, DataSource* source); +}; + +struct _CollectionViewManager { + ViewManager parent_instance; + CollectionViewManagerPrivate * priv; +}; + +struct _CollectionViewManagerClass { + ViewManagerClass parent_class; +}; + +struct _SavedSearchManager { + CollectionViewManager parent_instance; + SavedSearchManagerPrivate * priv; +}; + +struct _SavedSearchManagerClass { + CollectionViewManagerClass parent_class; +}; + +struct _SavedSearchManagerPrivate { + SavedSearch* search; +}; + +struct _Page { + GtkScrolledWindow parent_instance; + PagePrivate * priv; + GtkUIManager* ui; + 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); + GtkMenuBar* (*get_menubar) (Page* self); + GtkWidget* (*get_page_ui_widget) (Page* self, const gchar* path); + 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 (*init_collect_ui_filenames) (Page* self, GeeList* ui_filenames); + GtkActionEntry* (*init_collect_action_entries) (Page* self, int* result_length1); + GtkToggleActionEntry* (*init_collect_toggle_action_entries) (Page* self, int* result_length1); + void (*register_radio_actions) (Page* self, GtkActionGroup* action_group); + 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, GtkAction* action); + void (*on_display_comments) (MediaPage* self, GtkAction* action); + void (*on_display_ratings) (MediaPage* self, GtkAction* action); + void (*on_display_tags) (MediaPage* self, GtkAction* action); + 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); + 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 _SavedSearchPage { + CollectionPage parent_instance; + SavedSearchPagePrivate * priv; +}; + +struct _SavedSearchPageClass { + CollectionPageClass parent_class; +}; + +struct _SavedSearchPagePrivate { + SavedSearch* search; +}; + +typedef gboolean (*ProgressMonitor) (guint64 current, guint64 total, gboolean do_event_loop, void* user_data); + +static gpointer saved_search_manager_parent_class = NULL; +static gpointer saved_search_page_parent_class = NULL; + +gpointer view_manager_ref (gpointer instance); +void view_manager_unref (gpointer instance); +GParamSpec* param_spec_view_manager (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_view_manager (GValue* value, gpointer v_object); +void value_take_view_manager (GValue* value, gpointer v_object); +gpointer value_get_view_manager (const GValue* value); +GType view_manager_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 data_view_get_type (void) G_GNUC_CONST; +GType collection_view_manager_get_type (void) G_GNUC_CONST; +GType saved_search_manager_get_type (void) G_GNUC_CONST; +GType saved_search_get_type (void) G_GNUC_CONST; +#define SAVED_SEARCH_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SAVED_SEARCH_MANAGER, SavedSearchManagerPrivate)) +enum { + SAVED_SEARCH_MANAGER_DUMMY_PROPERTY +}; +GType page_get_type (void) G_GNUC_CONST; +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 saved_search_page_get_type (void) G_GNUC_CONST; +SavedSearchManager* saved_search_manager_new (SavedSearchPage* owner, SavedSearch* search); +SavedSearchManager* saved_search_manager_construct (GType object_type, SavedSearchPage* owner, SavedSearch* search); +CollectionViewManager* collection_view_manager_new (CollectionPage* page); +CollectionViewManager* collection_view_manager_construct (GType object_type, CollectionPage* page); +static gboolean saved_search_manager_real_include_in_view (ViewManager* base, DataSource* source); +GType thumbnail_source_get_type (void) G_GNUC_CONST; +GType media_source_get_type (void) G_GNUC_CONST; +gboolean saved_search_predicate (SavedSearch* self, MediaSource* source); +static void saved_search_manager_finalize (ViewManager* obj); +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 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 rating_get_type (void) G_GNUC_CONST; +GType raw_developer_get_type (void) G_GNUC_CONST; +#define SAVED_SEARCH_PAGE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SAVED_SEARCH_PAGE, SavedSearchPagePrivate)) +enum { + SAVED_SEARCH_PAGE_DUMMY_PROPERTY +}; +SavedSearchPage* saved_search_page_new (SavedSearch* search); +SavedSearchPage* saved_search_page_construct (GType object_type, SavedSearch* search); +gchar* data_object_get_name (DataObject* self); +CollectionPage* collection_page_construct (GType object_type, const gchar* page_name); +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 media_source_collection_get_type (void) G_GNUC_CONST; +gpointer media_collection_registry_ref (gpointer instance); +void media_collection_registry_unref (gpointer instance); +GParamSpec* param_spec_media_collection_registry (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_media_collection_registry (GValue* value, gpointer v_object); +void value_take_media_collection_registry (GValue* value, gpointer v_object); +gpointer value_get_media_collection_registry (const GValue* value); +GType media_collection_registry_get_type (void) G_GNUC_CONST; +MediaCollectionRegistry* media_collection_registry_get_instance (void); +GeeCollection* media_collection_registry_get_all (MediaCollectionRegistry* self); +GType view_collection_get_type (void) G_GNUC_CONST; +ViewCollection* page_get_view (Page* 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; +gpointer view_collection_monitor_ref (gpointer instance); +void view_collection_monitor_unref (gpointer instance); +GParamSpec* view_collection_param_spec_monitor (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void view_collection_value_set_monitor (GValue* value, gpointer v_object); +void view_collection_value_take_monitor (GValue* value, gpointer v_object); +gpointer view_collection_value_get_monitor (const GValue* value); +GType view_collection_monitor_get_type (void) G_GNUC_CONST; +ViewCollectionMonitor* view_collection_monitor_source_collection (ViewCollection* self, SourceCollection* sources, ViewManager* manager, Alteration* prereq, GeeCollection* initial, ProgressMonitor progress_monitor, void* progress_monitor_target); +void checkerboard_page_init_page_context_menu (CheckerboardPage* self, const gchar* path); +static void saved_search_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_library_photos_sort (ConfigurationFacade* self, gboolean* sort_order, gint* sort_by); +static void saved_search_page_real_set_config_photos_sort (MediaPage* base, gboolean sort_order, gint sort_by); +void configuration_facade_set_library_photos_sort (ConfigurationFacade* self, gboolean sort_order, gint sort_by); +static void saved_search_page_real_init_collect_ui_filenames (Page* base, GeeList* ui_filenames); +void page_init_collect_ui_filenames (Page* self, GeeList* ui_filenames); +static GtkActionEntry* saved_search_page_real_init_collect_action_entries (Page* base, int* result_length1); +GtkActionEntry* page_init_collect_action_entries (Page* self, int* result_length1); +#define TRANSLATABLE "translatable" +static void saved_search_page_on_rename_search (SavedSearchPage* self); +static void _saved_search_page_on_rename_search_gtk_action_callback (GtkAction* action, gpointer self); +static void _vala_array_add147 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value); +static void saved_search_page_on_edit_search (SavedSearchPage* self); +static void _saved_search_page_on_edit_search_gtk_action_callback (GtkAction* action, gpointer self); +static void _vala_array_add148 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value); +static void saved_search_page_on_delete_search (SavedSearchPage* self); +static void _saved_search_page_on_delete_search_gtk_action_callback (GtkAction* action, gpointer self); +static void _vala_array_add149 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value); +gboolean dialogs_confirm_delete_saved_search (SavedSearch* search); +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); +DeleteSavedSearchCommand* delete_saved_search_command_new (SavedSearch* search); +DeleteSavedSearchCommand* delete_saved_search_command_construct (GType object_type, SavedSearch* search); +GType page_command_get_type (void) G_GNUC_CONST; +GType single_data_source_command_get_type (void) G_GNUC_CONST; +GType delete_saved_search_command_get_type (void) G_GNUC_CONST; +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_search_in_sidebar (LibraryWindow* self, SavedSearch* search); +gpointer saved_search_dialog_ref (gpointer instance); +void saved_search_dialog_unref (gpointer instance); +GParamSpec* param_spec_saved_search_dialog (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_saved_search_dialog (GValue* value, gpointer v_object); +void value_take_saved_search_dialog (GValue* value, gpointer v_object); +gpointer value_get_saved_search_dialog (const GValue* value); +GType saved_search_dialog_get_type (void) G_GNUC_CONST; +SavedSearchDialog* saved_search_dialog_new_edit_existing (SavedSearch* saved_search); +SavedSearchDialog* saved_search_dialog_construct_edit_existing (GType object_type, SavedSearch* saved_search); +void saved_search_dialog_show (SavedSearchDialog* self); +static void saved_search_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); +#define RESOURCES_RENAME_SEARCH_MENU _ ("Re_name...") +#define RESOURCES_EDIT_SEARCH_MENU _ ("_Edit...") +#define RESOURCES_DELETE_SEARCH_MENU _ ("_Delete") +void page_update_actions (Page* self, gint selected_count, gint count); +static void saved_search_page_finalize (GObject* obj); + + +static gpointer _g_object_ref0 (gpointer self) { +#line 12 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + return self ? g_object_ref (self) : NULL; +#line 839 "SavedSearchPage.c" +} + + +SavedSearchManager* saved_search_manager_construct (GType object_type, SavedSearchPage* owner, SavedSearch* search) { + SavedSearchManager* self = NULL; + SavedSearchPage* _tmp0_ = NULL; + SavedSearch* _tmp1_ = NULL; + SavedSearch* _tmp2_ = NULL; +#line 10 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + g_return_val_if_fail (IS_SAVED_SEARCH_PAGE (owner), NULL); +#line 10 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + g_return_val_if_fail (IS_SAVED_SEARCH (search), NULL); +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp0_ = owner; +#line 11 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self = (SavedSearchManager*) collection_view_manager_construct (object_type, G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_COLLECTION_PAGE, CollectionPage)); +#line 12 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = search; +#line 12 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_ = _g_object_ref0 (_tmp1_); +#line 12 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_object_unref0 (self->priv->search); +#line 12 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self->priv->search = _tmp2_; +#line 10 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + return self; +#line 866 "SavedSearchPage.c" +} + + +SavedSearchManager* saved_search_manager_new (SavedSearchPage* owner, SavedSearch* search) { +#line 10 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + return saved_search_manager_construct (TYPE_SAVED_SEARCH_MANAGER, owner, search); +#line 873 "SavedSearchPage.c" +} + + +static gboolean saved_search_manager_real_include_in_view (ViewManager* base, DataSource* source) { + SavedSearchManager * self; + gboolean result = FALSE; + SavedSearch* _tmp0_ = NULL; + DataSource* _tmp1_ = NULL; + gboolean _tmp2_ = FALSE; +#line 15 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SAVED_SEARCH_MANAGER, SavedSearchManager); +#line 15 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + g_return_val_if_fail (IS_DATA_SOURCE (source), FALSE); +#line 16 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp0_ = self->priv->search; +#line 16 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = source; +#line 16 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_ = saved_search_predicate (_tmp0_, G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_MEDIA_SOURCE, MediaSource)); +#line 16 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + result = _tmp2_; +#line 16 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + return result; +#line 897 "SavedSearchPage.c" +} + + +static void saved_search_manager_class_init (SavedSearchManagerClass * klass) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + saved_search_manager_parent_class = g_type_class_peek_parent (klass); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + ((ViewManagerClass *) klass)->finalize = saved_search_manager_finalize; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + g_type_class_add_private (klass, sizeof (SavedSearchManagerPrivate)); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + ((ViewManagerClass *) klass)->include_in_view = saved_search_manager_real_include_in_view; +#line 910 "SavedSearchPage.c" +} + + +static void saved_search_manager_instance_init (SavedSearchManager * self) { +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self->priv = SAVED_SEARCH_MANAGER_GET_PRIVATE (self); +#line 917 "SavedSearchPage.c" +} + + +static void saved_search_manager_finalize (ViewManager* obj) { + SavedSearchManager * self; +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SAVED_SEARCH_MANAGER, SavedSearchManager); +#line 9 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_object_unref0 (self->priv->search); +#line 8 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + VIEW_MANAGER_CLASS (saved_search_manager_parent_class)->finalize (obj); +#line 929 "SavedSearchPage.c" +} + + +GType saved_search_manager_get_type (void) { + static volatile gsize saved_search_manager_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_manager_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchManagerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_manager_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchManager), 0, (GInstanceInitFunc) saved_search_manager_instance_init, NULL }; + GType saved_search_manager_type_id; + saved_search_manager_type_id = g_type_register_static (TYPE_COLLECTION_VIEW_MANAGER, "SavedSearchManager", &g_define_type_info, 0); + g_once_init_leave (&saved_search_manager_type_id__volatile, saved_search_manager_type_id); + } + return saved_search_manager_type_id__volatile; +} + + +SavedSearchPage* saved_search_page_construct (GType object_type, SavedSearch* search) { + SavedSearchPage * self = NULL; + SavedSearch* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + SavedSearch* _tmp3_ = NULL; + SavedSearch* _tmp4_ = NULL; +#line 26 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + g_return_val_if_fail (IS_SAVED_SEARCH (search), NULL); +#line 27 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp0_ = search; +#line 27 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_DATA_OBJECT, DataObject)); +#line 27 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_ = _tmp1_; +#line 27 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self = (SavedSearchPage*) collection_page_construct (object_type, _tmp2_); +#line 27 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_free0 (_tmp2_); +#line 28 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp3_ = search; +#line 28 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp4_ = _g_object_ref0 (_tmp3_); +#line 28 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_object_unref0 (self->priv->search); +#line 28 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self->priv->search = _tmp4_; +#line 972 "SavedSearchPage.c" + { + GeeIterator* _sources_it = NULL; + MediaCollectionRegistry* _tmp5_ = NULL; + MediaCollectionRegistry* _tmp6_ = NULL; + GeeCollection* _tmp7_ = NULL; + GeeCollection* _tmp8_ = NULL; + GeeIterator* _tmp9_ = NULL; + GeeIterator* _tmp10_ = NULL; +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp5_ = media_collection_registry_get_instance (); +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp6_ = _tmp5_; +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp7_ = media_collection_registry_get_all (_tmp6_); +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp8_ = _tmp7_; +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp9_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, GEE_TYPE_ITERABLE, GeeIterable)); +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp10_ = _tmp9_; +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_object_unref0 (_tmp8_); +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _media_collection_registry_unref0 (_tmp6_); +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _sources_it = _tmp10_; +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + while (TRUE) { +#line 1001 "SavedSearchPage.c" + GeeIterator* _tmp11_ = NULL; + gboolean _tmp12_ = FALSE; + MediaSourceCollection* sources = NULL; + GeeIterator* _tmp13_ = NULL; + gpointer _tmp14_ = NULL; + ViewCollection* _tmp15_ = NULL; + ViewCollection* _tmp16_ = NULL; + MediaSourceCollection* _tmp17_ = NULL; + SavedSearch* _tmp18_ = NULL; + SavedSearchManager* _tmp19_ = NULL; + SavedSearchManager* _tmp20_ = NULL; + ViewCollectionMonitor* _tmp21_ = NULL; + ViewCollectionMonitor* _tmp22_ = NULL; +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp11_ = _sources_it; +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp12_ = gee_iterator_next (_tmp11_); +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + if (!_tmp12_) { +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + break; +#line 1023 "SavedSearchPage.c" + } +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp13_ = _sources_it; +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp14_ = gee_iterator_get (_tmp13_); +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + sources = (MediaSourceCollection*) _tmp14_; +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp15_ = page_get_view (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page)); +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp16_ = _tmp15_; +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp17_ = sources; +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp18_ = search; +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp19_ = saved_search_manager_new (self, _tmp18_); +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp20_ = _tmp19_; +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp21_ = view_collection_monitor_source_collection (_tmp16_, G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, TYPE_SOURCE_COLLECTION, SourceCollection), G_TYPE_CHECK_INSTANCE_CAST (_tmp20_, TYPE_VIEW_MANAGER, ViewManager), NULL, NULL, NULL, NULL); +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp22_ = _tmp21_; +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _view_collection_monitor_unref0 (_tmp22_); +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _view_manager_unref0 (_tmp20_); +#line 32 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _data_collection_unref0 (_tmp16_); +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _data_collection_unref0 (sources); +#line 1055 "SavedSearchPage.c" + } +#line 31 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_object_unref0 (_sources_it); +#line 1059 "SavedSearchPage.c" + } +#line 34 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + checkerboard_page_init_page_context_menu (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_CHECKERBOARD_PAGE, CheckerboardPage), "/SearchContextMenu"); +#line 26 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + return self; +#line 1065 "SavedSearchPage.c" +} + + +SavedSearchPage* saved_search_page_new (SavedSearch* search) { +#line 26 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + return saved_search_page_construct (TYPE_SAVED_SEARCH_PAGE, search); +#line 1072 "SavedSearchPage.c" +} + + +static void saved_search_page_real_get_config_photos_sort (MediaPage* base, gboolean* sort_order, gint* sort_by) { + SavedSearchPage * self; + gboolean _vala_sort_order = FALSE; + gint _vala_sort_by = 0; + ConfigFacade* _tmp0_ = NULL; + ConfigFacade* _tmp1_ = NULL; + gboolean _tmp2_ = FALSE; + gint _tmp3_ = 0; +#line 37 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SAVED_SEARCH_PAGE, SavedSearchPage); +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp0_ = config_facade_get_instance (); +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = _tmp0_; +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + configuration_facade_get_library_photos_sort (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), &_tmp2_, &_tmp3_); +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _vala_sort_order = _tmp2_; +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _vala_sort_by = _tmp3_; +#line 38 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_object_unref0 (_tmp1_); +#line 37 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + if (sort_order) { +#line 37 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + *sort_order = _vala_sort_order; +#line 1102 "SavedSearchPage.c" + } +#line 37 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + if (sort_by) { +#line 37 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + *sort_by = _vala_sort_by; +#line 1108 "SavedSearchPage.c" + } +} + + +static void saved_search_page_real_set_config_photos_sort (MediaPage* base, gboolean sort_order, gint sort_by) { + SavedSearchPage * self; + ConfigFacade* _tmp0_ = NULL; + ConfigFacade* _tmp1_ = NULL; + gboolean _tmp2_ = FALSE; + gint _tmp3_ = 0; +#line 41 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SAVED_SEARCH_PAGE, SavedSearchPage); +#line 42 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp0_ = config_facade_get_instance (); +#line 42 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = _tmp0_; +#line 42 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_ = sort_order; +#line 42 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp3_ = sort_by; +#line 42 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + configuration_facade_set_library_photos_sort (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_CONFIGURATION_FACADE, ConfigurationFacade), _tmp2_, _tmp3_); +#line 42 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_object_unref0 (_tmp1_); +#line 1133 "SavedSearchPage.c" +} + + +static void saved_search_page_real_init_collect_ui_filenames (Page* base, GeeList* ui_filenames) { + SavedSearchPage * self; + GeeList* _tmp0_ = NULL; + GeeList* _tmp1_ = NULL; +#line 45 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SAVED_SEARCH_PAGE, SavedSearchPage); +#line 45 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + g_return_if_fail (GEE_IS_LIST (ui_filenames)); +#line 46 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp0_ = ui_filenames; +#line 46 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + PAGE_CLASS (saved_search_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), _tmp0_); +#line 47 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = ui_filenames; +#line 47 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + gee_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_COLLECTION, GeeCollection), "savedsearch.ui"); +#line 1153 "SavedSearchPage.c" +} + + +static void _saved_search_page_on_rename_search_gtk_action_callback (GtkAction* action, gpointer self) { +#line 53 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + saved_search_page_on_rename_search ((SavedSearchPage*) self); +#line 1160 "SavedSearchPage.c" +} + + +static void _vala_array_add147 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value) { +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + if ((*length) == (*size)) { +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + *size = (*size) ? (2 * (*size)) : 4; +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + *array = g_renew (GtkActionEntry, *array, *size); +#line 1171 "SavedSearchPage.c" + } +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + (*array)[(*length)++] = *value; +#line 1175 "SavedSearchPage.c" +} + + +static void _saved_search_page_on_edit_search_gtk_action_callback (GtkAction* action, gpointer self) { +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + saved_search_page_on_edit_search ((SavedSearchPage*) self); +#line 1182 "SavedSearchPage.c" +} + + +static void _vala_array_add148 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value) { +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + if ((*length) == (*size)) { +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + *size = (*size) ? (2 * (*size)) : 4; +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + *array = g_renew (GtkActionEntry, *array, *size); +#line 1193 "SavedSearchPage.c" + } +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + (*array)[(*length)++] = *value; +#line 1197 "SavedSearchPage.c" +} + + +static void _saved_search_page_on_delete_search_gtk_action_callback (GtkAction* action, gpointer self) { +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + saved_search_page_on_delete_search ((SavedSearchPage*) self); +#line 1204 "SavedSearchPage.c" +} + + +static void _vala_array_add149 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value) { +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + if ((*length) == (*size)) { +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + *size = (*size) ? (2 * (*size)) : 4; +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + *array = g_renew (GtkActionEntry, *array, *size); +#line 1215 "SavedSearchPage.c" + } +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + (*array)[(*length)++] = *value; +#line 1219 "SavedSearchPage.c" +} + + +static GtkActionEntry* saved_search_page_real_init_collect_action_entries (Page* base, int* result_length1) { + SavedSearchPage * self; + GtkActionEntry* result = NULL; + GtkActionEntry* actions = NULL; + gint _tmp0_ = 0; + GtkActionEntry* _tmp1_ = NULL; + gint actions_length1 = 0; + gint _actions_size_ = 0; + GtkActionEntry rename_search = {0}; + GtkActionEntry _tmp2_ = {0}; + GtkActionEntry* _tmp3_ = NULL; + gint _tmp3__length1 = 0; + GtkActionEntry _tmp4_ = {0}; + GtkActionEntry edit_search = {0}; + GtkActionEntry _tmp5_ = {0}; + GtkActionEntry* _tmp6_ = NULL; + gint _tmp6__length1 = 0; + GtkActionEntry _tmp7_ = {0}; + GtkActionEntry delete_search = {0}; + GtkActionEntry _tmp8_ = {0}; + GtkActionEntry* _tmp9_ = NULL; + gint _tmp9__length1 = 0; + GtkActionEntry _tmp10_ = {0}; + GtkActionEntry* _tmp11_ = NULL; + gint _tmp11__length1 = 0; +#line 50 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SAVED_SEARCH_PAGE, SavedSearchPage); +#line 51 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = PAGE_CLASS (saved_search_page_parent_class)->init_collect_action_entries (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_COLLECTION_PAGE, CollectionPage), TYPE_PAGE, Page), &_tmp0_); +#line 51 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + actions = _tmp1_; +#line 51 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + actions_length1 = _tmp0_; +#line 51 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _actions_size_ = actions_length1; +#line 53 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_.name = "RenameSearch"; +#line 53 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_.stock_id = NULL; +#line 53 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_.label = TRANSLATABLE; +#line 53 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_.accelerator = NULL; +#line 53 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_.tooltip = NULL; +#line 53 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_.callback = (GCallback) _saved_search_page_on_rename_search_gtk_action_callback; +#line 53 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + rename_search = _tmp2_; +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp3_ = actions; +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp3__length1 = actions_length1; +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp4_ = rename_search; +#line 54 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _vala_array_add147 (&actions, &actions_length1, &_actions_size_, &_tmp4_); +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp5_.name = "EditSearch"; +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp5_.stock_id = NULL; +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp5_.label = TRANSLATABLE; +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp5_.accelerator = NULL; +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp5_.tooltip = NULL; +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp5_.callback = (GCallback) _saved_search_page_on_edit_search_gtk_action_callback; +#line 56 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + edit_search = _tmp5_; +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp6_ = actions; +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp6__length1 = actions_length1; +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp7_ = edit_search; +#line 57 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _vala_array_add148 (&actions, &actions_length1, &_actions_size_, &_tmp7_); +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp8_.name = "DeleteSearch"; +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp8_.stock_id = NULL; +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp8_.label = TRANSLATABLE; +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp8_.accelerator = NULL; +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp8_.tooltip = NULL; +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp8_.callback = (GCallback) _saved_search_page_on_delete_search_gtk_action_callback; +#line 59 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + delete_search = _tmp8_; +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp9_ = actions; +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp9__length1 = actions_length1; +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp10_ = delete_search; +#line 60 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _vala_array_add149 (&actions, &actions_length1, &_actions_size_, &_tmp10_); +#line 62 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp11_ = actions; +#line 62 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp11__length1 = actions_length1; +#line 62 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + if (result_length1) { +#line 62 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + *result_length1 = _tmp11__length1; +#line 1332 "SavedSearchPage.c" + } +#line 62 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + result = _tmp11_; +#line 62 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + return result; +#line 1338 "SavedSearchPage.c" +} + + +static void saved_search_page_on_delete_search (SavedSearchPage* self) { + SavedSearch* _tmp0_ = NULL; + gboolean _tmp1_ = FALSE; +#line 65 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + g_return_if_fail (IS_SAVED_SEARCH_PAGE (self)); +#line 66 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp0_ = self->priv->search; +#line 66 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = dialogs_confirm_delete_saved_search (_tmp0_); +#line 66 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + if (_tmp1_) { +#line 1353 "SavedSearchPage.c" + CommandManager* _tmp2_ = NULL; + CommandManager* _tmp3_ = NULL; + SavedSearch* _tmp4_ = NULL; + DeleteSavedSearchCommand* _tmp5_ = NULL; + DeleteSavedSearchCommand* _tmp6_ = NULL; +#line 67 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_ = app_window_get_command_manager (); +#line 67 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp3_ = _tmp2_; +#line 67 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp4_ = self->priv->search; +#line 67 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp5_ = delete_saved_search_command_new (_tmp4_); +#line 67 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp6_ = _tmp5_; +#line 67 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + command_manager_execute (_tmp3_, G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_COMMAND, Command)); +#line 67 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_object_unref0 (_tmp6_); +#line 67 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _command_manager_unref0 (_tmp3_); +#line 1375 "SavedSearchPage.c" + } +} + + +static void saved_search_page_on_rename_search (SavedSearchPage* self) { + LibraryWindow* _tmp0_ = NULL; + LibraryWindow* _tmp1_ = NULL; + SavedSearch* _tmp2_ = NULL; +#line 70 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + g_return_if_fail (IS_SAVED_SEARCH_PAGE (self)); +#line 71 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp0_ = library_window_get_app (); +#line 71 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = _tmp0_; +#line 71 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp2_ = self->priv->search; +#line 71 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + library_window_rename_search_in_sidebar (_tmp1_, _tmp2_); +#line 71 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_object_unref0 (_tmp1_); +#line 1396 "SavedSearchPage.c" +} + + +static void saved_search_page_on_edit_search (SavedSearchPage* self) { + SavedSearchDialog* ssd = NULL; + SavedSearch* _tmp0_ = NULL; + SavedSearchDialog* _tmp1_ = NULL; +#line 74 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + g_return_if_fail (IS_SAVED_SEARCH_PAGE (self)); +#line 75 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp0_ = self->priv->search; +#line 75 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = saved_search_dialog_new_edit_existing (_tmp0_); +#line 75 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + ssd = _tmp1_; +#line 76 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + saved_search_dialog_show (ssd); +#line 74 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _saved_search_dialog_unref0 (ssd); +#line 1416 "SavedSearchPage.c" +} + + +static void saved_search_page_real_update_actions (Page* base, gint selected_count, gint count) { + SavedSearchPage * self; + gint _tmp0_ = 0; + gint _tmp1_ = 0; +#line 79 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SAVED_SEARCH_PAGE, SavedSearchPage); +#line 80 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + page_set_action_details (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), "RenameSearch", RESOURCES_RENAME_SEARCH_MENU, NULL, TRUE); +#line 83 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + page_set_action_details (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), "EditSearch", RESOURCES_EDIT_SEARCH_MENU, NULL, TRUE); +#line 86 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + page_set_action_details (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PAGE, Page), "DeleteSearch", RESOURCES_DELETE_SEARCH_MENU, NULL, TRUE); +#line 89 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp0_ = selected_count; +#line 89 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _tmp1_ = count; +#line 89 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + PAGE_CLASS (saved_search_page_parent_class)->update_actions (G_TYPE_CHECK_INSTANCE_CAST (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_COLLECTION_PAGE, CollectionPage), TYPE_PAGE, Page), _tmp0_, _tmp1_); +#line 1438 "SavedSearchPage.c" +} + + +static void saved_search_page_class_init (SavedSearchPageClass * klass) { +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + saved_search_page_parent_class = g_type_class_peek_parent (klass); +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + g_type_class_add_private (klass, sizeof (SavedSearchPagePrivate)); +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + ((MediaPageClass *) klass)->get_config_photos_sort = saved_search_page_real_get_config_photos_sort; +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + ((MediaPageClass *) klass)->set_config_photos_sort = saved_search_page_real_set_config_photos_sort; +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + ((PageClass *) klass)->init_collect_ui_filenames = saved_search_page_real_init_collect_ui_filenames; +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + ((PageClass *) klass)->init_collect_action_entries = saved_search_page_real_init_collect_action_entries; +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + ((PageClass *) klass)->update_actions = saved_search_page_real_update_actions; +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + G_OBJECT_CLASS (klass)->finalize = saved_search_page_finalize; +#line 1459 "SavedSearchPage.c" +} + + +static void saved_search_page_instance_init (SavedSearchPage * self) { +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self->priv = SAVED_SEARCH_PAGE_GET_PRIVATE (self); +#line 1466 "SavedSearchPage.c" +} + + +static void saved_search_page_finalize (GObject* obj) { + SavedSearchPage * self; +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SAVED_SEARCH_PAGE, SavedSearchPage); +#line 24 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + _g_object_unref0 (self->priv->search); +#line 21 "/home/jens/Source/shotwell/src/searches/SavedSearchPage.vala" + G_OBJECT_CLASS (saved_search_page_parent_class)->finalize (obj); +#line 1478 "SavedSearchPage.c" +} + + +GType saved_search_page_get_type (void) { + static volatile gsize saved_search_page_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_page_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchPageClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_page_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchPage), 0, (GInstanceInitFunc) saved_search_page_instance_init, NULL }; + GType saved_search_page_type_id; + saved_search_page_type_id = g_type_register_static (TYPE_COLLECTION_PAGE, "SavedSearchPage", &g_define_type_info, 0); + g_once_init_leave (&saved_search_page_type_id__volatile, saved_search_page_type_id); + } + return saved_search_page_type_id__volatile; +} + + + diff --git a/src/searches/SearchBoolean.c b/src/searches/SearchBoolean.c new file mode 100644 index 0000000..b182916 --- /dev/null +++ b/src/searches/SearchBoolean.c @@ -0,0 +1,6902 @@ +/* SearchBoolean.c generated by valac 0.32.1, the Vala compiler + * generated from SearchBoolean.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. + */ +/* For specifying whether a search should be ORed (any) or ANDed (all).*/ + +#include <glib.h> +#include <glib-object.h> +#include <stdlib.h> +#include <string.h> +#include <glib/gi18n-lib.h> +#include <gee.h> +#include <time.h> +#include <gtk/gtk.h> +#include <gobject/gvaluecollector.h> + + +#define TYPE_SEARCH_OPERATOR (search_operator_get_type ()) + +#define TYPE_SEARCH_CONDITION (search_condition_get_type ()) +#define SEARCH_CONDITION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION, SearchCondition)) +#define SEARCH_CONDITION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION, SearchConditionClass)) +#define IS_SEARCH_CONDITION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION)) +#define IS_SEARCH_CONDITION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION)) +#define SEARCH_CONDITION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION, SearchConditionClass)) + +typedef struct _SearchCondition SearchCondition; +typedef struct _SearchConditionClass SearchConditionClass; +typedef struct _SearchConditionPrivate SearchConditionPrivate; + +#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_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 SEARCH_CONDITION_TYPE_SEARCH_TYPE (search_condition_search_type_get_type ()) +typedef struct _ParamSpecSearchCondition ParamSpecSearchCondition; + +#define TYPE_SEARCH_CONDITION_TEXT (search_condition_text_get_type ()) +#define SEARCH_CONDITION_TEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_TEXT, SearchConditionText)) +#define SEARCH_CONDITION_TEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_TEXT, SearchConditionTextClass)) +#define IS_SEARCH_CONDITION_TEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_TEXT)) +#define IS_SEARCH_CONDITION_TEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_TEXT)) +#define SEARCH_CONDITION_TEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_TEXT, SearchConditionTextClass)) + +typedef struct _SearchConditionText SearchConditionText; +typedef struct _SearchConditionTextClass SearchConditionTextClass; +typedef struct _SearchConditionTextPrivate SearchConditionTextPrivate; + +#define SEARCH_CONDITION_TEXT_TYPE_CONTEXT (search_condition_text_context_get_type ()) +#define _g_free0(var) (var = (g_free (var), NULL)) + +#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 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 _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +#define TYPE_EVENT_SOURCE (event_source_get_type ()) +#define EVENT_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT_SOURCE, EventSource)) +#define EVENT_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT_SOURCE, EventSourceClass)) +#define IS_EVENT_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT_SOURCE)) +#define IS_EVENT_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT_SOURCE)) +#define EVENT_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT_SOURCE, EventSourceClass)) + +typedef struct _EventSource EventSource; +typedef struct _EventSourceClass EventSourceClass; + +#define TYPE_EVENT (event_get_type ()) +#define EVENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EVENT, Event)) +#define EVENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EVENT, EventClass)) +#define IS_EVENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EVENT)) +#define IS_EVENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EVENT)) +#define EVENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EVENT, EventClass)) + +typedef struct _Event Event; +typedef struct _EventClass EventClass; + +#define TYPE_SEARCH_CONDITION_MEDIA_TYPE (search_condition_media_type_get_type ()) +#define SEARCH_CONDITION_MEDIA_TYPE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_MEDIA_TYPE, SearchConditionMediaType)) +#define SEARCH_CONDITION_MEDIA_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_MEDIA_TYPE, SearchConditionMediaTypeClass)) +#define IS_SEARCH_CONDITION_MEDIA_TYPE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_MEDIA_TYPE)) +#define IS_SEARCH_CONDITION_MEDIA_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_MEDIA_TYPE)) +#define SEARCH_CONDITION_MEDIA_TYPE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_MEDIA_TYPE, SearchConditionMediaTypeClass)) + +typedef struct _SearchConditionMediaType SearchConditionMediaType; +typedef struct _SearchConditionMediaTypeClass SearchConditionMediaTypeClass; +typedef struct _SearchConditionMediaTypePrivate SearchConditionMediaTypePrivate; + +#define SEARCH_CONDITION_MEDIA_TYPE_TYPE_MEDIA_TYPE (search_condition_media_type_media_type_get_type ()) + +#define SEARCH_CONDITION_MEDIA_TYPE_TYPE_CONTEXT (search_condition_media_type_context_get_type ()) + +#define TYPE_PHOTO_SOURCE (photo_source_get_type ()) +#define PHOTO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PHOTO_SOURCE, PhotoSource)) +#define PHOTO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PHOTO_SOURCE, PhotoSourceClass)) +#define IS_PHOTO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PHOTO_SOURCE)) +#define IS_PHOTO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PHOTO_SOURCE)) +#define PHOTO_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PHOTO_SOURCE, PhotoSourceClass)) + +typedef struct _PhotoSource PhotoSource; +typedef struct _PhotoSourceClass PhotoSourceClass; + +#define TYPE_PHOTO (photo_get_type ()) +#define PHOTO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PHOTO, Photo)) +#define PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PHOTO, PhotoClass)) +#define IS_PHOTO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PHOTO)) +#define IS_PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PHOTO)) +#define PHOTO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PHOTO, PhotoClass)) + +typedef struct _Photo Photo; +typedef struct _PhotoClass PhotoClass; + +#define TYPE_PHOTO_FILE_FORMAT (photo_file_format_get_type ()) + +#define TYPE_VIDEO_SOURCE (video_source_get_type ()) +#define VIDEO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIDEO_SOURCE, VideoSource)) +#define VIDEO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIDEO_SOURCE, VideoSourceClass)) +#define IS_VIDEO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIDEO_SOURCE)) +#define IS_VIDEO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIDEO_SOURCE)) +#define VIDEO_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIDEO_SOURCE, VideoSourceClass)) + +typedef struct _VideoSource VideoSource; +typedef struct _VideoSourceClass VideoSourceClass; + +#define TYPE_SEARCH_CONDITION_FLAGGED (search_condition_flagged_get_type ()) +#define SEARCH_CONDITION_FLAGGED(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_FLAGGED, SearchConditionFlagged)) +#define SEARCH_CONDITION_FLAGGED_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_FLAGGED, SearchConditionFlaggedClass)) +#define IS_SEARCH_CONDITION_FLAGGED(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_FLAGGED)) +#define IS_SEARCH_CONDITION_FLAGGED_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_FLAGGED)) +#define SEARCH_CONDITION_FLAGGED_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_FLAGGED, SearchConditionFlaggedClass)) + +typedef struct _SearchConditionFlagged SearchConditionFlagged; +typedef struct _SearchConditionFlaggedClass SearchConditionFlaggedClass; +typedef struct _SearchConditionFlaggedPrivate SearchConditionFlaggedPrivate; + +#define SEARCH_CONDITION_FLAGGED_TYPE_STATE (search_condition_flagged_state_get_type ()) + +#define TYPE_FLAGGABLE (flaggable_get_type ()) +#define FLAGGABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_FLAGGABLE, Flaggable)) +#define IS_FLAGGABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_FLAGGABLE)) +#define FLAGGABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_FLAGGABLE, FlaggableIface)) + +typedef struct _Flaggable Flaggable; +typedef struct _FlaggableIface FlaggableIface; + +#define TYPE_SEARCH_CONDITION_MODIFIED (search_condition_modified_get_type ()) +#define SEARCH_CONDITION_MODIFIED(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_MODIFIED, SearchConditionModified)) +#define SEARCH_CONDITION_MODIFIED_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_MODIFIED, SearchConditionModifiedClass)) +#define IS_SEARCH_CONDITION_MODIFIED(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_MODIFIED)) +#define IS_SEARCH_CONDITION_MODIFIED_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_MODIFIED)) +#define SEARCH_CONDITION_MODIFIED_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_MODIFIED, SearchConditionModifiedClass)) + +typedef struct _SearchConditionModified SearchConditionModified; +typedef struct _SearchConditionModifiedClass SearchConditionModifiedClass; +typedef struct _SearchConditionModifiedPrivate SearchConditionModifiedPrivate; + +#define SEARCH_CONDITION_MODIFIED_TYPE_STATE (search_condition_modified_state_get_type ()) + +#define SEARCH_CONDITION_MODIFIED_TYPE_CONTEXT (search_condition_modified_context_get_type ()) + +#define TYPE_SEARCH_CONDITION_RATING (search_condition_rating_get_type ()) +#define SEARCH_CONDITION_RATING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_RATING, SearchConditionRating)) +#define SEARCH_CONDITION_RATING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_RATING, SearchConditionRatingClass)) +#define IS_SEARCH_CONDITION_RATING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_RATING)) +#define IS_SEARCH_CONDITION_RATING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_RATING)) +#define SEARCH_CONDITION_RATING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_RATING, SearchConditionRatingClass)) + +typedef struct _SearchConditionRating SearchConditionRating; +typedef struct _SearchConditionRatingClass SearchConditionRatingClass; +typedef struct _SearchConditionRatingPrivate SearchConditionRatingPrivate; + +#define TYPE_RATING (rating_get_type ()) + +#define SEARCH_CONDITION_RATING_TYPE_CONTEXT (search_condition_rating_context_get_type ()) + +#define TYPE_SEARCH_CONDITION_DATE (search_condition_date_get_type ()) +#define SEARCH_CONDITION_DATE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SEARCH_CONDITION_DATE, SearchConditionDate)) +#define SEARCH_CONDITION_DATE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SEARCH_CONDITION_DATE, SearchConditionDateClass)) +#define IS_SEARCH_CONDITION_DATE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SEARCH_CONDITION_DATE)) +#define IS_SEARCH_CONDITION_DATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SEARCH_CONDITION_DATE)) +#define SEARCH_CONDITION_DATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SEARCH_CONDITION_DATE, SearchConditionDateClass)) + +typedef struct _SearchConditionDate SearchConditionDate; +typedef struct _SearchConditionDateClass SearchConditionDateClass; +typedef struct _SearchConditionDatePrivate SearchConditionDatePrivate; + +#define SEARCH_CONDITION_DATE_TYPE_CONTEXT (search_condition_date_context_get_type ()) +#define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL))) +typedef struct _DataObjectPrivate DataObjectPrivate; + +#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; +typedef struct _DataSourcePrivate DataSourcePrivate; + +#define TYPE_SOURCE_HOLDING_TANK (source_holding_tank_get_type ()) +#define SOURCE_HOLDING_TANK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_HOLDING_TANK, SourceHoldingTank)) +#define SOURCE_HOLDING_TANK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_HOLDING_TANK, SourceHoldingTankClass)) +#define IS_SOURCE_HOLDING_TANK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_HOLDING_TANK)) +#define IS_SOURCE_HOLDING_TANK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_HOLDING_TANK)) +#define SOURCE_HOLDING_TANK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_HOLDING_TANK, SourceHoldingTankClass)) + +typedef struct _SourceHoldingTank SourceHoldingTank; +typedef struct _SourceHoldingTankClass SourceHoldingTankClass; + +#define TYPE_SOURCE_SNAPSHOT (source_snapshot_get_type ()) +#define SOURCE_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SOURCE_SNAPSHOT, SourceSnapshot)) +#define SOURCE_SNAPSHOT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SOURCE_SNAPSHOT, SourceSnapshotClass)) +#define IS_SOURCE_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SOURCE_SNAPSHOT)) +#define IS_SOURCE_SNAPSHOT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SOURCE_SNAPSHOT)) +#define SOURCE_SNAPSHOT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SOURCE_SNAPSHOT, SourceSnapshotClass)) + +typedef struct _SourceSnapshot SourceSnapshot; +typedef struct _SourceSnapshotClass SourceSnapshotClass; + +#define TYPE_SAVED_SEARCH (saved_search_get_type ()) +#define SAVED_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH, SavedSearch)) +#define SAVED_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH, SavedSearchClass)) +#define IS_SAVED_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH)) +#define IS_SAVED_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH)) +#define SAVED_SEARCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH, SavedSearchClass)) + +typedef struct _SavedSearch SavedSearch; +typedef struct _SavedSearchClass SavedSearchClass; +typedef struct _SavedSearchPrivate SavedSearchPrivate; + +#define TYPE_SAVED_SEARCH_ROW (saved_search_row_get_type ()) +#define SAVED_SEARCH_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_ROW, SavedSearchRow)) +#define SAVED_SEARCH_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_ROW, SavedSearchRowClass)) +#define IS_SAVED_SEARCH_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_ROW)) +#define IS_SAVED_SEARCH_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_ROW)) +#define SAVED_SEARCH_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_ROW, SavedSearchRowClass)) + +typedef struct _SavedSearchRow SavedSearchRow; +typedef struct _SavedSearchRowClass SavedSearchRowClass; +#define _saved_search_row_unref0(var) ((var == NULL) ? NULL : (var = (saved_search_row_unref (var), NULL))) +typedef struct _SavedSearchRowPrivate SavedSearchRowPrivate; + +#define TYPE_SAVED_SEARCH_ID (saved_search_id_get_type ()) +typedef struct _SavedSearchID SavedSearchID; +#define _search_condition_unref0(var) ((var == NULL) ? NULL : (var = (search_condition_unref (var), NULL))) + +#define TYPE_DATABASE_TABLE (database_table_get_type ()) +#define DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATABASE_TABLE, DatabaseTable)) +#define DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATABASE_TABLE, DatabaseTableClass)) +#define IS_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATABASE_TABLE)) +#define IS_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATABASE_TABLE)) +#define DATABASE_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATABASE_TABLE, DatabaseTableClass)) + +typedef struct _DatabaseTable DatabaseTable; +typedef struct _DatabaseTableClass DatabaseTableClass; + +#define TYPE_SAVED_SEARCH_DB_TABLE (saved_search_db_table_get_type ()) +#define SAVED_SEARCH_DB_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_DB_TABLE, SavedSearchDBTable)) +#define SAVED_SEARCH_DB_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_DB_TABLE, SavedSearchDBTableClass)) +#define IS_SAVED_SEARCH_DB_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_DB_TABLE)) +#define IS_SAVED_SEARCH_DB_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_DB_TABLE)) +#define SAVED_SEARCH_DB_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_DB_TABLE, SavedSearchDBTableClass)) + +typedef struct _SavedSearchDBTable SavedSearchDBTable; +typedef struct _SavedSearchDBTableClass SavedSearchDBTableClass; +#define _database_table_unref0(var) ((var == NULL) ? NULL : (var = (database_table_unref (var), NULL))) +#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL))) + +#define TYPE_SAVED_SEARCH_TABLE (saved_search_table_get_type ()) +#define SAVED_SEARCH_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SAVED_SEARCH_TABLE, SavedSearchTable)) +#define SAVED_SEARCH_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SAVED_SEARCH_TABLE, SavedSearchTableClass)) +#define IS_SAVED_SEARCH_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SAVED_SEARCH_TABLE)) +#define IS_SAVED_SEARCH_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SAVED_SEARCH_TABLE)) +#define SAVED_SEARCH_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SAVED_SEARCH_TABLE, SavedSearchTableClass)) + +typedef struct _SavedSearchTable SavedSearchTable; +typedef struct _SavedSearchTableClass SavedSearchTableClass; +#define _saved_search_table_unref0(var) ((var == NULL) ? NULL : (var = (saved_search_table_unref (var), NULL))) + +#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_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; +typedef struct _SavedSearchTablePrivate SavedSearchTablePrivate; +typedef struct _ParamSpecSavedSearchTable ParamSpecSavedSearchTable; + +typedef enum { + SEARCH_OPERATOR_ANY = 0, + SEARCH_OPERATOR_ALL, + SEARCH_OPERATOR_NONE +} SearchOperator; + +struct _SearchCondition { + GTypeInstance parent_instance; + volatile int ref_count; + SearchConditionPrivate * priv; +}; + +struct _SearchConditionClass { + GTypeClass parent_class; + void (*finalize) (SearchCondition *self); + gboolean (*predicate) (SearchCondition* self, MediaSource* source); +}; + +typedef enum { + SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT = 0, + SEARCH_CONDITION_SEARCH_TYPE_TITLE, + SEARCH_CONDITION_SEARCH_TYPE_TAG, + SEARCH_CONDITION_SEARCH_TYPE_EVENT_NAME, + SEARCH_CONDITION_SEARCH_TYPE_FILE_NAME, + SEARCH_CONDITION_SEARCH_TYPE_MEDIA_TYPE, + SEARCH_CONDITION_SEARCH_TYPE_FLAG_STATE, + SEARCH_CONDITION_SEARCH_TYPE_MODIFIED_STATE, + SEARCH_CONDITION_SEARCH_TYPE_RATING, + SEARCH_CONDITION_SEARCH_TYPE_COMMENT, + SEARCH_CONDITION_SEARCH_TYPE_DATE +} SearchConditionSearchType; + +struct _SearchConditionPrivate { + SearchConditionSearchType _search_type; +}; + +struct _ParamSpecSearchCondition { + GParamSpec parent_instance; +}; + +struct _SearchConditionText { + SearchCondition parent_instance; + SearchConditionTextPrivate * priv; +}; + +struct _SearchConditionTextClass { + SearchConditionClass parent_class; +}; + +typedef enum { + SEARCH_CONDITION_TEXT_CONTEXT_CONTAINS = 0, + SEARCH_CONDITION_TEXT_CONTEXT_IS_EXACTLY, + SEARCH_CONDITION_TEXT_CONTEXT_STARTS_WITH, + SEARCH_CONDITION_TEXT_CONTEXT_ENDS_WITH, + SEARCH_CONDITION_TEXT_CONTEXT_DOES_NOT_CONTAIN, + SEARCH_CONDITION_TEXT_CONTEXT_IS_NOT_SET, + SEARCH_CONDITION_TEXT_CONTEXT_IS_SET +} SearchConditionTextContext; + +struct _SearchConditionTextPrivate { + gchar* _text; + SearchConditionTextContext _context; +}; + +struct _SearchConditionMediaType { + SearchCondition parent_instance; + SearchConditionMediaTypePrivate * priv; +}; + +struct _SearchConditionMediaTypeClass { + SearchConditionClass parent_class; +}; + +typedef enum { + SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_ALL = 0, + SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_RAW, + SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_VIDEO +} SearchConditionMediaTypeMediaType; + +typedef enum { + SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS = 0, + SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS_NOT +} SearchConditionMediaTypeContext; + +struct _SearchConditionMediaTypePrivate { + SearchConditionMediaTypeMediaType _media_type; + SearchConditionMediaTypeContext _context; +}; + +typedef enum { + PHOTO_FILE_FORMAT_JFIF, + PHOTO_FILE_FORMAT_RAW, + PHOTO_FILE_FORMAT_PNG, + PHOTO_FILE_FORMAT_TIFF, + PHOTO_FILE_FORMAT_BMP, + PHOTO_FILE_FORMAT_UNKNOWN +} PhotoFileFormat; + +struct _SearchConditionFlagged { + SearchCondition parent_instance; + SearchConditionFlaggedPrivate * priv; +}; + +struct _SearchConditionFlaggedClass { + SearchConditionClass parent_class; +}; + +typedef enum { + SEARCH_CONDITION_FLAGGED_STATE_FLAGGED = 0, + SEARCH_CONDITION_FLAGGED_STATE_UNFLAGGED +} SearchConditionFlaggedState; + +struct _SearchConditionFlaggedPrivate { + SearchConditionFlaggedState _state; +}; + +struct _FlaggableIface { + GTypeInterface parent_iface; + gboolean (*is_flagged) (Flaggable* self); + void (*mark_flagged) (Flaggable* self); + void (*mark_unflagged) (Flaggable* self); +}; + +struct _SearchConditionModified { + SearchCondition parent_instance; + SearchConditionModifiedPrivate * priv; +}; + +struct _SearchConditionModifiedClass { + SearchConditionClass parent_class; +}; + +typedef enum { + SEARCH_CONDITION_MODIFIED_STATE_MODIFIED = 0, + SEARCH_CONDITION_MODIFIED_STATE_INTERNAL_CHANGES, + SEARCH_CONDITION_MODIFIED_STATE_EXTERNAL_CHANGES +} SearchConditionModifiedState; + +typedef enum { + SEARCH_CONDITION_MODIFIED_CONTEXT_HAS = 0, + SEARCH_CONDITION_MODIFIED_CONTEXT_HAS_NO +} SearchConditionModifiedContext; + +struct _SearchConditionModifiedPrivate { + SearchConditionModifiedState _state; + SearchConditionModifiedContext _context; +}; + +struct _SearchConditionRating { + SearchCondition parent_instance; + SearchConditionRatingPrivate * priv; +}; + +struct _SearchConditionRatingClass { + SearchConditionClass parent_class; +}; + +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 { + SEARCH_CONDITION_RATING_CONTEXT_AND_HIGHER = 0, + SEARCH_CONDITION_RATING_CONTEXT_ONLY, + SEARCH_CONDITION_RATING_CONTEXT_AND_LOWER +} SearchConditionRatingContext; + +struct _SearchConditionRatingPrivate { + Rating _rating; + SearchConditionRatingContext _context; +}; + +struct _SearchConditionDate { + SearchCondition parent_instance; + SearchConditionDatePrivate * priv; +}; + +struct _SearchConditionDateClass { + SearchConditionClass parent_class; +}; + +typedef enum { + SEARCH_CONDITION_DATE_CONTEXT_EXACT = 0, + SEARCH_CONDITION_DATE_CONTEXT_AFTER, + SEARCH_CONDITION_DATE_CONTEXT_BEFORE, + SEARCH_CONDITION_DATE_CONTEXT_BETWEEN, + SEARCH_CONDITION_DATE_CONTEXT_IS_NOT_SET +} SearchConditionDateContext; + +struct _SearchConditionDatePrivate { + GDateTime* _date_one; + GDateTime* _date_two; + SearchConditionDateContext _context; +}; + +struct _DataObject { + GObject parent_instance; + DataObjectPrivate * priv; +}; + +struct _DataObjectClass { + GObjectClass parent_class; + void (*notify_altered) (DataObject* self, Alteration* alteration); + void (*notify_membership_changed) (DataObject* self, DataCollection* collection); + void (*notify_collection_property_set) (DataObject* self, const gchar* name, GValue* old, GValue* val); + void (*notify_collection_property_cleared) (DataObject* self, const gchar* name); + gchar* (*get_name) (DataObject* self); + gchar* (*to_string) (DataObject* self); +}; + +struct _DataSource { + DataObject parent_instance; + DataSourcePrivate * priv; +}; + +struct _DataSourceClass { + DataObjectClass parent_class; + void (*notify_held_in_tank) (DataSource* self, SourceHoldingTank* holding_tank); + void (*notify_unlinking) (DataSource* self, SourceCollection* collection); + void (*notify_unlinked) (DataSource* self); + void (*notify_relinking) (DataSource* self, SourceCollection* collection); + void (*notify_relinked) (DataSource* self); + gchar* (*get_typename) (DataSource* self); + gint64 (*get_instance_id) (DataSource* self); + gchar* (*get_source_id) (DataSource* self); + void (*commit_backlinks) (DataSource* self, SourceCollection* sources, const gchar* dehydrated); + SourceSnapshot* (*save_snapshot) (DataSource* self); + gboolean (*internal_delete_backing) (DataSource* self, GError** error); + gboolean (*equals) (DataSource* self, DataSource* source); + void (*destroy) (DataSource* self); + void (*unlinked) (DataSource* self, SourceCollection* sources); + void (*relinked) (DataSource* self, SourceCollection* sources); + void (*destroyed) (DataSource* self); +}; + +struct _SavedSearch { + DataSource parent_instance; + SavedSearchPrivate * priv; +}; + +struct _SavedSearchClass { + DataSourceClass parent_class; +}; + +struct _SavedSearchPrivate { + SavedSearchRow* row; +}; + +struct _SavedSearchID { + gint64 id; +}; + +struct _SavedSearchRow { + GTypeInstance parent_instance; + volatile int ref_count; + SavedSearchRowPrivate * priv; + SavedSearchID search_id; + gchar* name; + SearchOperator operator; + GeeList* conditions; +}; + +struct _SavedSearchRowClass { + GTypeClass parent_class; + void (*finalize) (SavedSearchRow *self); +}; + +typedef enum { + DATABASE_ERROR_ERROR, + DATABASE_ERROR_BACKING, + DATABASE_ERROR_MEMORY, + DATABASE_ERROR_ABORT, + DATABASE_ERROR_LIMITS, + DATABASE_ERROR_TYPESPEC +} DatabaseError; +#define DATABASE_ERROR database_error_quark () +struct _SavedSearchTable { + GTypeInstance parent_instance; + volatile int ref_count; + SavedSearchTablePrivate * priv; +}; + +struct _SavedSearchTableClass { + GTypeClass parent_class; + void (*finalize) (SavedSearchTable *self); +}; + +struct _SavedSearchTablePrivate { + GeeHashMap* search_map; +}; + +struct _ParamSpecSavedSearchTable { + GParamSpec parent_instance; +}; + + +static gpointer search_condition_parent_class = NULL; +static gpointer search_condition_text_parent_class = NULL; +extern TagSourceCollection* tag_global; +static gpointer search_condition_media_type_parent_class = NULL; +static gpointer search_condition_flagged_parent_class = NULL; +static gpointer search_condition_modified_parent_class = NULL; +static gpointer search_condition_rating_parent_class = NULL; +static gpointer search_condition_date_parent_class = NULL; +static gpointer saved_search_parent_class = NULL; +static gpointer saved_search_table_parent_class = NULL; +static SavedSearchTable* saved_search_table_instance; +static SavedSearchTable* saved_search_table_instance = NULL; + +GType search_operator_get_type (void) G_GNUC_CONST; +gchar* search_operator_to_string (SearchOperator self); +SearchOperator search_operator_from_string (const gchar* str); +gpointer search_condition_ref (gpointer instance); +void search_condition_unref (gpointer instance); +GParamSpec* param_spec_search_condition (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_search_condition (GValue* value, gpointer v_object); +void value_take_search_condition (GValue* value, gpointer v_object); +gpointer value_get_search_condition (const GValue* value); +GType search_condition_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 thumbnail_source_get_type (void) G_GNUC_CONST; +GType media_source_get_type (void) G_GNUC_CONST; +GType search_condition_search_type_get_type (void) G_GNUC_CONST; +#define SEARCH_CONDITION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SEARCH_CONDITION, SearchConditionPrivate)) +enum { + SEARCH_CONDITION_DUMMY_PROPERTY +}; +SearchConditionSearchType* search_condition_search_type_as_array (int* result_length1); +void search_condition_search_type_sort_array (SearchConditionSearchType** array, int* array_length1); +static gint __lambda10_ (void* a, void* b); +gint utf8_cs_compare (void* a, void* b); +gchar* search_condition_search_type_display_text (SearchConditionSearchType self); +static gint ___lambda10____compar_fn_t (void* key1, void* key2); +gchar* search_condition_search_type_to_string (SearchConditionSearchType self); +SearchConditionSearchType search_condition_search_type_from_string (const gchar* str); +gboolean search_condition_predicate (SearchCondition* self, MediaSource* source); +static gboolean search_condition_real_predicate (SearchCondition* self, MediaSource* source); +SearchCondition* search_condition_construct (GType object_type); +SearchConditionSearchType search_condition_get_search_type (SearchCondition* self); +void search_condition_set_search_type (SearchCondition* self, SearchConditionSearchType value); +static void search_condition_finalize (SearchCondition* obj); +GType search_condition_text_get_type (void) G_GNUC_CONST; +GType search_condition_text_context_get_type (void) G_GNUC_CONST; +#define SEARCH_CONDITION_TEXT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SEARCH_CONDITION_TEXT, SearchConditionTextPrivate)) +enum { + SEARCH_CONDITION_TEXT_DUMMY_PROPERTY +}; +gchar* search_condition_text_context_to_string (SearchConditionTextContext self); +SearchConditionTextContext search_condition_text_context_from_string (const gchar* str); +SearchConditionText* search_condition_text_new (SearchConditionSearchType search_type, const gchar* text, SearchConditionTextContext context); +SearchConditionText* search_condition_text_construct (GType object_type, SearchConditionSearchType search_type, const gchar* text, SearchConditionTextContext context); +gchar* string_remove_diacritics (const gchar* istring); +static void search_condition_text_set_text (SearchConditionText* self, const gchar* value); +static void search_condition_text_set_context (SearchConditionText* self, SearchConditionTextContext value); +static gboolean search_condition_text_string_match (SearchConditionText* self, const gchar* needle, const gchar* haystack); +SearchConditionTextContext search_condition_text_get_context (SearchConditionText* self); +gboolean is_string_empty (const gchar* s); +static gboolean search_condition_text_real_predicate (SearchCondition* base, MediaSource* source); +gchar* media_source_get_title (MediaSource* self); +const gchar* search_condition_text_get_text (SearchConditionText* self); +GType tag_get_type (void) G_GNUC_CONST; +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; +GeeList* tag_source_collection_fetch_for_source (TagSourceCollection* self, MediaSource* source); +gchar* tag_get_searchable_name (Tag* self); +GType event_source_get_type (void) G_GNUC_CONST; +GType event_get_type (void) G_GNUC_CONST; +Event* media_source_get_event (MediaSource* self); +gchar* data_object_get_name (DataObject* self); +gchar* media_source_get_comment (MediaSource* self); +gchar* media_source_get_basename (MediaSource* self); +static void search_condition_text_finalize (SearchCondition* obj); +GType search_condition_media_type_get_type (void) G_GNUC_CONST; +GType search_condition_media_type_media_type_get_type (void) G_GNUC_CONST; +GType search_condition_media_type_context_get_type (void) G_GNUC_CONST; +#define SEARCH_CONDITION_MEDIA_TYPE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SEARCH_CONDITION_MEDIA_TYPE, SearchConditionMediaTypePrivate)) +enum { + SEARCH_CONDITION_MEDIA_TYPE_DUMMY_PROPERTY +}; +gchar* search_condition_media_type_context_to_string (SearchConditionMediaTypeContext self); +SearchConditionMediaTypeContext search_condition_media_type_context_from_string (const gchar* str); +gchar* search_condition_media_type_media_type_to_string (SearchConditionMediaTypeMediaType self); +SearchConditionMediaTypeMediaType search_condition_media_type_media_type_from_string (const gchar* str); +SearchConditionMediaType* search_condition_media_type_new (SearchConditionSearchType search_type, SearchConditionMediaTypeContext context, SearchConditionMediaTypeMediaType media_type); +SearchConditionMediaType* search_condition_media_type_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionMediaTypeContext context, SearchConditionMediaTypeMediaType media_type); +static void search_condition_media_type_set_context (SearchConditionMediaType* self, SearchConditionMediaTypeContext value); +static void search_condition_media_type_set_media_type (SearchConditionMediaType* self, SearchConditionMediaTypeMediaType value); +static gboolean search_condition_media_type_real_predicate (SearchCondition* base, MediaSource* source); +SearchConditionMediaTypeMediaType search_condition_media_type_get_media_type (SearchConditionMediaType* self); +GType photo_source_get_type (void) G_GNUC_CONST; +GType photo_get_type (void) G_GNUC_CONST; +SearchConditionMediaTypeContext search_condition_media_type_get_context (SearchConditionMediaType* self); +GType photo_file_format_get_type (void) G_GNUC_CONST; +PhotoFileFormat photo_get_master_file_format (Photo* self); +GType video_source_get_type (void) G_GNUC_CONST; +static void search_condition_media_type_finalize (SearchCondition* obj); +GType search_condition_flagged_get_type (void) G_GNUC_CONST; +GType search_condition_flagged_state_get_type (void) G_GNUC_CONST; +#define SEARCH_CONDITION_FLAGGED_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SEARCH_CONDITION_FLAGGED, SearchConditionFlaggedPrivate)) +enum { + SEARCH_CONDITION_FLAGGED_DUMMY_PROPERTY +}; +gchar* search_condition_flagged_state_to_string (SearchConditionFlaggedState self); +SearchConditionFlaggedState search_condition_flagged_state_from_string (const gchar* str); +SearchConditionFlagged* search_condition_flagged_new (SearchConditionSearchType search_type, SearchConditionFlaggedState state); +SearchConditionFlagged* search_condition_flagged_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionFlaggedState state); +static void search_condition_flagged_set_state (SearchConditionFlagged* self, SearchConditionFlaggedState value); +static gboolean search_condition_flagged_real_predicate (SearchCondition* base, MediaSource* source); +SearchConditionFlaggedState search_condition_flagged_get_state (SearchConditionFlagged* self); +GType flaggable_get_type (void) G_GNUC_CONST; +gboolean flaggable_is_flagged (Flaggable* self); +static void search_condition_flagged_finalize (SearchCondition* obj); +GType search_condition_modified_get_type (void) G_GNUC_CONST; +GType search_condition_modified_state_get_type (void) G_GNUC_CONST; +GType search_condition_modified_context_get_type (void) G_GNUC_CONST; +#define SEARCH_CONDITION_MODIFIED_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SEARCH_CONDITION_MODIFIED, SearchConditionModifiedPrivate)) +enum { + SEARCH_CONDITION_MODIFIED_DUMMY_PROPERTY +}; +gchar* search_condition_modified_context_to_string (SearchConditionModifiedContext self); +SearchConditionModifiedContext search_condition_modified_context_from_string (const gchar* str); +gchar* search_condition_modified_state_to_string (SearchConditionModifiedState self); +SearchConditionModifiedState search_condition_modified_state_from_string (const gchar* str); +SearchConditionModified* search_condition_modified_new (SearchConditionSearchType search_type, SearchConditionModifiedContext context, SearchConditionModifiedState state); +SearchConditionModified* search_condition_modified_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionModifiedContext context, SearchConditionModifiedState state); +static void search_condition_modified_set_context (SearchConditionModified* self, SearchConditionModifiedContext value); +static void search_condition_modified_set_state (SearchConditionModified* self, SearchConditionModifiedState value); +static gboolean search_condition_modified_real_predicate (SearchCondition* base, MediaSource* source); +SearchConditionModifiedState search_condition_modified_get_state (SearchConditionModified* self); +gboolean photo_has_transformations (Photo* self); +gboolean photo_has_editable (Photo* self); +SearchConditionModifiedContext search_condition_modified_get_context (SearchConditionModified* self); +static void search_condition_modified_finalize (SearchCondition* obj); +GType search_condition_rating_get_type (void) G_GNUC_CONST; +GType rating_get_type (void) G_GNUC_CONST; +GType search_condition_rating_context_get_type (void) G_GNUC_CONST; +#define SEARCH_CONDITION_RATING_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SEARCH_CONDITION_RATING, SearchConditionRatingPrivate)) +enum { + SEARCH_CONDITION_RATING_DUMMY_PROPERTY +}; +gchar* search_condition_rating_context_to_string (SearchConditionRatingContext self); +SearchConditionRatingContext search_condition_rating_context_from_string (const gchar* str); +SearchConditionRating* search_condition_rating_new (SearchConditionSearchType search_type, Rating rating, SearchConditionRatingContext context); +SearchConditionRating* search_condition_rating_construct (GType object_type, SearchConditionSearchType search_type, Rating rating, SearchConditionRatingContext context); +static void search_condition_rating_set_rating (SearchConditionRating* self, Rating value); +static void search_condition_rating_set_context (SearchConditionRating* self, SearchConditionRatingContext value); +static gboolean search_condition_rating_real_predicate (SearchCondition* base, MediaSource* source); +Rating media_source_get_rating (MediaSource* self); +SearchConditionRatingContext search_condition_rating_get_context (SearchConditionRating* self); +Rating search_condition_rating_get_rating (SearchConditionRating* self); +static void search_condition_rating_finalize (SearchCondition* obj); +GType search_condition_date_get_type (void) G_GNUC_CONST; +GType search_condition_date_context_get_type (void) G_GNUC_CONST; +#define SEARCH_CONDITION_DATE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SEARCH_CONDITION_DATE, SearchConditionDatePrivate)) +enum { + SEARCH_CONDITION_DATE_DUMMY_PROPERTY +}; +gchar* search_condition_date_context_to_string (SearchConditionDateContext self); +SearchConditionDateContext search_condition_date_context_from_string (const gchar* str); +SearchConditionDate* search_condition_date_new (SearchConditionSearchType search_type, SearchConditionDateContext context, GDateTime* date_one, GDateTime* date_two); +SearchConditionDate* search_condition_date_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionDateContext context, GDateTime* date_one, GDateTime* date_two); +static void search_condition_date_set_context (SearchConditionDate* self, SearchConditionDateContext value); +static void search_condition_date_set_date_one (SearchConditionDate* self, GDateTime* value); +static void search_condition_date_set_date_two (SearchConditionDate* self, GDateTime* value); +static gboolean search_condition_date_real_predicate (SearchCondition* base, MediaSource* source); +time_t media_source_get_exposure_time (MediaSource* self); +SearchConditionDateContext search_condition_date_get_context (SearchConditionDate* self); +GDateTime* search_condition_date_get_date_one (SearchConditionDate* self); +GDateTime* search_condition_date_get_date_two (SearchConditionDate* self); +static void search_condition_date_finalize (SearchCondition* obj); +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; +gpointer source_holding_tank_ref (gpointer instance); +void source_holding_tank_unref (gpointer instance); +GParamSpec* param_spec_source_holding_tank (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_source_holding_tank (GValue* value, gpointer v_object); +void value_take_source_holding_tank (GValue* value, gpointer v_object); +gpointer value_get_source_holding_tank (const GValue* value); +GType source_holding_tank_get_type (void) G_GNUC_CONST; +gpointer source_snapshot_ref (gpointer instance); +void source_snapshot_unref (gpointer instance); +GParamSpec* param_spec_source_snapshot (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_source_snapshot (GValue* value, gpointer v_object); +void value_take_source_snapshot (GValue* value, gpointer v_object); +gpointer value_get_source_snapshot (const GValue* value); +GType source_snapshot_get_type (void) G_GNUC_CONST; +GType saved_search_get_type (void) G_GNUC_CONST; +gpointer saved_search_row_ref (gpointer instance); +void saved_search_row_unref (gpointer instance); +GParamSpec* param_spec_saved_search_row (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_saved_search_row (GValue* value, gpointer v_object); +void value_take_saved_search_row (GValue* value, gpointer v_object); +gpointer value_get_saved_search_row (const GValue* value); +GType saved_search_row_get_type (void) G_GNUC_CONST; +#define SAVED_SEARCH_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SAVED_SEARCH, SavedSearchPrivate)) +enum { + SAVED_SEARCH_DUMMY_PROPERTY +}; +#define SAVED_SEARCH_TYPENAME "saved_search" +SavedSearch* saved_search_new (SavedSearchRow* row, gint64 object_id); +SavedSearch* saved_search_construct (GType object_type, SavedSearchRow* row, gint64 object_id); +DataSource* data_source_construct (GType object_type, gint64 object_id); +static gchar* saved_search_real_get_name (DataObject* base); +GType saved_search_id_get_type (void) G_GNUC_CONST; +SavedSearchID* saved_search_id_dup (const SavedSearchID* self); +void saved_search_id_free (SavedSearchID* self); +static gchar* saved_search_real_to_string (DataObject* base); +static gchar* saved_search_real_get_typename (DataSource* base); +void saved_search_get_saved_search_id (SavedSearch* self, SavedSearchID* result); +static gint64 saved_search_real_get_instance_id (DataSource* base); +gint saved_search_compare_names (void* a, void* b); +gint string_collated_compare (void* a, void* b); +gboolean saved_search_predicate (SavedSearch* self, MediaSource* source); +void saved_search_reconstitute (SavedSearch* self); +gpointer database_table_ref (gpointer instance); +void database_table_unref (gpointer instance); +GParamSpec* param_spec_database_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_database_table (GValue* value, gpointer v_object); +void value_take_database_table (GValue* value, gpointer v_object); +gpointer value_get_database_table (const GValue* value); +GType database_table_get_type (void) G_GNUC_CONST; +GType saved_search_db_table_get_type (void) G_GNUC_CONST; +SavedSearchDBTable* saved_search_db_table_get_instance (void); +GQuark database_error_quark (void); +void saved_search_db_table_create_from_row (SavedSearchDBTable* self, SavedSearchRow* row, SavedSearchID* result, GError** error); +void app_window_database_error (GError* err); +gpointer saved_search_table_ref (gpointer instance); +void saved_search_table_unref (gpointer instance); +GParamSpec* param_spec_saved_search_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_saved_search_table (GValue* value, gpointer v_object); +void value_take_saved_search_table (GValue* value, gpointer v_object); +gpointer value_get_saved_search_table (const GValue* value); +GType saved_search_table_get_type (void) G_GNUC_CONST; +SavedSearchTable* saved_search_table_get_instance (void); +void saved_search_table_add_to_map (SavedSearchTable* self, SavedSearch* search); +gchar* data_object_to_string (DataObject* self); +gboolean saved_search_rename (SavedSearch* self, const gchar* new_name); +gboolean saved_search_table_exists (SavedSearchTable* self, const gchar* search_name); +void saved_search_db_table_rename (SavedSearchDBTable* self, SavedSearchID* search_id, const gchar* new_name, GError** error); +void saved_search_table_remove_from_map (SavedSearchTable* self, SavedSearch* search); +GType page_window_get_type (void) G_GNUC_CONST; +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_switch_to_saved_search (LibraryWindow* self, SavedSearch* search); +GeeList* saved_search_get_conditions (SavedSearch* self); +SearchOperator saved_search_get_operator (SavedSearch* self); +static void saved_search_finalize (GObject* obj); +#define SAVED_SEARCH_TABLE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SAVED_SEARCH_TABLE, SavedSearchTablePrivate)) +enum { + SAVED_SEARCH_TABLE_DUMMY_PROPERTY +}; +static SavedSearchTable* saved_search_table_new (void); +static SavedSearchTable* saved_search_table_construct (GType object_type); +GeeList* saved_search_db_table_get_all_rows (SavedSearchDBTable* self, GError** error); +#define DATA_OBJECT_INVALID_OBJECT_ID ((gint64) -1) +GeeCollection* saved_search_table_get_all (SavedSearchTable* self); +SavedSearch* saved_search_table_create (SavedSearchTable* self, const gchar* name, SearchOperator operator, GeeArrayList* conditions); +SavedSearchRow* saved_search_db_table_add (SavedSearchDBTable* self, const gchar* name, SearchOperator operator, GeeArrayList* conditions, GError** error); +void saved_search_table_remove (SavedSearchTable* self, SavedSearch* search); +void saved_search_db_table_remove (SavedSearchDBTable* self, SavedSearchID* search_id, GError** error); +GeeIterable* saved_search_table_get_saved_searches (SavedSearchTable* self); +gint saved_search_table_get_count (SavedSearchTable* self); +gchar* saved_search_table_generate_unique_name (SavedSearchTable* self); +#define RESOURCES_DEFAULT_SAVED_SEARCH_NAME _ ("Saved Search") +static void saved_search_table_finalize (SavedSearchTable* obj); + + +gchar* search_operator_to_string (SearchOperator self) { + gchar* result = NULL; +#line 14 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 14 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_OPERATOR_ANY: +#line 1005 "SearchBoolean.c" + { + gchar* _tmp0_ = NULL; +#line 16 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup ("ANY"); +#line 16 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 16 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1014 "SearchBoolean.c" + } +#line 14 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_OPERATOR_ALL: +#line 1018 "SearchBoolean.c" + { + gchar* _tmp1_ = NULL; +#line 19 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup ("ALL"); +#line 19 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 19 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1027 "SearchBoolean.c" + } +#line 14 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_OPERATOR_NONE: +#line 1031 "SearchBoolean.c" + { + gchar* _tmp2_ = NULL; +#line 22 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = g_strdup ("NONE"); +#line 22 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 22 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1040 "SearchBoolean.c" + } + default: + { +#line 25 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:25: unrecognized search operator enumeration value"); +#line 1046 "SearchBoolean.c" + } + } +} + + +SearchOperator search_operator_from_string (const gchar* str) { + SearchOperator result = 0; + const gchar* _tmp0_ = NULL; +#line 29 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (str != NULL, 0); +#line 30 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = str; +#line 30 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp0_, "ANY") == 0) { +#line 31 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_OPERATOR_ANY; +#line 31 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1065 "SearchBoolean.c" + } else { + const gchar* _tmp1_ = NULL; +#line 33 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = str; +#line 33 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp1_, "ALL") == 0) { +#line 34 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_OPERATOR_ALL; +#line 34 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1076 "SearchBoolean.c" + } else { + const gchar* _tmp2_ = NULL; +#line 36 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = str; +#line 36 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp2_, "NONE") == 0) { +#line 37 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_OPERATOR_NONE; +#line 37 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1087 "SearchBoolean.c" + } else { + const gchar* _tmp3_ = NULL; +#line 40 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = str; +#line 40 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:40: unrecognized search operator name: %s", _tmp3_); +#line 1094 "SearchBoolean.c" + } + } + } +} + + +GType search_operator_get_type (void) { + static volatile gsize search_operator_type_id__volatile = 0; + if (g_once_init_enter (&search_operator_type_id__volatile)) { + static const GEnumValue values[] = {{SEARCH_OPERATOR_ANY, "SEARCH_OPERATOR_ANY", "any"}, {SEARCH_OPERATOR_ALL, "SEARCH_OPERATOR_ALL", "all"}, {SEARCH_OPERATOR_NONE, "SEARCH_OPERATOR_NONE", "none"}, {0, NULL, NULL}}; + GType search_operator_type_id; + search_operator_type_id = g_enum_register_static ("SearchOperator", values); + g_once_init_leave (&search_operator_type_id__volatile, search_operator_type_id); + } + return search_operator_type_id__volatile; +} + + +SearchConditionSearchType* search_condition_search_type_as_array (int* result_length1) { + SearchConditionSearchType* result = NULL; + SearchConditionSearchType* _tmp0_ = NULL; + SearchConditionSearchType* _tmp1_ = NULL; + gint _tmp1__length1 = 0; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_new0 (SearchConditionSearchType, 11); +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[0] = SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[1] = SEARCH_CONDITION_SEARCH_TYPE_TITLE; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[2] = SEARCH_CONDITION_SEARCH_TYPE_TAG; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[3] = SEARCH_CONDITION_SEARCH_TYPE_COMMENT; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[4] = SEARCH_CONDITION_SEARCH_TYPE_EVENT_NAME; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[5] = SEARCH_CONDITION_SEARCH_TYPE_FILE_NAME; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[6] = SEARCH_CONDITION_SEARCH_TYPE_MEDIA_TYPE; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[7] = SEARCH_CONDITION_SEARCH_TYPE_FLAG_STATE; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[8] = SEARCH_CONDITION_SEARCH_TYPE_MODIFIED_STATE; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[9] = SEARCH_CONDITION_SEARCH_TYPE_RATING; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_[10] = SEARCH_CONDITION_SEARCH_TYPE_DATE; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp0_; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1__length1 = 11; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (result_length1) { +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + *result_length1 = _tmp1__length1; +#line 1150 "SearchBoolean.c" + } +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 64 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1156 "SearchBoolean.c" +} + + +static gint __lambda10_ (void* a, void* b) { + gint result = 0; + void* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + void* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gint _tmp4_ = 0; +#line 71 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = a; +#line 71 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = search_condition_search_type_display_text (*((SearchConditionSearchType*) _tmp0_)); +#line 71 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = b; +#line 71 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = search_condition_search_type_display_text (*((SearchConditionSearchType*) _tmp2_)); +#line 71 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = utf8_cs_compare (_tmp1_, _tmp3_); +#line 71 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp4_; +#line 71 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1181 "SearchBoolean.c" +} + + +static gint ___lambda10____compar_fn_t (void* key1, void* key2) { + gint result; + result = __lambda10_ (key1, key2); +#line 70 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1190 "SearchBoolean.c" +} + + +void search_condition_search_type_sort_array (SearchConditionSearchType** array, int* array_length1) { + SearchConditionSearchType* _tmp0_ = NULL; + gint _tmp0__length1 = 0; + SearchConditionSearchType* _tmp1_ = NULL; + gint _tmp1__length1 = 0; +#line 70 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = *array; +#line 70 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0__length1 = *array_length1; +#line 70 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = *array; +#line 70 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1__length1 = *array_length1; +#line 70 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + qsort (_tmp0_, (gsize) _tmp1__length1, (gsize) sizeof (SearchConditionSearchType), ___lambda10____compar_fn_t); +#line 1209 "SearchBoolean.c" +} + + +gchar* search_condition_search_type_to_string (SearchConditionSearchType self) { + gchar* result = NULL; +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT: +#line 1219 "SearchBoolean.c" + { + gchar* _tmp0_ = NULL; +#line 79 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup ("ANY_TEXT"); +#line 79 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 79 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1228 "SearchBoolean.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_TITLE: +#line 1232 "SearchBoolean.c" + { + gchar* _tmp1_ = NULL; +#line 82 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup ("TITLE"); +#line 82 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 82 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1241 "SearchBoolean.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_TAG: +#line 1245 "SearchBoolean.c" + { + gchar* _tmp2_ = NULL; +#line 85 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = g_strdup ("TAG"); +#line 85 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 85 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1254 "SearchBoolean.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_COMMENT: +#line 1258 "SearchBoolean.c" + { + gchar* _tmp3_ = NULL; +#line 88 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = g_strdup ("COMMENT"); +#line 88 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp3_; +#line 88 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1267 "SearchBoolean.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_EVENT_NAME: +#line 1271 "SearchBoolean.c" + { + gchar* _tmp4_ = NULL; +#line 91 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = g_strdup ("EVENT_NAME"); +#line 91 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp4_; +#line 91 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1280 "SearchBoolean.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_FILE_NAME: +#line 1284 "SearchBoolean.c" + { + gchar* _tmp5_ = NULL; +#line 94 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = g_strdup ("FILE_NAME"); +#line 94 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp5_; +#line 94 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1293 "SearchBoolean.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_MEDIA_TYPE: +#line 1297 "SearchBoolean.c" + { + gchar* _tmp6_ = NULL; +#line 97 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = g_strdup ("MEDIA_TYPE"); +#line 97 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp6_; +#line 97 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1306 "SearchBoolean.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_FLAG_STATE: +#line 1310 "SearchBoolean.c" + { + gchar* _tmp7_ = NULL; +#line 100 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = g_strdup ("FLAG_STATE"); +#line 100 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp7_; +#line 100 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1319 "SearchBoolean.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_MODIFIED_STATE: +#line 1323 "SearchBoolean.c" + { + gchar* _tmp8_ = NULL; +#line 103 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = g_strdup ("MODIFIED_STATE"); +#line 103 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp8_; +#line 103 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1332 "SearchBoolean.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_RATING: +#line 1336 "SearchBoolean.c" + { + gchar* _tmp9_ = NULL; +#line 106 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = g_strdup ("RATING"); +#line 106 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp9_; +#line 106 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1345 "SearchBoolean.c" + } +#line 77 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_DATE: +#line 1349 "SearchBoolean.c" + { + gchar* _tmp10_ = NULL; +#line 109 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = g_strdup ("DATE"); +#line 109 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp10_; +#line 109 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1358 "SearchBoolean.c" + } + default: + { +#line 112 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:112: unrecognized search type enumeration value"); +#line 1364 "SearchBoolean.c" + } + } +} + + +SearchConditionSearchType search_condition_search_type_from_string (const gchar* str) { + SearchConditionSearchType result = 0; + const gchar* _tmp0_ = NULL; +#line 116 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (str != NULL, 0); +#line 117 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = str; +#line 117 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp0_, "ANY_TEXT") == 0) { +#line 118 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT; +#line 118 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1383 "SearchBoolean.c" + } else { + const gchar* _tmp1_ = NULL; +#line 120 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = str; +#line 120 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp1_, "TITLE") == 0) { +#line 121 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_TITLE; +#line 121 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1394 "SearchBoolean.c" + } else { + const gchar* _tmp2_ = NULL; +#line 123 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = str; +#line 123 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp2_, "TAG") == 0) { +#line 124 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_TAG; +#line 124 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1405 "SearchBoolean.c" + } else { + const gchar* _tmp3_ = NULL; +#line 126 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = str; +#line 126 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp3_, "COMMENT") == 0) { +#line 127 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_COMMENT; +#line 127 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1416 "SearchBoolean.c" + } else { + const gchar* _tmp4_ = NULL; +#line 129 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = str; +#line 129 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp4_, "EVENT_NAME") == 0) { +#line 130 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_EVENT_NAME; +#line 130 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1427 "SearchBoolean.c" + } else { + const gchar* _tmp5_ = NULL; +#line 132 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = str; +#line 132 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp5_, "FILE_NAME") == 0) { +#line 133 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_FILE_NAME; +#line 133 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1438 "SearchBoolean.c" + } else { + const gchar* _tmp6_ = NULL; +#line 135 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = str; +#line 135 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp6_, "MEDIA_TYPE") == 0) { +#line 136 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_MEDIA_TYPE; +#line 136 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1449 "SearchBoolean.c" + } else { + const gchar* _tmp7_ = NULL; +#line 138 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = str; +#line 138 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp7_, "FLAG_STATE") == 0) { +#line 139 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_FLAG_STATE; +#line 139 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1460 "SearchBoolean.c" + } else { + const gchar* _tmp8_ = NULL; +#line 141 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = str; +#line 141 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp8_, "MODIFIED_STATE") == 0) { +#line 142 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_MODIFIED_STATE; +#line 142 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1471 "SearchBoolean.c" + } else { + const gchar* _tmp9_ = NULL; +#line 144 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = str; +#line 144 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp9_, "RATING") == 0) { +#line 145 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_RATING; +#line 145 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1482 "SearchBoolean.c" + } else { + const gchar* _tmp10_ = NULL; +#line 147 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = str; +#line 147 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp10_, "DATE") == 0) { +#line 148 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_SEARCH_TYPE_DATE; +#line 148 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1493 "SearchBoolean.c" + } else { + const gchar* _tmp11_ = NULL; +#line 151 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = str; +#line 151 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:151: unrecognized search type name: %s", _tmp11_); +#line 1500 "SearchBoolean.c" + } + } + } + } + } + } + } + } + } + } + } +} + + +gchar* search_condition_search_type_display_text (SearchConditionSearchType self) { + gchar* result = NULL; +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT: +#line 1521 "SearchBoolean.c" + { + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; +#line 157 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = _ ("Any text"); +#line 157 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup (_tmp0_); +#line 157 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 157 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1533 "SearchBoolean.c" + } +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_TITLE: +#line 1537 "SearchBoolean.c" + { + const gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; +#line 160 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _ ("Title"); +#line 160 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = g_strdup (_tmp2_); +#line 160 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp3_; +#line 160 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1549 "SearchBoolean.c" + } +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_TAG: +#line 1553 "SearchBoolean.c" + { + const gchar* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; +#line 163 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = _ ("Tag"); +#line 163 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = g_strdup (_tmp4_); +#line 163 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp5_; +#line 163 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1565 "SearchBoolean.c" + } +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_COMMENT: +#line 1569 "SearchBoolean.c" + { + const gchar* _tmp6_ = NULL; + gchar* _tmp7_ = NULL; +#line 166 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = _ ("Comment"); +#line 166 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = g_strdup (_tmp6_); +#line 166 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp7_; +#line 166 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1581 "SearchBoolean.c" + } +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_EVENT_NAME: +#line 1585 "SearchBoolean.c" + { + const gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; +#line 169 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = _ ("Event name"); +#line 169 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = g_strdup (_tmp8_); +#line 169 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp9_; +#line 169 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1597 "SearchBoolean.c" + } +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_FILE_NAME: +#line 1601 "SearchBoolean.c" + { + const gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; +#line 172 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = _ ("File name"); +#line 172 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = g_strdup (_tmp10_); +#line 172 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp11_; +#line 172 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1613 "SearchBoolean.c" + } +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_MEDIA_TYPE: +#line 1617 "SearchBoolean.c" + { + const gchar* _tmp12_ = NULL; + gchar* _tmp13_ = NULL; +#line 175 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = _ ("Media type"); +#line 175 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp13_ = g_strdup (_tmp12_); +#line 175 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp13_; +#line 175 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1629 "SearchBoolean.c" + } +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_FLAG_STATE: +#line 1633 "SearchBoolean.c" + { + const gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; +#line 178 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp14_ = _ ("Flag state"); +#line 178 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp15_ = g_strdup (_tmp14_); +#line 178 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp15_; +#line 178 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1645 "SearchBoolean.c" + } +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_MODIFIED_STATE: +#line 1649 "SearchBoolean.c" + { + const gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; +#line 181 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp16_ = _ ("Photo state"); +#line 181 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp17_ = g_strdup (_tmp16_); +#line 181 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp17_; +#line 181 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1661 "SearchBoolean.c" + } +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_RATING: +#line 1665 "SearchBoolean.c" + { + const gchar* _tmp18_ = NULL; + gchar* _tmp19_ = NULL; +#line 184 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp18_ = _ ("Rating"); +#line 184 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp19_ = g_strdup (_tmp18_); +#line 184 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp19_; +#line 184 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1677 "SearchBoolean.c" + } +#line 155 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_SEARCH_TYPE_DATE: +#line 1681 "SearchBoolean.c" + { + const gchar* _tmp20_ = NULL; + gchar* _tmp21_ = NULL; +#line 187 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp20_ = _ ("Date"); +#line 187 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp21_ = g_strdup (_tmp20_); +#line 187 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp21_; +#line 187 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1693 "SearchBoolean.c" + } + default: + { +#line 190 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:190: unrecognized search type enumeration value"); +#line 1699 "SearchBoolean.c" + } + } +} + + +GType search_condition_search_type_get_type (void) { + static volatile gsize search_condition_search_type_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_search_type_type_id__volatile)) { + static const GEnumValue values[] = {{SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT, "SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT", "any-text"}, {SEARCH_CONDITION_SEARCH_TYPE_TITLE, "SEARCH_CONDITION_SEARCH_TYPE_TITLE", "title"}, {SEARCH_CONDITION_SEARCH_TYPE_TAG, "SEARCH_CONDITION_SEARCH_TYPE_TAG", "tag"}, {SEARCH_CONDITION_SEARCH_TYPE_EVENT_NAME, "SEARCH_CONDITION_SEARCH_TYPE_EVENT_NAME", "event-name"}, {SEARCH_CONDITION_SEARCH_TYPE_FILE_NAME, "SEARCH_CONDITION_SEARCH_TYPE_FILE_NAME", "file-name"}, {SEARCH_CONDITION_SEARCH_TYPE_MEDIA_TYPE, "SEARCH_CONDITION_SEARCH_TYPE_MEDIA_TYPE", "media-type"}, {SEARCH_CONDITION_SEARCH_TYPE_FLAG_STATE, "SEARCH_CONDITION_SEARCH_TYPE_FLAG_STATE", "flag-state"}, {SEARCH_CONDITION_SEARCH_TYPE_MODIFIED_STATE, "SEARCH_CONDITION_SEARCH_TYPE_MODIFIED_STATE", "modified-state"}, {SEARCH_CONDITION_SEARCH_TYPE_RATING, "SEARCH_CONDITION_SEARCH_TYPE_RATING", "rating"}, {SEARCH_CONDITION_SEARCH_TYPE_COMMENT, "SEARCH_CONDITION_SEARCH_TYPE_COMMENT", "comment"}, {SEARCH_CONDITION_SEARCH_TYPE_DATE, "SEARCH_CONDITION_SEARCH_TYPE_DATE", "date"}, {0, NULL, NULL}}; + GType search_condition_search_type_type_id; + search_condition_search_type_type_id = g_enum_register_static ("SearchConditionSearchType", values); + g_once_init_leave (&search_condition_search_type_type_id__volatile, search_condition_search_type_type_id); + } + return search_condition_search_type_type_id__volatile; +} + + +static gboolean search_condition_real_predicate (SearchCondition* self, MediaSource* source) { +#line 198 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_critical ("Type `%s' does not implement abstract method `search_condition_predicate'", g_type_name (G_TYPE_FROM_INSTANCE (self))); +#line 198 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return FALSE; +#line 1722 "SearchBoolean.c" +} + + +gboolean search_condition_predicate (SearchCondition* self, MediaSource* source) { +#line 198 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION (self), FALSE); +#line 198 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return SEARCH_CONDITION_GET_CLASS (self)->predicate (self, source); +#line 1731 "SearchBoolean.c" +} + + +SearchCondition* search_condition_construct (GType object_type) { + SearchCondition* self = NULL; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = (SearchCondition*) g_type_create_instance (object_type); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self; +#line 1741 "SearchBoolean.c" +} + + +SearchConditionSearchType search_condition_get_search_type (SearchCondition* self) { + SearchConditionSearchType result; + SearchConditionSearchType _tmp0_ = 0; +#line 195 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION (self), 0); +#line 195 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_search_type; +#line 195 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 195 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 1756 "SearchBoolean.c" +} + + +void search_condition_set_search_type (SearchCondition* self, SearchConditionSearchType value) { + SearchConditionSearchType _tmp0_ = 0; +#line 195 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION (self)); +#line 195 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 195 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_search_type = _tmp0_; +#line 1768 "SearchBoolean.c" +} + + +static void value_search_condition_init (GValue* value) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = NULL; +#line 1775 "SearchBoolean.c" +} + + +static void value_search_condition_free_value (GValue* value) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (value->data[0].v_pointer) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_unref (value->data[0].v_pointer); +#line 1784 "SearchBoolean.c" + } +} + + +static void value_search_condition_copy_value (const GValue* src_value, GValue* dest_value) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (src_value->data[0].v_pointer) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + dest_value->data[0].v_pointer = search_condition_ref (src_value->data[0].v_pointer); +#line 1794 "SearchBoolean.c" + } else { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + dest_value->data[0].v_pointer = NULL; +#line 1798 "SearchBoolean.c" + } +} + + +static gpointer value_search_condition_peek_pointer (const GValue* value) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return value->data[0].v_pointer; +#line 1806 "SearchBoolean.c" +} + + +static gchar* value_search_condition_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (collect_values[0].v_pointer) { +#line 1813 "SearchBoolean.c" + SearchCondition* object; + object = collect_values[0].v_pointer; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (object->parent_instance.g_class == NULL) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); +#line 1820 "SearchBoolean.c" + } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.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 1824 "SearchBoolean.c" + } +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = search_condition_ref (object); +#line 1828 "SearchBoolean.c" + } else { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = NULL; +#line 1832 "SearchBoolean.c" + } +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return NULL; +#line 1836 "SearchBoolean.c" +} + + +static gchar* value_search_condition_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { + SearchCondition** object_p; + object_p = collect_values[0].v_pointer; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!object_p) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); +#line 1847 "SearchBoolean.c" + } +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!value->data[0].v_pointer) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + *object_p = NULL; +#line 1853 "SearchBoolean.c" + } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + *object_p = value->data[0].v_pointer; +#line 1857 "SearchBoolean.c" + } else { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + *object_p = search_condition_ref (value->data[0].v_pointer); +#line 1861 "SearchBoolean.c" + } +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return NULL; +#line 1865 "SearchBoolean.c" +} + + +GParamSpec* param_spec_search_condition (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { + ParamSpecSearchCondition* spec; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (g_type_is_a (object_type, TYPE_SEARCH_CONDITION), NULL); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + G_PARAM_SPEC (spec)->value_type = object_type; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return G_PARAM_SPEC (spec); +#line 1879 "SearchBoolean.c" +} + + +gpointer value_get_search_condition (const GValue* value) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_SEARCH_CONDITION), NULL); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return value->data[0].v_pointer; +#line 1888 "SearchBoolean.c" +} + + +void value_set_search_condition (GValue* value, gpointer v_object) { + SearchCondition* old; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_SEARCH_CONDITION)); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + old = value->data[0].v_pointer; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (v_object) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_SEARCH_CONDITION)); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = v_object; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_ref (value->data[0].v_pointer); +#line 1908 "SearchBoolean.c" + } else { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = NULL; +#line 1912 "SearchBoolean.c" + } +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (old) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_unref (old); +#line 1918 "SearchBoolean.c" + } +} + + +void value_take_search_condition (GValue* value, gpointer v_object) { + SearchCondition* old; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_SEARCH_CONDITION)); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + old = value->data[0].v_pointer; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (v_object) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_SEARCH_CONDITION)); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = v_object; +#line 1937 "SearchBoolean.c" + } else { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = NULL; +#line 1941 "SearchBoolean.c" + } +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (old) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_unref (old); +#line 1947 "SearchBoolean.c" + } +} + + +static void search_condition_class_init (SearchConditionClass * klass) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_parent_class = g_type_class_peek_parent (klass); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->finalize = search_condition_finalize; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_class_add_private (klass, sizeof (SearchConditionPrivate)); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->predicate = search_condition_real_predicate; +#line 1961 "SearchBoolean.c" +} + + +static void search_condition_instance_init (SearchCondition * self) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv = SEARCH_CONDITION_GET_PRIVATE (self); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->ref_count = 1; +#line 1970 "SearchBoolean.c" +} + + +static void search_condition_finalize (SearchCondition* obj) { + SearchCondition * self; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SEARCH_CONDITION, SearchCondition); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_signal_handlers_destroy (self); +#line 1980 "SearchBoolean.c" +} + + +GType search_condition_get_type (void) { + static volatile gsize search_condition_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_type_id__volatile)) { + static const GTypeValueTable g_define_type_value_table = { value_search_condition_init, value_search_condition_free_value, value_search_condition_copy_value, value_search_condition_peek_pointer, "p", value_search_condition_collect_value, "p", value_search_condition_lcopy_value }; + static const GTypeInfo g_define_type_info = { sizeof (SearchConditionClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) search_condition_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SearchCondition), 0, (GInstanceInitFunc) search_condition_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 search_condition_type_id; + search_condition_type_id = g_type_register_fundamental (g_type_fundamental_next (), "SearchCondition", &g_define_type_info, &g_define_type_fundamental_info, G_TYPE_FLAG_ABSTRACT); + g_once_init_leave (&search_condition_type_id__volatile, search_condition_type_id); + } + return search_condition_type_id__volatile; +} + + +gpointer search_condition_ref (gpointer instance) { + SearchCondition* self; + self = instance; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_atomic_int_inc (&self->ref_count); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return instance; +#line 2005 "SearchBoolean.c" +} + + +void search_condition_unref (gpointer instance) { + SearchCondition* self; + self = instance; +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_atomic_int_dec_and_test (&self->ref_count)) { +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + SEARCH_CONDITION_GET_CLASS (self)->finalize (self); +#line 47 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_free_instance ((GTypeInstance *) self); +#line 2018 "SearchBoolean.c" + } +} + + +gchar* search_condition_text_context_to_string (SearchConditionTextContext self) { + gchar* result = NULL; +#line 213 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 213 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_CONTAINS: +#line 2029 "SearchBoolean.c" + { + gchar* _tmp0_ = NULL; +#line 215 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup ("CONTAINS"); +#line 215 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 215 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2038 "SearchBoolean.c" + } +#line 213 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_IS_EXACTLY: +#line 2042 "SearchBoolean.c" + { + gchar* _tmp1_ = NULL; +#line 218 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup ("IS_EXACTLY"); +#line 218 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 218 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2051 "SearchBoolean.c" + } +#line 213 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_STARTS_WITH: +#line 2055 "SearchBoolean.c" + { + gchar* _tmp2_ = NULL; +#line 221 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = g_strdup ("STARTS_WITH"); +#line 221 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 221 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2064 "SearchBoolean.c" + } +#line 213 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_ENDS_WITH: +#line 2068 "SearchBoolean.c" + { + gchar* _tmp3_ = NULL; +#line 224 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = g_strdup ("ENDS_WITH"); +#line 224 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp3_; +#line 224 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2077 "SearchBoolean.c" + } +#line 213 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_DOES_NOT_CONTAIN: +#line 2081 "SearchBoolean.c" + { + gchar* _tmp4_ = NULL; +#line 227 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = g_strdup ("DOES_NOT_CONTAIN"); +#line 227 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp4_; +#line 227 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2090 "SearchBoolean.c" + } +#line 213 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_IS_NOT_SET: +#line 2094 "SearchBoolean.c" + { + gchar* _tmp5_ = NULL; +#line 230 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = g_strdup ("IS_NOT_SET"); +#line 230 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp5_; +#line 230 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2103 "SearchBoolean.c" + } +#line 213 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_IS_SET: +#line 2107 "SearchBoolean.c" + { + gchar* _tmp6_ = NULL; +#line 233 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = g_strdup ("IS_SET"); +#line 233 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp6_; +#line 233 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2116 "SearchBoolean.c" + } + default: + { +#line 236 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:236: unrecognized text search context enumeration v" \ +"alue"); +#line 2122 "SearchBoolean.c" + } + } +} + + +SearchConditionTextContext search_condition_text_context_from_string (const gchar* str) { + SearchConditionTextContext result = 0; + const gchar* _tmp0_ = NULL; +#line 240 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (str != NULL, 0); +#line 241 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = str; +#line 241 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp0_, "CONTAINS") == 0) { +#line 242 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_TEXT_CONTEXT_CONTAINS; +#line 242 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2141 "SearchBoolean.c" + } else { + const gchar* _tmp1_ = NULL; +#line 244 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = str; +#line 244 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp1_, "IS_EXACTLY") == 0) { +#line 245 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_TEXT_CONTEXT_IS_EXACTLY; +#line 245 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2152 "SearchBoolean.c" + } else { + const gchar* _tmp2_ = NULL; +#line 247 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = str; +#line 247 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp2_, "STARTS_WITH") == 0) { +#line 248 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_TEXT_CONTEXT_STARTS_WITH; +#line 248 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2163 "SearchBoolean.c" + } else { + const gchar* _tmp3_ = NULL; +#line 250 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = str; +#line 250 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp3_, "ENDS_WITH") == 0) { +#line 251 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_TEXT_CONTEXT_ENDS_WITH; +#line 251 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2174 "SearchBoolean.c" + } else { + const gchar* _tmp4_ = NULL; +#line 253 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = str; +#line 253 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp4_, "DOES_NOT_CONTAIN") == 0) { +#line 254 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_TEXT_CONTEXT_DOES_NOT_CONTAIN; +#line 254 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2185 "SearchBoolean.c" + } else { + const gchar* _tmp5_ = NULL; +#line 256 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = str; +#line 256 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp5_, "IS_NOT_SET") == 0) { +#line 257 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_TEXT_CONTEXT_IS_NOT_SET; +#line 257 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2196 "SearchBoolean.c" + } else { + const gchar* _tmp6_ = NULL; +#line 259 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = str; +#line 259 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp6_, "IS_SET") == 0) { +#line 260 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_TEXT_CONTEXT_IS_SET; +#line 260 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2207 "SearchBoolean.c" + } else { + const gchar* _tmp7_ = NULL; +#line 263 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = str; +#line 263 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:263: unrecognized text search context name: %s", _tmp7_); +#line 2214 "SearchBoolean.c" + } + } + } + } + } + } + } +} + + +GType search_condition_text_context_get_type (void) { + static volatile gsize search_condition_text_context_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_text_context_type_id__volatile)) { + static const GEnumValue values[] = {{SEARCH_CONDITION_TEXT_CONTEXT_CONTAINS, "SEARCH_CONDITION_TEXT_CONTEXT_CONTAINS", "contains"}, {SEARCH_CONDITION_TEXT_CONTEXT_IS_EXACTLY, "SEARCH_CONDITION_TEXT_CONTEXT_IS_EXACTLY", "is-exactly"}, {SEARCH_CONDITION_TEXT_CONTEXT_STARTS_WITH, "SEARCH_CONDITION_TEXT_CONTEXT_STARTS_WITH", "starts-with"}, {SEARCH_CONDITION_TEXT_CONTEXT_ENDS_WITH, "SEARCH_CONDITION_TEXT_CONTEXT_ENDS_WITH", "ends-with"}, {SEARCH_CONDITION_TEXT_CONTEXT_DOES_NOT_CONTAIN, "SEARCH_CONDITION_TEXT_CONTEXT_DOES_NOT_CONTAIN", "does-not-contain"}, {SEARCH_CONDITION_TEXT_CONTEXT_IS_NOT_SET, "SEARCH_CONDITION_TEXT_CONTEXT_IS_NOT_SET", "is-not-set"}, {SEARCH_CONDITION_TEXT_CONTEXT_IS_SET, "SEARCH_CONDITION_TEXT_CONTEXT_IS_SET", "is-set"}, {0, NULL, NULL}}; + GType search_condition_text_context_type_id; + search_condition_text_context_type_id = g_enum_register_static ("SearchConditionTextContext", values); + g_once_init_leave (&search_condition_text_context_type_id__volatile, search_condition_text_context_type_id); + } + return search_condition_text_context_type_id__volatile; +} + + +SearchConditionText* search_condition_text_construct (GType object_type, SearchConditionSearchType search_type, const gchar* text, SearchConditionTextContext context) { + SearchConditionText* self = NULL; + SearchConditionSearchType _tmp0_ = 0; + gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + SearchConditionTextContext _tmp8_ = 0; +#line 273 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = (SearchConditionText*) search_condition_construct (object_type); +#line 274 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = search_type; +#line 274 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_set_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition), _tmp0_); +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = text; +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp2_ != NULL) { +#line 2253 "SearchBoolean.c" + const gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = text; +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = g_utf8_strdown (_tmp3_, (gssize) -1); +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = _tmp4_; +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = string_remove_diacritics (_tmp5_); +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp1_); +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp6_; +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp5_); +#line 2272 "SearchBoolean.c" + } else { + gchar* _tmp7_ = NULL; +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = g_strdup (""); +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp1_); +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp7_; +#line 2281 "SearchBoolean.c" + } +#line 275 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_text_set_text (self, _tmp1_); +#line 276 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = context; +#line 276 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_text_set_context (self, _tmp8_); +#line 273 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp1_); +#line 273 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self; +#line 2293 "SearchBoolean.c" +} + + +SearchConditionText* search_condition_text_new (SearchConditionSearchType search_type, const gchar* text, SearchConditionTextContext context) { +#line 273 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return search_condition_text_construct (TYPE_SEARCH_CONDITION_TEXT, search_type, text, context); +#line 2300 "SearchBoolean.c" +} + + +static gboolean string_contains (const gchar* self, const gchar* needle) { + gboolean result = FALSE; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; +#line 1376 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + g_return_val_if_fail (self != NULL, FALSE); +#line 1376 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + g_return_val_if_fail (needle != NULL, FALSE); +#line 1377 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp0_ = needle; +#line 1377 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + _tmp1_ = strstr ((gchar*) self, (gchar*) _tmp0_); +#line 1377 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + result = _tmp1_ != NULL; +#line 1377 "/usr/share/vala-0.32/vapi/glib-2.0.vapi" + return result; +#line 2320 "SearchBoolean.c" +} + + +static gboolean search_condition_text_string_match (SearchConditionText* self, const gchar* needle, const gchar* haystack) { + gboolean result = FALSE; + SearchConditionTextContext _tmp0_ = 0; +#line 280 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_TEXT (self), FALSE); +#line 280 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (needle != NULL, FALSE); +#line 281 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_context; +#line 281 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (_tmp0_) { +#line 281 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_CONTAINS: +#line 281 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_DOES_NOT_CONTAIN: +#line 2339 "SearchBoolean.c" + { + gboolean _tmp1_ = FALSE; + const gchar* _tmp2_ = NULL; + gboolean _tmp3_ = FALSE; +#line 284 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = haystack; +#line 284 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = is_string_empty (_tmp2_); +#line 284 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!_tmp3_) { +#line 2350 "SearchBoolean.c" + const gchar* _tmp4_ = NULL; + const gchar* _tmp5_ = NULL; + gboolean _tmp6_ = FALSE; +#line 284 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = haystack; +#line 284 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = needle; +#line 284 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = string_contains (_tmp4_, _tmp5_); +#line 284 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp6_; +#line 2362 "SearchBoolean.c" + } else { +#line 284 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = FALSE; +#line 2366 "SearchBoolean.c" + } +#line 284 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 284 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2372 "SearchBoolean.c" + } +#line 281 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_IS_EXACTLY: +#line 2376 "SearchBoolean.c" + { + gboolean _tmp7_ = FALSE; + const gchar* _tmp8_ = NULL; + gboolean _tmp9_ = FALSE; +#line 287 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = haystack; +#line 287 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = is_string_empty (_tmp8_); +#line 287 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!_tmp9_) { +#line 2387 "SearchBoolean.c" + const gchar* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; +#line 287 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = haystack; +#line 287 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = needle; +#line 287 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = g_strcmp0 (_tmp10_, _tmp11_) == 0; +#line 2396 "SearchBoolean.c" + } else { +#line 287 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = FALSE; +#line 2400 "SearchBoolean.c" + } +#line 287 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp7_; +#line 287 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2406 "SearchBoolean.c" + } +#line 281 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_STARTS_WITH: +#line 2410 "SearchBoolean.c" + { + gboolean _tmp12_ = FALSE; + const gchar* _tmp13_ = NULL; + gboolean _tmp14_ = FALSE; +#line 290 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp13_ = haystack; +#line 290 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp14_ = is_string_empty (_tmp13_); +#line 290 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!_tmp14_) { +#line 2421 "SearchBoolean.c" + const gchar* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + gboolean _tmp17_ = FALSE; +#line 290 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp15_ = haystack; +#line 290 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp16_ = needle; +#line 290 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp17_ = g_str_has_prefix (_tmp15_, _tmp16_); +#line 290 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = _tmp17_; +#line 2433 "SearchBoolean.c" + } else { +#line 290 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = FALSE; +#line 2437 "SearchBoolean.c" + } +#line 290 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp12_; +#line 290 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2443 "SearchBoolean.c" + } +#line 281 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_ENDS_WITH: +#line 2447 "SearchBoolean.c" + { + gboolean _tmp18_ = FALSE; + const gchar* _tmp19_ = NULL; + gboolean _tmp20_ = FALSE; +#line 293 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp19_ = haystack; +#line 293 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp20_ = is_string_empty (_tmp19_); +#line 293 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!_tmp20_) { +#line 2458 "SearchBoolean.c" + const gchar* _tmp21_ = NULL; + const gchar* _tmp22_ = NULL; + gboolean _tmp23_ = FALSE; +#line 293 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp21_ = haystack; +#line 293 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp22_ = needle; +#line 293 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp23_ = g_str_has_suffix (_tmp21_, _tmp22_); +#line 293 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp18_ = _tmp23_; +#line 2470 "SearchBoolean.c" + } else { +#line 293 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp18_ = FALSE; +#line 2474 "SearchBoolean.c" + } +#line 293 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp18_; +#line 293 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2480 "SearchBoolean.c" + } +#line 281 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_IS_NOT_SET: +#line 2484 "SearchBoolean.c" + { + const gchar* _tmp24_ = NULL; + gboolean _tmp25_ = FALSE; +#line 296 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp24_ = haystack; +#line 296 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp25_ = is_string_empty (_tmp24_); +#line 296 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp25_; +#line 296 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2496 "SearchBoolean.c" + } +#line 281 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_TEXT_CONTEXT_IS_SET: +#line 2500 "SearchBoolean.c" + { + const gchar* _tmp26_ = NULL; + gboolean _tmp27_ = FALSE; +#line 299 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp26_ = haystack; +#line 299 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp27_ = is_string_empty (_tmp26_); +#line 299 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = !_tmp27_; +#line 299 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2512 "SearchBoolean.c" + } + default: +#line 281 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + break; +#line 2517 "SearchBoolean.c" + } +#line 302 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = FALSE; +#line 302 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 2523 "SearchBoolean.c" +} + + +static gpointer _g_object_ref0 (gpointer self) { +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self ? g_object_ref (self) : NULL; +#line 2530 "SearchBoolean.c" +} + + +static gboolean search_condition_text_real_predicate (SearchCondition* base, MediaSource* source) { + SearchConditionText * self; + gboolean result = FALSE; + gboolean ret = FALSE; + gboolean _tmp0_ = FALSE; + SearchConditionSearchType _tmp1_ = 0; + SearchConditionSearchType _tmp2_ = 0; + gboolean _tmp21_ = FALSE; + SearchConditionSearchType _tmp22_ = 0; + SearchConditionSearchType _tmp23_ = 0; + gboolean _tmp52_ = FALSE; + SearchConditionSearchType _tmp53_ = 0; + SearchConditionSearchType _tmp54_ = 0; + gboolean _tmp75_ = FALSE; + SearchConditionSearchType _tmp76_ = 0; + SearchConditionSearchType _tmp77_ = 0; + gboolean _tmp91_ = FALSE; + SearchConditionSearchType _tmp92_ = 0; + SearchConditionSearchType _tmp93_ = 0; + gboolean _tmp106_ = FALSE; + SearchConditionTextContext _tmp107_ = 0; +#line 306 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SEARCH_CONDITION_TEXT, SearchConditionText); +#line 306 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_MEDIA_SOURCE (source), FALSE); +#line 307 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = FALSE; +#line 310 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = search_condition_get_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition)); +#line 310 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _tmp1_; +#line 310 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT == _tmp2_) { +#line 310 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = TRUE; +#line 2569 "SearchBoolean.c" + } else { + SearchConditionSearchType _tmp3_ = 0; + SearchConditionSearchType _tmp4_ = 0; +#line 310 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = search_condition_get_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition)); +#line 310 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = _tmp3_; +#line 310 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = SEARCH_CONDITION_SEARCH_TYPE_TITLE == _tmp4_; +#line 2579 "SearchBoolean.c" + } +#line 310 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp0_) { +#line 2583 "SearchBoolean.c" + gchar* _tmp5_ = NULL; + MediaSource* _tmp6_ = NULL; + gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + gboolean _tmp9_ = FALSE; + gchar* title = NULL; + gchar* _tmp16_ = NULL; + gboolean _tmp17_ = FALSE; + const gchar* _tmp18_ = NULL; + const gchar* _tmp19_ = NULL; + gboolean _tmp20_ = FALSE; +#line 311 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = source; +#line 311 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = media_source_get_title (_tmp6_); +#line 311 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = _tmp7_; +#line 311 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = NULL != _tmp8_; +#line 311 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp8_); +#line 311 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp9_) { +#line 2607 "SearchBoolean.c" + MediaSource* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + gchar* _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = source; +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = media_source_get_title (_tmp10_); +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = _tmp11_; +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp13_ = g_utf8_strdown (_tmp12_, (gssize) -1); +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp14_ = _tmp13_; +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp15_ = string_remove_diacritics (_tmp14_); +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp5_); +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = _tmp15_; +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp14_); +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp12_); +#line 2634 "SearchBoolean.c" + } else { +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp5_); +#line 312 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = NULL; +#line 2640 "SearchBoolean.c" + } +#line 311 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp16_ = g_strdup (_tmp5_); +#line 311 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + title = _tmp16_; +#line 313 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp17_ = ret; +#line 313 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp18_ = self->priv->_text; +#line 313 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp19_ = title; +#line 313 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp20_ = search_condition_text_string_match (self, _tmp18_, _tmp19_); +#line 313 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = _tmp17_ | _tmp20_; +#line 310 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (title); +#line 310 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp5_); +#line 2660 "SearchBoolean.c" + } +#line 317 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp22_ = search_condition_get_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition)); +#line 317 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp23_ = _tmp22_; +#line 317 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT == _tmp23_) { +#line 317 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp21_ = TRUE; +#line 2670 "SearchBoolean.c" + } else { + SearchConditionSearchType _tmp24_ = 0; + SearchConditionSearchType _tmp25_ = 0; +#line 317 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp24_ = search_condition_get_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition)); +#line 317 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp25_ = _tmp24_; +#line 317 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp21_ = SEARCH_CONDITION_SEARCH_TYPE_TAG == _tmp25_; +#line 2680 "SearchBoolean.c" + } +#line 317 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp21_) { +#line 2684 "SearchBoolean.c" + GeeList* tag_list = NULL; + TagSourceCollection* _tmp26_ = NULL; + MediaSource* _tmp27_ = NULL; + GeeList* _tmp28_ = NULL; + GeeList* _tmp29_ = NULL; +#line 318 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp26_ = tag_global; +#line 318 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp27_ = source; +#line 318 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp28_ = tag_source_collection_fetch_for_source (_tmp26_, _tmp27_); +#line 318 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + tag_list = _tmp28_; +#line 319 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp29_ = tag_list; +#line 319 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (NULL != _tmp29_) { +#line 2702 "SearchBoolean.c" + gchar* itag = NULL; + { + GeeList* _tag_list = NULL; + GeeList* _tmp30_ = NULL; + GeeList* _tmp31_ = NULL; + gint _tag_size = 0; + GeeList* _tmp32_ = NULL; + gint _tmp33_ = 0; + gint _tmp34_ = 0; + gint _tag_index = 0; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp30_ = tag_list; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp31_ = _g_object_ref0 (_tmp30_); +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tag_list = _tmp31_; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp32_ = _tag_list; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp33_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp32_, GEE_TYPE_COLLECTION, GeeCollection)); +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp34_ = _tmp33_; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tag_size = _tmp34_; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tag_index = -1; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + while (TRUE) { +#line 2731 "SearchBoolean.c" + gint _tmp35_ = 0; + gint _tmp36_ = 0; + gint _tmp37_ = 0; + Tag* tag = NULL; + GeeList* _tmp38_ = NULL; + gint _tmp39_ = 0; + gpointer _tmp40_ = NULL; + Tag* _tmp41_ = NULL; + gchar* _tmp42_ = NULL; + gchar* _tmp43_ = NULL; + gchar* _tmp44_ = NULL; + gboolean _tmp45_ = FALSE; + const gchar* _tmp46_ = NULL; + const gchar* _tmp47_ = NULL; + gboolean _tmp48_ = FALSE; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp35_ = _tag_index; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tag_index = _tmp35_ + 1; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp36_ = _tag_index; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp37_ = _tag_size; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!(_tmp36_ < _tmp37_)) { +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + break; +#line 2759 "SearchBoolean.c" + } +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp38_ = _tag_list; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp39_ = _tag_index; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp40_ = gee_list_get (_tmp38_, _tmp39_); +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + tag = (Tag*) _tmp40_; +#line 322 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp41_ = tag; +#line 322 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp42_ = tag_get_searchable_name (_tmp41_); +#line 322 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp43_ = _tmp42_; +#line 322 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp44_ = g_utf8_strdown (_tmp43_, (gssize) -1); +#line 322 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (itag); +#line 322 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + itag = _tmp44_; +#line 322 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp43_); +#line 323 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp45_ = ret; +#line 323 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp46_ = self->priv->_text; +#line 323 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp47_ = itag; +#line 323 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp48_ = search_condition_text_string_match (self, _tmp46_, _tmp47_); +#line 323 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = _tmp45_ | _tmp48_; +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (tag); +#line 2795 "SearchBoolean.c" + } +#line 321 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (_tag_list); +#line 2799 "SearchBoolean.c" + } +#line 319 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (itag); +#line 2803 "SearchBoolean.c" + } else { + gboolean _tmp49_ = FALSE; + const gchar* _tmp50_ = NULL; + gboolean _tmp51_ = FALSE; +#line 326 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp49_ = ret; +#line 326 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp50_ = self->priv->_text; +#line 326 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp51_ = search_condition_text_string_match (self, _tmp50_, NULL); +#line 326 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = _tmp49_ | _tmp51_; +#line 2816 "SearchBoolean.c" + } +#line 317 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (tag_list); +#line 2820 "SearchBoolean.c" + } +#line 331 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp53_ = search_condition_get_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition)); +#line 331 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp54_ = _tmp53_; +#line 331 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT == _tmp54_) { +#line 331 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp52_ = TRUE; +#line 2830 "SearchBoolean.c" + } else { + SearchConditionSearchType _tmp55_ = 0; + SearchConditionSearchType _tmp56_ = 0; +#line 331 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp55_ = search_condition_get_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition)); +#line 331 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp56_ = _tmp55_; +#line 331 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp52_ = SEARCH_CONDITION_SEARCH_TYPE_EVENT_NAME == _tmp56_; +#line 2840 "SearchBoolean.c" + } +#line 331 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp52_) { +#line 2844 "SearchBoolean.c" + gchar* _tmp57_ = NULL; + MediaSource* _tmp58_ = NULL; + Event* _tmp59_ = NULL; + Event* _tmp60_ = NULL; + gboolean _tmp61_ = FALSE; + gchar* event_name = NULL; + gchar* _tmp70_ = NULL; + gboolean _tmp71_ = FALSE; + const gchar* _tmp72_ = NULL; + const gchar* _tmp73_ = NULL; + gboolean _tmp74_ = FALSE; +#line 332 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp58_ = source; +#line 332 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp59_ = media_source_get_event (_tmp58_); +#line 332 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp60_ = _tmp59_; +#line 332 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp61_ = NULL != _tmp60_; +#line 332 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (_tmp60_); +#line 332 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp61_) { +#line 2868 "SearchBoolean.c" + MediaSource* _tmp62_ = NULL; + Event* _tmp63_ = NULL; + Event* _tmp64_ = NULL; + gchar* _tmp65_ = NULL; + gchar* _tmp66_ = NULL; + gchar* _tmp67_ = NULL; + gchar* _tmp68_ = NULL; + gchar* _tmp69_ = NULL; +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp62_ = source; +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp63_ = media_source_get_event (_tmp62_); +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp64_ = _tmp63_; +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp65_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp64_, TYPE_DATA_OBJECT, DataObject)); +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp66_ = _tmp65_; +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp67_ = g_utf8_strdown (_tmp66_, (gssize) -1); +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp68_ = _tmp67_; +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp69_ = string_remove_diacritics (_tmp68_); +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp57_); +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp57_ = _tmp69_; +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp68_); +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp66_); +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (_tmp64_); +#line 2903 "SearchBoolean.c" + } else { +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp57_); +#line 333 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp57_ = NULL; +#line 2909 "SearchBoolean.c" + } +#line 332 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp70_ = g_strdup (_tmp57_); +#line 332 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + event_name = _tmp70_; +#line 334 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp71_ = ret; +#line 334 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp72_ = self->priv->_text; +#line 334 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp73_ = event_name; +#line 334 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp74_ = search_condition_text_string_match (self, _tmp72_, _tmp73_); +#line 334 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = _tmp71_ | _tmp74_; +#line 331 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (event_name); +#line 331 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp57_); +#line 2929 "SearchBoolean.c" + } +#line 338 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp76_ = search_condition_get_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition)); +#line 338 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp77_ = _tmp76_; +#line 338 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT == _tmp77_) { +#line 338 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp75_ = TRUE; +#line 2939 "SearchBoolean.c" + } else { + SearchConditionSearchType _tmp78_ = 0; + SearchConditionSearchType _tmp79_ = 0; +#line 338 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp78_ = search_condition_get_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition)); +#line 338 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp79_ = _tmp78_; +#line 338 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp75_ = SEARCH_CONDITION_SEARCH_TYPE_COMMENT == _tmp79_; +#line 2949 "SearchBoolean.c" + } +#line 338 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp75_) { +#line 2953 "SearchBoolean.c" + gchar* comment = NULL; + MediaSource* _tmp80_ = NULL; + gchar* _tmp81_ = NULL; + const gchar* _tmp82_ = NULL; +#line 339 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp80_ = source; +#line 339 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp81_ = media_source_get_comment (_tmp80_); +#line 339 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + comment = _tmp81_; +#line 340 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp82_ = comment; +#line 340 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (NULL != _tmp82_) { +#line 2968 "SearchBoolean.c" + gboolean _tmp83_ = FALSE; + const gchar* _tmp84_ = NULL; + const gchar* _tmp85_ = NULL; + gchar* _tmp86_ = NULL; + gchar* _tmp87_ = NULL; + gchar* _tmp88_ = NULL; + gchar* _tmp89_ = NULL; + gboolean _tmp90_ = FALSE; +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp83_ = ret; +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp84_ = self->priv->_text; +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp85_ = comment; +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp86_ = g_utf8_strdown (_tmp85_, (gssize) -1); +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp87_ = _tmp86_; +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp88_ = string_remove_diacritics (_tmp87_); +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp89_ = _tmp88_; +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp90_ = search_condition_text_string_match (self, _tmp84_, _tmp89_); +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = _tmp83_ | _tmp90_; +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp89_); +#line 341 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp87_); +#line 2999 "SearchBoolean.c" + } +#line 338 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (comment); +#line 3003 "SearchBoolean.c" + } +#line 345 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp92_ = search_condition_get_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition)); +#line 345 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp93_ = _tmp92_; +#line 345 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (SEARCH_CONDITION_SEARCH_TYPE_ANY_TEXT == _tmp93_) { +#line 345 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp91_ = TRUE; +#line 3013 "SearchBoolean.c" + } else { + SearchConditionSearchType _tmp94_ = 0; + SearchConditionSearchType _tmp95_ = 0; +#line 345 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp94_ = search_condition_get_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition)); +#line 345 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp95_ = _tmp94_; +#line 345 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp91_ = SEARCH_CONDITION_SEARCH_TYPE_FILE_NAME == _tmp95_; +#line 3023 "SearchBoolean.c" + } +#line 345 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp91_) { +#line 3027 "SearchBoolean.c" + gboolean _tmp96_ = FALSE; + const gchar* _tmp97_ = NULL; + MediaSource* _tmp98_ = NULL; + gchar* _tmp99_ = NULL; + gchar* _tmp100_ = NULL; + gchar* _tmp101_ = NULL; + gchar* _tmp102_ = NULL; + gchar* _tmp103_ = NULL; + gchar* _tmp104_ = NULL; + gboolean _tmp105_ = FALSE; +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp96_ = ret; +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp97_ = self->priv->_text; +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp98_ = source; +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp99_ = media_source_get_basename (_tmp98_); +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp100_ = _tmp99_; +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp101_ = g_utf8_strdown (_tmp100_, (gssize) -1); +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp102_ = _tmp101_; +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp103_ = string_remove_diacritics (_tmp102_); +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp104_ = _tmp103_; +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp105_ = search_condition_text_string_match (self, _tmp97_, _tmp104_); +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = _tmp96_ | _tmp105_; +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp104_); +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp102_); +#line 346 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp100_); +#line 3066 "SearchBoolean.c" + } +#line 349 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp107_ = self->priv->_context; +#line 349 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp107_ == SEARCH_CONDITION_TEXT_CONTEXT_DOES_NOT_CONTAIN) { +#line 3072 "SearchBoolean.c" + gboolean _tmp108_ = FALSE; +#line 349 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp108_ = ret; +#line 349 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp106_ = !_tmp108_; +#line 3078 "SearchBoolean.c" + } else { + gboolean _tmp109_ = FALSE; +#line 349 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp109_ = ret; +#line 349 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp106_ = _tmp109_; +#line 3085 "SearchBoolean.c" + } +#line 349 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp106_; +#line 349 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3091 "SearchBoolean.c" +} + + +const gchar* search_condition_text_get_text (SearchConditionText* self) { + const gchar* result; + const gchar* _tmp0_ = NULL; +#line 268 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_TEXT (self), NULL); +#line 268 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_text; +#line 268 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 268 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3106 "SearchBoolean.c" +} + + +static void search_condition_text_set_text (SearchConditionText* self, const gchar* value) { + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; +#line 268 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_TEXT (self)); +#line 268 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 268 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup (_tmp0_); +#line 268 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (self->priv->_text); +#line 268 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_text = _tmp1_; +#line 3123 "SearchBoolean.c" +} + + +SearchConditionTextContext search_condition_text_get_context (SearchConditionText* self) { + SearchConditionTextContext result; + SearchConditionTextContext _tmp0_ = 0; +#line 271 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_TEXT (self), 0); +#line 271 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_context; +#line 271 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 271 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3138 "SearchBoolean.c" +} + + +static void search_condition_text_set_context (SearchConditionText* self, SearchConditionTextContext value) { + SearchConditionTextContext _tmp0_ = 0; +#line 271 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_TEXT (self)); +#line 271 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 271 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_context = _tmp0_; +#line 3150 "SearchBoolean.c" +} + + +static void search_condition_text_class_init (SearchConditionTextClass * klass) { +#line 202 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_text_parent_class = g_type_class_peek_parent (klass); +#line 202 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->finalize = search_condition_text_finalize; +#line 202 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_class_add_private (klass, sizeof (SearchConditionTextPrivate)); +#line 202 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->predicate = search_condition_text_real_predicate; +#line 3163 "SearchBoolean.c" +} + + +static void search_condition_text_instance_init (SearchConditionText * self) { +#line 202 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv = SEARCH_CONDITION_TEXT_GET_PRIVATE (self); +#line 3170 "SearchBoolean.c" +} + + +static void search_condition_text_finalize (SearchCondition* obj) { + SearchConditionText * self; +#line 202 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SEARCH_CONDITION_TEXT, SearchConditionText); +#line 268 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (self->priv->_text); +#line 202 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + SEARCH_CONDITION_CLASS (search_condition_text_parent_class)->finalize (obj); +#line 3182 "SearchBoolean.c" +} + + +GType search_condition_text_get_type (void) { + static volatile gsize search_condition_text_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_text_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SearchConditionTextClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) search_condition_text_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SearchConditionText), 0, (GInstanceInitFunc) search_condition_text_instance_init, NULL }; + GType search_condition_text_type_id; + search_condition_text_type_id = g_type_register_static (TYPE_SEARCH_CONDITION, "SearchConditionText", &g_define_type_info, 0); + g_once_init_leave (&search_condition_text_type_id__volatile, search_condition_text_type_id); + } + return search_condition_text_type_id__volatile; +} + + +gchar* search_condition_media_type_context_to_string (SearchConditionMediaTypeContext self) { + gchar* result = NULL; +#line 360 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 360 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS: +#line 3204 "SearchBoolean.c" + { + gchar* _tmp0_ = NULL; +#line 362 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup ("IS"); +#line 362 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 362 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3213 "SearchBoolean.c" + } +#line 360 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS_NOT: +#line 3217 "SearchBoolean.c" + { + gchar* _tmp1_ = NULL; +#line 365 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup ("IS_NOT"); +#line 365 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 365 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3226 "SearchBoolean.c" + } + default: + { +#line 368 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:368: unrecognized media search context enumeration " \ +"value"); +#line 3232 "SearchBoolean.c" + } + } +} + + +SearchConditionMediaTypeContext search_condition_media_type_context_from_string (const gchar* str) { + SearchConditionMediaTypeContext result = 0; + const gchar* _tmp0_ = NULL; +#line 372 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (str != NULL, 0); +#line 373 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = str; +#line 373 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp0_, "IS") == 0) { +#line 374 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS; +#line 374 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3251 "SearchBoolean.c" + } else { + const gchar* _tmp1_ = NULL; +#line 376 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = str; +#line 376 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp1_, "IS_NOT") == 0) { +#line 377 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS_NOT; +#line 377 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3262 "SearchBoolean.c" + } else { + const gchar* _tmp2_ = NULL; +#line 380 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = str; +#line 380 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:380: unrecognized media search context name: %s", _tmp2_); +#line 3269 "SearchBoolean.c" + } + } +} + + +GType search_condition_media_type_context_get_type (void) { + static volatile gsize search_condition_media_type_context_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_media_type_context_type_id__volatile)) { + static const GEnumValue values[] = {{SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS, "SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS", "is"}, {SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS_NOT, "SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS_NOT", "is-not"}, {0, NULL, NULL}}; + GType search_condition_media_type_context_type_id; + search_condition_media_type_context_type_id = g_enum_register_static ("SearchConditionMediaTypeContext", values); + g_once_init_leave (&search_condition_media_type_context_type_id__volatile, search_condition_media_type_context_type_id); + } + return search_condition_media_type_context_type_id__volatile; +} + + +gchar* search_condition_media_type_media_type_to_string (SearchConditionMediaTypeMediaType self) { + gchar* result = NULL; +#line 390 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 390 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_ALL: +#line 3293 "SearchBoolean.c" + { + gchar* _tmp0_ = NULL; +#line 392 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup ("PHOTO_ALL"); +#line 392 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 392 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3302 "SearchBoolean.c" + } +#line 390 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_RAW: +#line 3306 "SearchBoolean.c" + { + gchar* _tmp1_ = NULL; +#line 395 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup ("PHOTO_RAW"); +#line 395 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 395 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3315 "SearchBoolean.c" + } +#line 390 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_VIDEO: +#line 3319 "SearchBoolean.c" + { + gchar* _tmp2_ = NULL; +#line 398 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = g_strdup ("VIDEO"); +#line 398 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 398 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3328 "SearchBoolean.c" + } + default: + { +#line 401 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:401: unrecognized media search type enumeration val" \ +"ue"); +#line 3334 "SearchBoolean.c" + } + } +} + + +SearchConditionMediaTypeMediaType search_condition_media_type_media_type_from_string (const gchar* str) { + SearchConditionMediaTypeMediaType result = 0; + const gchar* _tmp0_ = NULL; +#line 405 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (str != NULL, 0); +#line 406 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = str; +#line 406 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp0_, "PHOTO_ALL") == 0) { +#line 407 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_ALL; +#line 407 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3353 "SearchBoolean.c" + } else { + const gchar* _tmp1_ = NULL; +#line 409 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = str; +#line 409 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp1_, "PHOTO_RAW") == 0) { +#line 410 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_RAW; +#line 410 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3364 "SearchBoolean.c" + } else { + const gchar* _tmp2_ = NULL; +#line 412 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = str; +#line 412 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp2_, "VIDEO") == 0) { +#line 413 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_VIDEO; +#line 413 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3375 "SearchBoolean.c" + } else { + const gchar* _tmp3_ = NULL; +#line 416 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = str; +#line 416 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:416: unrecognized media search type name: %s", _tmp3_); +#line 3382 "SearchBoolean.c" + } + } + } +} + + +GType search_condition_media_type_media_type_get_type (void) { + static volatile gsize search_condition_media_type_media_type_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_media_type_media_type_type_id__volatile)) { + static const GEnumValue values[] = {{SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_ALL, "SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_ALL", "photo-all"}, {SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_RAW, "SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_RAW", "photo-raw"}, {SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_VIDEO, "SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_VIDEO", "video"}, {0, NULL, NULL}}; + GType search_condition_media_type_media_type_type_id; + search_condition_media_type_media_type_type_id = g_enum_register_static ("SearchConditionMediaTypeMediaType", values); + g_once_init_leave (&search_condition_media_type_media_type_type_id__volatile, search_condition_media_type_media_type_type_id); + } + return search_condition_media_type_media_type_type_id__volatile; +} + + +SearchConditionMediaType* search_condition_media_type_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionMediaTypeContext context, SearchConditionMediaTypeMediaType media_type) { + SearchConditionMediaType* self = NULL; + SearchConditionSearchType _tmp0_ = 0; + SearchConditionMediaTypeContext _tmp1_ = 0; + SearchConditionMediaTypeMediaType _tmp2_ = 0; +#line 426 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = (SearchConditionMediaType*) search_condition_construct (object_type); +#line 427 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = search_type; +#line 427 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_set_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition), _tmp0_); +#line 428 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = context; +#line 428 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_media_type_set_context (self, _tmp1_); +#line 429 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = media_type; +#line 429 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_media_type_set_media_type (self, _tmp2_); +#line 426 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self; +#line 3422 "SearchBoolean.c" +} + + +SearchConditionMediaType* search_condition_media_type_new (SearchConditionSearchType search_type, SearchConditionMediaTypeContext context, SearchConditionMediaTypeMediaType media_type) { +#line 426 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return search_condition_media_type_construct (TYPE_SEARCH_CONDITION_MEDIA_TYPE, search_type, context, media_type); +#line 3429 "SearchBoolean.c" +} + + +static gboolean search_condition_media_type_real_predicate (SearchCondition* base, MediaSource* source) { + SearchConditionMediaType * self; + gboolean result = FALSE; + SearchConditionMediaTypeMediaType _tmp0_ = 0; +#line 433 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SEARCH_CONDITION_MEDIA_TYPE, SearchConditionMediaType); +#line 433 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_MEDIA_SOURCE (source), FALSE); +#line 436 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_media_type; +#line 436 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (_tmp0_) { +#line 436 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_ALL: +#line 3447 "SearchBoolean.c" + { + MediaSource* _tmp1_ = NULL; +#line 438 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = source; +#line 438 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, TYPE_PHOTO)) { +#line 3454 "SearchBoolean.c" + SearchConditionMediaTypeContext _tmp2_ = 0; +#line 439 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = self->priv->_context; +#line 439 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_ == SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS; +#line 439 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3462 "SearchBoolean.c" + } else { + SearchConditionMediaTypeContext _tmp3_ = 0; +#line 441 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = self->priv->_context; +#line 441 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp3_ == SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS_NOT; +#line 441 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3471 "SearchBoolean.c" + } + } +#line 436 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_PHOTO_RAW: +#line 3476 "SearchBoolean.c" + { + gboolean _tmp4_ = FALSE; + MediaSource* _tmp5_ = NULL; +#line 444 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = source; +#line 444 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, TYPE_PHOTO)) { +#line 3484 "SearchBoolean.c" + MediaSource* _tmp6_ = NULL; + PhotoFileFormat _tmp7_ = 0; +#line 444 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = source; +#line 444 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = photo_get_master_file_format (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_PHOTO, Photo)); +#line 444 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = _tmp7_ == PHOTO_FILE_FORMAT_RAW; +#line 3493 "SearchBoolean.c" + } else { +#line 444 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = FALSE; +#line 3497 "SearchBoolean.c" + } +#line 444 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp4_) { +#line 3501 "SearchBoolean.c" + SearchConditionMediaTypeContext _tmp8_ = 0; +#line 445 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = self->priv->_context; +#line 445 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp8_ == SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS; +#line 445 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3509 "SearchBoolean.c" + } else { + SearchConditionMediaTypeContext _tmp9_ = 0; +#line 447 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = self->priv->_context; +#line 447 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp9_ == SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS_NOT; +#line 447 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3518 "SearchBoolean.c" + } + } +#line 436 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MEDIA_TYPE_MEDIA_TYPE_VIDEO: +#line 3523 "SearchBoolean.c" + { + MediaSource* _tmp10_ = NULL; +#line 450 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = source; +#line 450 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp10_, TYPE_VIDEO_SOURCE)) { +#line 3530 "SearchBoolean.c" + SearchConditionMediaTypeContext _tmp11_ = 0; +#line 451 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = self->priv->_context; +#line 451 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp11_ == SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS; +#line 451 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3538 "SearchBoolean.c" + } else { + SearchConditionMediaTypeContext _tmp12_ = 0; +#line 453 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = self->priv->_context; +#line 453 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp12_ == SEARCH_CONDITION_MEDIA_TYPE_CONTEXT_IS_NOT; +#line 453 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3547 "SearchBoolean.c" + } + } + default: + { +#line 456 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:456: unrecognized media search type enumeration val" \ +"ue"); +#line 3554 "SearchBoolean.c" + } + } +} + + +SearchConditionMediaTypeMediaType search_condition_media_type_get_media_type (SearchConditionMediaType* self) { + SearchConditionMediaTypeMediaType result; + SearchConditionMediaTypeMediaType _tmp0_ = 0; +#line 421 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_MEDIA_TYPE (self), 0); +#line 421 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_media_type; +#line 421 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 421 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3571 "SearchBoolean.c" +} + + +static void search_condition_media_type_set_media_type (SearchConditionMediaType* self, SearchConditionMediaTypeMediaType value) { + SearchConditionMediaTypeMediaType _tmp0_ = 0; +#line 421 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_MEDIA_TYPE (self)); +#line 421 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 421 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_media_type = _tmp0_; +#line 3583 "SearchBoolean.c" +} + + +SearchConditionMediaTypeContext search_condition_media_type_get_context (SearchConditionMediaType* self) { + SearchConditionMediaTypeContext result; + SearchConditionMediaTypeContext _tmp0_ = 0; +#line 424 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_MEDIA_TYPE (self), 0); +#line 424 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_context; +#line 424 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 424 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3598 "SearchBoolean.c" +} + + +static void search_condition_media_type_set_context (SearchConditionMediaType* self, SearchConditionMediaTypeContext value) { + SearchConditionMediaTypeContext _tmp0_ = 0; +#line 424 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_MEDIA_TYPE (self)); +#line 424 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 424 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_context = _tmp0_; +#line 3610 "SearchBoolean.c" +} + + +static void search_condition_media_type_class_init (SearchConditionMediaTypeClass * klass) { +#line 354 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_media_type_parent_class = g_type_class_peek_parent (klass); +#line 354 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->finalize = search_condition_media_type_finalize; +#line 354 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_class_add_private (klass, sizeof (SearchConditionMediaTypePrivate)); +#line 354 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->predicate = search_condition_media_type_real_predicate; +#line 3623 "SearchBoolean.c" +} + + +static void search_condition_media_type_instance_init (SearchConditionMediaType * self) { +#line 354 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv = SEARCH_CONDITION_MEDIA_TYPE_GET_PRIVATE (self); +#line 3630 "SearchBoolean.c" +} + + +static void search_condition_media_type_finalize (SearchCondition* obj) { + SearchConditionMediaType * self; +#line 354 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SEARCH_CONDITION_MEDIA_TYPE, SearchConditionMediaType); +#line 354 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + SEARCH_CONDITION_CLASS (search_condition_media_type_parent_class)->finalize (obj); +#line 3640 "SearchBoolean.c" +} + + +GType search_condition_media_type_get_type (void) { + static volatile gsize search_condition_media_type_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_media_type_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SearchConditionMediaTypeClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) search_condition_media_type_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SearchConditionMediaType), 0, (GInstanceInitFunc) search_condition_media_type_instance_init, NULL }; + GType search_condition_media_type_type_id; + search_condition_media_type_type_id = g_type_register_static (TYPE_SEARCH_CONDITION, "SearchConditionMediaType", &g_define_type_info, 0); + g_once_init_leave (&search_condition_media_type_type_id__volatile, search_condition_media_type_type_id); + } + return search_condition_media_type_type_id__volatile; +} + + +gchar* search_condition_flagged_state_to_string (SearchConditionFlaggedState self) { + gchar* result = NULL; +#line 468 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 468 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_FLAGGED_STATE_FLAGGED: +#line 3662 "SearchBoolean.c" + { + gchar* _tmp0_ = NULL; +#line 470 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup ("FLAGGED"); +#line 470 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 470 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3671 "SearchBoolean.c" + } +#line 468 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_FLAGGED_STATE_UNFLAGGED: +#line 3675 "SearchBoolean.c" + { + gchar* _tmp1_ = NULL; +#line 473 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup ("UNFLAGGED"); +#line 473 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 473 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3684 "SearchBoolean.c" + } + default: + { +#line 476 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:476: unrecognized flagged search state enumeration " \ +"value"); +#line 3690 "SearchBoolean.c" + } + } +} + + +SearchConditionFlaggedState search_condition_flagged_state_from_string (const gchar* str) { + SearchConditionFlaggedState result = 0; + const gchar* _tmp0_ = NULL; +#line 480 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (str != NULL, 0); +#line 481 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = str; +#line 481 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp0_, "FLAGGED") == 0) { +#line 482 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_FLAGGED_STATE_FLAGGED; +#line 482 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3709 "SearchBoolean.c" + } else { + const gchar* _tmp1_ = NULL; +#line 484 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = str; +#line 484 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp1_, "UNFLAGGED") == 0) { +#line 485 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_FLAGGED_STATE_UNFLAGGED; +#line 485 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3720 "SearchBoolean.c" + } else { + const gchar* _tmp2_ = NULL; +#line 488 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = str; +#line 488 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:488: unrecognized flagged search state name: %s", _tmp2_); +#line 3727 "SearchBoolean.c" + } + } +} + + +GType search_condition_flagged_state_get_type (void) { + static volatile gsize search_condition_flagged_state_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_flagged_state_type_id__volatile)) { + static const GEnumValue values[] = {{SEARCH_CONDITION_FLAGGED_STATE_FLAGGED, "SEARCH_CONDITION_FLAGGED_STATE_FLAGGED", "flagged"}, {SEARCH_CONDITION_FLAGGED_STATE_UNFLAGGED, "SEARCH_CONDITION_FLAGGED_STATE_UNFLAGGED", "unflagged"}, {0, NULL, NULL}}; + GType search_condition_flagged_state_type_id; + search_condition_flagged_state_type_id = g_enum_register_static ("SearchConditionFlaggedState", values); + g_once_init_leave (&search_condition_flagged_state_type_id__volatile, search_condition_flagged_state_type_id); + } + return search_condition_flagged_state_type_id__volatile; +} + + +SearchConditionFlagged* search_condition_flagged_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionFlaggedState state) { + SearchConditionFlagged* self = NULL; + SearchConditionSearchType _tmp0_ = 0; + SearchConditionFlaggedState _tmp1_ = 0; +#line 495 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = (SearchConditionFlagged*) search_condition_construct (object_type); +#line 496 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = search_type; +#line 496 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_set_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition), _tmp0_); +#line 497 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = state; +#line 497 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_flagged_set_state (self, _tmp1_); +#line 495 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self; +#line 3761 "SearchBoolean.c" +} + + +SearchConditionFlagged* search_condition_flagged_new (SearchConditionSearchType search_type, SearchConditionFlaggedState state) { +#line 495 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return search_condition_flagged_construct (TYPE_SEARCH_CONDITION_FLAGGED, search_type, state); +#line 3768 "SearchBoolean.c" +} + + +static gboolean search_condition_flagged_real_predicate (SearchCondition* base, MediaSource* source) { + SearchConditionFlagged * self; + gboolean result = FALSE; + SearchConditionFlaggedState _tmp0_ = 0; +#line 501 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SEARCH_CONDITION_FLAGGED, SearchConditionFlagged); +#line 501 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_MEDIA_SOURCE (source), FALSE); +#line 502 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_state; +#line 502 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp0_ == SEARCH_CONDITION_FLAGGED_STATE_FLAGGED) { +#line 3784 "SearchBoolean.c" + MediaSource* _tmp1_ = NULL; + gboolean _tmp2_ = FALSE; +#line 503 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = source; +#line 503 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = flaggable_is_flagged (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_FLAGGABLE, Flaggable)); +#line 503 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 503 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3795 "SearchBoolean.c" + } else { + SearchConditionFlaggedState _tmp3_ = 0; +#line 504 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = self->priv->_state; +#line 504 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp3_ == SEARCH_CONDITION_FLAGGED_STATE_UNFLAGGED) { +#line 3802 "SearchBoolean.c" + MediaSource* _tmp4_ = NULL; + gboolean _tmp5_ = FALSE; +#line 505 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = source; +#line 505 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = flaggable_is_flagged (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_FLAGGABLE, Flaggable)); +#line 505 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = !_tmp5_; +#line 505 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3813 "SearchBoolean.c" + } else { +#line 507 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:507: unrecognized flagged search state"); +#line 3817 "SearchBoolean.c" + } + } +} + + +SearchConditionFlaggedState search_condition_flagged_get_state (SearchConditionFlagged* self) { + SearchConditionFlaggedState result; + SearchConditionFlaggedState _tmp0_ = 0; +#line 493 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_FLAGGED (self), 0); +#line 493 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_state; +#line 493 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 493 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3834 "SearchBoolean.c" +} + + +static void search_condition_flagged_set_state (SearchConditionFlagged* self, SearchConditionFlaggedState value) { + SearchConditionFlaggedState _tmp0_ = 0; +#line 493 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_FLAGGED (self)); +#line 493 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 493 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_state = _tmp0_; +#line 3846 "SearchBoolean.c" +} + + +static void search_condition_flagged_class_init (SearchConditionFlaggedClass * klass) { +#line 462 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_flagged_parent_class = g_type_class_peek_parent (klass); +#line 462 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->finalize = search_condition_flagged_finalize; +#line 462 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_class_add_private (klass, sizeof (SearchConditionFlaggedPrivate)); +#line 462 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->predicate = search_condition_flagged_real_predicate; +#line 3859 "SearchBoolean.c" +} + + +static void search_condition_flagged_instance_init (SearchConditionFlagged * self) { +#line 462 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv = SEARCH_CONDITION_FLAGGED_GET_PRIVATE (self); +#line 3866 "SearchBoolean.c" +} + + +static void search_condition_flagged_finalize (SearchCondition* obj) { + SearchConditionFlagged * self; +#line 462 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SEARCH_CONDITION_FLAGGED, SearchConditionFlagged); +#line 462 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + SEARCH_CONDITION_CLASS (search_condition_flagged_parent_class)->finalize (obj); +#line 3876 "SearchBoolean.c" +} + + +GType search_condition_flagged_get_type (void) { + static volatile gsize search_condition_flagged_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_flagged_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SearchConditionFlaggedClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) search_condition_flagged_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SearchConditionFlagged), 0, (GInstanceInitFunc) search_condition_flagged_instance_init, NULL }; + GType search_condition_flagged_type_id; + search_condition_flagged_type_id = g_type_register_static (TYPE_SEARCH_CONDITION, "SearchConditionFlagged", &g_define_type_info, 0); + g_once_init_leave (&search_condition_flagged_type_id__volatile, search_condition_flagged_type_id); + } + return search_condition_flagged_type_id__volatile; +} + + +gchar* search_condition_modified_context_to_string (SearchConditionModifiedContext self) { + gchar* result = NULL; +#line 520 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 520 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MODIFIED_CONTEXT_HAS: +#line 3898 "SearchBoolean.c" + { + gchar* _tmp0_ = NULL; +#line 522 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup ("HAS"); +#line 522 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 522 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3907 "SearchBoolean.c" + } +#line 520 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MODIFIED_CONTEXT_HAS_NO: +#line 3911 "SearchBoolean.c" + { + gchar* _tmp1_ = NULL; +#line 525 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup ("HAS_NO"); +#line 525 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 525 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3920 "SearchBoolean.c" + } + default: + { +#line 528 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:528: unrecognized modified search context enumerati" \ +"on value"); +#line 3926 "SearchBoolean.c" + } + } +} + + +SearchConditionModifiedContext search_condition_modified_context_from_string (const gchar* str) { + SearchConditionModifiedContext result = 0; + const gchar* _tmp0_ = NULL; +#line 532 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (str != NULL, 0); +#line 533 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = str; +#line 533 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp0_, "HAS") == 0) { +#line 534 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_MODIFIED_CONTEXT_HAS; +#line 534 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3945 "SearchBoolean.c" + } else { + const gchar* _tmp1_ = NULL; +#line 536 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = str; +#line 536 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp1_, "HAS_NO") == 0) { +#line 537 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_MODIFIED_CONTEXT_HAS_NO; +#line 537 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3956 "SearchBoolean.c" + } else { + const gchar* _tmp2_ = NULL; +#line 540 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = str; +#line 540 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:540: unrecognized modified search context name: %s", _tmp2_); +#line 3963 "SearchBoolean.c" + } + } +} + + +GType search_condition_modified_context_get_type (void) { + static volatile gsize search_condition_modified_context_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_modified_context_type_id__volatile)) { + static const GEnumValue values[] = {{SEARCH_CONDITION_MODIFIED_CONTEXT_HAS, "SEARCH_CONDITION_MODIFIED_CONTEXT_HAS", "has"}, {SEARCH_CONDITION_MODIFIED_CONTEXT_HAS_NO, "SEARCH_CONDITION_MODIFIED_CONTEXT_HAS_NO", "has-no"}, {0, NULL, NULL}}; + GType search_condition_modified_context_type_id; + search_condition_modified_context_type_id = g_enum_register_static ("SearchConditionModifiedContext", values); + g_once_init_leave (&search_condition_modified_context_type_id__volatile, search_condition_modified_context_type_id); + } + return search_condition_modified_context_type_id__volatile; +} + + +gchar* search_condition_modified_state_to_string (SearchConditionModifiedState self) { + gchar* result = NULL; +#line 550 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 550 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MODIFIED_STATE_MODIFIED: +#line 3987 "SearchBoolean.c" + { + gchar* _tmp0_ = NULL; +#line 552 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup ("MODIFIED"); +#line 552 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 552 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 3996 "SearchBoolean.c" + } +#line 550 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MODIFIED_STATE_INTERNAL_CHANGES: +#line 4000 "SearchBoolean.c" + { + gchar* _tmp1_ = NULL; +#line 555 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup ("INTERNAL_CHANGES"); +#line 555 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 555 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4009 "SearchBoolean.c" + } +#line 550 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_MODIFIED_STATE_EXTERNAL_CHANGES: +#line 4013 "SearchBoolean.c" + { + gchar* _tmp2_ = NULL; +#line 558 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = g_strdup ("EXTERNAL_CHANGES"); +#line 558 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 558 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4022 "SearchBoolean.c" + } + default: + { +#line 561 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:561: unrecognized modified search state enumeration" \ +" value"); +#line 4028 "SearchBoolean.c" + } + } +} + + +SearchConditionModifiedState search_condition_modified_state_from_string (const gchar* str) { + SearchConditionModifiedState result = 0; + const gchar* _tmp0_ = NULL; +#line 565 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (str != NULL, 0); +#line 566 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = str; +#line 566 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp0_, "MODIFIED") == 0) { +#line 567 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_MODIFIED_STATE_MODIFIED; +#line 567 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4047 "SearchBoolean.c" + } else { + const gchar* _tmp1_ = NULL; +#line 569 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = str; +#line 569 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp1_, "INTERNAL_CHANGES") == 0) { +#line 570 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_MODIFIED_STATE_INTERNAL_CHANGES; +#line 570 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4058 "SearchBoolean.c" + } else { + const gchar* _tmp2_ = NULL; +#line 572 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = str; +#line 572 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp2_, "EXTERNAL_CHANGES") == 0) { +#line 573 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_MODIFIED_STATE_EXTERNAL_CHANGES; +#line 573 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4069 "SearchBoolean.c" + } else { + const gchar* _tmp3_ = NULL; +#line 576 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = str; +#line 576 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:576: unrecognized modified search state name: %s", _tmp3_); +#line 4076 "SearchBoolean.c" + } + } + } +} + + +GType search_condition_modified_state_get_type (void) { + static volatile gsize search_condition_modified_state_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_modified_state_type_id__volatile)) { + static const GEnumValue values[] = {{SEARCH_CONDITION_MODIFIED_STATE_MODIFIED, "SEARCH_CONDITION_MODIFIED_STATE_MODIFIED", "modified"}, {SEARCH_CONDITION_MODIFIED_STATE_INTERNAL_CHANGES, "SEARCH_CONDITION_MODIFIED_STATE_INTERNAL_CHANGES", "internal-changes"}, {SEARCH_CONDITION_MODIFIED_STATE_EXTERNAL_CHANGES, "SEARCH_CONDITION_MODIFIED_STATE_EXTERNAL_CHANGES", "external-changes"}, {0, NULL, NULL}}; + GType search_condition_modified_state_type_id; + search_condition_modified_state_type_id = g_enum_register_static ("SearchConditionModifiedState", values); + g_once_init_leave (&search_condition_modified_state_type_id__volatile, search_condition_modified_state_type_id); + } + return search_condition_modified_state_type_id__volatile; +} + + +SearchConditionModified* search_condition_modified_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionModifiedContext context, SearchConditionModifiedState state) { + SearchConditionModified* self = NULL; + SearchConditionSearchType _tmp0_ = 0; + SearchConditionModifiedContext _tmp1_ = 0; + SearchConditionModifiedState _tmp2_ = 0; +#line 586 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = (SearchConditionModified*) search_condition_construct (object_type); +#line 587 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = search_type; +#line 587 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_set_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition), _tmp0_); +#line 588 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = context; +#line 588 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_modified_set_context (self, _tmp1_); +#line 589 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = state; +#line 589 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_modified_set_state (self, _tmp2_); +#line 586 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self; +#line 4116 "SearchBoolean.c" +} + + +SearchConditionModified* search_condition_modified_new (SearchConditionSearchType search_type, SearchConditionModifiedContext context, SearchConditionModifiedState state) { +#line 586 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return search_condition_modified_construct (TYPE_SEARCH_CONDITION_MODIFIED, search_type, context, state); +#line 4123 "SearchBoolean.c" +} + + +static gboolean search_condition_modified_real_predicate (SearchCondition* base, MediaSource* source) { + SearchConditionModified * self; + gboolean result = FALSE; + Photo* photo = NULL; + MediaSource* _tmp0_ = NULL; + Photo* _tmp1_ = NULL; + Photo* _tmp2_ = NULL; + gboolean match = FALSE; + SearchConditionModifiedState _tmp3_ = 0; + gboolean _tmp15_ = FALSE; +#line 593 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SEARCH_CONDITION_MODIFIED, SearchConditionModified); +#line 593 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_MEDIA_SOURCE (source), FALSE); +#line 595 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = source; +#line 595 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, TYPE_PHOTO) ? ((Photo*) _tmp0_) : NULL); +#line 595 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + photo = _tmp1_; +#line 596 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = photo; +#line 596 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp2_ == NULL) { +#line 597 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = FALSE; +#line 597 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (photo); +#line 597 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4157 "SearchBoolean.c" + } +#line 600 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = self->priv->_state; +#line 600 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp3_ == SEARCH_CONDITION_MODIFIED_STATE_MODIFIED) { +#line 4163 "SearchBoolean.c" + gboolean _tmp4_ = FALSE; + Photo* _tmp5_ = NULL; + gboolean _tmp6_ = FALSE; +#line 601 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = photo; +#line 601 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = photo_has_transformations (_tmp5_); +#line 601 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp6_) { +#line 601 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = TRUE; +#line 4175 "SearchBoolean.c" + } else { + Photo* _tmp7_ = NULL; + gboolean _tmp8_ = FALSE; +#line 601 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = photo; +#line 601 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = photo_has_editable (_tmp7_); +#line 601 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = _tmp8_; +#line 4185 "SearchBoolean.c" + } +#line 601 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + match = _tmp4_; +#line 4189 "SearchBoolean.c" + } else { + SearchConditionModifiedState _tmp9_ = 0; +#line 602 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = self->priv->_state; +#line 602 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp9_ == SEARCH_CONDITION_MODIFIED_STATE_INTERNAL_CHANGES) { +#line 4196 "SearchBoolean.c" + Photo* _tmp10_ = NULL; + gboolean _tmp11_ = FALSE; +#line 603 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = photo; +#line 603 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = photo_has_transformations (_tmp10_); +#line 603 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + match = _tmp11_; +#line 4205 "SearchBoolean.c" + } else { + SearchConditionModifiedState _tmp12_ = 0; +#line 604 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = self->priv->_state; +#line 604 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp12_ == SEARCH_CONDITION_MODIFIED_STATE_EXTERNAL_CHANGES) { +#line 4212 "SearchBoolean.c" + Photo* _tmp13_ = NULL; + gboolean _tmp14_ = FALSE; +#line 605 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp13_ = photo; +#line 605 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp14_ = photo_has_editable (_tmp13_); +#line 605 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + match = _tmp14_; +#line 4221 "SearchBoolean.c" + } else { +#line 607 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:607: unrecognized modified search state"); +#line 4225 "SearchBoolean.c" + } + } + } +#line 609 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp15_ = match; +#line 609 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp15_) { +#line 4233 "SearchBoolean.c" + SearchConditionModifiedContext _tmp16_ = 0; +#line 610 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp16_ = self->priv->_context; +#line 610 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp16_ == SEARCH_CONDITION_MODIFIED_CONTEXT_HAS; +#line 610 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (photo); +#line 610 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4243 "SearchBoolean.c" + } else { + SearchConditionModifiedContext _tmp17_ = 0; +#line 612 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp17_ = self->priv->_context; +#line 612 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp17_ == SEARCH_CONDITION_MODIFIED_CONTEXT_HAS_NO; +#line 612 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (photo); +#line 612 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4254 "SearchBoolean.c" + } +#line 593 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (photo); +#line 4258 "SearchBoolean.c" +} + + +SearchConditionModifiedState search_condition_modified_get_state (SearchConditionModified* self) { + SearchConditionModifiedState result; + SearchConditionModifiedState _tmp0_ = 0; +#line 581 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_MODIFIED (self), 0); +#line 581 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_state; +#line 581 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 581 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4273 "SearchBoolean.c" +} + + +static void search_condition_modified_set_state (SearchConditionModified* self, SearchConditionModifiedState value) { + SearchConditionModifiedState _tmp0_ = 0; +#line 581 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_MODIFIED (self)); +#line 581 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 581 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_state = _tmp0_; +#line 4285 "SearchBoolean.c" +} + + +SearchConditionModifiedContext search_condition_modified_get_context (SearchConditionModified* self) { + SearchConditionModifiedContext result; + SearchConditionModifiedContext _tmp0_ = 0; +#line 584 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_MODIFIED (self), 0); +#line 584 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_context; +#line 584 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 584 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4300 "SearchBoolean.c" +} + + +static void search_condition_modified_set_context (SearchConditionModified* self, SearchConditionModifiedContext value) { + SearchConditionModifiedContext _tmp0_ = 0; +#line 584 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_MODIFIED (self)); +#line 584 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 584 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_context = _tmp0_; +#line 4312 "SearchBoolean.c" +} + + +static void search_condition_modified_class_init (SearchConditionModifiedClass * klass) { +#line 513 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_modified_parent_class = g_type_class_peek_parent (klass); +#line 513 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->finalize = search_condition_modified_finalize; +#line 513 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_class_add_private (klass, sizeof (SearchConditionModifiedPrivate)); +#line 513 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->predicate = search_condition_modified_real_predicate; +#line 4325 "SearchBoolean.c" +} + + +static void search_condition_modified_instance_init (SearchConditionModified * self) { +#line 513 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv = SEARCH_CONDITION_MODIFIED_GET_PRIVATE (self); +#line 4332 "SearchBoolean.c" +} + + +static void search_condition_modified_finalize (SearchCondition* obj) { + SearchConditionModified * self; +#line 513 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SEARCH_CONDITION_MODIFIED, SearchConditionModified); +#line 513 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + SEARCH_CONDITION_CLASS (search_condition_modified_parent_class)->finalize (obj); +#line 4342 "SearchBoolean.c" +} + + +GType search_condition_modified_get_type (void) { + static volatile gsize search_condition_modified_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_modified_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SearchConditionModifiedClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) search_condition_modified_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SearchConditionModified), 0, (GInstanceInitFunc) search_condition_modified_instance_init, NULL }; + GType search_condition_modified_type_id; + search_condition_modified_type_id = g_type_register_static (TYPE_SEARCH_CONDITION, "SearchConditionModified", &g_define_type_info, 0); + g_once_init_leave (&search_condition_modified_type_id__volatile, search_condition_modified_type_id); + } + return search_condition_modified_type_id__volatile; +} + + +gchar* search_condition_rating_context_to_string (SearchConditionRatingContext self) { + gchar* result = NULL; +#line 625 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 625 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_RATING_CONTEXT_AND_HIGHER: +#line 4364 "SearchBoolean.c" + { + gchar* _tmp0_ = NULL; +#line 627 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup ("AND_HIGHER"); +#line 627 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 627 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4373 "SearchBoolean.c" + } +#line 625 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_RATING_CONTEXT_ONLY: +#line 4377 "SearchBoolean.c" + { + gchar* _tmp1_ = NULL; +#line 630 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup ("ONLY"); +#line 630 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 630 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4386 "SearchBoolean.c" + } +#line 625 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_RATING_CONTEXT_AND_LOWER: +#line 4390 "SearchBoolean.c" + { + gchar* _tmp2_ = NULL; +#line 633 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = g_strdup ("AND_LOWER"); +#line 633 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 633 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4399 "SearchBoolean.c" + } + default: + { +#line 636 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:636: unrecognized rating search context enumeration" \ +" value"); +#line 4405 "SearchBoolean.c" + } + } +} + + +SearchConditionRatingContext search_condition_rating_context_from_string (const gchar* str) { + SearchConditionRatingContext result = 0; + const gchar* _tmp0_ = NULL; +#line 640 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (str != NULL, 0); +#line 641 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = str; +#line 641 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp0_, "AND_HIGHER") == 0) { +#line 642 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_RATING_CONTEXT_AND_HIGHER; +#line 642 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4424 "SearchBoolean.c" + } else { + const gchar* _tmp1_ = NULL; +#line 644 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = str; +#line 644 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp1_, "ONLY") == 0) { +#line 645 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_RATING_CONTEXT_ONLY; +#line 645 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4435 "SearchBoolean.c" + } else { + const gchar* _tmp2_ = NULL; +#line 647 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = str; +#line 647 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp2_, "AND_LOWER") == 0) { +#line 648 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_RATING_CONTEXT_AND_LOWER; +#line 648 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4446 "SearchBoolean.c" + } else { + const gchar* _tmp3_ = NULL; +#line 651 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = str; +#line 651 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:651: unrecognized rating search context name: %s", _tmp3_); +#line 4453 "SearchBoolean.c" + } + } + } +} + + +GType search_condition_rating_context_get_type (void) { + static volatile gsize search_condition_rating_context_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_rating_context_type_id__volatile)) { + static const GEnumValue values[] = {{SEARCH_CONDITION_RATING_CONTEXT_AND_HIGHER, "SEARCH_CONDITION_RATING_CONTEXT_AND_HIGHER", "and-higher"}, {SEARCH_CONDITION_RATING_CONTEXT_ONLY, "SEARCH_CONDITION_RATING_CONTEXT_ONLY", "only"}, {SEARCH_CONDITION_RATING_CONTEXT_AND_LOWER, "SEARCH_CONDITION_RATING_CONTEXT_AND_LOWER", "and-lower"}, {0, NULL, NULL}}; + GType search_condition_rating_context_type_id; + search_condition_rating_context_type_id = g_enum_register_static ("SearchConditionRatingContext", values); + g_once_init_leave (&search_condition_rating_context_type_id__volatile, search_condition_rating_context_type_id); + } + return search_condition_rating_context_type_id__volatile; +} + + +SearchConditionRating* search_condition_rating_construct (GType object_type, SearchConditionSearchType search_type, Rating rating, SearchConditionRatingContext context) { + SearchConditionRating* self = NULL; + SearchConditionSearchType _tmp0_ = 0; + Rating _tmp1_ = 0; + SearchConditionRatingContext _tmp2_ = 0; +#line 661 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = (SearchConditionRating*) search_condition_construct (object_type); +#line 662 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = search_type; +#line 662 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_set_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition), _tmp0_); +#line 663 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = rating; +#line 663 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_rating_set_rating (self, _tmp1_); +#line 664 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = context; +#line 664 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_rating_set_context (self, _tmp2_); +#line 661 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self; +#line 4493 "SearchBoolean.c" +} + + +SearchConditionRating* search_condition_rating_new (SearchConditionSearchType search_type, Rating rating, SearchConditionRatingContext context) { +#line 661 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return search_condition_rating_construct (TYPE_SEARCH_CONDITION_RATING, search_type, rating, context); +#line 4500 "SearchBoolean.c" +} + + +static gboolean search_condition_rating_real_predicate (SearchCondition* base, MediaSource* source) { + SearchConditionRating * self; + gboolean result = FALSE; + Rating source_rating = 0; + MediaSource* _tmp0_ = NULL; + Rating _tmp1_ = 0; + SearchConditionRatingContext _tmp2_ = 0; +#line 668 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SEARCH_CONDITION_RATING, SearchConditionRating); +#line 668 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_MEDIA_SOURCE (source), FALSE); +#line 669 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = source; +#line 669 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = media_source_get_rating (_tmp0_); +#line 669 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + source_rating = _tmp1_; +#line 670 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = self->priv->_context; +#line 670 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp2_ == SEARCH_CONDITION_RATING_CONTEXT_AND_HIGHER) { +#line 4525 "SearchBoolean.c" + Rating _tmp3_ = 0; + Rating _tmp4_ = 0; +#line 671 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = source_rating; +#line 671 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = self->priv->_rating; +#line 671 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp3_ >= _tmp4_; +#line 671 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4536 "SearchBoolean.c" + } else { + SearchConditionRatingContext _tmp5_ = 0; +#line 672 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = self->priv->_context; +#line 672 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp5_ == SEARCH_CONDITION_RATING_CONTEXT_ONLY) { +#line 4543 "SearchBoolean.c" + Rating _tmp6_ = 0; + Rating _tmp7_ = 0; +#line 673 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = source_rating; +#line 673 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = self->priv->_rating; +#line 673 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp6_ == _tmp7_; +#line 673 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4554 "SearchBoolean.c" + } else { + SearchConditionRatingContext _tmp8_ = 0; +#line 674 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = self->priv->_context; +#line 674 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp8_ == SEARCH_CONDITION_RATING_CONTEXT_AND_LOWER) { +#line 4561 "SearchBoolean.c" + Rating _tmp9_ = 0; + Rating _tmp10_ = 0; +#line 675 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = source_rating; +#line 675 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = self->priv->_rating; +#line 675 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp9_ <= _tmp10_; +#line 675 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4572 "SearchBoolean.c" + } else { +#line 677 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:677: unknown rating search context"); +#line 4576 "SearchBoolean.c" + } + } + } +} + + +Rating search_condition_rating_get_rating (SearchConditionRating* self) { + Rating result; + Rating _tmp0_ = 0; +#line 656 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_RATING (self), 0); +#line 656 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_rating; +#line 656 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 656 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4594 "SearchBoolean.c" +} + + +static void search_condition_rating_set_rating (SearchConditionRating* self, Rating value) { + Rating _tmp0_ = 0; +#line 656 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_RATING (self)); +#line 656 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 656 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_rating = _tmp0_; +#line 4606 "SearchBoolean.c" +} + + +SearchConditionRatingContext search_condition_rating_get_context (SearchConditionRating* self) { + SearchConditionRatingContext result; + SearchConditionRatingContext _tmp0_ = 0; +#line 659 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_RATING (self), 0); +#line 659 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_context; +#line 659 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 659 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4621 "SearchBoolean.c" +} + + +static void search_condition_rating_set_context (SearchConditionRating* self, SearchConditionRatingContext value) { + SearchConditionRatingContext _tmp0_ = 0; +#line 659 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_RATING (self)); +#line 659 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 659 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_context = _tmp0_; +#line 4633 "SearchBoolean.c" +} + + +static void search_condition_rating_class_init (SearchConditionRatingClass * klass) { +#line 618 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_rating_parent_class = g_type_class_peek_parent (klass); +#line 618 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->finalize = search_condition_rating_finalize; +#line 618 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_class_add_private (klass, sizeof (SearchConditionRatingPrivate)); +#line 618 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->predicate = search_condition_rating_real_predicate; +#line 4646 "SearchBoolean.c" +} + + +static void search_condition_rating_instance_init (SearchConditionRating * self) { +#line 618 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv = SEARCH_CONDITION_RATING_GET_PRIVATE (self); +#line 4653 "SearchBoolean.c" +} + + +static void search_condition_rating_finalize (SearchCondition* obj) { + SearchConditionRating * self; +#line 618 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SEARCH_CONDITION_RATING, SearchConditionRating); +#line 618 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + SEARCH_CONDITION_CLASS (search_condition_rating_parent_class)->finalize (obj); +#line 4663 "SearchBoolean.c" +} + + +GType search_condition_rating_get_type (void) { + static volatile gsize search_condition_rating_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_rating_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SearchConditionRatingClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) search_condition_rating_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SearchConditionRating), 0, (GInstanceInitFunc) search_condition_rating_instance_init, NULL }; + GType search_condition_rating_type_id; + search_condition_rating_type_id = g_type_register_static (TYPE_SEARCH_CONDITION, "SearchConditionRating", &g_define_type_info, 0); + g_once_init_leave (&search_condition_rating_type_id__volatile, search_condition_rating_type_id); + } + return search_condition_rating_type_id__volatile; +} + + +gchar* search_condition_date_context_to_string (SearchConditionDateContext self) { + gchar* result = NULL; +#line 692 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (self) { +#line 692 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_DATE_CONTEXT_EXACT: +#line 4685 "SearchBoolean.c" + { + gchar* _tmp0_ = NULL; +#line 694 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup ("EXACT"); +#line 694 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 694 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4694 "SearchBoolean.c" + } +#line 692 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_DATE_CONTEXT_AFTER: +#line 4698 "SearchBoolean.c" + { + gchar* _tmp1_ = NULL; +#line 697 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = g_strdup ("AFTER"); +#line 697 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 697 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4707 "SearchBoolean.c" + } +#line 692 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_DATE_CONTEXT_BEFORE: +#line 4711 "SearchBoolean.c" + { + gchar* _tmp2_ = NULL; +#line 700 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = g_strdup ("BEFORE"); +#line 700 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 700 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4720 "SearchBoolean.c" + } +#line 692 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_DATE_CONTEXT_BETWEEN: +#line 4724 "SearchBoolean.c" + { + gchar* _tmp3_ = NULL; +#line 703 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = g_strdup ("BETWEEN"); +#line 703 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp3_; +#line 703 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4733 "SearchBoolean.c" + } +#line 692 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_DATE_CONTEXT_IS_NOT_SET: +#line 4737 "SearchBoolean.c" + { + gchar* _tmp4_ = NULL; +#line 706 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = g_strdup ("IS_NOT_SET"); +#line 706 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp4_; +#line 706 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4746 "SearchBoolean.c" + } + default: + { +#line 709 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:709: unrecognized date search context enumeration v" \ +"alue"); +#line 4752 "SearchBoolean.c" + } + } +} + + +SearchConditionDateContext search_condition_date_context_from_string (const gchar* str) { + SearchConditionDateContext result = 0; + const gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; +#line 713 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (str != NULL, 0); +#line 714 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = str; +#line 714 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp0_, "EXACT") == 0) { +#line 715 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_DATE_CONTEXT_EXACT; +#line 715 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4772 "SearchBoolean.c" + } +#line 717 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = str; +#line 717 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp1_, "AFTER") == 0) { +#line 718 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_DATE_CONTEXT_AFTER; +#line 718 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4782 "SearchBoolean.c" + } else { + const gchar* _tmp2_ = NULL; +#line 720 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = str; +#line 720 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp2_, "BEFORE") == 0) { +#line 721 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_DATE_CONTEXT_BEFORE; +#line 721 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4793 "SearchBoolean.c" + } else { + const gchar* _tmp3_ = NULL; +#line 723 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = str; +#line 723 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp3_, "BETWEEN") == 0) { +#line 724 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_DATE_CONTEXT_BETWEEN; +#line 724 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4804 "SearchBoolean.c" + } else { + const gchar* _tmp4_ = NULL; +#line 726 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = str; +#line 726 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_strcmp0 (_tmp4_, "IS_NOT_SET") == 0) { +#line 727 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = SEARCH_CONDITION_DATE_CONTEXT_IS_NOT_SET; +#line 727 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4815 "SearchBoolean.c" + } else { + const gchar* _tmp5_ = NULL; +#line 730 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = str; +#line 730 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:730: unrecognized date search context name: %s", _tmp5_); +#line 4822 "SearchBoolean.c" + } + } + } + } +} + + +GType search_condition_date_context_get_type (void) { + static volatile gsize search_condition_date_context_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_date_context_type_id__volatile)) { + static const GEnumValue values[] = {{SEARCH_CONDITION_DATE_CONTEXT_EXACT, "SEARCH_CONDITION_DATE_CONTEXT_EXACT", "exact"}, {SEARCH_CONDITION_DATE_CONTEXT_AFTER, "SEARCH_CONDITION_DATE_CONTEXT_AFTER", "after"}, {SEARCH_CONDITION_DATE_CONTEXT_BEFORE, "SEARCH_CONDITION_DATE_CONTEXT_BEFORE", "before"}, {SEARCH_CONDITION_DATE_CONTEXT_BETWEEN, "SEARCH_CONDITION_DATE_CONTEXT_BETWEEN", "between"}, {SEARCH_CONDITION_DATE_CONTEXT_IS_NOT_SET, "SEARCH_CONDITION_DATE_CONTEXT_IS_NOT_SET", "is-not-set"}, {0, NULL, NULL}}; + GType search_condition_date_context_type_id; + search_condition_date_context_type_id = g_enum_register_static ("SearchConditionDateContext", values); + g_once_init_leave (&search_condition_date_context_type_id__volatile, search_condition_date_context_type_id); + } + return search_condition_date_context_type_id__volatile; +} + + +SearchConditionDate* search_condition_date_construct (GType object_type, SearchConditionSearchType search_type, SearchConditionDateContext context, GDateTime* date_one, GDateTime* date_two) { + SearchConditionDate* self = NULL; + SearchConditionSearchType _tmp0_ = 0; + SearchConditionDateContext _tmp1_ = 0; + gboolean _tmp2_ = FALSE; + SearchConditionDateContext _tmp3_ = 0; +#line 741 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (date_one != NULL, NULL); +#line 741 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (date_two != NULL, NULL); +#line 741 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = (SearchConditionDate*) search_condition_construct (object_type); +#line 743 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = search_type; +#line 743 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_set_search_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_SEARCH_CONDITION, SearchCondition), _tmp0_); +#line 744 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = context; +#line 744 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_date_set_context (self, _tmp1_); +#line 745 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = context; +#line 745 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp3_ != SEARCH_CONDITION_DATE_CONTEXT_BETWEEN) { +#line 745 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = TRUE; +#line 4868 "SearchBoolean.c" + } else { + GDateTime* _tmp4_ = NULL; + GDateTime* _tmp5_ = NULL; + gint _tmp6_ = 0; +#line 745 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = date_two; +#line 745 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = date_one; +#line 745 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = g_date_time_compare (_tmp4_, _tmp5_); +#line 745 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _tmp6_ >= 1; +#line 4881 "SearchBoolean.c" + } +#line 745 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp2_) { +#line 4885 "SearchBoolean.c" + GDateTime* _tmp7_ = NULL; + GDateTime* _tmp8_ = NULL; +#line 746 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = date_one; +#line 746 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_date_set_date_one (self, _tmp7_); +#line 747 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = date_two; +#line 747 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_date_set_date_two (self, _tmp8_); +#line 4896 "SearchBoolean.c" + } else { + GDateTime* _tmp9_ = NULL; + GDateTime* _tmp10_ = NULL; +#line 749 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = date_two; +#line 749 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_date_set_date_one (self, _tmp9_); +#line 750 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = date_one; +#line 750 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_date_set_date_two (self, _tmp10_); +#line 4908 "SearchBoolean.c" + } +#line 741 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self; +#line 4912 "SearchBoolean.c" +} + + +SearchConditionDate* search_condition_date_new (SearchConditionSearchType search_type, SearchConditionDateContext context, GDateTime* date_one, GDateTime* date_two) { +#line 741 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return search_condition_date_construct (TYPE_SEARCH_CONDITION_DATE, search_type, context, date_one, date_two); +#line 4919 "SearchBoolean.c" +} + + +static gboolean search_condition_date_real_predicate (SearchCondition* base, MediaSource* source) { + SearchConditionDate * self; + gboolean result = FALSE; + time_t exposure_time = 0; + MediaSource* _tmp0_ = NULL; + time_t _tmp1_ = 0; + time_t _tmp2_ = 0; + GDateTime* dt = NULL; + time_t _tmp4_ = 0; + GDateTime* _tmp5_ = NULL; + SearchConditionDateContext _tmp6_ = 0; +#line 756 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SEARCH_CONDITION_DATE, SearchConditionDate); +#line 756 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_MEDIA_SOURCE (source), FALSE); +#line 757 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = source; +#line 757 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = media_source_get_exposure_time (_tmp0_); +#line 757 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + exposure_time = _tmp1_; +#line 758 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = exposure_time; +#line 758 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp2_ == ((time_t) 0)) { +#line 4948 "SearchBoolean.c" + SearchConditionDateContext _tmp3_ = 0; +#line 759 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = self->priv->_context; +#line 759 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp3_ == SEARCH_CONDITION_DATE_CONTEXT_IS_NOT_SET; +#line 759 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 4956 "SearchBoolean.c" + } +#line 761 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = exposure_time; +#line 761 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = g_date_time_new_from_unix_local ((gint64) _tmp4_); +#line 761 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + dt = _tmp5_; +#line 762 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = self->priv->_context; +#line 762 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + switch (_tmp6_) { +#line 762 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_DATE_CONTEXT_EXACT: +#line 4970 "SearchBoolean.c" + { + GDateTime* second = NULL; + GDateTime* _tmp7_ = NULL; + GDateTime* _tmp8_ = NULL; + gboolean _tmp9_ = FALSE; + GDateTime* _tmp10_ = NULL; + GDateTime* _tmp11_ = NULL; + gint _tmp12_ = 0; +#line 764 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = self->priv->_date_one; +#line 764 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = g_date_time_add_days (_tmp7_, 1); +#line 764 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + second = _tmp8_; +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = dt; +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = self->priv->_date_one; +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = g_date_time_compare (_tmp10_, _tmp11_); +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp12_ >= 0) { +#line 4993 "SearchBoolean.c" + GDateTime* _tmp13_ = NULL; + GDateTime* _tmp14_ = NULL; + gint _tmp15_ = 0; +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp13_ = dt; +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp14_ = second; +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp15_ = g_date_time_compare (_tmp13_, _tmp14_); +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = _tmp15_ < 0; +#line 5005 "SearchBoolean.c" + } else { +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = FALSE; +#line 5009 "SearchBoolean.c" + } +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp9_; +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (second); +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (dt); +#line 765 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5019 "SearchBoolean.c" + } +#line 762 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_DATE_CONTEXT_AFTER: +#line 5023 "SearchBoolean.c" + { + GDateTime* _tmp16_ = NULL; + GDateTime* _tmp17_ = NULL; + gint _tmp18_ = 0; +#line 768 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp16_ = dt; +#line 768 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp17_ = self->priv->_date_one; +#line 768 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp18_ = g_date_time_compare (_tmp16_, _tmp17_); +#line 768 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp18_ >= 0; +#line 768 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (dt); +#line 768 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5040 "SearchBoolean.c" + } +#line 762 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_DATE_CONTEXT_BEFORE: +#line 5044 "SearchBoolean.c" + { + GDateTime* _tmp19_ = NULL; + GDateTime* _tmp20_ = NULL; + gint _tmp21_ = 0; +#line 771 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp19_ = dt; +#line 771 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp20_ = self->priv->_date_one; +#line 771 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp21_ = g_date_time_compare (_tmp19_, _tmp20_); +#line 771 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp21_ <= 0; +#line 771 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (dt); +#line 771 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5061 "SearchBoolean.c" + } +#line 762 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_DATE_CONTEXT_BETWEEN: +#line 5065 "SearchBoolean.c" + { + GDateTime* second = NULL; + GDateTime* _tmp22_ = NULL; + GDateTime* _tmp23_ = NULL; + gboolean _tmp24_ = FALSE; + GDateTime* _tmp25_ = NULL; + GDateTime* _tmp26_ = NULL; + gint _tmp27_ = 0; +#line 774 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp22_ = self->priv->_date_two; +#line 774 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp23_ = g_date_time_add_days (_tmp22_, 1); +#line 774 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + second = _tmp23_; +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp25_ = dt; +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp26_ = self->priv->_date_one; +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp27_ = g_date_time_compare (_tmp25_, _tmp26_); +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp27_ >= 0) { +#line 5088 "SearchBoolean.c" + GDateTime* _tmp28_ = NULL; + GDateTime* _tmp29_ = NULL; + gint _tmp30_ = 0; +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp28_ = dt; +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp29_ = second; +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp30_ = g_date_time_compare (_tmp28_, _tmp29_); +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp24_ = _tmp30_ < 0; +#line 5100 "SearchBoolean.c" + } else { +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp24_ = FALSE; +#line 5104 "SearchBoolean.c" + } +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp24_; +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (second); +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (dt); +#line 775 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5114 "SearchBoolean.c" + } +#line 762 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + case SEARCH_CONDITION_DATE_CONTEXT_IS_NOT_SET: +#line 5118 "SearchBoolean.c" + { +#line 778 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = FALSE; +#line 778 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (dt); +#line 778 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5126 "SearchBoolean.c" + } + default: + { +#line 781 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_error ("SearchBoolean.vala:781: unrecognized date search context enumeration v" \ +"alue"); +#line 5132 "SearchBoolean.c" + } + } +#line 756 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (dt); +#line 5137 "SearchBoolean.c" +} + + +GDateTime* search_condition_date_get_date_one (SearchConditionDate* self) { + GDateTime* result; + GDateTime* _tmp0_ = NULL; +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_DATE (self), NULL); +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_date_one; +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5152 "SearchBoolean.c" +} + + +static gpointer _g_date_time_ref0 (gpointer self) { +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self ? g_date_time_ref (self) : NULL; +#line 5159 "SearchBoolean.c" +} + + +static void search_condition_date_set_date_one (SearchConditionDate* self, GDateTime* value) { + GDateTime* _tmp0_ = NULL; + GDateTime* _tmp1_ = NULL; +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_DATE (self)); +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _g_date_time_ref0 (_tmp0_); +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (self->priv->_date_one); +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_date_one = _tmp1_; +#line 5176 "SearchBoolean.c" +} + + +GDateTime* search_condition_date_get_date_two (SearchConditionDate* self) { + GDateTime* result; + GDateTime* _tmp0_ = NULL; +#line 736 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_DATE (self), NULL); +#line 736 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_date_two; +#line 736 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 736 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5191 "SearchBoolean.c" +} + + +static void search_condition_date_set_date_two (SearchConditionDate* self, GDateTime* value) { + GDateTime* _tmp0_ = NULL; + GDateTime* _tmp1_ = NULL; +#line 736 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_DATE (self)); +#line 736 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 736 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _g_date_time_ref0 (_tmp0_); +#line 736 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (self->priv->_date_two); +#line 736 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_date_two = _tmp1_; +#line 5208 "SearchBoolean.c" +} + + +SearchConditionDateContext search_condition_date_get_context (SearchConditionDate* self) { + SearchConditionDateContext result; + SearchConditionDateContext _tmp0_ = 0; +#line 739 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SEARCH_CONDITION_DATE (self), 0); +#line 739 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->_context; +#line 739 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 739 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5223 "SearchBoolean.c" +} + + +static void search_condition_date_set_context (SearchConditionDate* self, SearchConditionDateContext value) { + SearchConditionDateContext _tmp0_ = 0; +#line 739 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SEARCH_CONDITION_DATE (self)); +#line 739 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = value; +#line 739 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->_context = _tmp0_; +#line 5235 "SearchBoolean.c" +} + + +static void search_condition_date_class_init (SearchConditionDateClass * klass) { +#line 683 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search_condition_date_parent_class = g_type_class_peek_parent (klass); +#line 683 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->finalize = search_condition_date_finalize; +#line 683 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_class_add_private (klass, sizeof (SearchConditionDatePrivate)); +#line 683 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SearchConditionClass *) klass)->predicate = search_condition_date_real_predicate; +#line 5248 "SearchBoolean.c" +} + + +static void search_condition_date_instance_init (SearchConditionDate * self) { +#line 683 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv = SEARCH_CONDITION_DATE_GET_PRIVATE (self); +#line 5255 "SearchBoolean.c" +} + + +static void search_condition_date_finalize (SearchCondition* obj) { + SearchConditionDate * self; +#line 683 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SEARCH_CONDITION_DATE, SearchConditionDate); +#line 735 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (self->priv->_date_one); +#line 736 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_date_time_unref0 (self->priv->_date_two); +#line 683 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + SEARCH_CONDITION_CLASS (search_condition_date_parent_class)->finalize (obj); +#line 5269 "SearchBoolean.c" +} + + +GType search_condition_date_get_type (void) { + static volatile gsize search_condition_date_type_id__volatile = 0; + if (g_once_init_enter (&search_condition_date_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SearchConditionDateClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) search_condition_date_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SearchConditionDate), 0, (GInstanceInitFunc) search_condition_date_instance_init, NULL }; + GType search_condition_date_type_id; + search_condition_date_type_id = g_type_register_static (TYPE_SEARCH_CONDITION, "SearchConditionDate", &g_define_type_info, 0); + g_once_init_leave (&search_condition_date_type_id__volatile, search_condition_date_type_id); + } + return search_condition_date_type_id__volatile; +} + + +static gpointer _saved_search_row_ref0 (gpointer self) { +#line 797 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self ? saved_search_row_ref (self) : NULL; +#line 5288 "SearchBoolean.c" +} + + +SavedSearch* saved_search_construct (GType object_type, SavedSearchRow* row, gint64 object_id) { + SavedSearch * self = NULL; + gint64 _tmp0_ = 0LL; + SavedSearchRow* _tmp1_ = NULL; + SavedSearchRow* _tmp2_ = NULL; +#line 794 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH_ROW (row), NULL); +#line 795 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = object_id; +#line 795 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = (SavedSearch*) data_source_construct (object_type, _tmp0_); +#line 797 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = row; +#line 797 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _saved_search_row_ref0 (_tmp1_); +#line 797 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _saved_search_row_unref0 (self->priv->row); +#line 797 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->row = _tmp2_; +#line 794 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self; +#line 5313 "SearchBoolean.c" +} + + +SavedSearch* saved_search_new (SavedSearchRow* row, gint64 object_id) { +#line 794 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return saved_search_construct (TYPE_SAVED_SEARCH, row, object_id); +#line 5320 "SearchBoolean.c" +} + + +static gchar* saved_search_real_get_name (DataObject* base) { + SavedSearch * self; + gchar* result = NULL; + SavedSearchRow* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; +#line 800 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SAVED_SEARCH, SavedSearch); +#line 801 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->row; +#line 801 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp0_->name; +#line 801 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = g_strdup (_tmp1_); +#line 801 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 801 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5342 "SearchBoolean.c" +} + + +static gchar* saved_search_real_to_string (DataObject* base) { + SavedSearch * self; + gchar* result = NULL; + gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; +#line 804 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SAVED_SEARCH, SavedSearch); +#line 805 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_OBJECT, DataObject)); +#line 805 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp0_; +#line 805 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = g_strconcat ("SavedSearch ", _tmp1_, NULL); +#line 805 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = _tmp2_; +#line 805 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp1_); +#line 805 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp3_; +#line 805 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5369 "SearchBoolean.c" +} + + +static gchar* saved_search_real_get_typename (DataSource* base) { + SavedSearch * self; + gchar* result = NULL; + gchar* _tmp0_ = NULL; +#line 808 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SAVED_SEARCH, SavedSearch); +#line 809 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = g_strdup (SAVED_SEARCH_TYPENAME); +#line 809 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp0_; +#line 809 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5385 "SearchBoolean.c" +} + + +void saved_search_get_saved_search_id (SavedSearch* self, SavedSearchID* result) { + SavedSearchRow* _tmp0_ = NULL; + SavedSearchID _tmp1_ = {0}; +#line 812 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SAVED_SEARCH (self)); +#line 813 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->row; +#line 813 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp0_->search_id; +#line 813 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + *result = _tmp1_; +#line 813 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return; +#line 5402 "SearchBoolean.c" +} + + +static gint64 saved_search_real_get_instance_id (DataSource* base) { + SavedSearch * self; + gint64 result = 0LL; + SavedSearchID _tmp0_ = {0}; + gint64 _tmp1_ = 0LL; +#line 816 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SAVED_SEARCH, SavedSearch); +#line 817 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_get_saved_search_id (self, &_tmp0_); +#line 817 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp0_.id; +#line 817 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 817 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5421 "SearchBoolean.c" +} + + +gint saved_search_compare_names (void* a, void* b) { + gint result = 0; + SavedSearch* asearch = NULL; + void* _tmp0_ = NULL; + SavedSearch* bsearch = NULL; + void* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gint _tmp4_ = 0; +#line 821 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = a; +#line 821 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + asearch = (SavedSearch*) _tmp0_; +#line 822 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = b; +#line 822 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + bsearch = (SavedSearch*) _tmp1_; +#line 824 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (asearch, TYPE_DATA_OBJECT, DataObject)); +#line 824 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (bsearch, TYPE_DATA_OBJECT, DataObject)); +#line 824 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = string_collated_compare (_tmp2_, _tmp3_); +#line 824 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp4_; +#line 824 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5452 "SearchBoolean.c" +} + + +gboolean saved_search_predicate (SavedSearch* self, MediaSource* source) { + gboolean result = FALSE; + gboolean ret = FALSE; + gboolean _tmp0_ = FALSE; + SavedSearchRow* _tmp1_ = NULL; + SearchOperator _tmp2_ = 0; +#line 827 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH (self), FALSE); +#line 827 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_MEDIA_SOURCE (source), FALSE); +#line 829 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = self->priv->row; +#line 829 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _tmp1_->operator; +#line 829 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (SEARCH_OPERATOR_ALL == _tmp2_) { +#line 829 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = TRUE; +#line 5474 "SearchBoolean.c" + } else { + SavedSearchRow* _tmp3_ = NULL; + SearchOperator _tmp4_ = 0; +#line 829 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = self->priv->row; +#line 829 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = _tmp3_->operator; +#line 829 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = SEARCH_OPERATOR_NONE == _tmp4_; +#line 5484 "SearchBoolean.c" + } +#line 829 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp0_) { +#line 830 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = TRUE; +#line 5490 "SearchBoolean.c" + } else { +#line 832 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = FALSE; +#line 5494 "SearchBoolean.c" + } + { + GeeList* _c_list = NULL; + SavedSearchRow* _tmp5_ = NULL; + GeeList* _tmp6_ = NULL; + GeeList* _tmp7_ = NULL; + gint _c_size = 0; + GeeList* _tmp8_ = NULL; + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _c_index = 0; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = self->priv->row; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = _tmp5_->conditions; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = _g_object_ref0 (_tmp6_); +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _c_list = _tmp7_; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = _c_list; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, GEE_TYPE_COLLECTION, GeeCollection)); +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = _tmp9_; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _c_size = _tmp10_; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _c_index = -1; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + while (TRUE) { +#line 5526 "SearchBoolean.c" + gint _tmp11_ = 0; + gint _tmp12_ = 0; + gint _tmp13_ = 0; + SearchCondition* c = NULL; + GeeList* _tmp14_ = NULL; + gint _tmp15_ = 0; + gpointer _tmp16_ = NULL; + SavedSearchRow* _tmp17_ = NULL; + SearchOperator _tmp18_ = 0; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = _c_index; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _c_index = _tmp11_ + 1; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = _c_index; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp13_ = _c_size; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!(_tmp12_ < _tmp13_)) { +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + break; +#line 5548 "SearchBoolean.c" + } +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp14_ = _c_list; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp15_ = _c_index; +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp16_ = gee_list_get (_tmp14_, _tmp15_); +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + c = (SearchCondition*) _tmp16_; +#line 835 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp17_ = self->priv->row; +#line 835 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp18_ = _tmp17_->operator; +#line 835 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (SEARCH_OPERATOR_ALL == _tmp18_) { +#line 5564 "SearchBoolean.c" + gboolean _tmp19_ = FALSE; + SearchCondition* _tmp20_ = NULL; + MediaSource* _tmp21_ = NULL; + gboolean _tmp22_ = FALSE; +#line 836 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp19_ = ret; +#line 836 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp20_ = c; +#line 836 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp21_ = source; +#line 836 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp22_ = search_condition_predicate (_tmp20_, _tmp21_); +#line 836 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = _tmp19_ & _tmp22_; +#line 5579 "SearchBoolean.c" + } else { + SavedSearchRow* _tmp23_ = NULL; + SearchOperator _tmp24_ = 0; +#line 837 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp23_ = self->priv->row; +#line 837 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp24_ = _tmp23_->operator; +#line 837 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (SEARCH_OPERATOR_ANY == _tmp24_) { +#line 5589 "SearchBoolean.c" + gboolean _tmp25_ = FALSE; + SearchCondition* _tmp26_ = NULL; + MediaSource* _tmp27_ = NULL; + gboolean _tmp28_ = FALSE; +#line 838 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp25_ = ret; +#line 838 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp26_ = c; +#line 838 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp27_ = source; +#line 838 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp28_ = search_condition_predicate (_tmp26_, _tmp27_); +#line 838 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = _tmp25_ | _tmp28_; +#line 5604 "SearchBoolean.c" + } else { + SavedSearchRow* _tmp29_ = NULL; + SearchOperator _tmp30_ = 0; +#line 839 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp29_ = self->priv->row; +#line 839 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp30_ = _tmp29_->operator; +#line 839 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (SEARCH_OPERATOR_NONE == _tmp30_) { +#line 5614 "SearchBoolean.c" + gboolean _tmp31_ = FALSE; + SearchCondition* _tmp32_ = NULL; + MediaSource* _tmp33_ = NULL; + gboolean _tmp34_ = FALSE; +#line 840 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp31_ = ret; +#line 840 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp32_ = c; +#line 840 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp33_ = source; +#line 840 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp34_ = search_condition_predicate (_tmp32_, _tmp33_); +#line 840 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ret = _tmp31_ & (!_tmp34_); +#line 5629 "SearchBoolean.c" + } + } + } +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _search_condition_unref0 (c); +#line 5635 "SearchBoolean.c" + } +#line 834 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (_c_list); +#line 5639 "SearchBoolean.c" + } +#line 842 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = ret; +#line 842 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5645 "SearchBoolean.c" +} + + +void saved_search_reconstitute (SavedSearch* self) { + SavedSearchTable* _tmp8_ = NULL; + SavedSearchTable* _tmp9_ = NULL; + gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + GError * _inner_error_ = NULL; +#line 845 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SAVED_SEARCH (self)); +#line 5657 "SearchBoolean.c" + { + SavedSearchID _tmp0_ = {0}; + SavedSearchDBTable* _tmp1_ = NULL; + SavedSearchDBTable* _tmp2_ = NULL; + SavedSearchRow* _tmp3_ = NULL; + SavedSearchID _tmp4_ = {0}; + SavedSearchID _tmp5_ = {0}; + SavedSearchRow* _tmp6_ = NULL; +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = saved_search_db_table_get_instance (); +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _tmp1_; +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = self->priv->row; +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_db_table_create_from_row (_tmp2_, _tmp3_, &_tmp4_, &_inner_error_); +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = _tmp4_; +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _database_table_unref0 (_tmp2_); +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = _tmp5_; +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 5684 "SearchBoolean.c" + goto __catch74_database_error; + } +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + 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 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_clear_error (&_inner_error_); +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return; +#line 5693 "SearchBoolean.c" + } +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = self->priv->row; +#line 847 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_->search_id = _tmp0_; +#line 5699 "SearchBoolean.c" + } + goto __finally74; + __catch74_database_error: + { + GError* err = NULL; + GError* _tmp7_ = NULL; +#line 846 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + err = _inner_error_; +#line 846 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _inner_error_ = NULL; +#line 849 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = err; +#line 849 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + app_window_database_error (_tmp7_); +#line 846 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_error_free0 (err); +#line 5716 "SearchBoolean.c" + } + __finally74: +#line 846 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 846 "/home/jens/Source/shotwell/src/searches/SearchBoolean.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 846 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_clear_error (&_inner_error_); +#line 846 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return; +#line 5727 "SearchBoolean.c" + } +#line 852 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = saved_search_table_get_instance (); +#line 852 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = _tmp8_; +#line 852 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_add_to_map (_tmp9_, self); +#line 852 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _saved_search_table_unref0 (_tmp9_); +#line 853 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = data_object_to_string (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATA_OBJECT, DataObject)); +#line 853 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = _tmp10_; +#line 853 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_debug ("SearchBoolean.vala:853: Reconstituted %s", _tmp11_); +#line 853 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp11_); +#line 5745 "SearchBoolean.c" +} + + +gboolean saved_search_rename (SavedSearch* self, const gchar* new_name) { + gboolean result = FALSE; + const gchar* _tmp0_ = NULL; + gboolean _tmp1_ = FALSE; + SavedSearchTable* _tmp2_ = NULL; + SavedSearchTable* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + gboolean _tmp5_ = FALSE; + gboolean _tmp6_ = FALSE; + SavedSearchTable* _tmp13_ = NULL; + SavedSearchTable* _tmp14_ = NULL; + SavedSearchRow* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + SavedSearchTable* _tmp18_ = NULL; + SavedSearchTable* _tmp19_ = NULL; + LibraryWindow* _tmp20_ = NULL; + LibraryWindow* _tmp21_ = NULL; + GError * _inner_error_ = NULL; +#line 857 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH (self), FALSE); +#line 857 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (new_name != NULL, FALSE); +#line 858 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = new_name; +#line 858 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = is_string_empty (_tmp0_); +#line 858 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp1_) { +#line 859 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = FALSE; +#line 859 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5782 "SearchBoolean.c" + } +#line 861 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = saved_search_table_get_instance (); +#line 861 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = _tmp2_; +#line 861 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = new_name; +#line 861 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = saved_search_table_exists (_tmp3_, _tmp4_); +#line 861 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = _tmp5_; +#line 861 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _saved_search_table_unref0 (_tmp3_); +#line 861 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp6_) { +#line 862 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = FALSE; +#line 862 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5802 "SearchBoolean.c" + } + { + SavedSearchDBTable* _tmp7_ = NULL; + SavedSearchDBTable* _tmp8_ = NULL; + SavedSearchRow* _tmp9_ = NULL; + SavedSearchID _tmp10_ = {0}; + const gchar* _tmp11_ = NULL; +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = saved_search_db_table_get_instance (); +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = _tmp7_; +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = self->priv->row; +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = _tmp9_->search_id; +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = new_name; +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_db_table_rename (_tmp8_, &_tmp10_, _tmp11_, &_inner_error_); +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _database_table_unref0 (_tmp8_); +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 5828 "SearchBoolean.c" + goto __catch75_database_error; + } +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + 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 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_clear_error (&_inner_error_); +#line 865 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return FALSE; +#line 5837 "SearchBoolean.c" + } + } + goto __finally75; + __catch75_database_error: + { + GError* err = NULL; + GError* _tmp12_ = NULL; +#line 864 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + err = _inner_error_; +#line 864 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _inner_error_ = NULL; +#line 867 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = err; +#line 867 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + app_window_database_error (_tmp12_); +#line 868 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = FALSE; +#line 868 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_error_free0 (err); +#line 868 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5859 "SearchBoolean.c" + } + __finally75: +#line 864 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 864 "/home/jens/Source/shotwell/src/searches/SearchBoolean.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 864 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_clear_error (&_inner_error_); +#line 864 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return FALSE; +#line 5870 "SearchBoolean.c" + } +#line 871 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp13_ = saved_search_table_get_instance (); +#line 871 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp14_ = _tmp13_; +#line 871 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_remove_from_map (_tmp14_, self); +#line 871 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _saved_search_table_unref0 (_tmp14_); +#line 872 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp15_ = self->priv->row; +#line 872 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp16_ = new_name; +#line 872 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp17_ = g_strdup (_tmp16_); +#line 872 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp15_->name); +#line 872 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp15_->name = _tmp17_; +#line 873 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp18_ = saved_search_table_get_instance (); +#line 873 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp19_ = _tmp18_; +#line 873 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_add_to_map (_tmp19_, self); +#line 873 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _saved_search_table_unref0 (_tmp19_); +#line 875 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp20_ = library_window_get_app (); +#line 875 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp21_ = _tmp20_; +#line 875 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + library_window_switch_to_saved_search (_tmp21_, self); +#line 875 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (_tmp21_); +#line 876 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = TRUE; +#line 876 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5910 "SearchBoolean.c" +} + + +GeeList* saved_search_get_conditions (SavedSearch* self) { + GeeList* result = NULL; + SavedSearchRow* _tmp0_ = NULL; + GeeList* _tmp1_ = NULL; + GeeList* _tmp2_ = NULL; + GeeList* _tmp3_ = NULL; +#line 879 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH (self), NULL); +#line 880 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->row; +#line 880 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp0_->conditions; +#line 880 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = gee_list_get_read_only_view (_tmp1_); +#line 880 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = _tmp2_; +#line 880 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp3_; +#line 880 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5934 "SearchBoolean.c" +} + + +SearchOperator saved_search_get_operator (SavedSearch* self) { + SearchOperator result = 0; + SavedSearchRow* _tmp0_ = NULL; + SearchOperator _tmp1_ = 0; +#line 883 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH (self), 0); +#line 884 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->row; +#line 884 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp0_->operator; +#line 884 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp1_; +#line 884 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 5952 "SearchBoolean.c" +} + + +static void saved_search_class_init (SavedSearchClass * klass) { +#line 788 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_parent_class = g_type_class_peek_parent (klass); +#line 788 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_class_add_private (klass, sizeof (SavedSearchPrivate)); +#line 788 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((DataObjectClass *) klass)->get_name = saved_search_real_get_name; +#line 788 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((DataObjectClass *) klass)->to_string = saved_search_real_to_string; +#line 788 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((DataSourceClass *) klass)->get_typename = saved_search_real_get_typename; +#line 788 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((DataSourceClass *) klass)->get_instance_id = saved_search_real_get_instance_id; +#line 788 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + G_OBJECT_CLASS (klass)->finalize = saved_search_finalize; +#line 5971 "SearchBoolean.c" +} + + +static void saved_search_instance_init (SavedSearch * self) { +#line 788 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv = SAVED_SEARCH_GET_PRIVATE (self); +#line 5978 "SearchBoolean.c" +} + + +static void saved_search_finalize (GObject* obj) { + SavedSearch * self; +#line 788 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SAVED_SEARCH, SavedSearch); +#line 792 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _saved_search_row_unref0 (self->priv->row); +#line 788 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + G_OBJECT_CLASS (saved_search_parent_class)->finalize (obj); +#line 5990 "SearchBoolean.c" +} + + +GType saved_search_get_type (void) { + static volatile gsize saved_search_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearch), 0, (GInstanceInitFunc) saved_search_instance_init, NULL }; + GType saved_search_type_id; + saved_search_type_id = g_type_register_static (TYPE_DATA_SOURCE, "SavedSearch", &g_define_type_info, 0); + g_once_init_leave (&saved_search_type_id__volatile, saved_search_type_id); + } + return saved_search_type_id__volatile; +} + + +static SavedSearchTable* saved_search_table_construct (GType object_type) { + SavedSearchTable* self = NULL; + GError * _inner_error_ = NULL; +#line 897 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = (SavedSearchTable*) g_type_create_instance (object_type); +#line 6011 "SearchBoolean.c" + { + GeeList* _tmp0_ = NULL; + SavedSearchDBTable* _tmp1_ = NULL; + SavedSearchDBTable* _tmp2_ = NULL; + GeeList* _tmp3_ = NULL; + GeeList* _tmp4_ = NULL; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = saved_search_db_table_get_instance (); +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _tmp1_; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = saved_search_db_table_get_all_rows (_tmp2_, &_inner_error_); +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = _tmp3_; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _database_table_unref0 (_tmp2_); +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = _tmp4_; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 6034 "SearchBoolean.c" + goto __catch76_database_error; + } +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + 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 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_clear_error (&_inner_error_); +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return NULL; +#line 6043 "SearchBoolean.c" + } + { + GeeList* _row_list = NULL; + GeeList* _tmp5_ = NULL; + gint _row_size = 0; + GeeList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _row_index = 0; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = _tmp0_; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = NULL; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _row_list = _tmp5_; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = _row_list; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, GEE_TYPE_COLLECTION, GeeCollection)); +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = _tmp7_; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _row_size = _tmp8_; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _row_index = -1; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + while (TRUE) { +#line 6071 "SearchBoolean.c" + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + SavedSearchRow* row = NULL; + GeeList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + SavedSearchRow* _tmp15_ = NULL; + SavedSearch* _tmp16_ = NULL; + SavedSearch* _tmp17_ = NULL; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = _row_index; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _row_index = _tmp9_ + 1; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = _row_index; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = _row_size; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!(_tmp10_ < _tmp11_)) { +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + break; +#line 6094 "SearchBoolean.c" + } +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = _row_list; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp13_ = _row_index; +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp14_ = gee_list_get (_tmp12_, _tmp13_); +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + row = (SavedSearchRow*) _tmp14_; +#line 901 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp15_ = row; +#line 901 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp16_ = saved_search_new (_tmp15_, DATA_OBJECT_INVALID_OBJECT_ID); +#line 901 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp17_ = _tmp16_; +#line 901 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_add_to_map (self, _tmp17_); +#line 901 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (_tmp17_); +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _saved_search_row_unref0 (row); +#line 6116 "SearchBoolean.c" + } +#line 900 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (_row_list); +#line 6120 "SearchBoolean.c" + } +#line 899 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (_tmp0_); +#line 6124 "SearchBoolean.c" + } + goto __finally76; + __catch76_database_error: + { + GError* err = NULL; + GError* _tmp18_ = NULL; +#line 899 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + err = _inner_error_; +#line 899 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _inner_error_ = NULL; +#line 903 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp18_ = err; +#line 903 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + app_window_database_error (_tmp18_); +#line 899 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_error_free0 (err); +#line 6141 "SearchBoolean.c" + } + __finally76: +#line 899 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 899 "/home/jens/Source/shotwell/src/searches/SearchBoolean.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 899 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_clear_error (&_inner_error_); +#line 899 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return NULL; +#line 6152 "SearchBoolean.c" + } +#line 897 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self; +#line 6156 "SearchBoolean.c" +} + + +static SavedSearchTable* saved_search_table_new (void) { +#line 897 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return saved_search_table_construct (TYPE_SAVED_SEARCH_TABLE); +#line 6163 "SearchBoolean.c" +} + + +static gpointer _saved_search_table_ref0 (gpointer self) { +#line 912 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return self ? saved_search_table_ref (self) : NULL; +#line 6170 "SearchBoolean.c" +} + + +SavedSearchTable* saved_search_table_get_instance (void) { + SavedSearchTable* result = NULL; + SavedSearchTable* _tmp0_ = NULL; + SavedSearchTable* _tmp2_ = NULL; + SavedSearchTable* _tmp3_ = NULL; +#line 909 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = saved_search_table_instance; +#line 909 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_tmp0_ == NULL) { +#line 6183 "SearchBoolean.c" + SavedSearchTable* _tmp1_ = NULL; +#line 910 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = saved_search_table_new (); +#line 910 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _saved_search_table_unref0 (saved_search_table_instance); +#line 910 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_instance = _tmp1_; +#line 6191 "SearchBoolean.c" + } +#line 912 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = saved_search_table_instance; +#line 912 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = _saved_search_table_ref0 (_tmp2_); +#line 912 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp3_; +#line 912 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 6201 "SearchBoolean.c" +} + + +GeeCollection* saved_search_table_get_all (SavedSearchTable* self) { + GeeCollection* result = NULL; + GeeHashMap* _tmp0_ = NULL; + GeeCollection* _tmp1_ = NULL; + GeeCollection* _tmp2_ = NULL; +#line 915 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH_TABLE (self), NULL); +#line 916 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->search_map; +#line 916 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = gee_abstract_map_get_values (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_MAP, GeeMap)); +#line 916 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _tmp1_; +#line 916 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 916 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 6222 "SearchBoolean.c" +} + + +SavedSearch* saved_search_table_create (SavedSearchTable* self, const gchar* name, SearchOperator operator, GeeArrayList* conditions) { + SavedSearch* result = NULL; + SavedSearch* search = NULL; + SavedSearch* _tmp10_ = NULL; + LibraryWindow* _tmp11_ = NULL; + LibraryWindow* _tmp12_ = NULL; + SavedSearch* _tmp13_ = NULL; + GError * _inner_error_ = NULL; +#line 921 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH_TABLE (self), NULL); +#line 921 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (name != NULL, NULL); +#line 921 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (GEE_IS_ARRAY_LIST (conditions), NULL); +#line 923 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search = NULL; +#line 6242 "SearchBoolean.c" + { + SavedSearchRow* _tmp0_ = NULL; + SavedSearchDBTable* _tmp1_ = NULL; + SavedSearchDBTable* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + SearchOperator _tmp4_ = 0; + GeeArrayList* _tmp5_ = NULL; + SavedSearchRow* _tmp6_ = NULL; + SavedSearchRow* _tmp7_ = NULL; + SavedSearch* _tmp8_ = NULL; +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = saved_search_db_table_get_instance (); +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _tmp1_; +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = name; +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = operator; +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = conditions; +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = saved_search_db_table_add (_tmp2_, _tmp3_, _tmp4_, _tmp5_, &_inner_error_); +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = _tmp6_; +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _database_table_unref0 (_tmp2_); +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = _tmp7_; +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 6275 "SearchBoolean.c" + goto __catch77_database_error; + } +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (search); +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + 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 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_clear_error (&_inner_error_); +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return NULL; +#line 6286 "SearchBoolean.c" + } +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp8_ = saved_search_new (_tmp0_, DATA_OBJECT_INVALID_OBJECT_ID); +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (search); +#line 926 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + search = _tmp8_; +#line 925 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _saved_search_row_unref0 (_tmp0_); +#line 6296 "SearchBoolean.c" + } + goto __finally77; + __catch77_database_error: + { + GError* err = NULL; + GError* _tmp9_ = NULL; +#line 925 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + err = _inner_error_; +#line 925 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _inner_error_ = NULL; +#line 928 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp9_ = err; +#line 928 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + app_window_database_error (_tmp9_); +#line 925 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_error_free0 (err); +#line 6313 "SearchBoolean.c" + } + __finally77: +#line 925 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 925 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (search); +#line 925 "/home/jens/Source/shotwell/src/searches/SearchBoolean.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 925 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_clear_error (&_inner_error_); +#line 925 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return NULL; +#line 6326 "SearchBoolean.c" + } +#line 932 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp10_ = search; +#line 932 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_add_to_map (self, _tmp10_); +#line 933 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp11_ = library_window_get_app (); +#line 933 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp12_ = _tmp11_; +#line 933 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp13_ = search; +#line 933 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + library_window_switch_to_saved_search (_tmp12_, _tmp13_); +#line 933 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (_tmp12_); +#line 934 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = search; +#line 934 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 6346 "SearchBoolean.c" +} + + +void saved_search_table_remove (SavedSearchTable* self, SavedSearch* search) { + SavedSearch* _tmp5_ = NULL; + GError * _inner_error_ = NULL; +#line 938 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SAVED_SEARCH_TABLE (self)); +#line 938 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SAVED_SEARCH (search)); +#line 6357 "SearchBoolean.c" + { + SavedSearchDBTable* _tmp0_ = NULL; + SavedSearchDBTable* _tmp1_ = NULL; + SavedSearch* _tmp2_ = NULL; + SavedSearchID _tmp3_ = {0}; +#line 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = saved_search_db_table_get_instance (); +#line 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = _tmp0_; +#line 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = search; +#line 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_get_saved_search_id (_tmp2_, &_tmp3_); +#line 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_db_table_remove (_tmp1_, &_tmp3_, &_inner_error_); +#line 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _database_table_unref0 (_tmp1_); +#line 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 6379 "SearchBoolean.c" + goto __catch78_database_error; + } +#line 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + 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 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_clear_error (&_inner_error_); +#line 940 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return; +#line 6388 "SearchBoolean.c" + } + } + goto __finally78; + __catch78_database_error: + { + GError* err = NULL; + GError* _tmp4_ = NULL; +#line 939 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + err = _inner_error_; +#line 939 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _inner_error_ = NULL; +#line 942 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = err; +#line 942 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + app_window_database_error (_tmp4_); +#line 939 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_error_free0 (err); +#line 6406 "SearchBoolean.c" + } + __finally78: +#line 939 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 939 "/home/jens/Source/shotwell/src/searches/SearchBoolean.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 939 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_clear_error (&_inner_error_); +#line 939 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return; +#line 6417 "SearchBoolean.c" + } +#line 945 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = search; +#line 945 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_remove_from_map (self, _tmp5_); +#line 6423 "SearchBoolean.c" +} + + +void saved_search_table_add_to_map (SavedSearchTable* self, SavedSearch* search) { + GeeHashMap* _tmp0_ = NULL; + SavedSearch* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + SavedSearch* _tmp4_ = NULL; + SavedSearch* _tmp5_ = NULL; +#line 948 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SAVED_SEARCH_TABLE (self)); +#line 948 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SAVED_SEARCH (search)); +#line 949 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->search_map; +#line 949 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = search; +#line 949 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_DATA_OBJECT, DataObject)); +#line 949 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = _tmp2_; +#line 949 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = search; +#line 949 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp3_, _tmp4_); +#line 949 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp3_); +#line 950 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = search; +#line 950 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_signal_emit_by_name (self, "search-added", _tmp5_); +#line 6456 "SearchBoolean.c" +} + + +void saved_search_table_remove_from_map (SavedSearchTable* self, SavedSearch* search) { + GeeHashMap* _tmp0_ = NULL; + SavedSearch* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + SavedSearch* _tmp4_ = NULL; +#line 953 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SAVED_SEARCH_TABLE (self)); +#line 953 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (IS_SAVED_SEARCH (search)); +#line 954 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->search_map; +#line 954 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = search; +#line 954 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = data_object_get_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_DATA_OBJECT, DataObject)); +#line 954 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = _tmp2_; +#line 954 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + gee_abstract_map_unset (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp3_, NULL); +#line 954 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (_tmp3_); +#line 955 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = search; +#line 955 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_signal_emit_by_name (self, "search-removed", _tmp4_); +#line 6486 "SearchBoolean.c" +} + + +GeeIterable* saved_search_table_get_saved_searches (SavedSearchTable* self) { + GeeIterable* result = NULL; + GeeHashMap* _tmp0_ = NULL; + GeeCollection* _tmp1_ = NULL; + GeeCollection* _tmp2_ = NULL; +#line 958 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH_TABLE (self), NULL); +#line 959 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->search_map; +#line 959 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = gee_abstract_map_get_values (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_MAP, GeeMap)); +#line 959 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _tmp1_; +#line 959 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_ITERABLE, GeeIterable); +#line 959 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 6507 "SearchBoolean.c" +} + + +gint saved_search_table_get_count (SavedSearchTable* self) { + gint result = 0; + GeeHashMap* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; +#line 962 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH_TABLE (self), 0); +#line 963 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->search_map; +#line 963 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = gee_abstract_map_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_MAP, GeeMap)); +#line 963 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = _tmp1_; +#line 963 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 963 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 6528 "SearchBoolean.c" +} + + +gboolean saved_search_table_exists (SavedSearchTable* self, const gchar* search_name) { + gboolean result = FALSE; + GeeHashMap* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + gboolean _tmp2_ = FALSE; +#line 966 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH_TABLE (self), FALSE); +#line 966 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (search_name != NULL, FALSE); +#line 967 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = self->priv->search_map; +#line 967 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = search_name; +#line 967 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = gee_abstract_map_has_key (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp1_); +#line 967 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp2_; +#line 967 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 6551 "SearchBoolean.c" +} + + +gchar* saved_search_table_generate_unique_name (SavedSearchTable* self) { + gchar* result = NULL; + gchar* _tmp7_ = NULL; +#line 971 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (IS_SAVED_SEARCH_TABLE (self), NULL); +#line 6560 "SearchBoolean.c" + { + gint ctr = 0; +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ctr = 1; +#line 6565 "SearchBoolean.c" + { + gboolean _tmp0_ = FALSE; +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = TRUE; +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + while (TRUE) { +#line 6572 "SearchBoolean.c" + gint _tmp2_ = 0; + gchar* name = NULL; + gint _tmp3_ = 0; + gchar* _tmp4_ = NULL; + const gchar* _tmp5_ = NULL; + gboolean _tmp6_ = FALSE; +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!_tmp0_) { +#line 6581 "SearchBoolean.c" + gint _tmp1_ = 0; +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp1_ = ctr; +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ctr = _tmp1_ + 1; +#line 6587 "SearchBoolean.c" + } +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = FALSE; +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp2_ = ctr; +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!(_tmp2_ < G_MAXINT)) { +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + break; +#line 6597 "SearchBoolean.c" + } +#line 973 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp3_ = ctr; +#line 973 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp4_ = g_strdup_printf ("%s %d", RESOURCES_DEFAULT_SAVED_SEARCH_NAME, _tmp3_); +#line 973 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + name = _tmp4_; +#line 975 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp5_ = name; +#line 975 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp6_ = saved_search_table_exists (self, _tmp5_); +#line 975 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!_tmp6_) { +#line 976 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = name; +#line 976 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 6615 "SearchBoolean.c" + } +#line 972 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_free0 (name); +#line 6619 "SearchBoolean.c" + } + } + } +#line 978 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp7_ = g_strdup (""); +#line 978 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + result = _tmp7_; +#line 978 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return result; +#line 6629 "SearchBoolean.c" +} + + +static void value_saved_search_table_init (GValue* value) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = NULL; +#line 6636 "SearchBoolean.c" +} + + +static void value_saved_search_table_free_value (GValue* value) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (value->data[0].v_pointer) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_unref (value->data[0].v_pointer); +#line 6645 "SearchBoolean.c" + } +} + + +static void value_saved_search_table_copy_value (const GValue* src_value, GValue* dest_value) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (src_value->data[0].v_pointer) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + dest_value->data[0].v_pointer = saved_search_table_ref (src_value->data[0].v_pointer); +#line 6655 "SearchBoolean.c" + } else { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + dest_value->data[0].v_pointer = NULL; +#line 6659 "SearchBoolean.c" + } +} + + +static gpointer value_saved_search_table_peek_pointer (const GValue* value) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return value->data[0].v_pointer; +#line 6667 "SearchBoolean.c" +} + + +static gchar* value_saved_search_table_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (collect_values[0].v_pointer) { +#line 6674 "SearchBoolean.c" + SavedSearchTable* object; + object = collect_values[0].v_pointer; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (object->parent_instance.g_class == NULL) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); +#line 6681 "SearchBoolean.c" + } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.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 6685 "SearchBoolean.c" + } +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = saved_search_table_ref (object); +#line 6689 "SearchBoolean.c" + } else { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = NULL; +#line 6693 "SearchBoolean.c" + } +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return NULL; +#line 6697 "SearchBoolean.c" +} + + +static gchar* value_saved_search_table_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { + SavedSearchTable** object_p; + object_p = collect_values[0].v_pointer; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!object_p) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); +#line 6708 "SearchBoolean.c" + } +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (!value->data[0].v_pointer) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + *object_p = NULL; +#line 6714 "SearchBoolean.c" + } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + *object_p = value->data[0].v_pointer; +#line 6718 "SearchBoolean.c" + } else { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + *object_p = saved_search_table_ref (value->data[0].v_pointer); +#line 6722 "SearchBoolean.c" + } +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return NULL; +#line 6726 "SearchBoolean.c" +} + + +GParamSpec* param_spec_saved_search_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { + ParamSpecSavedSearchTable* spec; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (g_type_is_a (object_type, TYPE_SAVED_SEARCH_TABLE), NULL); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + G_PARAM_SPEC (spec)->value_type = object_type; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return G_PARAM_SPEC (spec); +#line 6740 "SearchBoolean.c" +} + + +gpointer value_get_saved_search_table (const GValue* value) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_SAVED_SEARCH_TABLE), NULL); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return value->data[0].v_pointer; +#line 6749 "SearchBoolean.c" +} + + +void value_set_saved_search_table (GValue* value, gpointer v_object) { + SavedSearchTable* old; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_SAVED_SEARCH_TABLE)); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + old = value->data[0].v_pointer; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (v_object) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_SAVED_SEARCH_TABLE)); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = v_object; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_ref (value->data[0].v_pointer); +#line 6769 "SearchBoolean.c" + } else { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = NULL; +#line 6773 "SearchBoolean.c" + } +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (old) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_unref (old); +#line 6779 "SearchBoolean.c" + } +} + + +void value_take_saved_search_table (GValue* value, gpointer v_object) { + SavedSearchTable* old; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_SAVED_SEARCH_TABLE)); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + old = value->data[0].v_pointer; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (v_object) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_SAVED_SEARCH_TABLE)); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = v_object; +#line 6798 "SearchBoolean.c" + } else { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + value->data[0].v_pointer = NULL; +#line 6802 "SearchBoolean.c" + } +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (old) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_unref (old); +#line 6808 "SearchBoolean.c" + } +} + + +static void saved_search_table_class_init (SavedSearchTableClass * klass) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + saved_search_table_parent_class = g_type_class_peek_parent (klass); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + ((SavedSearchTableClass *) klass)->finalize = saved_search_table_finalize; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_class_add_private (klass, sizeof (SavedSearchTablePrivate)); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_signal_new ("search_added", TYPE_SAVED_SEARCH_TABLE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1, TYPE_SAVED_SEARCH); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_signal_new ("search_removed", TYPE_SAVED_SEARCH_TABLE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1, TYPE_SAVED_SEARCH); +#line 6824 "SearchBoolean.c" +} + + +static void saved_search_table_instance_init (SavedSearchTable * self) { + GeeHashMap* _tmp0_ = NULL; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv = SAVED_SEARCH_TABLE_GET_PRIVATE (self); +#line 892 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _tmp0_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, TYPE_SAVED_SEARCH, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +#line 892 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->priv->search_map = _tmp0_; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self->ref_count = 1; +#line 6838 "SearchBoolean.c" +} + + +static void saved_search_table_finalize (SavedSearchTable* obj) { + SavedSearchTable * self; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SAVED_SEARCH_TABLE, SavedSearchTable); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_signal_handlers_destroy (self); +#line 892 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + _g_object_unref0 (self->priv->search_map); +#line 6850 "SearchBoolean.c" +} + + +GType saved_search_table_get_type (void) { + static volatile gsize saved_search_table_type_id__volatile = 0; + if (g_once_init_enter (&saved_search_table_type_id__volatile)) { + static const GTypeValueTable g_define_type_value_table = { value_saved_search_table_init, value_saved_search_table_free_value, value_saved_search_table_copy_value, value_saved_search_table_peek_pointer, "p", value_saved_search_table_collect_value, "p", value_saved_search_table_lcopy_value }; + static const GTypeInfo g_define_type_info = { sizeof (SavedSearchTableClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saved_search_table_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SavedSearchTable), 0, (GInstanceInitFunc) saved_search_table_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 saved_search_table_type_id; + saved_search_table_type_id = g_type_register_fundamental (g_type_fundamental_next (), "SavedSearchTable", &g_define_type_info, &g_define_type_fundamental_info, 0); + g_once_init_leave (&saved_search_table_type_id__volatile, saved_search_table_type_id); + } + return saved_search_table_type_id__volatile; +} + + +gpointer saved_search_table_ref (gpointer instance) { + SavedSearchTable* self; + self = instance; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_atomic_int_inc (&self->ref_count); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + return instance; +#line 6875 "SearchBoolean.c" +} + + +void saved_search_table_unref (gpointer instance) { + SavedSearchTable* self; + self = instance; +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + if (g_atomic_int_dec_and_test (&self->ref_count)) { +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + SAVED_SEARCH_TABLE_GET_CLASS (self)->finalize (self); +#line 890 "/home/jens/Source/shotwell/src/searches/SearchBoolean.vala" + g_type_free_instance ((GTypeInstance *) self); +#line 6888 "SearchBoolean.c" + } +} + + + diff --git a/src/searches/Searches.c b/src/searches/Searches.c new file mode 100644 index 0000000..1ab6b90 --- /dev/null +++ b/src/searches/Searches.c @@ -0,0 +1,49 @@ +/* Searches.c generated by valac 0.32.1, the Vala compiler + * generated from Searches.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. + */ +/* This file is the master unit file for the Searches unit. It should be edited to include + * whatever code is deemed necessary. + * + * The init() and terminate() methods are mandatory. + * + * If the unit needs to be configured prior to initialization, add the proper parameters to + * the preconfigure() method, implement it, and ensure in init() that it's been called. + */ + +#include <glib.h> +#include <glib-object.h> + + + + +void searches_preconfigure (void); +void searches_init (GError** error); +void searches_sidebar_entry_init (void); +void searches_terminate (void); +void searches_sidebar_entry_terminate (void); + + +void searches_preconfigure (void) { +} + + +void searches_init (GError** error) { +#line 23 "/home/jens/Source/shotwell/src/searches/Searches.vala" + searches_sidebar_entry_init (); +#line 39 "Searches.c" +} + + +void searches_terminate (void) { +#line 27 "/home/jens/Source/shotwell/src/searches/Searches.vala" + searches_sidebar_entry_terminate (); +#line 46 "Searches.c" +} + + + diff --git a/src/searches/mk/searches.mk b/src/searches/mk/searches.mk deleted file mode 100644 index 6df4b5d..0000000 --- a/src/searches/mk/searches.mk +++ /dev/null @@ -1,31 +0,0 @@ - -# UNIT_NAME is the Vala namespace. A file named UNIT_NAME.vala must be in this directory with -# a init() and terminate() function declared in the namespace. -UNIT_NAME := Searches - -# UNIT_DIR should match the subdirectory the files are located in. Generally UNIT_NAME in all -# lowercase. The name of this file should be UNIT_DIR.mk. -UNIT_DIR := searches - -# All Vala files in the unit should be listed here with no subdirectory prefix. -# -# NOTE: Do *not* include the unit's master file, i.e. UNIT_NAME.vala. -UNIT_FILES := \ - Branch.vala \ - SearchBoolean.vala \ - SavedSearchPage.vala \ - SavedSearchDialog.vala - -# Any unit this unit relies upon (and should be initialized before it's initialized) should -# be listed here using its Vala namespace. -# -# NOTE: All units are assumed to rely upon the unit-unit. Do not include that here. -UNIT_USES := - -# List any additional files that are used in the build process as a part of this unit that should -# be packaged in the tarball. File names should be relative to the unit's home directory. -UNIT_RC := - -# unitize.mk must be called at the end of each UNIT_DIR.mk file. -include unitize.mk - |