/* settings.c generated by valac 0.56.17, the Vala compiler
 * generated from settings.vala, do not modify */

/*
 * Copyright (C) 2010 Michal Hruby <michal.mhr@gmail.com>
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 * Authored by Alberto Aldegheri <albyrock87+dev@gmail.com>
 *             Michal Hruby <michal.mhr@gmail.com>
 *
 */

#include <gtk/gtk.h>
#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <gee.h>
#include <synapse-core.h>
#include <glib/gi18n-lib.h>
#include <gdk/gdk.h>
#include <glib/gstdio.h>

#if !defined(VALA_STRICT_C)
#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ >= 14)
#pragma GCC diagnostic warning "-Wincompatible-pointer-types"
#elif defined(__clang__) && (__clang_major__ >= 16)
#pragma clang diagnostic ignored "-Wincompatible-function-pointer-types"
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
#endif
#endif
#if !defined(VALA_EXTERN)
#if defined(_MSC_VER)
#define VALA_EXTERN __declspec(dllexport) extern
#elif __GNUC__ >= 4
#define VALA_EXTERN __attribute__((visibility("default"))) extern
#else
#define VALA_EXTERN extern
#endif
#endif

#define SYNAPSE_GUI_TYPE_SETTINGS_WINDOW (synapse_gui_settings_window_get_type ())
#define SYNAPSE_GUI_SETTINGS_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_TYPE_SETTINGS_WINDOW, SynapseGuiSettingsWindow))
#define SYNAPSE_GUI_SETTINGS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_TYPE_SETTINGS_WINDOW, SynapseGuiSettingsWindowClass))
#define SYNAPSE_GUI_IS_SETTINGS_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_TYPE_SETTINGS_WINDOW))
#define SYNAPSE_GUI_IS_SETTINGS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_TYPE_SETTINGS_WINDOW))
#define SYNAPSE_GUI_SETTINGS_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_TYPE_SETTINGS_WINDOW, SynapseGuiSettingsWindowClass))

typedef struct _SynapseGuiSettingsWindow SynapseGuiSettingsWindow;
typedef struct _SynapseGuiSettingsWindowClass SynapseGuiSettingsWindowClass;
typedef struct _SynapseGuiSettingsWindowPrivate SynapseGuiSettingsWindowPrivate;

#define SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_THEME (synapse_gui_settings_window_theme_get_type ())
typedef struct _SynapseGuiSettingsWindowTheme SynapseGuiSettingsWindowTheme;

#define SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG (synapse_gui_key_combo_config_get_type ())
#define SYNAPSE_GUI_KEY_COMBO_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG, SynapseGuiKeyComboConfig))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG, SynapseGuiKeyComboConfigClass))
#define SYNAPSE_GUI_IS_KEY_COMBO_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG))
#define SYNAPSE_GUI_IS_KEY_COMBO_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG))
#define SYNAPSE_GUI_KEY_COMBO_CONFIG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_TYPE_KEY_COMBO_CONFIG, SynapseGuiKeyComboConfigClass))

typedef struct _SynapseGuiKeyComboConfig SynapseGuiKeyComboConfig;
typedef struct _SynapseGuiKeyComboConfigClass SynapseGuiKeyComboConfigClass;

#define SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG (synapse_gui_settings_window_ui_config_get_type ())
#define SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG, SynapseGuiSettingsWindowUIConfig))
#define SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG, SynapseGuiSettingsWindowUIConfigClass))
#define SYNAPSE_GUI_SETTINGS_WINDOW_IS_UI_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG))
#define SYNAPSE_GUI_SETTINGS_WINDOW_IS_UI_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG))
#define SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG, SynapseGuiSettingsWindowUIConfigClass))

typedef struct _SynapseGuiSettingsWindowUIConfig SynapseGuiSettingsWindowUIConfig;
typedef struct _SynapseGuiSettingsWindowUIConfigClass SynapseGuiSettingsWindowUIConfigClass;

#define UI_WIDGETS_TYPE_TILE_VIEW (ui_widgets_tile_view_get_type ())
#define UI_WIDGETS_TILE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), UI_WIDGETS_TYPE_TILE_VIEW, UIWidgetsTileView))
#define UI_WIDGETS_TILE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), UI_WIDGETS_TYPE_TILE_VIEW, UIWidgetsTileViewClass))
#define UI_WIDGETS_IS_TILE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), UI_WIDGETS_TYPE_TILE_VIEW))
#define UI_WIDGETS_IS_TILE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), UI_WIDGETS_TYPE_TILE_VIEW))
#define UI_WIDGETS_TILE_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), UI_WIDGETS_TYPE_TILE_VIEW, UIWidgetsTileViewClass))

typedef struct _UIWidgetsTileView UIWidgetsTileView;
typedef struct _UIWidgetsTileViewClass UIWidgetsTileViewClass;
enum  {
	SYNAPSE_GUI_SETTINGS_WINDOW_0_PROPERTY,
	SYNAPSE_GUI_SETTINGS_WINDOW_INDICATOR_ACTIVE_PROPERTY,
	SYNAPSE_GUI_SETTINGS_WINDOW_NUM_PROPERTIES
};
static GParamSpec* synapse_gui_settings_window_properties[SYNAPSE_GUI_SETTINGS_WINDOW_NUM_PROPERTIES];
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#define SYNAPSE_GUI_TYPE_VIEW (synapse_gui_view_get_type ())
#define SYNAPSE_GUI_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_TYPE_VIEW, SynapseGuiView))
#define SYNAPSE_GUI_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_TYPE_VIEW, SynapseGuiViewClass))
#define SYNAPSE_GUI_IS_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_TYPE_VIEW))
#define SYNAPSE_GUI_IS_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_TYPE_VIEW))
#define SYNAPSE_GUI_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_TYPE_VIEW, SynapseGuiViewClass))

typedef struct _SynapseGuiView SynapseGuiView;
typedef struct _SynapseGuiViewClass SynapseGuiViewClass;

#define SYNAPSE_GUI_TYPE_VIEW_DEFAULT (synapse_gui_view_default_get_type ())
#define SYNAPSE_GUI_VIEW_DEFAULT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_TYPE_VIEW_DEFAULT, SynapseGuiViewDefault))
#define SYNAPSE_GUI_VIEW_DEFAULT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_TYPE_VIEW_DEFAULT, SynapseGuiViewDefaultClass))
#define SYNAPSE_GUI_IS_VIEW_DEFAULT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_TYPE_VIEW_DEFAULT))
#define SYNAPSE_GUI_IS_VIEW_DEFAULT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_TYPE_VIEW_DEFAULT))
#define SYNAPSE_GUI_VIEW_DEFAULT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_TYPE_VIEW_DEFAULT, SynapseGuiViewDefaultClass))

typedef struct _SynapseGuiViewDefault SynapseGuiViewDefault;
typedef struct _SynapseGuiViewDefaultClass SynapseGuiViewDefaultClass;

#define SYNAPSE_GUI_TYPE_VIEW_ESSENTIAL (synapse_gui_view_essential_get_type ())
#define SYNAPSE_GUI_VIEW_ESSENTIAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_TYPE_VIEW_ESSENTIAL, SynapseGuiViewEssential))
#define SYNAPSE_GUI_VIEW_ESSENTIAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_TYPE_VIEW_ESSENTIAL, SynapseGuiViewEssentialClass))
#define SYNAPSE_GUI_IS_VIEW_ESSENTIAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_TYPE_VIEW_ESSENTIAL))
#define SYNAPSE_GUI_IS_VIEW_ESSENTIAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_TYPE_VIEW_ESSENTIAL))
#define SYNAPSE_GUI_VIEW_ESSENTIAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_TYPE_VIEW_ESSENTIAL, SynapseGuiViewEssentialClass))

typedef struct _SynapseGuiViewEssential SynapseGuiViewEssential;
typedef struct _SynapseGuiViewEssentialClass SynapseGuiViewEssentialClass;

#define SYNAPSE_GUI_TYPE_VIEW_DOISH (synapse_gui_view_doish_get_type ())
#define SYNAPSE_GUI_VIEW_DOISH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_TYPE_VIEW_DOISH, SynapseGuiViewDoish))
#define SYNAPSE_GUI_VIEW_DOISH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_TYPE_VIEW_DOISH, SynapseGuiViewDoishClass))
#define SYNAPSE_GUI_IS_VIEW_DOISH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_TYPE_VIEW_DOISH))
#define SYNAPSE_GUI_IS_VIEW_DOISH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_TYPE_VIEW_DOISH))
#define SYNAPSE_GUI_VIEW_DOISH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_TYPE_VIEW_DOISH, SynapseGuiViewDoishClass))

typedef struct _SynapseGuiViewDoish SynapseGuiViewDoish;
typedef struct _SynapseGuiViewDoishClass SynapseGuiViewDoishClass;

#define SYNAPSE_GUI_TYPE_VIEW_SIDE_DOISH (synapse_gui_view_side_doish_get_type ())
#define SYNAPSE_GUI_VIEW_SIDE_DOISH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_TYPE_VIEW_SIDE_DOISH, SynapseGuiViewSideDoish))
#define SYNAPSE_GUI_VIEW_SIDE_DOISH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_TYPE_VIEW_SIDE_DOISH, SynapseGuiViewSideDoishClass))
#define SYNAPSE_GUI_IS_VIEW_SIDE_DOISH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_TYPE_VIEW_SIDE_DOISH))
#define SYNAPSE_GUI_IS_VIEW_SIDE_DOISH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_TYPE_VIEW_SIDE_DOISH))
#define SYNAPSE_GUI_VIEW_SIDE_DOISH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_TYPE_VIEW_SIDE_DOISH, SynapseGuiViewSideDoishClass))

typedef struct _SynapseGuiViewSideDoish SynapseGuiViewSideDoish;
typedef struct _SynapseGuiViewSideDoishClass SynapseGuiViewSideDoishClass;

#define SYNAPSE_GUI_TYPE_VIEW_VIRGILIO (synapse_gui_view_virgilio_get_type ())
#define SYNAPSE_GUI_VIEW_VIRGILIO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_TYPE_VIEW_VIRGILIO, SynapseGuiViewVirgilio))
#define SYNAPSE_GUI_VIEW_VIRGILIO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_TYPE_VIEW_VIRGILIO, SynapseGuiViewVirgilioClass))
#define SYNAPSE_GUI_IS_VIEW_VIRGILIO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_TYPE_VIEW_VIRGILIO))
#define SYNAPSE_GUI_IS_VIEW_VIRGILIO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_TYPE_VIEW_VIRGILIO))
#define SYNAPSE_GUI_VIEW_VIRGILIO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_TYPE_VIEW_VIRGILIO, SynapseGuiViewVirgilioClass))

typedef struct _SynapseGuiViewVirgilio SynapseGuiViewVirgilio;
typedef struct _SynapseGuiViewVirgilioClass SynapseGuiViewVirgilioClass;

#define UI_WIDGETS_TYPE_ABSTRACT_TILE_OBJECT (ui_widgets_abstract_tile_object_get_type ())
#define UI_WIDGETS_ABSTRACT_TILE_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), UI_WIDGETS_TYPE_ABSTRACT_TILE_OBJECT, UIWidgetsAbstractTileObject))
#define UI_WIDGETS_ABSTRACT_TILE_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), UI_WIDGETS_TYPE_ABSTRACT_TILE_OBJECT, UIWidgetsAbstractTileObjectClass))
#define UI_WIDGETS_IS_ABSTRACT_TILE_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), UI_WIDGETS_TYPE_ABSTRACT_TILE_OBJECT))
#define UI_WIDGETS_IS_ABSTRACT_TILE_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), UI_WIDGETS_TYPE_ABSTRACT_TILE_OBJECT))
#define UI_WIDGETS_ABSTRACT_TILE_OBJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), UI_WIDGETS_TYPE_ABSTRACT_TILE_OBJECT, UIWidgetsAbstractTileObjectClass))

typedef struct _UIWidgetsAbstractTileObject UIWidgetsAbstractTileObject;
typedef struct _UIWidgetsAbstractTileObjectClass UIWidgetsAbstractTileObjectClass;

#define SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT (synapse_gui_settings_window_plugin_tile_object_get_type ())
#define SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT, SynapseGuiSettingsWindowPluginTileObject))
#define SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT, SynapseGuiSettingsWindowPluginTileObjectClass))
#define SYNAPSE_GUI_SETTINGS_WINDOW_IS_PLUGIN_TILE_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT))
#define SYNAPSE_GUI_SETTINGS_WINDOW_IS_PLUGIN_TILE_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT))
#define SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT, SynapseGuiSettingsWindowPluginTileObjectClass))

typedef struct _SynapseGuiSettingsWindowPluginTileObject SynapseGuiSettingsWindowPluginTileObject;
typedef struct _SynapseGuiSettingsWindowPluginTileObjectClass SynapseGuiSettingsWindowPluginTileObjectClass;
#define _synapse_plugin_info_unref0(var) ((var == NULL) ? NULL : (var = (synapse_plugin_info_unref (var), NULL)))
typedef struct _Block7Data Block7Data;
#define _synapse_gui_settings_window_theme_free0(var) ((var == NULL) ? NULL : (var = (synapse_gui_settings_window_theme_free (var), NULL)))
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
typedef struct _UIWidgetsAbstractTileObjectPrivate UIWidgetsAbstractTileObjectPrivate;
typedef struct _SynapseGuiSettingsWindowPluginTileObjectPrivate SynapseGuiSettingsWindowPluginTileObjectPrivate;
enum  {
	SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_0_PROPERTY,
	SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_PI_PROPERTY,
	SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_NUM_PROPERTIES
};
static GParamSpec* synapse_gui_settings_window_plugin_tile_object_properties[SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_NUM_PROPERTIES];
enum  {
	SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_CONFIGURE_SIGNAL,
	SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_NUM_SIGNALS
};
static guint synapse_gui_settings_window_plugin_tile_object_signals[SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_NUM_SIGNALS] = {0};
typedef struct _SynapseGuiSettingsWindowUIConfigPrivate SynapseGuiSettingsWindowUIConfigPrivate;
enum  {
	SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_0_PROPERTY,
	SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_UI_TYPE_PROPERTY,
	SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_SHOW_INDICATOR_PROPERTY,
	SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_NUM_PROPERTIES
};
static GParamSpec* synapse_gui_settings_window_ui_config_properties[SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_NUM_PROPERTIES];
enum  {
	SYNAPSE_GUI_SETTINGS_WINDOW_KEYBINDING_CHANGED_SIGNAL,
	SYNAPSE_GUI_SETTINGS_WINDOW_THEME_SELECTED_SIGNAL,
	SYNAPSE_GUI_SETTINGS_WINDOW_NUM_SIGNALS
};
static guint synapse_gui_settings_window_signals[SYNAPSE_GUI_SETTINGS_WINDOW_NUM_SIGNALS] = {0};

struct _SynapseGuiSettingsWindow {
	GtkWindow parent_instance;
	SynapseGuiSettingsWindowPrivate * priv;
};

struct _SynapseGuiSettingsWindowClass {
	GtkWindowClass parent_class;
};

struct _SynapseGuiSettingsWindowTheme {
	gchar* name;
	gchar* description;
	GType tclass;
};

struct _SynapseGuiSettingsWindowPrivate {
	gchar* selected_theme;
	GeeMap* themes;
	gboolean autostart;
	SynapseDataSink* data_sink;
	SynapseGuiKeyComboConfig* key_combo_config;
	GtkListStore* model;
	SynapseGuiSettingsWindowUIConfig* config;
	gchar** key_combos;
	gint key_combos_length1;
	gint key_combos_length2;
	UIWidgetsTileView* tile_view;
	gchar* autostart_file;
};

struct _Block7Data {
	int _ref_count_;
	SynapseGuiSettingsWindow* self;
	GtkComboBoxText* cb_themes;
};

struct _UIWidgetsAbstractTileObject {
	GObject parent_instance;
	UIWidgetsAbstractTileObjectPrivate * priv;
};

struct _UIWidgetsAbstractTileObjectClass {
	GObjectClass parent_class;
	void (*active_changed) (UIWidgetsAbstractTileObject* self);
};

struct _SynapseGuiSettingsWindowPluginTileObject {
	UIWidgetsAbstractTileObject parent_instance;
	SynapseGuiSettingsWindowPluginTileObjectPrivate * priv;
};

struct _SynapseGuiSettingsWindowPluginTileObjectClass {
	UIWidgetsAbstractTileObjectClass parent_class;
};

struct _SynapseGuiSettingsWindowPluginTileObjectPrivate {
	SynapsePluginInfo* _pi;
};

struct _SynapseGuiSettingsWindowUIConfig {
	SynapseConfigObject parent_instance;
	SynapseGuiSettingsWindowUIConfigPrivate * priv;
};

struct _SynapseGuiSettingsWindowUIConfigClass {
	SynapseConfigObjectClass parent_class;
};

struct _SynapseGuiSettingsWindowUIConfigPrivate {
	gchar* _ui_type;
	gboolean _show_indicator;
};

static gint SynapseGuiSettingsWindow_private_offset;
static gpointer synapse_gui_settings_window_parent_class = NULL;
static gint SynapseGuiSettingsWindowPluginTileObject_private_offset;
static gpointer synapse_gui_settings_window_plugin_tile_object_parent_class = NULL;
static gint SynapseGuiSettingsWindowUIConfig_private_offset;
static gpointer synapse_gui_settings_window_ui_config_parent_class = NULL;

VALA_EXTERN GType synapse_gui_settings_window_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiSettingsWindow, g_object_unref)
static GType synapse_gui_settings_window_theme_get_type (void) G_GNUC_CONST  G_GNUC_UNUSED ;
static SynapseGuiSettingsWindowTheme* synapse_gui_settings_window_theme_dup (const SynapseGuiSettingsWindowTheme* self);
static void synapse_gui_settings_window_theme_free (SynapseGuiSettingsWindowTheme* self);
static void synapse_gui_settings_window_theme_copy (const SynapseGuiSettingsWindowTheme* self,
                                             SynapseGuiSettingsWindowTheme* dest);
static void synapse_gui_settings_window_theme_destroy (SynapseGuiSettingsWindowTheme* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (SynapseGuiSettingsWindowTheme, synapse_gui_settings_window_theme_destroy)
VALA_EXTERN GType synapse_gui_key_combo_config_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiKeyComboConfig, g_object_unref)
static GType synapse_gui_settings_window_ui_config_get_type (void) G_GNUC_CONST  G_GNUC_UNUSED ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiSettingsWindowUIConfig, g_object_unref)
VALA_EXTERN GType ui_widgets_tile_view_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (UIWidgetsTileView, g_object_unref)
VALA_EXTERN SynapseGuiSettingsWindow* synapse_gui_settings_window_new (SynapseDataSink* data_sink,
                                                           SynapseGuiKeyComboConfig* key_combo_config);
VALA_EXTERN SynapseGuiSettingsWindow* synapse_gui_settings_window_construct (GType object_type,
                                                                 SynapseDataSink* data_sink,
                                                                 SynapseGuiKeyComboConfig* key_combo_config);
static gboolean _gtk_widget_hide_on_delete_gtk_widget_delete_event (GtkWidget* _sender,
                                                             GdkEventAny* event,
                                                             gpointer self);
static void synapse_gui_settings_window_init_settings (SynapseGuiSettingsWindow* self);
static void synapse_gui_settings_window_build_ui (SynapseGuiSettingsWindow* self);
static void synapse_gui_settings_window_init_plugin_tiles (SynapseGuiSettingsWindow* self);
static void _synapse_gui_settings_window_init_plugin_tiles_gtk_widget_map (GtkWidget* _sender,
                                                                    gpointer self);
static gboolean __lambda32_ (SynapseGuiSettingsWindow* self);
static void synapse_gui_settings_window_refresh_tiles (SynapseGuiSettingsWindow* self);
static gboolean ___lambda32__gtk_widget_visibility_notify_event (GtkWidget* _sender,
                                                          GdkEventVisibility* event,
                                                          gpointer self);
static void synapse_gui_settings_window_init_themes (SynapseGuiSettingsWindow* self);
VALA_EXTERN GType synapse_gui_view_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiView, g_object_unref)
VALA_EXTERN GType synapse_gui_view_default_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiViewDefault, g_object_unref)
static void synapse_gui_settings_window_theme_init (SynapseGuiSettingsWindowTheme *self,
                                             const gchar* name,
                                             const gchar* desc,
                                             GType obj_type);
VALA_EXTERN GType synapse_gui_view_essential_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiViewEssential, g_object_unref)
VALA_EXTERN GType synapse_gui_view_doish_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiViewDoish, g_object_unref)
VALA_EXTERN GType synapse_gui_view_side_doish_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiViewSideDoish, g_object_unref)
VALA_EXTERN GType synapse_gui_view_virgilio_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiViewVirgilio, g_object_unref)
static const gchar* synapse_gui_settings_window_ui_config_get_ui_type (SynapseGuiSettingsWindowUIConfig* self);
VALA_EXTERN void ui_widgets_tile_view_clear (UIWidgetsTileView* self);
static gint __lambda27_ (SynapseGuiSettingsWindow* self,
                  SynapsePluginInfo* a,
                  SynapsePluginInfo* b);
static gint ___lambda27__gcompare_data_func (gconstpointer a,
                                      gconstpointer b,
                                      gpointer self);
VALA_EXTERN GType ui_widgets_abstract_tile_object_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (UIWidgetsAbstractTileObject, g_object_unref)
static GType synapse_gui_settings_window_plugin_tile_object_get_type (void) G_GNUC_CONST  G_GNUC_UNUSED ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SynapseGuiSettingsWindowPluginTileObject, g_object_unref)
static SynapseGuiSettingsWindowPluginTileObject* synapse_gui_settings_window_plugin_tile_object_new (SynapsePluginInfo* info);
static SynapseGuiSettingsWindowPluginTileObject* synapse_gui_settings_window_plugin_tile_object_construct (GType object_type,
                                                                                                    SynapsePluginInfo* info);
VALA_EXTERN void ui_widgets_tile_view_append_tile (UIWidgetsTileView* self,
                                       UIWidgetsAbstractTileObject* tile_obj);
static void synapse_gui_settings_window_plugin_tile_object_update_state (SynapseGuiSettingsWindowPluginTileObject* self,
                                                                  gboolean enabled);
static void ____lambda30_ (SynapseGuiSettingsWindow* self,
                    UIWidgetsAbstractTileObject* tile_obj);
VALA_EXTERN gboolean ui_widgets_abstract_tile_object_get_enabled (UIWidgetsAbstractTileObject* self);
static SynapsePluginInfo* synapse_gui_settings_window_plugin_tile_object_get_pi (SynapseGuiSettingsWindowPluginTileObject* self);
static void _____lambda30__ui_widgets_abstract_tile_object_active_changed (UIWidgetsAbstractTileObject* _sender,
                                                                    gpointer self);
static void ____lambda31_ (SynapseGuiSettingsWindow* self,
                    SynapseGuiSettingsWindowPluginTileObject* tile_obj);
static void _____lambda31__synapse_gui_settings_window_plugin_tile_object_configure (SynapseGuiSettingsWindowPluginTileObject* _sender,
                                                                              gpointer self);
VALA_EXTERN GList* ui_widgets_tile_view_get_tiles (UIWidgetsTileView* self);
static void synapse_gui_settings_window_plugin_tile_object_refresh (SynapseGuiSettingsWindowPluginTileObject* self);
static void synapse_gui_settings_window_init_general_options (SynapseGuiSettingsWindow* self);
static gint synapse_gui_settings_window_check_keybinding_in_use (SynapseGuiSettingsWindow* self,
                                                          gint for_index,
                                                          const gchar* keyname);
static GtkComboBox* synapse_gui_settings_window_build_theme_combo (SynapseGuiSettingsWindow* self);
static gboolean synapse_gui_settings_window_autostart_exists (SynapseGuiSettingsWindow* self);
static void synapse_gui_settings_window_autostart_toggled (SynapseGuiSettingsWindow* self,
                                                    GtkWidget* w);
static void _synapse_gui_settings_window_autostart_toggled_gtk_toggle_button_toggled (GtkToggleButton* _sender,
                                                                               gpointer self);
static gboolean synapse_gui_settings_window_ui_config_get_show_indicator (SynapseGuiSettingsWindowUIConfig* self);
static void __lambda23_ (SynapseGuiSettingsWindow* self,
                  GtkToggleButton* tb);
static void synapse_gui_settings_window_ui_config_set_show_indicator (SynapseGuiSettingsWindowUIConfig* self,
                                                               gboolean value);
static void ___lambda23__gtk_toggle_button_toggled (GtkToggleButton* _sender,
                                             gpointer self);
static void __lambda24_ (SynapseGuiSettingsWindow* self,
                  GtkCellRendererAccel* a,
                  const gchar* path,
                  guint accel_key,
                  GdkModifierType accel_mods,
                  guint keycode);
VALA_EXTERN gchar* synapse_gui_key_combo_config_get_name_from_key (guint keyval,
                                                       GdkModifierType mods);
VALA_EXTERN void synapse_gui_settings_window_set_keybinding (SynapseGuiSettingsWindow* self,
                                                 const gchar* key,
                                                 gboolean emit);
VALA_EXTERN void synapse_gui_key_combo_config_update_bindings (SynapseGuiKeyComboConfig* self);
static void ___lambda24__gtk_cell_renderer_accel_accel_edited (GtkCellRendererAccel* _sender,
                                                        const gchar* path_string,
                                                        guint accel_key,
                                                        GdkModifierType accel_mods,
                                                        guint hardware_keycode,
                                                        gpointer self);
static void __lambda25_ (SynapseGuiSettingsWindow* self,
                  GtkCellRendererAccel* a,
                  const gchar* path);
static void ___lambda25__gtk_cell_renderer_accel_accel_cleared (GtkCellRendererAccel* _sender,
                                                         const gchar* path_string,
                                                         gpointer self);
VALA_EXTERN UIWidgetsTileView* ui_widgets_tile_view_new (void);
VALA_EXTERN UIWidgetsTileView* ui_widgets_tile_view_construct (GType object_type);
VALA_EXTERN void ui_widgets_tile_view_set_icon_size (UIWidgetsTileView* self,
                                         gint value);
static void __lambda26_ (SynapseGuiSettingsWindow* self);
static void ___lambda26__gtk_button_clicked (GtkButton* _sender,
                                      gpointer self);
static Block7Data* block7_data_ref (Block7Data* _data7_);
static void block7_data_unref (void * _userdata_);
static void __lambda22_ (Block7Data* _data7_);
static void synapse_gui_settings_window_ui_config_set_ui_type (SynapseGuiSettingsWindowUIConfig* self,
                                                        const gchar* value);
VALA_EXTERN GType synapse_gui_settings_window_get_current_theme (SynapseGuiSettingsWindow* self);
static void ___lambda22__gtk_combo_box_changed (GtkComboBox* _sender,
                                         gpointer self);
VALA_EXTERN gboolean synapse_gui_settings_window_get_indicator_active (SynapseGuiSettingsWindow* self);
static void g_cclosure_user_marshal_VOID__GTYPE (GClosure * closure,
                                          GValue * return_value,
                                          guint n_param_values,
                                          const GValue * param_values,
                                          gpointer invocation_hint,
                                          gpointer marshal_data);
VALA_EXTERN void ui_widgets_abstract_tile_object_set_enabled (UIWidgetsAbstractTileObject* self,
                                                  gboolean value);
VALA_EXTERN void ui_widgets_abstract_tile_object_set_sub_description_text (UIWidgetsAbstractTileObject* self,
                                                               const gchar* value);
VALA_EXTERN void ui_widgets_abstract_tile_object_set_show_action_button (UIWidgetsAbstractTileObject* self,
                                                             gboolean value);
static void synapse_gui_settings_window_plugin_tile_object_set_pi (SynapseGuiSettingsWindowPluginTileObject* self,
                                                            SynapsePluginInfo* value);
static GObject * synapse_gui_settings_window_plugin_tile_object_constructor (GType type,
                                                                      guint n_construct_properties,
                                                                      GObjectConstructParam * construct_properties);
VALA_EXTERN void ui_widgets_abstract_tile_object_set_sub_description_title (UIWidgetsAbstractTileObject* self,
                                                                const gchar* value);
VALA_EXTERN void ui_widgets_abstract_tile_object_set_add_button_tooltip (UIWidgetsAbstractTileObject* self,
                                                             const gchar* value);
VALA_EXTERN void ui_widgets_abstract_tile_object_set_remove_button_tooltip (UIWidgetsAbstractTileObject* self,
                                                                const gchar* value);
static void _synapse_gui_settings_window_plugin_tile_object___lambda28_ (SynapseGuiSettingsWindowPluginTileObject* self);
static void __synapse_gui_settings_window_plugin_tile_object___lambda28__gtk_button_clicked (GtkButton* _sender,
                                                                                      gpointer self);
VALA_EXTERN void ui_widgets_abstract_tile_object_add_user_button (UIWidgetsAbstractTileObject* self,
                                                      GtkButton* button);
static void _synapse_gui_settings_window_plugin_tile_object____lambda29_ (SynapseGuiSettingsWindowPluginTileObject* self);
static void __synapse_gui_settings_window_plugin_tile_object____lambda29__gtk_button_clicked (GtkButton* _sender,
                                                                                       gpointer self);
static void synapse_gui_settings_window_plugin_tile_object_finalize (GObject * obj);
static GType synapse_gui_settings_window_plugin_tile_object_get_type_once (void);
static void _vala_synapse_gui_settings_window_plugin_tile_object_get_property (GObject * object,
                                                                        guint property_id,
                                                                        GValue * value,
                                                                        GParamSpec * pspec);
static void _vala_synapse_gui_settings_window_plugin_tile_object_set_property (GObject * object,
                                                                        guint property_id,
                                                                        const GValue * value,
                                                                        GParamSpec * pspec);
static SynapseGuiSettingsWindowUIConfig* synapse_gui_settings_window_ui_config_new (void);
static SynapseGuiSettingsWindowUIConfig* synapse_gui_settings_window_ui_config_construct (GType object_type);
static void synapse_gui_settings_window_ui_config_finalize (GObject * obj);
static GType synapse_gui_settings_window_ui_config_get_type_once (void);
static void _vala_synapse_gui_settings_window_ui_config_get_property (GObject * object,
                                                               guint property_id,
                                                               GValue * value,
                                                               GParamSpec * pspec);
static void _vala_synapse_gui_settings_window_ui_config_set_property (GObject * object,
                                                               guint property_id,
                                                               const GValue * value,
                                                               GParamSpec * pspec);
static void synapse_gui_settings_window_finalize (GObject * obj);
static GType synapse_gui_settings_window_get_type_once (void);
static void _vala_synapse_gui_settings_window_get_property (GObject * object,
                                                     guint property_id,
                                                     GValue * value,
                                                     GParamSpec * pspec);
static void _vala_array_destroy (gpointer array,
                          gssize array_length,
                          GDestroyNotify destroy_func);
static void _vala_array_free (gpointer array,
                       gssize array_length,
                       GDestroyNotify destroy_func);
static inline gpointer _vala_memdup2 (gconstpointer mem,
                        gsize byte_size);

static inline gpointer
synapse_gui_settings_window_get_instance_private (SynapseGuiSettingsWindow* self)
{
	return G_STRUCT_MEMBER_P (self, SynapseGuiSettingsWindow_private_offset);
}

static gboolean
_gtk_widget_hide_on_delete_gtk_widget_delete_event (GtkWidget* _sender,
                                                    GdkEventAny* event,
                                                    gpointer self)
{
	gboolean result;
	result = gtk_widget_hide_on_delete ((GtkWidget*) self);
#line 147 "settings.vala"
	return result;
#line 519 "settings.c"
}

static void
_synapse_gui_settings_window_init_plugin_tiles_gtk_widget_map (GtkWidget* _sender,
                                                               gpointer self)
{
#line 155 "settings.vala"
	synapse_gui_settings_window_init_plugin_tiles ((SynapseGuiSettingsWindow*) self);
#line 528 "settings.c"
}

static gboolean
__lambda32_ (SynapseGuiSettingsWindow* self)
{
	gboolean result;
#line 157 "settings.vala"
	synapse_gui_settings_window_refresh_tiles (self);
#line 158 "settings.vala"
	result = FALSE;
#line 158 "settings.vala"
	return result;
#line 541 "settings.c"
}

static gboolean
___lambda32__gtk_widget_visibility_notify_event (GtkWidget* _sender,
                                                 GdkEventVisibility* event,
                                                 gpointer self)
{
	gboolean result;
	result = __lambda32_ ((SynapseGuiSettingsWindow*) self);
#line 156 "settings.vala"
	return result;
#line 553 "settings.c"
}

SynapseGuiSettingsWindow*
synapse_gui_settings_window_construct (GType object_type,
                                       SynapseDataSink* data_sink,
                                       SynapseGuiKeyComboConfig* key_combo_config)
{
	SynapseGuiSettingsWindow * self = NULL;
	SynapseConfigService* _tmp0_;
	SynapseConfigService* _tmp1_;
	SynapseConfigObject* _tmp2_;
	UIWidgetsTileView* _tmp3_;
	UIWidgetsTileView* _tmp4_;
#line 139 "settings.vala"
	g_return_val_if_fail (data_sink != NULL, NULL);
#line 139 "settings.vala"
	g_return_val_if_fail (key_combo_config != NULL, NULL);
#line 139 "settings.vala"
	self = (SynapseGuiSettingsWindow*) g_object_new (object_type, NULL);
#line 141 "settings.vala"
	gtk_window_set_title ((GtkWindow*) self, _ ("Synapse - Settings"));
#line 142 "settings.vala"
	self->priv->data_sink = data_sink;
#line 143 "settings.vala"
	self->priv->key_combo_config = key_combo_config;
#line 144 "settings.vala"
	gtk_window_set_position ((GtkWindow*) self, GTK_WIN_POS_CENTER);
#line 145 "settings.vala"
	gtk_widget_set_size_request ((GtkWidget*) self, 500, 450);
#line 146 "settings.vala"
	gtk_window_set_resizable ((GtkWindow*) self, FALSE);
#line 147 "settings.vala"
	g_signal_connect_object ((GtkWidget*) self, "delete-event", (GCallback) _gtk_widget_hide_on_delete_gtk_widget_delete_event, (GtkWidget*) self, 0);
#line 149 "settings.vala"
	_tmp0_ = synapse_config_service_get_default ();
#line 149 "settings.vala"
	_tmp1_ = _tmp0_;
#line 149 "settings.vala"
	_tmp2_ = synapse_config_service_bind_config (_tmp1_, "ui", "global", SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG);
#line 149 "settings.vala"
	_g_object_unref0 (self->priv->config);
#line 149 "settings.vala"
	self->priv->config = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG, SynapseGuiSettingsWindowUIConfig);
#line 149 "settings.vala"
	_g_object_unref0 (_tmp1_);
#line 152 "settings.vala"
	synapse_gui_settings_window_init_settings (self);
#line 153 "settings.vala"
	synapse_gui_settings_window_build_ui (self);
#line 155 "settings.vala"
	_tmp3_ = self->priv->tile_view;
#line 155 "settings.vala"
	g_signal_connect_object ((GtkWidget*) _tmp3_, "map", (GCallback) _synapse_gui_settings_window_init_plugin_tiles_gtk_widget_map, self, 0);
#line 156 "settings.vala"
	_tmp4_ = self->priv->tile_view;
#line 156 "settings.vala"
	g_signal_connect_object ((GtkWidget*) _tmp4_, "visibility-notify-event", (GCallback) ___lambda32__gtk_widget_visibility_notify_event, self, 0);
#line 139 "settings.vala"
	return self;
#line 613 "settings.c"
}

SynapseGuiSettingsWindow*
synapse_gui_settings_window_new (SynapseDataSink* data_sink,
                                 SynapseGuiKeyComboConfig* key_combo_config)
{
#line 139 "settings.vala"
	return synapse_gui_settings_window_construct (SYNAPSE_GUI_TYPE_SETTINGS_WINDOW, data_sink, key_combo_config);
#line 622 "settings.c"
}

static void
synapse_gui_settings_window_init_themes (SynapseGuiSettingsWindow* self)
{
	GeeHashMap* _tmp0_;
	GeeMap* _tmp1_;
	SynapseGuiSettingsWindowTheme _tmp2_ = {0};
	SynapseGuiSettingsWindowTheme _tmp3_;
	SynapseGuiSettingsWindowTheme _tmp4_;
	GeeMap* _tmp5_;
	SynapseGuiSettingsWindowTheme _tmp6_ = {0};
	SynapseGuiSettingsWindowTheme _tmp7_;
	SynapseGuiSettingsWindowTheme _tmp8_;
	GeeMap* _tmp9_;
	SynapseGuiSettingsWindowTheme _tmp10_ = {0};
	SynapseGuiSettingsWindowTheme _tmp11_;
	SynapseGuiSettingsWindowTheme _tmp12_;
	GeeMap* _tmp13_;
	SynapseGuiSettingsWindowTheme _tmp14_ = {0};
	SynapseGuiSettingsWindowTheme _tmp15_;
	SynapseGuiSettingsWindowTheme _tmp16_;
	GeeMap* _tmp17_;
	SynapseGuiSettingsWindowTheme _tmp18_ = {0};
	SynapseGuiSettingsWindowTheme _tmp19_;
	SynapseGuiSettingsWindowTheme _tmp20_;
	SynapseGuiSettingsWindowUIConfig* _tmp21_;
	const gchar* _tmp22_;
	const gchar* _tmp23_;
	gchar* _tmp24_;
#line 162 "settings.vala"
	g_return_if_fail (self != NULL);
#line 164 "settings.vala"
	_tmp0_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_THEME, (GBoxedCopyFunc) synapse_gui_settings_window_theme_dup, (GDestroyNotify) synapse_gui_settings_window_theme_free, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
#line 164 "settings.vala"
	_g_object_unref0 (self->priv->themes);
#line 164 "settings.vala"
	self->priv->themes = (GeeMap*) _tmp0_;
#line 166 "settings.vala"
	_tmp1_ = self->priv->themes;
#line 166 "settings.vala"
	synapse_gui_settings_window_theme_init (&_tmp2_, _ ("Default"), "", SYNAPSE_GUI_TYPE_VIEW_DEFAULT);
#line 166 "settings.vala"
	_tmp3_ = _tmp2_;
#line 166 "settings.vala"
	_tmp4_ = _tmp3_;
#line 166 "settings.vala"
	gee_map_set (_tmp1_, "default", &_tmp4_);
#line 166 "settings.vala"
	synapse_gui_settings_window_theme_destroy (&_tmp3_);
#line 167 "settings.vala"
	_tmp5_ = self->priv->themes;
#line 167 "settings.vala"
	synapse_gui_settings_window_theme_init (&_tmp6_, _ ("Essential"), "", SYNAPSE_GUI_TYPE_VIEW_ESSENTIAL);
#line 167 "settings.vala"
	_tmp7_ = _tmp6_;
#line 167 "settings.vala"
	_tmp8_ = _tmp7_;
#line 167 "settings.vala"
	gee_map_set (_tmp5_, "essential", &_tmp8_);
#line 167 "settings.vala"
	synapse_gui_settings_window_theme_destroy (&_tmp7_);
#line 168 "settings.vala"
	_tmp9_ = self->priv->themes;
#line 168 "settings.vala"
	synapse_gui_settings_window_theme_init (&_tmp10_, _ ("Doish"), "", SYNAPSE_GUI_TYPE_VIEW_DOISH);
#line 168 "settings.vala"
	_tmp11_ = _tmp10_;
#line 168 "settings.vala"
	_tmp12_ = _tmp11_;
#line 168 "settings.vala"
	gee_map_set (_tmp9_, "doish", &_tmp12_);
#line 168 "settings.vala"
	synapse_gui_settings_window_theme_destroy (&_tmp11_);
#line 169 "settings.vala"
	_tmp13_ = self->priv->themes;
#line 169 "settings.vala"
	synapse_gui_settings_window_theme_init (&_tmp14_, _ ("Side Doish"), "", SYNAPSE_GUI_TYPE_VIEW_SIDE_DOISH);
#line 169 "settings.vala"
	_tmp15_ = _tmp14_;
#line 169 "settings.vala"
	_tmp16_ = _tmp15_;
#line 169 "settings.vala"
	gee_map_set (_tmp13_, "side-doish", &_tmp16_);
#line 169 "settings.vala"
	synapse_gui_settings_window_theme_destroy (&_tmp15_);
#line 170 "settings.vala"
	_tmp17_ = self->priv->themes;
#line 170 "settings.vala"
	synapse_gui_settings_window_theme_init (&_tmp18_, _ ("Virgilio"), "", SYNAPSE_GUI_TYPE_VIEW_VIRGILIO);
#line 170 "settings.vala"
	_tmp19_ = _tmp18_;
#line 170 "settings.vala"
	_tmp20_ = _tmp19_;
#line 170 "settings.vala"
	gee_map_set (_tmp17_, "virgilio", &_tmp20_);
#line 170 "settings.vala"
	synapse_gui_settings_window_theme_destroy (&_tmp19_);
#line 172 "settings.vala"
	_tmp21_ = self->priv->config;
#line 172 "settings.vala"
	_tmp22_ = synapse_gui_settings_window_ui_config_get_ui_type (_tmp21_);
#line 172 "settings.vala"
	_tmp23_ = _tmp22_;
#line 172 "settings.vala"
	_tmp24_ = g_strdup (_tmp23_);
#line 172 "settings.vala"
	_g_free0 (self->priv->selected_theme);
#line 172 "settings.vala"
	self->priv->selected_theme = _tmp24_;
#line 733 "settings.c"
}

static gint
__lambda27_ (SynapseGuiSettingsWindow* self,
             SynapsePluginInfo* a,
             SynapsePluginInfo* b)
{
	SynapsePluginInfo* p1 = NULL;
	SynapsePluginInfo* p2 = NULL;
	GCompareFunc _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	gint result;
#line 180 "settings.vala"
	g_return_val_if_fail (a != NULL, 0);
#line 180 "settings.vala"
	g_return_val_if_fail (b != NULL, 0);
#line 181 "settings.vala"
	p1 = G_TYPE_CHECK_INSTANCE_CAST (a, SYNAPSE_TYPE_PLUGIN_INFO, SynapsePluginInfo);
#line 182 "settings.vala"
	p2 = G_TYPE_CHECK_INSTANCE_CAST (b, SYNAPSE_TYPE_PLUGIN_INFO, SynapsePluginInfo);
#line 183 "settings.vala"
	_tmp0_ = ((GCompareFunc) g_strcmp0);
#line 183 "settings.vala"
	_tmp1_ = p1->title;
#line 183 "settings.vala"
	_tmp2_ = p2->title;
#line 183 "settings.vala"
	result = _tmp0_ (_tmp1_, _tmp2_);
#line 183 "settings.vala"
	return result;
#line 765 "settings.c"
}

static gint
___lambda27__gcompare_data_func (gconstpointer a,
                                 gconstpointer b,
                                 gpointer self)
{
	gint result;
	result = __lambda27_ ((SynapseGuiSettingsWindow*) self, (SynapsePluginInfo*) a, (SynapsePluginInfo*) b);
#line 180 "settings.vala"
	return result;
#line 777 "settings.c"
}

static gpointer
_g_object_ref0 (gpointer self)
{
#line 193 "settings.vala"
	return self ? g_object_ref (self) : NULL;
#line 785 "settings.c"
}

static void
____lambda30_ (SynapseGuiSettingsWindow* self,
               UIWidgetsAbstractTileObject* tile_obj)
{
	SynapseGuiSettingsWindowPluginTileObject* pto = NULL;
	SynapseGuiSettingsWindowPluginTileObject* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	SynapseDataSink* _tmp3_;
	SynapsePluginInfo* _tmp4_;
	SynapsePluginInfo* _tmp5_;
	gboolean _tmp6_;
	gboolean _tmp7_;
#line 192 "settings.vala"
	g_return_if_fail (tile_obj != NULL);
#line 193 "settings.vala"
	_tmp0_ = _g_object_ref0 (SYNAPSE_GUI_SETTINGS_WINDOW_IS_PLUGIN_TILE_OBJECT (tile_obj) ? ((SynapseGuiSettingsWindowPluginTileObject*) tile_obj) : NULL);
#line 193 "settings.vala"
	pto = _tmp0_;
#line 194 "settings.vala"
	_tmp1_ = ui_widgets_abstract_tile_object_get_enabled (tile_obj);
#line 194 "settings.vala"
	_tmp2_ = _tmp1_;
#line 194 "settings.vala"
	synapse_gui_settings_window_plugin_tile_object_update_state (pto, !_tmp2_);
#line 195 "settings.vala"
	_tmp3_ = self->priv->data_sink;
#line 195 "settings.vala"
	_tmp4_ = synapse_gui_settings_window_plugin_tile_object_get_pi (pto);
#line 195 "settings.vala"
	_tmp5_ = _tmp4_;
#line 195 "settings.vala"
	_tmp6_ = ui_widgets_abstract_tile_object_get_enabled (tile_obj);
#line 195 "settings.vala"
	_tmp7_ = _tmp6_;
#line 195 "settings.vala"
	synapse_data_sink_set_plugin_enabled (_tmp3_, _tmp5_->plugin_type, _tmp7_);
#line 192 "settings.vala"
	_g_object_unref0 (pto);
#line 827 "settings.c"
}

static void
_____lambda30__ui_widgets_abstract_tile_object_active_changed (UIWidgetsAbstractTileObject* _sender,
                                                               gpointer self)
{
#line 192 "settings.vala"
	____lambda30_ ((SynapseGuiSettingsWindow*) self, _sender);
#line 836 "settings.c"
}

static void
____lambda31_ (SynapseGuiSettingsWindow* self,
               SynapseGuiSettingsWindowPluginTileObject* tile_obj)
{
	SynapseGuiSettingsWindowPluginTileObject* pto = NULL;
	SynapseGuiSettingsWindowPluginTileObject* _tmp0_;
	SynapseConfigurable* plugin = NULL;
	SynapseDataSink* _tmp1_;
	SynapsePluginInfo* _tmp2_;
	SynapsePluginInfo* _tmp3_;
	const gchar* _tmp4_;
	GObject* _tmp5_;
	SynapseConfigurable* _tmp6_;
	GtkWidget* widget = NULL;
	GtkWidget* _tmp7_;
	GtkDialog* dialog = NULL;
	GtkDialog* _tmp8_;
	GtkBox* _tmp9_;
#line 198 "settings.vala"
	g_return_if_fail (tile_obj != NULL);
#line 199 "settings.vala"
	_tmp0_ = _g_object_ref0 (SYNAPSE_GUI_SETTINGS_WINDOW_IS_PLUGIN_TILE_OBJECT (tile_obj) ? ((SynapseGuiSettingsWindowPluginTileObject*) tile_obj) : NULL);
#line 199 "settings.vala"
	pto = _tmp0_;
#line 200 "settings.vala"
	_tmp1_ = self->priv->data_sink;
#line 200 "settings.vala"
	_tmp2_ = synapse_gui_settings_window_plugin_tile_object_get_pi (pto);
#line 200 "settings.vala"
	_tmp3_ = _tmp2_;
#line 200 "settings.vala"
	_tmp4_ = g_type_name (_tmp3_->plugin_type);
#line 200 "settings.vala"
	_tmp5_ = synapse_data_sink_get_plugin (_tmp1_, _tmp4_);
#line 200 "settings.vala"
	_tmp6_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, SYNAPSE_TYPE_CONFIGURABLE) ? ((SynapseConfigurable*) _tmp5_) : NULL);
#line 200 "settings.vala"
	plugin = _tmp6_;
#line 201 "settings.vala"
	g_return_if_fail (plugin != NULL);
#line 203 "settings.vala"
	_tmp7_ = synapse_configurable_create_config_widget (plugin);
#line 203 "settings.vala"
	widget = _tmp7_;
#line 204 "settings.vala"
	_tmp8_ = (GtkDialog*) gtk_dialog_new_with_buttons (_ ("Configure plugin"), (GtkWindow*) self, GTK_DIALOG_MODAL, GTK_STOCK_CLOSE, NULL, NULL);
#line 204 "settings.vala"
	g_object_ref_sink (_tmp8_);
#line 204 "settings.vala"
	dialog = _tmp8_;
#line 208 "settings.vala"
	gtk_window_set_default_size ((GtkWindow*) dialog, 300, 200);
#line 209 "settings.vala"
	_tmp9_ = gtk_dialog_get_content_area (dialog);
#line 209 "settings.vala"
	gtk_container_add (G_TYPE_CHECK_INSTANCE_TYPE (_tmp9_, gtk_container_get_type ()) ? ((GtkContainer*) _tmp9_) : NULL, widget);
#line 210 "settings.vala"
	gtk_dialog_run (dialog);
#line 211 "settings.vala"
	gtk_widget_destroy ((GtkWidget*) dialog);
#line 198 "settings.vala"
	_g_object_unref0 (dialog);
#line 198 "settings.vala"
	_g_object_unref0 (widget);
#line 198 "settings.vala"
	_g_object_unref0 (plugin);
#line 198 "settings.vala"
	_g_object_unref0 (pto);
#line 907 "settings.c"
}

static void
_____lambda31__synapse_gui_settings_window_plugin_tile_object_configure (SynapseGuiSettingsWindowPluginTileObject* _sender,
                                                                         gpointer self)
{
#line 198 "settings.vala"
	____lambda31_ ((SynapseGuiSettingsWindow*) self, _sender);
#line 916 "settings.c"
}

static void
synapse_gui_settings_window_init_plugin_tiles (SynapseGuiSettingsWindow* self)
{
	UIWidgetsTileView* _tmp0_;
	GeeArrayList* arr = NULL;
	GeeArrayList* _tmp1_;
	GeeArrayList* _tmp2_;
	SynapsePluginRegistry* _tmp3_;
	SynapsePluginRegistry* _tmp4_;
	GeeList* _tmp5_;
	GeeList* _tmp6_;
	GeeArrayList* _tmp7_;
#line 175 "settings.vala"
	g_return_if_fail (self != NULL);
#line 177 "settings.vala"
	_tmp0_ = self->priv->tile_view;
#line 177 "settings.vala"
	ui_widgets_tile_view_clear (_tmp0_);
#line 178 "settings.vala"
	_tmp1_ = gee_array_list_new (SYNAPSE_TYPE_PLUGIN_INFO, (GBoxedCopyFunc) synapse_plugin_info_ref, (GDestroyNotify) synapse_plugin_info_unref, NULL, NULL, NULL);
#line 178 "settings.vala"
	arr = _tmp1_;
#line 179 "settings.vala"
	_tmp2_ = arr;
#line 179 "settings.vala"
	_tmp3_ = synapse_plugin_registry_get_default ();
#line 179 "settings.vala"
	_tmp4_ = _tmp3_;
#line 179 "settings.vala"
	_tmp5_ = synapse_plugin_registry_get_plugins (_tmp4_);
#line 179 "settings.vala"
	_tmp6_ = _tmp5_;
#line 179 "settings.vala"
	gee_array_list_add_all (_tmp2_, (GeeCollection*) _tmp6_);
#line 179 "settings.vala"
	_g_object_unref0 (_tmp6_);
#line 179 "settings.vala"
	_g_object_unref0 (_tmp4_);
#line 180 "settings.vala"
	_tmp7_ = arr;
#line 180 "settings.vala"
	gee_list_sort ((GeeList*) _tmp7_, ___lambda27__gcompare_data_func, g_object_ref (self), g_object_unref);
#line 961 "settings.c"
	{
		GeeArrayList* _pi_list = NULL;
		GeeArrayList* _tmp8_;
		gint _pi_size = 0;
		GeeArrayList* _tmp9_;
		gint _tmp10_;
		gint _tmp11_;
		gint _pi_index = 0;
#line 186 "settings.vala"
		_tmp8_ = arr;
#line 186 "settings.vala"
		_pi_list = _tmp8_;
#line 186 "settings.vala"
		_tmp9_ = _pi_list;
#line 186 "settings.vala"
		_tmp10_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp9_);
#line 186 "settings.vala"
		_tmp11_ = _tmp10_;
#line 186 "settings.vala"
		_pi_size = _tmp11_;
#line 186 "settings.vala"
		_pi_index = -1;
#line 186 "settings.vala"
		while (TRUE) {
#line 986 "settings.c"
			gint _tmp12_;
			gint _tmp13_;
			SynapsePluginInfo* pi = NULL;
			GeeArrayList* _tmp14_;
			gpointer _tmp15_;
			SynapseGuiSettingsWindowPluginTileObject* tile = NULL;
			SynapsePluginInfo* _tmp16_;
			SynapseGuiSettingsWindowPluginTileObject* _tmp17_;
			UIWidgetsTileView* _tmp18_;
			SynapseGuiSettingsWindowPluginTileObject* _tmp19_;
			SynapseGuiSettingsWindowPluginTileObject* _tmp20_;
			SynapseDataSink* _tmp21_;
			SynapsePluginInfo* _tmp22_;
			SynapseGuiSettingsWindowPluginTileObject* _tmp23_;
			SynapseGuiSettingsWindowPluginTileObject* _tmp24_;
#line 186 "settings.vala"
			_pi_index = _pi_index + 1;
#line 186 "settings.vala"
			_tmp12_ = _pi_index;
#line 186 "settings.vala"
			_tmp13_ = _pi_size;
#line 186 "settings.vala"
			if (!(_tmp12_ < _tmp13_)) {
#line 186 "settings.vala"
				break;
#line 1012 "settings.c"
			}
#line 186 "settings.vala"
			_tmp14_ = _pi_list;
#line 186 "settings.vala"
			_tmp15_ = gee_abstract_list_get ((GeeAbstractList*) _tmp14_, _pi_index);
#line 186 "settings.vala"
			pi = (SynapsePluginInfo*) _tmp15_;
#line 188 "settings.vala"
			_tmp16_ = pi;
#line 188 "settings.vala"
			_tmp17_ = synapse_gui_settings_window_plugin_tile_object_new (_tmp16_);
#line 188 "settings.vala"
			tile = _tmp17_;
#line 189 "settings.vala"
			_tmp18_ = self->priv->tile_view;
#line 189 "settings.vala"
			_tmp19_ = tile;
#line 189 "settings.vala"
			ui_widgets_tile_view_append_tile (_tmp18_, (UIWidgetsAbstractTileObject*) _tmp19_);
#line 190 "settings.vala"
			_tmp20_ = tile;
#line 190 "settings.vala"
			_tmp21_ = self->priv->data_sink;
#line 190 "settings.vala"
			_tmp22_ = pi;
#line 190 "settings.vala"
			synapse_gui_settings_window_plugin_tile_object_update_state (_tmp20_, synapse_data_sink_is_plugin_enabled (_tmp21_, _tmp22_->plugin_type));
#line 192 "settings.vala"
			_tmp23_ = tile;
#line 192 "settings.vala"
			g_signal_connect_object ((UIWidgetsAbstractTileObject*) _tmp23_, "active-changed", (GCallback) _____lambda30__ui_widgets_abstract_tile_object_active_changed, self, 0);
#line 198 "settings.vala"
			_tmp24_ = tile;
#line 198 "settings.vala"
			g_signal_connect_object (_tmp24_, "configure", (GCallback) _____lambda31__synapse_gui_settings_window_plugin_tile_object_configure, self, 0);
#line 186 "settings.vala"
			_g_object_unref0 (tile);
#line 186 "settings.vala"
			_synapse_plugin_info_unref0 (pi);
#line 1052 "settings.c"
		}
	}
#line 175 "settings.vala"
	_g_object_unref0 (arr);
#line 1057 "settings.c"
}

static void
synapse_gui_settings_window_refresh_tiles (SynapseGuiSettingsWindow* self)
{
	GList* tiles = NULL;
	UIWidgetsTileView* _tmp0_;
	GList* _tmp1_;
	GList* _tmp2_;
#line 216 "settings.vala"
	g_return_if_fail (self != NULL);
#line 218 "settings.vala"
	_tmp0_ = self->priv->tile_view;
#line 218 "settings.vala"
	_tmp1_ = ui_widgets_tile_view_get_tiles (_tmp0_);
#line 218 "settings.vala"
	tiles = _tmp1_;
#line 219 "settings.vala"
	_tmp2_ = tiles;
#line 1077 "settings.c"
	{
		GList* pti_collection = NULL;
		GList* pti_it = NULL;
#line 219 "settings.vala"
		pti_collection = _tmp2_;
#line 219 "settings.vala"
		for (pti_it = pti_collection; pti_it != NULL; pti_it = pti_it->next) {
#line 1085 "settings.c"
			UIWidgetsAbstractTileObject* pti = NULL;
#line 219 "settings.vala"
			pti = (UIWidgetsAbstractTileObject*) pti_it->data;
#line 1089 "settings.c"
			{
				UIWidgetsAbstractTileObject* _tmp3_;
#line 221 "settings.vala"
				_tmp3_ = pti;
#line 221 "settings.vala"
				synapse_gui_settings_window_plugin_tile_object_refresh (SYNAPSE_GUI_SETTINGS_WINDOW_IS_PLUGIN_TILE_OBJECT (_tmp3_) ? ((SynapseGuiSettingsWindowPluginTileObject*) _tmp3_) : NULL);
#line 1096 "settings.c"
			}
		}
	}
#line 216 "settings.vala"
	(tiles == NULL) ? NULL : (tiles = (g_list_free (tiles), NULL));
#line 1102 "settings.c"
}

static void
synapse_gui_settings_window_init_general_options (SynapseGuiSettingsWindow* self)
{
#line 225 "settings.vala"
	g_return_if_fail (self != NULL);
#line 227 "settings.vala"
	self->priv->autostart = FALSE;
#line 1112 "settings.c"
}

static void
synapse_gui_settings_window_init_settings (SynapseGuiSettingsWindow* self)
{
#line 230 "settings.vala"
	g_return_if_fail (self != NULL);
#line 232 "settings.vala"
	synapse_gui_settings_window_init_themes (self);
#line 233 "settings.vala"
	synapse_gui_settings_window_init_general_options (self);
#line 1124 "settings.c"
}

static gint
synapse_gui_settings_window_check_keybinding_in_use (SynapseGuiSettingsWindow* self,
                                                     gint for_index,
                                                     const gchar* keyname)
{
	gchar* combo = NULL;
	gint result;
#line 258 "settings.vala"
	g_return_val_if_fail (self != NULL, 0);
#line 258 "settings.vala"
	g_return_val_if_fail (keyname != NULL, 0);
#line 1138 "settings.c"
	{
		gint j = 0;
#line 261 "settings.vala"
		j = 0;
#line 1143 "settings.c"
		{
			gboolean _tmp0_ = FALSE;
#line 261 "settings.vala"
			_tmp0_ = TRUE;
#line 261 "settings.vala"
			while (TRUE) {
#line 1150 "settings.c"
				gchar** _tmp2_;
				gint _tmp2__length1;
				gint _tmp2__length2;
				gint _tmp3_;
				SynapseGuiKeyComboConfig* _tmp4_;
				gchar** _tmp5_;
				gint _tmp5__length1;
				gint _tmp5__length2;
				const gchar* _tmp6_;
				gchar* _tmp7_ = NULL;
				const gchar* _tmp8_;
#line 261 "settings.vala"
				if (!_tmp0_) {
#line 1164 "settings.c"
					gint _tmp1_;
#line 261 "settings.vala"
					_tmp1_ = j;
#line 261 "settings.vala"
					j = _tmp1_ + 1;
#line 1170 "settings.c"
				}
#line 261 "settings.vala"
				_tmp0_ = FALSE;
#line 261 "settings.vala"
				_tmp2_ = self->priv->key_combos;
#line 261 "settings.vala"
				_tmp2__length1 = self->priv->key_combos_length1;
#line 261 "settings.vala"
				_tmp2__length2 = self->priv->key_combos_length2;
#line 261 "settings.vala"
				_tmp3_ = _tmp2__length1;
#line 261 "settings.vala"
				if (!(j < _tmp3_)) {
#line 261 "settings.vala"
					break;
#line 1186 "settings.c"
				}
#line 263 "settings.vala"
				if (j == for_index) {
#line 263 "settings.vala"
					continue;
#line 1192 "settings.c"
				}
#line 264 "settings.vala"
				_tmp4_ = self->priv->key_combo_config;
#line 264 "settings.vala"
				_tmp5_ = self->priv->key_combos;
#line 264 "settings.vala"
				_tmp5__length1 = self->priv->key_combos_length1;
#line 264 "settings.vala"
				_tmp5__length2 = self->priv->key_combos_length2;
#line 264 "settings.vala"
				_tmp6_ = _tmp5_[(j * _tmp5__length2) + 0];
#line 264 "settings.vala"
				g_object_get ((GObject*) _tmp4_, _tmp6_, &_tmp7_, NULL);
#line 264 "settings.vala"
				_g_free0 (combo);
#line 264 "settings.vala"
				combo = _tmp7_;
#line 265 "settings.vala"
				_tmp8_ = combo;
#line 265 "settings.vala"
				if (g_strcmp0 (_tmp8_, keyname) == 0) {
#line 1214 "settings.c"
					gchar* cannot_bind = NULL;
					gchar* _tmp9_;
					const gchar* _tmp10_;
					gchar* _tmp11_;
					const gchar* _tmp12_;
					GtkMessageDialog* d = NULL;
					const gchar* _tmp13_;
					GtkMessageDialog* _tmp14_;
					GtkMessageDialog* _tmp15_;
					GtkMessageDialog* _tmp16_;
#line 267 "settings.vala"
					_tmp9_ = g_strdup (_ ("Shortcut already in use"));
#line 267 "settings.vala"
					cannot_bind = _tmp9_;
#line 268 "settings.vala"
					_tmp10_ = cannot_bind;
#line 268 "settings.vala"
					_tmp11_ = g_strdup_printf ("%s: \"%s\"", _tmp10_, keyname);
#line 268 "settings.vala"
					_g_free0 (cannot_bind);
#line 268 "settings.vala"
					cannot_bind = _tmp11_;
#line 269 "settings.vala"
					_tmp12_ = cannot_bind;
#line 269 "settings.vala"
					g_warning ("settings.vala:269: %s", _tmp12_);
#line 270 "settings.vala"
					_tmp13_ = cannot_bind;
#line 270 "settings.vala"
					_tmp14_ = (GtkMessageDialog*) gtk_message_dialog_new ((GtkWindow*) self, 0, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, "%s", _tmp13_);
#line 270 "settings.vala"
					g_object_ref_sink (_tmp14_);
#line 270 "settings.vala"
					d = _tmp14_;
#line 273 "settings.vala"
					_tmp15_ = d;
#line 273 "settings.vala"
					gtk_dialog_run ((GtkDialog*) _tmp15_);
#line 274 "settings.vala"
					_tmp16_ = d;
#line 274 "settings.vala"
					gtk_widget_destroy ((GtkWidget*) _tmp16_);
#line 275 "settings.vala"
					result = j;
#line 275 "settings.vala"
					_g_object_unref0 (d);
#line 275 "settings.vala"
					_g_free0 (cannot_bind);
#line 275 "settings.vala"
					_g_free0 (combo);
#line 275 "settings.vala"
					return result;
#line 1267 "settings.c"
				}
			}
		}
	}
#line 278 "settings.vala"
	result = -1;
#line 278 "settings.vala"
	_g_free0 (combo);
#line 278 "settings.vala"
	return result;
#line 1278 "settings.c"
}

static void
_synapse_gui_settings_window_autostart_toggled_gtk_toggle_button_toggled (GtkToggleButton* _sender,
                                                                          gpointer self)
{
#line 319 "settings.vala"
	synapse_gui_settings_window_autostart_toggled ((SynapseGuiSettingsWindow*) self, _sender);
#line 1287 "settings.c"
}

static void
__lambda23_ (SynapseGuiSettingsWindow* self,
             GtkToggleButton* tb)
{
	SynapseGuiSettingsWindowUIConfig* _tmp0_;
#line 325 "settings.vala"
	g_return_if_fail (tb != NULL);
#line 326 "settings.vala"
	_tmp0_ = self->priv->config;
#line 326 "settings.vala"
	synapse_gui_settings_window_ui_config_set_show_indicator (_tmp0_, gtk_toggle_button_get_active (tb));
#line 327 "settings.vala"
	g_object_notify ((GObject*) self, "indicator-active");
#line 1303 "settings.c"
}

static void
___lambda23__gtk_toggle_button_toggled (GtkToggleButton* _sender,
                                        gpointer self)
{
#line 325 "settings.vala"
	__lambda23_ ((SynapseGuiSettingsWindow*) self, _sender);
#line 1312 "settings.c"
}

static void
__lambda24_ (SynapseGuiSettingsWindow* self,
             GtkCellRendererAccel* a,
             const gchar* path,
             guint accel_key,
             GdkModifierType accel_mods,
             guint keycode)
{
	gchar* keyname = NULL;
	gchar* _tmp0_;
	gint index = 0;
	const gchar* _tmp10_;
	const gchar* _tmp11_;
	SynapseGuiKeyComboConfig* _tmp12_;
	gchar** _tmp13_;
	gint _tmp13__length1;
	gint _tmp13__length2;
	const gchar* _tmp14_;
	const gchar* _tmp15_;
	SynapseGuiKeyComboConfig* _tmp16_;
	GtkTreeIter iter = {0};
	GtkListStore* _tmp17_;
	GtkTreeIter _tmp18_ = {0};
	GtkListStore* _tmp19_;
	GtkTreeIter _tmp20_;
	const gchar* _tmp21_;
#line 362 "settings.vala"
	g_return_if_fail (a != NULL);
#line 362 "settings.vala"
	g_return_if_fail (path != NULL);
#line 363 "settings.vala"
	_tmp0_ = synapse_gui_key_combo_config_get_name_from_key (accel_key, accel_mods);
#line 363 "settings.vala"
	keyname = _tmp0_;
#line 365 "settings.vala"
	index = atoi (path);
#line 366 "settings.vala"
	if (index == 0) {
#line 1353 "settings.c"
		const gchar* _tmp1_;
		const gchar* _tmp2_ = NULL;
		const gchar* _tmp3_;
		const gchar* _tmp4_ = NULL;
		const gchar* _tmp5_;
		SynapseGuiKeyComboConfig* _tmp6_;
		gchar** _tmp7_;
		gint _tmp7__length1;
		gint _tmp7__length2;
		const gchar* _tmp8_;
		SynapseGuiKeyComboConfig* _tmp9_;
#line 368 "settings.vala"
		_tmp1_ = keyname;
#line 368 "settings.vala"
		if (synapse_gui_settings_window_check_keybinding_in_use (self, index, _tmp1_) >= 0) {
#line 368 "settings.vala"
			_g_free0 (keyname);
#line 368 "settings.vala"
			return;
#line 1373 "settings.c"
		}
#line 369 "settings.vala"
		_tmp3_ = keyname;
#line 369 "settings.vala"
		_tmp2_ = _tmp3_;
#line 369 "settings.vala"
		if (_tmp2_ == NULL) {
#line 369 "settings.vala"
			_tmp2_ = "";
#line 1383 "settings.c"
		}
#line 369 "settings.vala"
		synapse_gui_settings_window_set_keybinding (self, _tmp2_, TRUE);
#line 370 "settings.vala"
		_tmp5_ = keyname;
#line 370 "settings.vala"
		_tmp4_ = _tmp5_;
#line 370 "settings.vala"
		if (_tmp4_ == NULL) {
#line 370 "settings.vala"
			_tmp4_ = "";
#line 1395 "settings.c"
		}
#line 370 "settings.vala"
		_tmp6_ = self->priv->key_combo_config;
#line 370 "settings.vala"
		_tmp7_ = self->priv->key_combos;
#line 370 "settings.vala"
		_tmp7__length1 = self->priv->key_combos_length1;
#line 370 "settings.vala"
		_tmp7__length2 = self->priv->key_combos_length2;
#line 370 "settings.vala"
		_tmp8_ = _tmp7_[(index * _tmp7__length2) + 0];
#line 370 "settings.vala"
		g_object_set ((GObject*) _tmp6_, _tmp8_, _tmp4_, NULL);
#line 371 "settings.vala"
		_tmp9_ = self->priv->key_combo_config;
#line 371 "settings.vala"
		synapse_gui_key_combo_config_update_bindings (_tmp9_);
#line 372 "settings.vala"
		_g_free0 (keyname);
#line 372 "settings.vala"
		return;
#line 1417 "settings.c"
	}
#line 374 "settings.vala"
	_tmp10_ = keyname;
#line 374 "settings.vala"
	if (_tmp10_ == NULL) {
#line 374 "settings.vala"
		_g_free0 (keyname);
#line 374 "settings.vala"
		return;
#line 1427 "settings.c"
	}
#line 376 "settings.vala"
	_tmp11_ = keyname;
#line 376 "settings.vala"
	if (synapse_gui_settings_window_check_keybinding_in_use (self, index, _tmp11_) >= 0) {
#line 376 "settings.vala"
		_g_free0 (keyname);
#line 376 "settings.vala"
		return;
#line 1437 "settings.c"
	}
#line 378 "settings.vala"
	_tmp12_ = self->priv->key_combo_config;
#line 378 "settings.vala"
	_tmp13_ = self->priv->key_combos;
#line 378 "settings.vala"
	_tmp13__length1 = self->priv->key_combos_length1;
#line 378 "settings.vala"
	_tmp13__length2 = self->priv->key_combos_length2;
#line 378 "settings.vala"
	_tmp14_ = _tmp13_[(index * _tmp13__length2) + 0];
#line 378 "settings.vala"
	_tmp15_ = keyname;
#line 378 "settings.vala"
	g_object_set ((GObject*) _tmp12_, _tmp14_, _tmp15_, NULL);
#line 379 "settings.vala"
	_tmp16_ = self->priv->key_combo_config;
#line 379 "settings.vala"
	synapse_gui_key_combo_config_update_bindings (_tmp16_);
#line 382 "settings.vala"
	_tmp17_ = self->priv->model;
#line 382 "settings.vala"
	gtk_tree_model_get_iter_from_string ((GtkTreeModel*) _tmp17_, &_tmp18_, path);
#line 382 "settings.vala"
	iter = _tmp18_;
#line 383 "settings.vala"
	_tmp19_ = self->priv->model;
#line 383 "settings.vala"
	_tmp20_ = iter;
#line 383 "settings.vala"
	_tmp21_ = keyname;
#line 383 "settings.vala"
	gtk_list_store_set (_tmp19_, &_tmp20_, 1, _tmp21_, -1);
#line 362 "settings.vala"
	_g_free0 (keyname);
#line 1473 "settings.c"
}

static void
___lambda24__gtk_cell_renderer_accel_accel_edited (GtkCellRendererAccel* _sender,
                                                   const gchar* path_string,
                                                   guint accel_key,
                                                   GdkModifierType accel_mods,
                                                   guint hardware_keycode,
                                                   gpointer self)
{
#line 362 "settings.vala"
	__lambda24_ ((SynapseGuiSettingsWindow*) self, _sender, path_string, accel_key, accel_mods, hardware_keycode);
#line 1486 "settings.c"
}

static void
__lambda25_ (SynapseGuiSettingsWindow* self,
             GtkCellRendererAccel* a,
             const gchar* path)
{
	gint index = 0;
#line 385 "settings.vala"
	g_return_if_fail (a != NULL);
#line 385 "settings.vala"
	g_return_if_fail (path != NULL);
#line 386 "settings.vala"
	index = atoi (path);
#line 387 "settings.vala"
	if (index == 0) {
#line 387 "settings.vala"
		synapse_gui_settings_window_set_keybinding (self, "", TRUE);
#line 1505 "settings.c"
	}
}

static void
___lambda25__gtk_cell_renderer_accel_accel_cleared (GtkCellRendererAccel* _sender,
                                                    const gchar* path_string,
                                                    gpointer self)
{
#line 385 "settings.vala"
	__lambda25_ ((SynapseGuiSettingsWindow*) self, _sender, path_string);
#line 1516 "settings.c"
}

static void
__lambda26_ (SynapseGuiSettingsWindow* self)
{
#line 434 "settings.vala"
	gtk_widget_hide ((GtkWidget*) self);
#line 1524 "settings.c"
}

static void
___lambda26__gtk_button_clicked (GtkButton* _sender,
                                 gpointer self)
{
#line 433 "settings.vala"
	__lambda26_ ((SynapseGuiSettingsWindow*) self);
#line 1533 "settings.c"
}

static void
synapse_gui_settings_window_build_ui (SynapseGuiSettingsWindow* self)
{
	GtkBox* main_vbox = NULL;
	GtkBox* _tmp0_;
	GtkBox* _tmp1_;
	GtkBox* _tmp2_;
	GtkNotebook* tabs = NULL;
	GtkNotebook* _tmp3_;
	GtkBox* general_tab = NULL;
	GtkBox* _tmp4_;
	GtkBox* _tmp5_;
	GtkBox* plugin_tab = NULL;
	GtkBox* _tmp6_;
	GtkBox* _tmp7_;
	GtkBox* _tmp8_;
	GtkNotebook* _tmp9_;
	GtkNotebook* _tmp10_;
	GtkBox* _tmp11_;
	GtkLabel* _tmp12_;
	GtkLabel* _tmp13_;
	GtkNotebook* _tmp14_;
	GtkBox* _tmp15_;
	GtkLabel* _tmp16_;
	GtkLabel* _tmp17_;
	GtkFrame* theme_frame = NULL;
	GtkFrame* _tmp18_;
	GtkFrame* _tmp19_;
	GtkLabel* theme_frame_label = NULL;
	GtkLabel* _tmp20_;
	GtkLabel* _tmp21_;
	gchar* _tmp22_;
	gchar* _tmp23_;
	GtkFrame* _tmp24_;
	GtkLabel* _tmp25_;
	GtkBox* behavior_vbox = NULL;
	GtkBox* _tmp26_;
	GtkAlignment* align = NULL;
	GtkAlignment* _tmp27_;
	GtkAlignment* _tmp28_;
	GtkAlignment* _tmp29_;
	GtkBox* _tmp30_;
	GtkFrame* _tmp31_;
	GtkAlignment* _tmp32_;
	GtkBox* row = NULL;
	GtkBox* _tmp33_;
	GtkBox* _tmp34_;
	GtkBox* _tmp35_;
	GtkLabel* select_theme_label = NULL;
	GtkLabel* _tmp36_;
	GtkBox* _tmp37_;
	GtkLabel* _tmp38_;
	GtkBox* _tmp39_;
	GtkComboBox* _tmp40_;
	GtkComboBox* _tmp41_;
	GtkCheckButton* autostart = NULL;
	GtkCheckButton* _tmp42_;
	GtkCheckButton* _tmp43_;
	GtkCheckButton* _tmp44_;
	GtkBox* _tmp45_;
	GtkCheckButton* _tmp46_;
	GtkCheckButton* notification = NULL;
	GtkCheckButton* _tmp47_;
	GtkCheckButton* _tmp48_;
	SynapseGuiSettingsWindowUIConfig* _tmp49_;
	gboolean _tmp50_;
	gboolean _tmp51_;
	GtkCheckButton* _tmp52_;
	GtkBox* _tmp53_;
	GtkCheckButton* _tmp54_;
	GtkBox* _tmp55_;
	GtkFrame* _tmp56_;
	GtkFrame* shortcut_frame = NULL;
	GtkFrame* _tmp57_;
	GtkFrame* _tmp58_;
	GtkLabel* shortcut_frame_label = NULL;
	GtkLabel* _tmp59_;
	GtkLabel* _tmp60_;
	gchar* _tmp61_;
	gchar* _tmp62_;
	GtkFrame* _tmp63_;
	GtkLabel* _tmp64_;
	GtkAlignment* _tmp65_;
	GtkAlignment* _tmp66_;
	GtkScrolledWindow* shortcut_scroll = NULL;
	GtkScrolledWindow* _tmp67_;
	GtkScrolledWindow* _tmp68_;
	GtkScrolledWindow* _tmp69_;
	GtkBox* tree_vbox = NULL;
	GtkBox* _tmp70_;
	GtkTreeView* treeview = NULL;
	GtkTreeView* _tmp71_;
	GtkBox* _tmp72_;
	GtkScrolledWindow* _tmp73_;
	GtkScrolledWindow* _tmp74_;
	GtkTreeView* _tmp75_;
	GtkAlignment* _tmp76_;
	GtkBox* _tmp77_;
	GtkFrame* _tmp78_;
	GtkAlignment* _tmp79_;
	GtkBox* _tmp80_;
	GtkFrame* _tmp81_;
	GtkListStore* _tmp82_;
	GtkTreeView* _tmp83_;
	GtkListStore* _tmp84_;
	GtkTreeViewColumn* col = NULL;
	GtkCellRendererText* _tmp85_;
	GtkCellRendererText* _tmp86_;
	GtkTreeViewColumn* _tmp87_;
	GtkTreeViewColumn* _tmp88_;
	GtkTreeView* _tmp89_;
	GtkTreeViewColumn* _tmp90_;
	GtkCellRendererAccel* ren = NULL;
	GtkCellRendererAccel* _tmp91_;
	GtkCellRendererAccel* _tmp92_;
	GtkCellRendererAccel* _tmp93_;
	GtkCellRendererAccel* _tmp94_;
	GtkCellRendererAccel* _tmp95_;
	GtkCellRendererAccel* _tmp96_;
	GtkTreeViewColumn* _tmp97_;
	GtkTreeView* _tmp98_;
	GtkTreeViewColumn* _tmp99_;
	GtkBox* info_box = NULL;
	GtkBox* _tmp115_;
	GtkImage* info_image = NULL;
	GtkImage* _tmp116_;
	GtkLabel* info_label = NULL;
	gchar* _tmp117_;
	gchar* _tmp118_;
	GtkLabel* _tmp119_;
	GtkLabel* _tmp120_;
	GtkBox* _tmp121_;
	GtkScrolledWindow* scroll = NULL;
	GtkScrolledWindow* _tmp122_;
	UIWidgetsTileView* _tmp123_;
	UIWidgetsTileView* _tmp124_;
	UIWidgetsTileView* _tmp125_;
	UIWidgetsTileView* _tmp126_;
	GtkBox* _tmp127_;
	GtkButtonBox* bbox = NULL;
	GtkButtonBox* _tmp128_;
	GtkButton* close_button = NULL;
	GtkButton* _tmp129_;
	GtkBox* _tmp130_;
	GtkBox* _tmp131_;
#line 281 "settings.vala"
	g_return_if_fail (self != NULL);
#line 283 "settings.vala"
	_tmp0_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
#line 283 "settings.vala"
	g_object_ref_sink (_tmp0_);
#line 283 "settings.vala"
	main_vbox = _tmp0_;
#line 284 "settings.vala"
	_tmp1_ = main_vbox;
#line 284 "settings.vala"
	gtk_container_set_border_width ((GtkContainer*) _tmp1_, (guint) 12);
#line 285 "settings.vala"
	_tmp2_ = main_vbox;
#line 285 "settings.vala"
	gtk_container_add ((GtkContainer*) self, (GtkWidget*) _tmp2_);
#line 287 "settings.vala"
	_tmp3_ = (GtkNotebook*) gtk_notebook_new ();
#line 287 "settings.vala"
	g_object_ref_sink (_tmp3_);
#line 287 "settings.vala"
	tabs = _tmp3_;
#line 288 "settings.vala"
	_tmp4_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
#line 288 "settings.vala"
	g_object_ref_sink (_tmp4_);
#line 288 "settings.vala"
	general_tab = _tmp4_;
#line 289 "settings.vala"
	_tmp5_ = general_tab;
#line 289 "settings.vala"
	gtk_container_set_border_width ((GtkContainer*) _tmp5_, (guint) 12);
#line 290 "settings.vala"
	_tmp6_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
#line 290 "settings.vala"
	g_object_ref_sink (_tmp6_);
#line 290 "settings.vala"
	plugin_tab = _tmp6_;
#line 291 "settings.vala"
	_tmp7_ = plugin_tab;
#line 291 "settings.vala"
	gtk_container_set_border_width ((GtkContainer*) _tmp7_, (guint) 12);
#line 292 "settings.vala"
	_tmp8_ = main_vbox;
#line 292 "settings.vala"
	_tmp9_ = tabs;
#line 292 "settings.vala"
	gtk_box_pack_start (_tmp8_, (GtkWidget*) _tmp9_, TRUE, TRUE, (guint) 0);
#line 293 "settings.vala"
	_tmp10_ = tabs;
#line 293 "settings.vala"
	_tmp11_ = general_tab;
#line 293 "settings.vala"
	_tmp12_ = (GtkLabel*) gtk_label_new (_ ("General"));
#line 293 "settings.vala"
	g_object_ref_sink (_tmp12_);
#line 293 "settings.vala"
	_tmp13_ = _tmp12_;
#line 293 "settings.vala"
	gtk_notebook_append_page (_tmp10_, (GtkWidget*) _tmp11_, (GtkWidget*) _tmp13_);
#line 293 "settings.vala"
	_g_object_unref0 (_tmp13_);
#line 294 "settings.vala"
	_tmp14_ = tabs;
#line 294 "settings.vala"
	_tmp15_ = plugin_tab;
#line 294 "settings.vala"
	_tmp16_ = (GtkLabel*) gtk_label_new (_ ("Plugins"));
#line 294 "settings.vala"
	g_object_ref_sink (_tmp16_);
#line 294 "settings.vala"
	_tmp17_ = _tmp16_;
#line 294 "settings.vala"
	gtk_notebook_append_page (_tmp14_, (GtkWidget*) _tmp15_, (GtkWidget*) _tmp17_);
#line 294 "settings.vala"
	_g_object_unref0 (_tmp17_);
#line 297 "settings.vala"
	_tmp18_ = (GtkFrame*) gtk_frame_new (NULL);
#line 297 "settings.vala"
	g_object_ref_sink (_tmp18_);
#line 297 "settings.vala"
	theme_frame = _tmp18_;
#line 298 "settings.vala"
	_tmp19_ = theme_frame;
#line 298 "settings.vala"
	gtk_frame_set_shadow_type (_tmp19_, GTK_SHADOW_NONE);
#line 299 "settings.vala"
	_tmp20_ = (GtkLabel*) gtk_label_new (NULL);
#line 299 "settings.vala"
	g_object_ref_sink (_tmp20_);
#line 299 "settings.vala"
	theme_frame_label = _tmp20_;
#line 300 "settings.vala"
	_tmp21_ = theme_frame_label;
#line 300 "settings.vala"
	_tmp22_ = g_markup_printf_escaped ("<b>%s</b>", _ ("Behavior & Look"));
#line 300 "settings.vala"
	_tmp23_ = _tmp22_;
#line 300 "settings.vala"
	gtk_label_set_markup (_tmp21_, _tmp23_);
#line 300 "settings.vala"
	_g_free0 (_tmp23_);
#line 301 "settings.vala"
	_tmp24_ = theme_frame;
#line 301 "settings.vala"
	_tmp25_ = theme_frame_label;
#line 301 "settings.vala"
	gtk_frame_set_label_widget (_tmp24_, (GtkWidget*) _tmp25_);
#line 303 "settings.vala"
	_tmp26_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
#line 303 "settings.vala"
	g_object_ref_sink (_tmp26_);
#line 303 "settings.vala"
	behavior_vbox = _tmp26_;
#line 304 "settings.vala"
	_tmp27_ = (GtkAlignment*) gtk_alignment_new (0.5f, 0.5f, 1.0f, 1.0f);
#line 304 "settings.vala"
	g_object_ref_sink (_tmp27_);
#line 304 "settings.vala"
	align = _tmp27_;
#line 305 "settings.vala"
	_tmp28_ = align;
#line 305 "settings.vala"
	gtk_alignment_set_padding (_tmp28_, (guint) 6, (guint) 12, (guint) 12, (guint) 12);
#line 306 "settings.vala"
	_tmp29_ = align;
#line 306 "settings.vala"
	_tmp30_ = behavior_vbox;
#line 306 "settings.vala"
	gtk_container_add ((GtkContainer*) _tmp29_, (GtkWidget*) _tmp30_);
#line 307 "settings.vala"
	_tmp31_ = theme_frame;
#line 307 "settings.vala"
	_tmp32_ = align;
#line 307 "settings.vala"
	gtk_container_add ((GtkContainer*) _tmp31_, (GtkWidget*) _tmp32_);
#line 310 "settings.vala"
	_tmp33_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
#line 310 "settings.vala"
	g_object_ref_sink (_tmp33_);
#line 310 "settings.vala"
	row = _tmp33_;
#line 311 "settings.vala"
	_tmp34_ = behavior_vbox;
#line 311 "settings.vala"
	_tmp35_ = row;
#line 311 "settings.vala"
	gtk_box_pack_start (_tmp34_, (GtkWidget*) _tmp35_, FALSE, TRUE, (guint) 0);
#line 312 "settings.vala"
	_tmp36_ = (GtkLabel*) gtk_label_new (_ ("Theme:"));
#line 312 "settings.vala"
	g_object_ref_sink (_tmp36_);
#line 312 "settings.vala"
	select_theme_label = _tmp36_;
#line 313 "settings.vala"
	_tmp37_ = row;
#line 313 "settings.vala"
	_tmp38_ = select_theme_label;
#line 313 "settings.vala"
	gtk_box_pack_start (_tmp37_, (GtkWidget*) _tmp38_, FALSE, FALSE, (guint) 0);
#line 314 "settings.vala"
	_tmp39_ = row;
#line 314 "settings.vala"
	_tmp40_ = synapse_gui_settings_window_build_theme_combo (self);
#line 314 "settings.vala"
	_tmp41_ = _tmp40_;
#line 314 "settings.vala"
	gtk_box_pack_end (_tmp39_, (GtkWidget*) _tmp41_, FALSE, FALSE, (guint) 0);
#line 314 "settings.vala"
	_g_object_unref0 (_tmp41_);
#line 317 "settings.vala"
	_tmp42_ = (GtkCheckButton*) gtk_check_button_new_with_label (_ ("Startup on login"));
#line 317 "settings.vala"
	g_object_ref_sink (_tmp42_);
#line 317 "settings.vala"
	autostart = _tmp42_;
#line 318 "settings.vala"
	_tmp43_ = autostart;
#line 318 "settings.vala"
	gtk_toggle_button_set_active ((GtkToggleButton*) _tmp43_, synapse_gui_settings_window_autostart_exists (self));
#line 319 "settings.vala"
	_tmp44_ = autostart;
#line 319 "settings.vala"
	g_signal_connect_object ((GtkToggleButton*) _tmp44_, "toggled", (GCallback) _synapse_gui_settings_window_autostart_toggled_gtk_toggle_button_toggled, self, 0);
#line 320 "settings.vala"
	_tmp45_ = behavior_vbox;
#line 320 "settings.vala"
	_tmp46_ = autostart;
#line 320 "settings.vala"
	gtk_box_pack_start (_tmp45_, (GtkWidget*) _tmp46_, FALSE, TRUE, (guint) 0);
#line 323 "settings.vala"
	_tmp47_ = (GtkCheckButton*) gtk_check_button_new_with_label (_ ("Show notification icon"));
#line 323 "settings.vala"
	g_object_ref_sink (_tmp47_);
#line 323 "settings.vala"
	notification = _tmp47_;
#line 324 "settings.vala"
	_tmp48_ = notification;
#line 324 "settings.vala"
	_tmp49_ = self->priv->config;
#line 324 "settings.vala"
	_tmp50_ = synapse_gui_settings_window_ui_config_get_show_indicator (_tmp49_);
#line 324 "settings.vala"
	_tmp51_ = _tmp50_;
#line 324 "settings.vala"
	gtk_toggle_button_set_active ((GtkToggleButton*) _tmp48_, _tmp51_);
#line 325 "settings.vala"
	_tmp52_ = notification;
#line 325 "settings.vala"
	g_signal_connect_object ((GtkToggleButton*) _tmp52_, "toggled", (GCallback) ___lambda23__gtk_toggle_button_toggled, self, 0);
#line 329 "settings.vala"
	_tmp53_ = behavior_vbox;
#line 329 "settings.vala"
	_tmp54_ = notification;
#line 329 "settings.vala"
	gtk_box_pack_start (_tmp53_, (GtkWidget*) _tmp54_, FALSE, TRUE, (guint) 0);
#line 331 "settings.vala"
	_tmp55_ = general_tab;
#line 331 "settings.vala"
	_tmp56_ = theme_frame;
#line 331 "settings.vala"
	gtk_box_pack_start (_tmp55_, (GtkWidget*) _tmp56_, FALSE, TRUE, (guint) 0);
#line 334 "settings.vala"
	_tmp57_ = (GtkFrame*) gtk_frame_new (NULL);
#line 334 "settings.vala"
	g_object_ref_sink (_tmp57_);
#line 334 "settings.vala"
	shortcut_frame = _tmp57_;
#line 335 "settings.vala"
	_tmp58_ = shortcut_frame;
#line 335 "settings.vala"
	gtk_frame_set_shadow_type (_tmp58_, GTK_SHADOW_NONE);
#line 336 "settings.vala"
	_tmp59_ = (GtkLabel*) gtk_label_new (NULL);
#line 336 "settings.vala"
	g_object_ref_sink (_tmp59_);
#line 336 "settings.vala"
	shortcut_frame_label = _tmp59_;
#line 337 "settings.vala"
	_tmp60_ = shortcut_frame_label;
#line 337 "settings.vala"
	_tmp61_ = g_markup_printf_escaped ("<b>%s</b>", _ ("Shortcuts"));
#line 337 "settings.vala"
	_tmp62_ = _tmp61_;
#line 337 "settings.vala"
	gtk_label_set_markup (_tmp60_, _tmp62_);
#line 337 "settings.vala"
	_g_free0 (_tmp62_);
#line 338 "settings.vala"
	_tmp63_ = shortcut_frame;
#line 338 "settings.vala"
	_tmp64_ = shortcut_frame_label;
#line 338 "settings.vala"
	gtk_frame_set_label_widget (_tmp63_, (GtkWidget*) _tmp64_);
#line 339 "settings.vala"
	_tmp65_ = (GtkAlignment*) gtk_alignment_new (0.5f, 0.5f, 1.0f, 1.0f);
#line 339 "settings.vala"
	g_object_ref_sink (_tmp65_);
#line 339 "settings.vala"
	_g_object_unref0 (align);
#line 339 "settings.vala"
	align = _tmp65_;
#line 340 "settings.vala"
	_tmp66_ = align;
#line 340 "settings.vala"
	gtk_alignment_set_padding (_tmp66_, (guint) 6, (guint) 12, (guint) 12, (guint) 12);
#line 342 "settings.vala"
	_tmp67_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL);
#line 342 "settings.vala"
	g_object_ref_sink (_tmp67_);
#line 342 "settings.vala"
	shortcut_scroll = _tmp67_;
#line 343 "settings.vala"
	_tmp68_ = shortcut_scroll;
#line 343 "settings.vala"
	gtk_scrolled_window_set_shadow_type (_tmp68_, GTK_SHADOW_IN);
#line 344 "settings.vala"
	_tmp69_ = shortcut_scroll;
#line 344 "settings.vala"
	gtk_scrolled_window_set_policy (_tmp69_, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
#line 345 "settings.vala"
	_tmp70_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
#line 345 "settings.vala"
	g_object_ref_sink (_tmp70_);
#line 345 "settings.vala"
	tree_vbox = _tmp70_;
#line 346 "settings.vala"
	_tmp71_ = (GtkTreeView*) gtk_tree_view_new ();
#line 346 "settings.vala"
	g_object_ref_sink (_tmp71_);
#line 346 "settings.vala"
	treeview = _tmp71_;
#line 347 "settings.vala"
	_tmp72_ = tree_vbox;
#line 347 "settings.vala"
	_tmp73_ = shortcut_scroll;
#line 347 "settings.vala"
	gtk_box_pack_start (_tmp72_, (GtkWidget*) _tmp73_, TRUE, TRUE, (guint) 0);
#line 348 "settings.vala"
	_tmp74_ = shortcut_scroll;
#line 348 "settings.vala"
	_tmp75_ = treeview;
#line 348 "settings.vala"
	gtk_container_add ((GtkContainer*) _tmp74_, (GtkWidget*) _tmp75_);
#line 349 "settings.vala"
	_tmp76_ = align;
#line 349 "settings.vala"
	_tmp77_ = tree_vbox;
#line 349 "settings.vala"
	gtk_container_add ((GtkContainer*) _tmp76_, (GtkWidget*) _tmp77_);
#line 350 "settings.vala"
	_tmp78_ = shortcut_frame;
#line 350 "settings.vala"
	_tmp79_ = align;
#line 350 "settings.vala"
	gtk_container_add ((GtkContainer*) _tmp78_, (GtkWidget*) _tmp79_);
#line 351 "settings.vala"
	_tmp80_ = general_tab;
#line 351 "settings.vala"
	_tmp81_ = shortcut_frame;
#line 351 "settings.vala"
	gtk_box_pack_start (_tmp80_, (GtkWidget*) _tmp81_, TRUE, TRUE, (guint) 0);
#line 353 "settings.vala"
	_tmp82_ = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_STRING, -1);
#line 353 "settings.vala"
	_g_object_unref0 (self->priv->model);
#line 353 "settings.vala"
	self->priv->model = _tmp82_;
#line 354 "settings.vala"
	_tmp83_ = treeview;
#line 354 "settings.vala"
	_tmp84_ = self->priv->model;
#line 354 "settings.vala"
	gtk_tree_view_set_model (_tmp83_, (GtkTreeModel*) _tmp84_);
#line 356 "settings.vala"
	_tmp85_ = (GtkCellRendererText*) gtk_cell_renderer_text_new ();
#line 356 "settings.vala"
	g_object_ref_sink (_tmp85_);
#line 356 "settings.vala"
	_tmp86_ = _tmp85_;
#line 356 "settings.vala"
	_tmp87_ = gtk_tree_view_column_new_with_attributes (_ ("Action"), (GtkCellRenderer*) _tmp86_, "text", 0, NULL);
#line 356 "settings.vala"
	g_object_ref_sink (_tmp87_);
#line 356 "settings.vala"
	_tmp88_ = _tmp87_;
#line 356 "settings.vala"
	_g_object_unref0 (_tmp86_);
#line 356 "settings.vala"
	col = _tmp88_;
#line 357 "settings.vala"
	_tmp89_ = treeview;
#line 357 "settings.vala"
	_tmp90_ = col;
#line 357 "settings.vala"
	gtk_tree_view_append_column (_tmp89_, _tmp90_);
#line 359 "settings.vala"
	_tmp91_ = (GtkCellRendererAccel*) gtk_cell_renderer_accel_new ();
#line 359 "settings.vala"
	g_object_ref_sink (_tmp91_);
#line 359 "settings.vala"
	ren = _tmp91_;
#line 360 "settings.vala"
	_tmp92_ = ren;
#line 360 "settings.vala"
	g_object_set ((GtkCellRendererText*) _tmp92_, "editable", TRUE, NULL);
#line 361 "settings.vala"
	_tmp93_ = ren;
#line 361 "settings.vala"
	g_object_set (_tmp93_, "accel-mode", GTK_CELL_RENDERER_ACCEL_MODE_OTHER, NULL);
#line 362 "settings.vala"
	_tmp94_ = ren;
#line 362 "settings.vala"
	g_signal_connect_object (_tmp94_, "accel-edited", (GCallback) ___lambda24__gtk_cell_renderer_accel_accel_edited, self, 0);
#line 385 "settings.vala"
	_tmp95_ = ren;
#line 385 "settings.vala"
	g_signal_connect_object (_tmp95_, "accel-cleared", (GCallback) ___lambda25__gtk_cell_renderer_accel_accel_cleared, self, 0);
#line 389 "settings.vala"
	_tmp96_ = ren;
#line 389 "settings.vala"
	_tmp97_ = gtk_tree_view_column_new_with_attributes (_ ("Shortcut"), (GtkCellRenderer*) _tmp96_, "text", 1, NULL);
#line 389 "settings.vala"
	g_object_ref_sink (_tmp97_);
#line 389 "settings.vala"
	_g_object_unref0 (col);
#line 389 "settings.vala"
	col = _tmp97_;
#line 390 "settings.vala"
	_tmp98_ = treeview;
#line 390 "settings.vala"
	_tmp99_ = col;
#line 390 "settings.vala"
	gtk_tree_view_append_column (_tmp98_, _tmp99_);
#line 2075 "settings.c"
	{
		gint j = 0;
#line 393 "settings.vala"
		j = 0;
#line 2080 "settings.c"
		{
			gboolean _tmp100_ = FALSE;
#line 393 "settings.vala"
			_tmp100_ = TRUE;
#line 393 "settings.vala"
			while (TRUE) {
#line 2087 "settings.c"
				gchar** _tmp102_;
				gint _tmp102__length1;
				gint _tmp102__length2;
				gint _tmp103_;
				GtkTreeIter iter = {0};
				GtkListStore* _tmp104_;
				GtkTreeIter _tmp105_ = {0};
				gchar* combo = NULL;
				SynapseGuiKeyComboConfig* _tmp106_;
				gchar** _tmp107_;
				gint _tmp107__length1;
				gint _tmp107__length2;
				const gchar* _tmp108_;
				gchar* _tmp109_ = NULL;
				GtkListStore* _tmp110_;
				GtkTreeIter _tmp111_;
				gchar** _tmp112_;
				gint _tmp112__length1;
				gint _tmp112__length2;
				const gchar* _tmp113_;
				const gchar* _tmp114_;
#line 393 "settings.vala"
				if (!_tmp100_) {
#line 2111 "settings.c"
					gint _tmp101_;
#line 393 "settings.vala"
					_tmp101_ = j;
#line 393 "settings.vala"
					j = _tmp101_ + 1;
#line 2117 "settings.c"
				}
#line 393 "settings.vala"
				_tmp100_ = FALSE;
#line 393 "settings.vala"
				_tmp102_ = self->priv->key_combos;
#line 393 "settings.vala"
				_tmp102__length1 = self->priv->key_combos_length1;
#line 393 "settings.vala"
				_tmp102__length2 = self->priv->key_combos_length2;
#line 393 "settings.vala"
				_tmp103_ = _tmp102__length1;
#line 393 "settings.vala"
				if (!(j < _tmp103_)) {
#line 393 "settings.vala"
					break;
#line 2133 "settings.c"
				}
#line 396 "settings.vala"
				_tmp104_ = self->priv->model;
#line 396 "settings.vala"
				gtk_list_store_append (_tmp104_, &_tmp105_);
#line 396 "settings.vala"
				iter = _tmp105_;
#line 398 "settings.vala"
				_tmp106_ = self->priv->key_combo_config;
#line 398 "settings.vala"
				_tmp107_ = self->priv->key_combos;
#line 398 "settings.vala"
				_tmp107__length1 = self->priv->key_combos_length1;
#line 398 "settings.vala"
				_tmp107__length2 = self->priv->key_combos_length2;
#line 398 "settings.vala"
				_tmp108_ = _tmp107_[(j * _tmp107__length2) + 0];
#line 398 "settings.vala"
				g_object_get ((GObject*) _tmp106_, _tmp108_, &_tmp109_, NULL);
#line 398 "settings.vala"
				_g_free0 (combo);
#line 398 "settings.vala"
				combo = _tmp109_;
#line 399 "settings.vala"
				_tmp110_ = self->priv->model;
#line 399 "settings.vala"
				_tmp111_ = iter;
#line 399 "settings.vala"
				_tmp112_ = self->priv->key_combos;
#line 399 "settings.vala"
				_tmp112__length1 = self->priv->key_combos_length1;
#line 399 "settings.vala"
				_tmp112__length2 = self->priv->key_combos_length2;
#line 399 "settings.vala"
				_tmp113_ = _tmp112_[(j * _tmp112__length2) + 1];
#line 399 "settings.vala"
				_tmp114_ = combo;
#line 399 "settings.vala"
				gtk_list_store_set (_tmp110_, &_tmp111_, 0, _tmp113_, 1, _tmp114_, -1);
#line 393 "settings.vala"
				_g_free0 (combo);
#line 2175 "settings.c"
			}
		}
	}
#line 404 "settings.vala"
	_tmp115_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
#line 404 "settings.vala"
	g_object_ref_sink (_tmp115_);
#line 404 "settings.vala"
	info_box = _tmp115_;
#line 405 "settings.vala"
	_tmp116_ = (GtkImage*) gtk_image_new_from_stock (GTK_STOCK_INFO, (GtkIconSize) GTK_ICON_SIZE_MENU);
#line 405 "settings.vala"
	g_object_ref_sink (_tmp116_);
#line 405 "settings.vala"
	info_image = _tmp116_;
#line 406 "settings.vala"
	gtk_box_pack_start (info_box, (GtkWidget*) info_image, FALSE, TRUE, (guint) 0);
#line 407 "settings.vala"
	_tmp117_ = g_markup_printf_escaped ("<span size=\"small\">%s</span>", _ ("Click the shortcut you wish to change and press the new shortcut."));
#line 407 "settings.vala"
	_tmp118_ = _tmp117_;
#line 407 "settings.vala"
	_tmp119_ = (GtkLabel*) gtk_label_new (_tmp118_);
#line 407 "settings.vala"
	g_object_ref_sink (_tmp119_);
#line 407 "settings.vala"
	_tmp120_ = _tmp119_;
#line 407 "settings.vala"
	_g_free0 (_tmp118_);
#line 407 "settings.vala"
	info_label = _tmp120_;
#line 409 "settings.vala"
	gtk_label_set_use_markup (info_label, TRUE);
#line 410 "settings.vala"
	gtk_misc_set_alignment ((GtkMisc*) info_label, 0.0f, 0.5f);
#line 411 "settings.vala"
	g_object_set (info_label, "wrap", TRUE, NULL);
#line 412 "settings.vala"
	gtk_box_pack_start (info_box, (GtkWidget*) info_label, TRUE, TRUE, (guint) 0);
#line 413 "settings.vala"
	gtk_widget_show_all ((GtkWidget*) info_box);
#line 415 "settings.vala"
	_tmp121_ = tree_vbox;
#line 415 "settings.vala"
	gtk_box_pack_start (_tmp121_, (GtkWidget*) info_box, FALSE, TRUE, (guint) 0);
#line 418 "settings.vala"
	_tmp122_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL);
#line 418 "settings.vala"
	g_object_ref_sink (_tmp122_);
#line 418 "settings.vala"
	scroll = _tmp122_;
#line 419 "settings.vala"
	gtk_scrolled_window_set_policy (scroll, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
#line 420 "settings.vala"
	gtk_scrolled_window_set_shadow_type (scroll, GTK_SHADOW_IN);
#line 421 "settings.vala"
	_tmp123_ = ui_widgets_tile_view_new ();
#line 421 "settings.vala"
	g_object_ref_sink (_tmp123_);
#line 421 "settings.vala"
	_g_object_unref0 (self->priv->tile_view);
#line 421 "settings.vala"
	self->priv->tile_view = _tmp123_;
#line 422 "settings.vala"
	_tmp124_ = self->priv->tile_view;
#line 422 "settings.vala"
	ui_widgets_tile_view_set_icon_size (_tmp124_, 32);
#line 423 "settings.vala"
	_tmp125_ = self->priv->tile_view;
#line 423 "settings.vala"
	gtk_widget_show ((GtkWidget*) _tmp125_);
#line 424 "settings.vala"
	_tmp126_ = self->priv->tile_view;
#line 424 "settings.vala"
	gtk_scrolled_window_add_with_viewport (scroll, (GtkWidget*) _tmp126_);
#line 425 "settings.vala"
	gtk_widget_show ((GtkWidget*) scroll);
#line 427 "settings.vala"
	_tmp127_ = plugin_tab;
#line 427 "settings.vala"
	gtk_box_pack_start (_tmp127_, (GtkWidget*) scroll, TRUE, TRUE, (guint) 0);
#line 430 "settings.vala"
	_tmp128_ = (GtkButtonBox*) gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL);
#line 430 "settings.vala"
	g_object_ref_sink (_tmp128_);
#line 430 "settings.vala"
	bbox = _tmp128_;
#line 431 "settings.vala"
	gtk_button_box_set_layout (bbox, GTK_BUTTONBOX_END);
#line 432 "settings.vala"
	_tmp129_ = (GtkButton*) gtk_button_new_from_stock (GTK_STOCK_CLOSE);
#line 432 "settings.vala"
	g_object_ref_sink (_tmp129_);
#line 432 "settings.vala"
	close_button = _tmp129_;
#line 433 "settings.vala"
	g_signal_connect_object (close_button, "clicked", (GCallback) ___lambda26__gtk_button_clicked, self, 0);
#line 436 "settings.vala"
	gtk_box_pack_start ((GtkBox*) bbox, (GtkWidget*) close_button, TRUE, TRUE, (guint) 0);
#line 438 "settings.vala"
	_tmp130_ = main_vbox;
#line 438 "settings.vala"
	gtk_box_pack_start (_tmp130_, (GtkWidget*) bbox, FALSE, TRUE, (guint) 0);
#line 440 "settings.vala"
	_tmp131_ = main_vbox;
#line 440 "settings.vala"
	gtk_widget_show_all ((GtkWidget*) _tmp131_);
#line 281 "settings.vala"
	_g_object_unref0 (close_button);
#line 281 "settings.vala"
	_g_object_unref0 (bbox);
#line 281 "settings.vala"
	_g_object_unref0 (scroll);
#line 281 "settings.vala"
	_g_object_unref0 (info_label);
#line 281 "settings.vala"
	_g_object_unref0 (info_image);
#line 281 "settings.vala"
	_g_object_unref0 (info_box);
#line 281 "settings.vala"
	_g_object_unref0 (ren);
#line 281 "settings.vala"
	_g_object_unref0 (col);
#line 281 "settings.vala"
	_g_object_unref0 (treeview);
#line 281 "settings.vala"
	_g_object_unref0 (tree_vbox);
#line 281 "settings.vala"
	_g_object_unref0 (shortcut_scroll);
#line 281 "settings.vala"
	_g_object_unref0 (shortcut_frame_label);
#line 281 "settings.vala"
	_g_object_unref0 (shortcut_frame);
#line 281 "settings.vala"
	_g_object_unref0 (notification);
#line 281 "settings.vala"
	_g_object_unref0 (autostart);
#line 281 "settings.vala"
	_g_object_unref0 (select_theme_label);
#line 281 "settings.vala"
	_g_object_unref0 (row);
#line 281 "settings.vala"
	_g_object_unref0 (align);
#line 281 "settings.vala"
	_g_object_unref0 (behavior_vbox);
#line 281 "settings.vala"
	_g_object_unref0 (theme_frame_label);
#line 281 "settings.vala"
	_g_object_unref0 (theme_frame);
#line 281 "settings.vala"
	_g_object_unref0 (plugin_tab);
#line 281 "settings.vala"
	_g_object_unref0 (general_tab);
#line 281 "settings.vala"
	_g_object_unref0 (tabs);
#line 281 "settings.vala"
	_g_object_unref0 (main_vbox);
#line 2333 "settings.c"
}

void
synapse_gui_settings_window_set_keybinding (SynapseGuiSettingsWindow* self,
                                            const gchar* key,
                                            gboolean emit)
{
	GtkListStore* _tmp0_;
#line 445 "settings.vala"
	g_return_if_fail (self != NULL);
#line 445 "settings.vala"
	g_return_if_fail (key != NULL);
#line 447 "settings.vala"
	_tmp0_ = self->priv->model;
#line 447 "settings.vala"
	if (_tmp0_ != NULL) {
#line 2350 "settings.c"
		GtkTreeIter iter = {0};
		GtkListStore* _tmp1_;
		GtkTreeIter _tmp2_ = {0};
		gboolean _tmp3_;
#line 450 "settings.vala"
		_tmp1_ = self->priv->model;
#line 450 "settings.vala"
		_tmp3_ = gtk_tree_model_get_iter_first ((GtkTreeModel*) _tmp1_, &_tmp2_);
#line 450 "settings.vala"
		iter = _tmp2_;
#line 450 "settings.vala"
		if (_tmp3_) {
#line 2363 "settings.c"
			const gchar* _tmp4_ = NULL;
			GtkListStore* _tmp5_;
			GtkTreeIter _tmp6_;
#line 452 "settings.vala"
			if (g_strcmp0 (key, "") != 0) {
#line 452 "settings.vala"
				_tmp4_ = key;
#line 2371 "settings.c"
			} else {
#line 452 "settings.vala"
				_tmp4_ = _ ("Disabled");
#line 2375 "settings.c"
			}
#line 452 "settings.vala"
			_tmp5_ = self->priv->model;
#line 452 "settings.vala"
			_tmp6_ = iter;
#line 452 "settings.vala"
			gtk_list_store_set (_tmp5_, &_tmp6_, 1, _tmp4_, -1);
#line 2383 "settings.c"
		}
	}
#line 455 "settings.vala"
	if (emit) {
#line 455 "settings.vala"
		g_signal_emit (self, synapse_gui_settings_window_signals[SYNAPSE_GUI_SETTINGS_WINDOW_KEYBINDING_CHANGED_SIGNAL], 0, key);
#line 2390 "settings.c"
	}
}

static Block7Data*
block7_data_ref (Block7Data* _data7_)
{
#line 458 "settings.vala"
	g_atomic_int_inc (&_data7_->_ref_count_);
#line 458 "settings.vala"
	return _data7_;
#line 2401 "settings.c"
}

static void
block7_data_unref (void * _userdata_)
{
	Block7Data* _data7_;
	_data7_ = (Block7Data*) _userdata_;
#line 458 "settings.vala"
	if (g_atomic_int_dec_and_test (&_data7_->_ref_count_)) {
#line 2411 "settings.c"
		SynapseGuiSettingsWindow* self;
#line 458 "settings.vala"
		self = _data7_->self;
#line 458 "settings.vala"
		_g_object_unref0 (_data7_->cb_themes);
#line 458 "settings.vala"
		_g_object_unref0 (self);
#line 458 "settings.vala"
		g_slice_free (Block7Data, _data7_);
#line 2421 "settings.c"
	}
}

static void
__lambda22_ (Block7Data* _data7_)
{
	SynapseGuiSettingsWindow* self;
	SynapseGuiSettingsWindowUIConfig* _tmp0_;
	GtkComboBoxText* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	gchar* _tmp4_;
#line 470 "settings.vala"
	self = _data7_->self;
#line 471 "settings.vala"
	_tmp0_ = self->priv->config;
#line 471 "settings.vala"
	_tmp1_ = _data7_->cb_themes;
#line 471 "settings.vala"
	_tmp2_ = gtk_combo_box_get_active_id ((GtkComboBox*) _tmp1_);
#line 471 "settings.vala"
	_tmp3_ = _tmp2_;
#line 471 "settings.vala"
	synapse_gui_settings_window_ui_config_set_ui_type (_tmp0_, _tmp3_);
#line 471 "settings.vala"
	_tmp4_ = g_strdup (_tmp3_);
#line 471 "settings.vala"
	_g_free0 (self->priv->selected_theme);
#line 471 "settings.vala"
	self->priv->selected_theme = _tmp4_;
#line 472 "settings.vala"
	g_signal_emit (self, synapse_gui_settings_window_signals[SYNAPSE_GUI_SETTINGS_WINDOW_THEME_SELECTED_SIGNAL], 0, synapse_gui_settings_window_get_current_theme (self));
#line 2454 "settings.c"
}

static void
___lambda22__gtk_combo_box_changed (GtkComboBox* _sender,
                                    gpointer self)
{
#line 470 "settings.vala"
	__lambda22_ (self);
#line 2463 "settings.c"
}

static GtkComboBox*
synapse_gui_settings_window_build_theme_combo (SynapseGuiSettingsWindow* self)
{
	Block7Data* _data7_;
	GtkComboBoxText* _tmp0_;
	GeeMap* _tmp1_;
	const gchar* _tmp2_;
	GtkComboBoxText* _tmp29_;
	GtkComboBoxText* _tmp30_;
	GtkComboBox* _tmp31_;
	GtkComboBox* result;
#line 458 "settings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 458 "settings.vala"
	_data7_ = g_slice_new0 (Block7Data);
#line 458 "settings.vala"
	_data7_->_ref_count_ = 1;
#line 458 "settings.vala"
	_data7_->self = g_object_ref (self);
#line 460 "settings.vala"
	_tmp0_ = (GtkComboBoxText*) gtk_combo_box_text_new ();
#line 460 "settings.vala"
	g_object_ref_sink (_tmp0_);
#line 460 "settings.vala"
	_data7_->cb_themes = _tmp0_;
#line 462 "settings.vala"
	_tmp1_ = self->priv->themes;
#line 462 "settings.vala"
	_tmp2_ = self->priv->selected_theme;
#line 462 "settings.vala"
	if (!gee_map_has_key (_tmp1_, _tmp2_)) {
#line 2497 "settings.c"
		gchar* _tmp3_;
#line 462 "settings.vala"
		_tmp3_ = g_strdup ("default");
#line 462 "settings.vala"
		_g_free0 (self->priv->selected_theme);
#line 462 "settings.vala"
		self->priv->selected_theme = _tmp3_;
#line 2505 "settings.c"
	}
	{
		GeeIterator* _e_it = NULL;
		GeeMap* _tmp4_;
		GeeSet* _tmp5_;
		GeeSet* _tmp6_;
		GeeSet* _tmp7_;
		GeeIterator* _tmp8_;
		GeeIterator* _tmp9_;
#line 463 "settings.vala"
		_tmp4_ = self->priv->themes;
#line 463 "settings.vala"
		_tmp5_ = gee_map_get_entries (_tmp4_);
#line 463 "settings.vala"
		_tmp6_ = _tmp5_;
#line 463 "settings.vala"
		_tmp7_ = _tmp6_;
#line 463 "settings.vala"
		_tmp8_ = gee_iterable_iterator ((GeeIterable*) _tmp7_);
#line 463 "settings.vala"
		_tmp9_ = _tmp8_;
#line 463 "settings.vala"
		_g_object_unref0 (_tmp7_);
#line 463 "settings.vala"
		_e_it = _tmp9_;
#line 463 "settings.vala"
		while (TRUE) {
#line 2533 "settings.c"
			GeeIterator* _tmp10_;
			GeeMapEntry* e = NULL;
			GeeIterator* _tmp11_;
			gpointer _tmp12_;
			GtkComboBoxText* _tmp13_;
			GeeMapEntry* _tmp14_;
			gconstpointer _tmp15_;
			gconstpointer _tmp16_;
			GeeMapEntry* _tmp17_;
			gconstpointer _tmp18_;
			gconstpointer _tmp19_;
			const gchar* _tmp20_;
			GeeMapEntry* _tmp21_;
			gconstpointer _tmp22_;
			gconstpointer _tmp23_;
			const gchar* _tmp24_;
#line 463 "settings.vala"
			_tmp10_ = _e_it;
#line 463 "settings.vala"
			if (!gee_iterator_next (_tmp10_)) {
#line 463 "settings.vala"
				break;
#line 2556 "settings.c"
			}
#line 463 "settings.vala"
			_tmp11_ = _e_it;
#line 463 "settings.vala"
			_tmp12_ = gee_iterator_get (_tmp11_);
#line 463 "settings.vala"
			e = (GeeMapEntry*) _tmp12_;
#line 465 "settings.vala"
			_tmp13_ = _data7_->cb_themes;
#line 465 "settings.vala"
			_tmp14_ = e;
#line 465 "settings.vala"
			_tmp15_ = gee_map_entry_get_key (_tmp14_);
#line 465 "settings.vala"
			_tmp16_ = _tmp15_;
#line 465 "settings.vala"
			_tmp17_ = e;
#line 465 "settings.vala"
			_tmp18_ = gee_map_entry_get_value (_tmp17_);
#line 465 "settings.vala"
			_tmp19_ = _tmp18_;
#line 465 "settings.vala"
			_tmp20_ = (*((SynapseGuiSettingsWindowTheme*) _tmp19_)).name;
#line 465 "settings.vala"
			gtk_combo_box_text_append (_tmp13_, (const gchar*) _tmp16_, _tmp20_);
#line 466 "settings.vala"
			_tmp21_ = e;
#line 466 "settings.vala"
			_tmp22_ = gee_map_entry_get_key (_tmp21_);
#line 466 "settings.vala"
			_tmp23_ = _tmp22_;
#line 466 "settings.vala"
			_tmp24_ = self->priv->selected_theme;
#line 466 "settings.vala"
			if (g_strcmp0 ((const gchar*) _tmp23_, _tmp24_) == 0) {
#line 2592 "settings.c"
				GtkComboBoxText* _tmp25_;
				GeeMapEntry* _tmp26_;
				gconstpointer _tmp27_;
				gconstpointer _tmp28_;
#line 467 "settings.vala"
				_tmp25_ = _data7_->cb_themes;
#line 467 "settings.vala"
				_tmp26_ = e;
#line 467 "settings.vala"
				_tmp27_ = gee_map_entry_get_key (_tmp26_);
#line 467 "settings.vala"
				_tmp28_ = _tmp27_;
#line 467 "settings.vala"
				gtk_combo_box_set_active_id ((GtkComboBox*) _tmp25_, (const gchar*) _tmp28_);
#line 2607 "settings.c"
			}
#line 463 "settings.vala"
			_g_object_unref0 (e);
#line 2611 "settings.c"
		}
#line 463 "settings.vala"
		_g_object_unref0 (_e_it);
#line 2615 "settings.c"
	}
#line 470 "settings.vala"
	_tmp29_ = _data7_->cb_themes;
#line 470 "settings.vala"
	g_signal_connect_data ((GtkComboBox*) _tmp29_, "changed", (GCallback) ___lambda22__gtk_combo_box_changed, block7_data_ref (_data7_), (GClosureNotify) block7_data_unref, 0);
#line 475 "settings.vala"
	_tmp30_ = _data7_->cb_themes;
#line 475 "settings.vala"
	_tmp31_ = _g_object_ref0 ((GtkComboBox*) _tmp30_);
#line 475 "settings.vala"
	result = _tmp31_;
#line 475 "settings.vala"
	block7_data_unref (_data7_);
#line 475 "settings.vala"
	_data7_ = NULL;
#line 475 "settings.vala"
	return result;
#line 2633 "settings.c"
}

GType
synapse_gui_settings_window_get_current_theme (SynapseGuiSettingsWindow* self)
{
	GeeMap* _tmp0_;
	const gchar* _tmp1_;
	GType result;
#line 477 "settings.vala"
	g_return_val_if_fail (self != NULL, 0UL);
#line 479 "settings.vala"
	_tmp0_ = self->priv->themes;
#line 479 "settings.vala"
	_tmp1_ = self->priv->selected_theme;
#line 479 "settings.vala"
	if (gee_map_has_key (_tmp0_, _tmp1_)) {
#line 2650 "settings.c"
		GeeMap* _tmp2_;
		const gchar* _tmp3_;
		gpointer _tmp4_;
		SynapseGuiSettingsWindowTheme* _tmp5_;
		GType _tmp6_;
#line 480 "settings.vala"
		_tmp2_ = self->priv->themes;
#line 480 "settings.vala"
		_tmp3_ = self->priv->selected_theme;
#line 480 "settings.vala"
		_tmp4_ = gee_map_get (_tmp2_, _tmp3_);
#line 480 "settings.vala"
		_tmp5_ = (SynapseGuiSettingsWindowTheme*) _tmp4_;
#line 480 "settings.vala"
		_tmp6_ = (*_tmp5_).tclass;
#line 480 "settings.vala"
		_synapse_gui_settings_window_theme_free0 (_tmp5_);
#line 480 "settings.vala"
		result = _tmp6_;
#line 480 "settings.vala"
		return result;
#line 2672 "settings.c"
	} else {
		GeeMap* _tmp7_;
		gpointer _tmp8_;
		SynapseGuiSettingsWindowTheme* _tmp9_;
		GType _tmp10_;
#line 482 "settings.vala"
		_tmp7_ = self->priv->themes;
#line 482 "settings.vala"
		_tmp8_ = gee_map_get (_tmp7_, "default");
#line 482 "settings.vala"
		_tmp9_ = (SynapseGuiSettingsWindowTheme*) _tmp8_;
#line 482 "settings.vala"
		_tmp10_ = (*_tmp9_).tclass;
#line 482 "settings.vala"
		_synapse_gui_settings_window_theme_free0 (_tmp9_);
#line 482 "settings.vala"
		result = _tmp10_;
#line 482 "settings.vala"
		return result;
#line 2692 "settings.c"
	}
}

static gboolean
synapse_gui_settings_window_autostart_exists (SynapseGuiSettingsWindow* self)
{
	const gchar* _tmp0_;
	gboolean result;
#line 491 "settings.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 493 "settings.vala"
	_tmp0_ = self->priv->autostart_file;
#line 493 "settings.vala"
	result = g_file_test (_tmp0_, G_FILE_TEST_EXISTS);
#line 493 "settings.vala"
	return result;
#line 2709 "settings.c"
}

static void
synapse_gui_settings_window_autostart_toggled (SynapseGuiSettingsWindow* self,
                                               GtkWidget* w)
{
	GtkCheckButton* check = NULL;
	GtkCheckButton* _tmp0_;
	gboolean active = FALSE;
	GtkCheckButton* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_ = FALSE;
	GError* _inner_error0_ = NULL;
#line 496 "settings.vala"
	g_return_if_fail (self != NULL);
#line 496 "settings.vala"
	g_return_if_fail (w != NULL);
#line 498 "settings.vala"
	_tmp0_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (w, gtk_check_button_get_type ()) ? ((GtkCheckButton*) w) : NULL);
#line 498 "settings.vala"
	check = _tmp0_;
#line 499 "settings.vala"
	_tmp1_ = check;
#line 499 "settings.vala"
	_tmp2_ = gtk_toggle_button_get_active ((GtkToggleButton*) _tmp1_);
#line 499 "settings.vala"
	_tmp3_ = _tmp2_;
#line 499 "settings.vala"
	active = _tmp3_;
#line 500 "settings.vala"
	if (!active) {
#line 500 "settings.vala"
		_tmp4_ = synapse_gui_settings_window_autostart_exists (self);
#line 2744 "settings.c"
	} else {
#line 500 "settings.vala"
		_tmp4_ = FALSE;
#line 2748 "settings.c"
	}
#line 500 "settings.vala"
	if (_tmp4_) {
#line 2752 "settings.c"
		const gchar* _tmp5_;
#line 503 "settings.vala"
		_tmp5_ = self->priv->autostart_file;
#line 503 "settings.vala"
		g_remove (_tmp5_);
#line 2758 "settings.c"
	} else {
		gboolean _tmp6_ = FALSE;
#line 505 "settings.vala"
		if (active) {
#line 505 "settings.vala"
			_tmp6_ = !synapse_gui_settings_window_autostart_exists (self);
#line 2765 "settings.c"
		} else {
#line 505 "settings.vala"
			_tmp6_ = FALSE;
#line 2769 "settings.c"
		}
#line 505 "settings.vala"
		if (_tmp6_) {
#line 2773 "settings.c"
			gchar* autostart_entry = NULL;
			gchar* _tmp7_;
			gchar* autostart_dir = NULL;
			const gchar* _tmp8_;
			gchar* _tmp9_;
			const gchar* _tmp10_;
#line 507 "settings.vala"
			_tmp7_ = g_strdup ("[Desktop Entry]\n" "Name=Synapse\n" "Exec=synapse --startup\n" "Encoding=UTF-8\n" "Type=Application\n" "X-GNOME-Autostart-enabled=true\n" "Icon=synapse\n");
#line 507 "settings.vala"
			autostart_entry = _tmp7_;
#line 517 "settings.vala"
			_tmp8_ = g_get_user_config_dir ();
#line 517 "settings.vala"
			_tmp9_ = g_build_filename (_tmp8_, "autostart", NULL, NULL);
#line 517 "settings.vala"
			autostart_dir = _tmp9_;
#line 520 "settings.vala"
			_tmp10_ = autostart_dir;
#line 520 "settings.vala"
			if (!g_file_test (_tmp10_, G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR)) {
#line 2794 "settings.c"
				const gchar* _tmp11_;
#line 522 "settings.vala"
				_tmp11_ = autostart_dir;
#line 522 "settings.vala"
				g_mkdir_with_parents (_tmp11_, 0755);
#line 2800 "settings.c"
			}
			{
				const gchar* _tmp12_;
				const gchar* _tmp13_;
#line 526 "settings.vala"
				_tmp12_ = self->priv->autostart_file;
#line 526 "settings.vala"
				_tmp13_ = autostart_entry;
#line 526 "settings.vala"
				g_file_set_contents (_tmp12_, _tmp13_, (gssize) -1, &_inner_error0_);
#line 526 "settings.vala"
				if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 2813 "settings.c"
					goto __catch0_g_error;
				}
			}
			goto __finally0;
			__catch0_g_error:
			{
				GError* err = NULL;
				GtkMessageDialog* d = NULL;
				GError* _tmp14_;
				const gchar* _tmp15_;
				GtkMessageDialog* _tmp16_;
				GtkMessageDialog* _tmp17_;
				GtkMessageDialog* _tmp18_;
#line 524 "settings.vala"
				err = _inner_error0_;
#line 524 "settings.vala"
				_inner_error0_ = NULL;
#line 530 "settings.vala"
				_tmp14_ = err;
#line 530 "settings.vala"
				_tmp15_ = _tmp14_->message;
#line 530 "settings.vala"
				_tmp16_ = (GtkMessageDialog*) gtk_message_dialog_new ((GtkWindow*) self, 0, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, "%s", _tmp15_);
#line 530 "settings.vala"
				g_object_ref_sink (_tmp16_);
#line 530 "settings.vala"
				d = _tmp16_;
#line 533 "settings.vala"
				_tmp17_ = d;
#line 533 "settings.vala"
				gtk_dialog_run ((GtkDialog*) _tmp17_);
#line 534 "settings.vala"
				_tmp18_ = d;
#line 534 "settings.vala"
				gtk_widget_destroy ((GtkWidget*) _tmp18_);
#line 524 "settings.vala"
				_g_object_unref0 (d);
#line 524 "settings.vala"
				_g_error_free0 (err);
#line 2853 "settings.c"
			}
			__finally0:
#line 524 "settings.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 524 "settings.vala"
				_g_free0 (autostart_dir);
#line 524 "settings.vala"
				_g_free0 (autostart_entry);
#line 524 "settings.vala"
				_g_object_unref0 (check);
#line 524 "settings.vala"
				g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 524 "settings.vala"
				g_clear_error (&_inner_error0_);
#line 524 "settings.vala"
				return;
#line 2870 "settings.c"
			}
#line 505 "settings.vala"
			_g_free0 (autostart_dir);
#line 505 "settings.vala"
			_g_free0 (autostart_entry);
#line 2876 "settings.c"
		}
	}
#line 496 "settings.vala"
	_g_object_unref0 (check);
#line 2881 "settings.c"
}

gboolean
synapse_gui_settings_window_get_indicator_active (SynapseGuiSettingsWindow* self)
{
	gboolean result;
	SynapseGuiSettingsWindowUIConfig* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
#line 137 "settings.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 137 "settings.vala"
	_tmp0_ = self->priv->config;
#line 137 "settings.vala"
	_tmp1_ = synapse_gui_settings_window_ui_config_get_show_indicator (_tmp0_);
#line 137 "settings.vala"
	_tmp2_ = _tmp1_;
#line 137 "settings.vala"
	result = _tmp2_;
#line 137 "settings.vala"
	return result;
#line 2903 "settings.c"
}

static void
g_cclosure_user_marshal_VOID__GTYPE (GClosure * closure,
                                     GValue * return_value,
                                     guint n_param_values,
                                     const GValue * param_values,
                                     gpointer invocation_hint,
                                     gpointer marshal_data)
{
	typedef void (*GMarshalFunc_VOID__GTYPE) (gpointer data1, GType arg_1, gpointer data2);
	register GMarshalFunc_VOID__GTYPE callback;
	register GCClosure * cc;
	register gpointer data1;
	register gpointer data2;
	cc = (GCClosure *) closure;
#line 24 "settings.vala"
	g_return_if_fail (n_param_values == 2);
#line 24 "settings.vala"
	if (G_CCLOSURE_SWAP_DATA (closure)) {
#line 24 "settings.vala"
		data1 = closure->data;
#line 24 "settings.vala"
		data2 = param_values->data[0].v_pointer;
#line 2928 "settings.c"
	} else {
#line 24 "settings.vala"
		data1 = param_values->data[0].v_pointer;
#line 24 "settings.vala"
		data2 = closure->data;
#line 2934 "settings.c"
	}
#line 24 "settings.vala"
	callback = (GMarshalFunc_VOID__GTYPE) (marshal_data ? marshal_data : cc->callback);
#line 24 "settings.vala"
	callback (data1, g_value_get_gtype (param_values + 1), data2);
#line 2940 "settings.c"
}

static inline gpointer
synapse_gui_settings_window_plugin_tile_object_get_instance_private (SynapseGuiSettingsWindowPluginTileObject* self)
{
	return G_STRUCT_MEMBER_P (self, SynapseGuiSettingsWindowPluginTileObject_private_offset);
}

static SynapseGuiSettingsWindowPluginTileObject*
synapse_gui_settings_window_plugin_tile_object_construct (GType object_type,
                                                          SynapsePluginInfo* info)
{
	SynapseGuiSettingsWindowPluginTileObject * self = NULL;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
#line 32 "settings.vala"
	g_return_val_if_fail (info != NULL, NULL);
#line 34 "settings.vala"
	_tmp0_ = info->title;
#line 34 "settings.vala"
	_tmp1_ = info->description;
#line 34 "settings.vala"
	_tmp2_ = info->icon_name;
#line 34 "settings.vala"
	self = (SynapseGuiSettingsWindowPluginTileObject*) g_object_new (object_type, "name", _tmp0_, "description", _tmp1_, "icon", _tmp2_, "pi", info, "show-action-button", info->runnable, "add-button-stock", GTK_STOCK_YES, "remove-button-stock", GTK_STOCK_NO, NULL);
#line 32 "settings.vala"
	return self;
#line 2969 "settings.c"
}

static SynapseGuiSettingsWindowPluginTileObject*
synapse_gui_settings_window_plugin_tile_object_new (SynapsePluginInfo* info)
{
#line 32 "settings.vala"
	return synapse_gui_settings_window_plugin_tile_object_construct (SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT, info);
#line 2977 "settings.c"
}

static void
synapse_gui_settings_window_plugin_tile_object_update_state (SynapseGuiSettingsWindowPluginTileObject* self,
                                                             gboolean enabled)
{
	gboolean _tmp0_ = FALSE;
	gboolean _tmp2_;
	gboolean _tmp3_;
#line 77 "settings.vala"
	g_return_if_fail (self != NULL);
#line 79 "settings.vala"
	if (enabled) {
#line 2991 "settings.c"
		SynapsePluginInfo* _tmp1_;
#line 79 "settings.vala"
		_tmp1_ = self->priv->_pi;
#line 79 "settings.vala"
		_tmp0_ = _tmp1_->runnable;
#line 2997 "settings.c"
	} else {
#line 79 "settings.vala"
		_tmp0_ = FALSE;
#line 3001 "settings.c"
	}
#line 79 "settings.vala"
	ui_widgets_abstract_tile_object_set_enabled ((UIWidgetsAbstractTileObject*) self, _tmp0_);
#line 81 "settings.vala"
	_tmp2_ = ui_widgets_abstract_tile_object_get_enabled ((UIWidgetsAbstractTileObject*) self);
#line 81 "settings.vala"
	_tmp3_ = _tmp2_;
#line 81 "settings.vala"
	if (!_tmp3_) {
#line 3011 "settings.c"
		const gchar* _tmp4_ = NULL;
		SynapsePluginInfo* _tmp5_;
#line 83 "settings.vala"
		_tmp5_ = self->priv->_pi;
#line 83 "settings.vala"
		if (_tmp5_->runnable) {
#line 83 "settings.vala"
			_tmp4_ = _ ("Disabled");
#line 3020 "settings.c"
		} else {
			SynapsePluginInfo* _tmp6_;
			const gchar* _tmp7_;
#line 83 "settings.vala"
			_tmp6_ = self->priv->_pi;
#line 83 "settings.vala"
			_tmp7_ = _tmp6_->runnable_error;
#line 83 "settings.vala"
			_tmp4_ = _tmp7_;
#line 3030 "settings.c"
		}
#line 83 "settings.vala"
		ui_widgets_abstract_tile_object_set_sub_description_text ((UIWidgetsAbstractTileObject*) self, _tmp4_);
#line 3034 "settings.c"
	} else {
#line 87 "settings.vala"
		ui_widgets_abstract_tile_object_set_sub_description_text ((UIWidgetsAbstractTileObject*) self, _ ("Enabled"));
#line 3038 "settings.c"
	}
}

static void
synapse_gui_settings_window_plugin_tile_object_refresh (SynapseGuiSettingsWindowPluginTileObject* self)
{
	SynapsePluginInfo* info = NULL;
	SynapsePluginRegistry* registry = NULL;
	SynapsePluginRegistry* _tmp0_;
	SynapsePluginRegistry* _tmp1_;
	SynapsePluginInfo* _tmp2_;
	SynapsePluginInfo* _tmp3_;
	SynapsePluginInfo* _tmp4_;
	SynapsePluginInfo* _tmp5_;
#line 91 "settings.vala"
	g_return_if_fail (self != NULL);
#line 94 "settings.vala"
	_tmp0_ = synapse_plugin_registry_get_default ();
#line 94 "settings.vala"
	registry = _tmp0_;
#line 95 "settings.vala"
	_tmp1_ = registry;
#line 95 "settings.vala"
	_tmp2_ = self->priv->_pi;
#line 95 "settings.vala"
	_tmp3_ = synapse_plugin_registry_get_plugin_info_for_type (_tmp1_, _tmp2_->plugin_type);
#line 95 "settings.vala"
	_synapse_plugin_info_unref0 (info);
#line 95 "settings.vala"
	info = _tmp3_;
#line 97 "settings.vala"
	_tmp4_ = self->priv->_pi;
#line 97 "settings.vala"
	_tmp5_ = info;
#line 97 "settings.vala"
	if (_tmp4_->runnable != _tmp5_->runnable) {
#line 3075 "settings.c"
		SynapsePluginInfo* _tmp6_;
		SynapsePluginInfo* _tmp7_;
		SynapsePluginInfo* _tmp8_;
		SynapsePluginInfo* _tmp9_;
		const gchar* _tmp10_;
		gchar* _tmp11_;
		SynapsePluginInfo* _tmp12_;
		gboolean _tmp13_ = FALSE;
		SynapsePluginInfo* _tmp14_;
		gboolean _tmp17_;
		gboolean _tmp18_;
#line 99 "settings.vala"
		_tmp6_ = self->priv->_pi;
#line 99 "settings.vala"
		_tmp7_ = info;
#line 99 "settings.vala"
		_tmp6_->runnable = _tmp7_->runnable;
#line 100 "settings.vala"
		_tmp8_ = self->priv->_pi;
#line 100 "settings.vala"
		_tmp9_ = info;
#line 100 "settings.vala"
		_tmp10_ = _tmp9_->runnable_error;
#line 100 "settings.vala"
		_tmp11_ = g_strdup (_tmp10_);
#line 100 "settings.vala"
		_g_free0 (_tmp8_->runnable_error);
#line 100 "settings.vala"
		_tmp8_->runnable_error = _tmp11_;
#line 101 "settings.vala"
		_tmp12_ = info;
#line 101 "settings.vala"
		ui_widgets_abstract_tile_object_set_show_action_button ((UIWidgetsAbstractTileObject*) self, _tmp12_->runnable);
#line 102 "settings.vala"
		_tmp14_ = info;
#line 102 "settings.vala"
		if (!_tmp14_->runnable) {
#line 3113 "settings.c"
			gboolean _tmp15_;
			gboolean _tmp16_;
#line 102 "settings.vala"
			_tmp15_ = ui_widgets_abstract_tile_object_get_enabled ((UIWidgetsAbstractTileObject*) self);
#line 102 "settings.vala"
			_tmp16_ = _tmp15_;
#line 102 "settings.vala"
			_tmp13_ = _tmp16_;
#line 3122 "settings.c"
		} else {
#line 102 "settings.vala"
			_tmp13_ = FALSE;
#line 3126 "settings.c"
		}
#line 102 "settings.vala"
		if (_tmp13_) {
#line 102 "settings.vala"
			ui_widgets_abstract_tile_object_set_enabled ((UIWidgetsAbstractTileObject*) self, FALSE);
#line 3132 "settings.c"
		}
#line 104 "settings.vala"
		_tmp17_ = ui_widgets_abstract_tile_object_get_enabled ((UIWidgetsAbstractTileObject*) self);
#line 104 "settings.vala"
		_tmp18_ = _tmp17_;
#line 104 "settings.vala"
		synapse_gui_settings_window_plugin_tile_object_update_state (self, _tmp18_);
#line 3140 "settings.c"
	}
#line 91 "settings.vala"
	_g_object_unref0 (registry);
#line 91 "settings.vala"
	_synapse_plugin_info_unref0 (info);
#line 3146 "settings.c"
}

static SynapsePluginInfo*
synapse_gui_settings_window_plugin_tile_object_get_pi (SynapseGuiSettingsWindowPluginTileObject* self)
{
	SynapsePluginInfo* result;
	SynapsePluginInfo* _tmp0_;
#line 28 "settings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 28 "settings.vala"
	_tmp0_ = self->priv->_pi;
#line 28 "settings.vala"
	result = _tmp0_;
#line 28 "settings.vala"
	return result;
#line 3162 "settings.c"
}

static gpointer
_synapse_plugin_info_ref0 (gpointer self)
{
#line 28 "settings.vala"
	return self ? synapse_plugin_info_ref (self) : NULL;
#line 3170 "settings.c"
}

static void
synapse_gui_settings_window_plugin_tile_object_set_pi (SynapseGuiSettingsWindowPluginTileObject* self,
                                                       SynapsePluginInfo* value)
{
	SynapsePluginInfo* old_value;
#line 28 "settings.vala"
	g_return_if_fail (self != NULL);
#line 28 "settings.vala"
	old_value = synapse_gui_settings_window_plugin_tile_object_get_pi (self);
#line 28 "settings.vala"
	if (old_value != value) {
#line 3184 "settings.c"
		SynapsePluginInfo* _tmp0_;
#line 28 "settings.vala"
		_tmp0_ = _synapse_plugin_info_ref0 (value);
#line 28 "settings.vala"
		_synapse_plugin_info_unref0 (self->priv->_pi);
#line 28 "settings.vala"
		self->priv->_pi = _tmp0_;
#line 28 "settings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_settings_window_plugin_tile_object_properties[SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_PI_PROPERTY]);
#line 3194 "settings.c"
	}
}

static void
_synapse_gui_settings_window_plugin_tile_object___lambda28_ (SynapseGuiSettingsWindowPluginTileObject* self)
{
	gchar* id = NULL;
	SynapsePluginInfo* _tmp0_;
	gchar* _tmp1_;
	gchar* address = NULL;
	const gchar* _tmp2_;
	gchar* _tmp3_;
	const gchar* _tmp4_;
#line 56 "settings.vala"
	_tmp0_ = self->priv->_pi;
#line 56 "settings.vala"
	_tmp1_ = synapse_utils_extract_type_name (_tmp0_->plugin_type);
#line 56 "settings.vala"
	id = _tmp1_;
#line 57 "settings.vala"
	_tmp2_ = id;
#line 57 "settings.vala"
	_tmp3_ = g_strdup_printf ("http://synapse.zeitgeist-project.com/wiki/index.php?title=Plugins/%s", _tmp2_);
#line 57 "settings.vala"
	address = _tmp3_;
#line 58 "settings.vala"
	_tmp4_ = address;
#line 58 "settings.vala"
	synapse_utils_open_uri (_tmp4_);
#line 55 "settings.vala"
	_g_free0 (address);
#line 55 "settings.vala"
	_g_free0 (id);
#line 3228 "settings.c"
}

static void
__synapse_gui_settings_window_plugin_tile_object___lambda28__gtk_button_clicked (GtkButton* _sender,
                                                                                 gpointer self)
{
#line 55 "settings.vala"
	_synapse_gui_settings_window_plugin_tile_object___lambda28_ ((SynapseGuiSettingsWindowPluginTileObject*) self);
#line 3237 "settings.c"
}

static void
_synapse_gui_settings_window_plugin_tile_object____lambda29_ (SynapseGuiSettingsWindowPluginTileObject* self)
{
#line 70 "settings.vala"
	g_signal_emit (self, synapse_gui_settings_window_plugin_tile_object_signals[SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_CONFIGURE_SIGNAL], 0);
#line 3245 "settings.c"
}

static void
__synapse_gui_settings_window_plugin_tile_object____lambda29__gtk_button_clicked (GtkButton* _sender,
                                                                                  gpointer self)
{
#line 69 "settings.vala"
	_synapse_gui_settings_window_plugin_tile_object____lambda29_ ((SynapseGuiSettingsWindowPluginTileObject*) self);
#line 3254 "settings.c"
}

static GObject *
synapse_gui_settings_window_plugin_tile_object_constructor (GType type,
                                                            guint n_construct_properties,
                                                            GObjectConstructParam * construct_properties)
{
	GObject * obj;
	GObjectClass * parent_class;
	SynapseGuiSettingsWindowPluginTileObject * self;
	GtkButton* help_button = NULL;
	GtkButton* _tmp0_;
	GtkButton* _tmp1_;
	GtkImage* _tmp2_;
	GtkImage* _tmp3_;
	GtkButton* _tmp4_;
	GtkButton* _tmp5_;
	GtkButton* _tmp6_;
	SynapsePluginInfo* _tmp7_;
#line 43 "settings.vala"
	parent_class = G_OBJECT_CLASS (synapse_gui_settings_window_plugin_tile_object_parent_class);
#line 43 "settings.vala"
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
#line 43 "settings.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT, SynapseGuiSettingsWindowPluginTileObject);
#line 45 "settings.vala"
	ui_widgets_abstract_tile_object_set_sub_description_title ((UIWidgetsAbstractTileObject*) self, _ ("Status"));
#line 47 "settings.vala"
	ui_widgets_abstract_tile_object_set_add_button_tooltip ((UIWidgetsAbstractTileObject*) self, _ ("Enable this plugin"));
#line 48 "settings.vala"
	ui_widgets_abstract_tile_object_set_remove_button_tooltip ((UIWidgetsAbstractTileObject*) self, _ ("Disable this plugin"));
#line 50 "settings.vala"
	_tmp0_ = (GtkButton*) gtk_button_new ();
#line 50 "settings.vala"
	g_object_ref_sink (_tmp0_);
#line 50 "settings.vala"
	help_button = _tmp0_;
#line 51 "settings.vala"
	_tmp1_ = help_button;
#line 51 "settings.vala"
	_tmp2_ = (GtkImage*) gtk_image_new_from_stock (GTK_STOCK_HELP, (GtkIconSize) GTK_ICON_SIZE_SMALL_TOOLBAR);
#line 51 "settings.vala"
	g_object_ref_sink (_tmp2_);
#line 51 "settings.vala"
	_tmp3_ = _tmp2_;
#line 51 "settings.vala"
	gtk_button_set_image (_tmp1_, (GtkWidget*) _tmp3_);
#line 51 "settings.vala"
	_g_object_unref0 (_tmp3_);
#line 54 "settings.vala"
	_tmp4_ = help_button;
#line 54 "settings.vala"
	gtk_widget_set_tooltip_markup ((GtkWidget*) _tmp4_, _ ("About this plugin"));
#line 55 "settings.vala"
	_tmp5_ = help_button;
#line 55 "settings.vala"
	g_signal_connect_object (_tmp5_, "clicked", (GCallback) __synapse_gui_settings_window_plugin_tile_object___lambda28__gtk_button_clicked, self, 0);
#line 60 "settings.vala"
	_tmp6_ = help_button;
#line 60 "settings.vala"
	ui_widgets_abstract_tile_object_add_user_button ((UIWidgetsAbstractTileObject*) self, _tmp6_);
#line 62 "settings.vala"
	_tmp7_ = self->priv->_pi;
#line 62 "settings.vala"
	if (g_type_is_a (_tmp7_->plugin_type, SYNAPSE_TYPE_CONFIGURABLE)) {
#line 3320 "settings.c"
		GtkButton* config_button = NULL;
		GtkButton* _tmp8_;
		GtkButton* _tmp9_;
		GtkImage* _tmp10_;
		GtkImage* _tmp11_;
		GtkButton* _tmp12_;
		GtkButton* _tmp13_;
		GtkButton* _tmp14_;
#line 64 "settings.vala"
		_tmp8_ = (GtkButton*) gtk_button_new ();
#line 64 "settings.vala"
		g_object_ref_sink (_tmp8_);
#line 64 "settings.vala"
		config_button = _tmp8_;
#line 65 "settings.vala"
		_tmp9_ = config_button;
#line 65 "settings.vala"
		_tmp10_ = (GtkImage*) gtk_image_new_from_stock (GTK_STOCK_PREFERENCES, (GtkIconSize) GTK_ICON_SIZE_SMALL_TOOLBAR);
#line 65 "settings.vala"
		g_object_ref_sink (_tmp10_);
#line 65 "settings.vala"
		_tmp11_ = _tmp10_;
#line 65 "settings.vala"
		gtk_button_set_image (_tmp9_, (GtkWidget*) _tmp11_);
#line 65 "settings.vala"
		_g_object_unref0 (_tmp11_);
#line 68 "settings.vala"
		_tmp12_ = config_button;
#line 68 "settings.vala"
		gtk_widget_set_tooltip_markup ((GtkWidget*) _tmp12_, _ ("Configure plugin"));
#line 69 "settings.vala"
		_tmp13_ = config_button;
#line 69 "settings.vala"
		g_signal_connect_object (_tmp13_, "clicked", (GCallback) __synapse_gui_settings_window_plugin_tile_object____lambda29__gtk_button_clicked, self, 0);
#line 73 "settings.vala"
		_tmp14_ = config_button;
#line 73 "settings.vala"
		ui_widgets_abstract_tile_object_add_user_button ((UIWidgetsAbstractTileObject*) self, _tmp14_);
#line 62 "settings.vala"
		_g_object_unref0 (config_button);
#line 3361 "settings.c"
	}
#line 43 "settings.vala"
	_g_object_unref0 (help_button);
#line 43 "settings.vala"
	return obj;
#line 3367 "settings.c"
}

static void
synapse_gui_settings_window_plugin_tile_object_class_init (SynapseGuiSettingsWindowPluginTileObjectClass * klass,
                                                           gpointer klass_data)
{
#line 26 "settings.vala"
	synapse_gui_settings_window_plugin_tile_object_parent_class = g_type_class_peek_parent (klass);
#line 26 "settings.vala"
	g_type_class_adjust_private_offset (klass, &SynapseGuiSettingsWindowPluginTileObject_private_offset);
#line 26 "settings.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_synapse_gui_settings_window_plugin_tile_object_get_property;
#line 26 "settings.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_synapse_gui_settings_window_plugin_tile_object_set_property;
#line 26 "settings.vala"
	G_OBJECT_CLASS (klass)->constructor = synapse_gui_settings_window_plugin_tile_object_constructor;
#line 26 "settings.vala"
	G_OBJECT_CLASS (klass)->finalize = synapse_gui_settings_window_plugin_tile_object_finalize;
#line 26 "settings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_PI_PROPERTY, synapse_gui_settings_window_plugin_tile_object_properties[SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_PI_PROPERTY] = synapse_param_spec_plugin_info ("pi", "pi", "pi", SYNAPSE_TYPE_PLUGIN_INFO, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
#line 26 "settings.vala"
	synapse_gui_settings_window_plugin_tile_object_signals[SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_CONFIGURE_SIGNAL] = g_signal_new ("configure", SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
#line 3390 "settings.c"
}

static void
synapse_gui_settings_window_plugin_tile_object_instance_init (SynapseGuiSettingsWindowPluginTileObject * self,
                                                              gpointer klass)
{
#line 26 "settings.vala"
	self->priv = synapse_gui_settings_window_plugin_tile_object_get_instance_private (self);
#line 3399 "settings.c"
}

static void
synapse_gui_settings_window_plugin_tile_object_finalize (GObject * obj)
{
	SynapseGuiSettingsWindowPluginTileObject * self;
#line 26 "settings.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT, SynapseGuiSettingsWindowPluginTileObject);
#line 28 "settings.vala"
	_synapse_plugin_info_unref0 (self->priv->_pi);
#line 26 "settings.vala"
	G_OBJECT_CLASS (synapse_gui_settings_window_plugin_tile_object_parent_class)->finalize (obj);
#line 3412 "settings.c"
}

static GType
synapse_gui_settings_window_plugin_tile_object_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (SynapseGuiSettingsWindowPluginTileObjectClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) synapse_gui_settings_window_plugin_tile_object_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SynapseGuiSettingsWindowPluginTileObject), 0, (GInstanceInitFunc) synapse_gui_settings_window_plugin_tile_object_instance_init, NULL };
	GType synapse_gui_settings_window_plugin_tile_object_type_id;
	synapse_gui_settings_window_plugin_tile_object_type_id = g_type_register_static (UI_WIDGETS_TYPE_ABSTRACT_TILE_OBJECT, "SynapseGuiSettingsWindowPluginTileObject", &g_define_type_info, 0);
	SynapseGuiSettingsWindowPluginTileObject_private_offset = g_type_add_instance_private (synapse_gui_settings_window_plugin_tile_object_type_id, sizeof (SynapseGuiSettingsWindowPluginTileObjectPrivate));
	return synapse_gui_settings_window_plugin_tile_object_type_id;
}

static GType
synapse_gui_settings_window_plugin_tile_object_get_type (void)
{
	static volatile gsize synapse_gui_settings_window_plugin_tile_object_type_id__once = 0;
	if (g_once_init_enter (&synapse_gui_settings_window_plugin_tile_object_type_id__once)) {
		GType synapse_gui_settings_window_plugin_tile_object_type_id;
		synapse_gui_settings_window_plugin_tile_object_type_id = synapse_gui_settings_window_plugin_tile_object_get_type_once ();
		g_once_init_leave (&synapse_gui_settings_window_plugin_tile_object_type_id__once, synapse_gui_settings_window_plugin_tile_object_type_id);
	}
	return synapse_gui_settings_window_plugin_tile_object_type_id__once;
}

static void
_vala_synapse_gui_settings_window_plugin_tile_object_get_property (GObject * object,
                                                                   guint property_id,
                                                                   GValue * value,
                                                                   GParamSpec * pspec)
{
	SynapseGuiSettingsWindowPluginTileObject * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT, SynapseGuiSettingsWindowPluginTileObject);
#line 26 "settings.vala"
	switch (property_id) {
#line 26 "settings.vala"
		case SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_PI_PROPERTY:
#line 26 "settings.vala"
		synapse_value_set_plugin_info (value, synapse_gui_settings_window_plugin_tile_object_get_pi (self));
#line 26 "settings.vala"
		break;
#line 3453 "settings.c"
		default:
#line 26 "settings.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 26 "settings.vala"
		break;
#line 3459 "settings.c"
	}
}

static void
_vala_synapse_gui_settings_window_plugin_tile_object_set_property (GObject * object,
                                                                   guint property_id,
                                                                   const GValue * value,
                                                                   GParamSpec * pspec)
{
	SynapseGuiSettingsWindowPluginTileObject * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_PLUGIN_TILE_OBJECT, SynapseGuiSettingsWindowPluginTileObject);
#line 26 "settings.vala"
	switch (property_id) {
#line 26 "settings.vala"
		case SYNAPSE_GUI_SETTINGS_WINDOW_PLUGIN_TILE_OBJECT_PI_PROPERTY:
#line 26 "settings.vala"
		synapse_gui_settings_window_plugin_tile_object_set_pi (self, synapse_value_get_plugin_info (value));
#line 26 "settings.vala"
		break;
#line 3479 "settings.c"
		default:
#line 26 "settings.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 26 "settings.vala"
		break;
#line 3485 "settings.c"
	}
}

static inline gpointer
synapse_gui_settings_window_ui_config_get_instance_private (SynapseGuiSettingsWindowUIConfig* self)
{
	return G_STRUCT_MEMBER_P (self, SynapseGuiSettingsWindowUIConfig_private_offset);
}

static SynapseGuiSettingsWindowUIConfig*
synapse_gui_settings_window_ui_config_construct (GType object_type)
{
	SynapseGuiSettingsWindowUIConfig * self = NULL;
#line 109 "settings.vala"
	self = (SynapseGuiSettingsWindowUIConfig*) synapse_config_object_construct (object_type);
#line 109 "settings.vala"
	return self;
#line 3503 "settings.c"
}

static SynapseGuiSettingsWindowUIConfig*
synapse_gui_settings_window_ui_config_new (void)
{
#line 109 "settings.vala"
	return synapse_gui_settings_window_ui_config_construct (SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG);
#line 3511 "settings.c"
}

static const gchar*
synapse_gui_settings_window_ui_config_get_ui_type (SynapseGuiSettingsWindowUIConfig* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 111 "settings.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 111 "settings.vala"
	_tmp0_ = self->priv->_ui_type;
#line 111 "settings.vala"
	result = _tmp0_;
#line 111 "settings.vala"
	return result;
#line 3527 "settings.c"
}

static void
synapse_gui_settings_window_ui_config_set_ui_type (SynapseGuiSettingsWindowUIConfig* self,
                                                   const gchar* value)
{
	gchar* old_value;
#line 111 "settings.vala"
	g_return_if_fail (self != NULL);
#line 111 "settings.vala"
	old_value = synapse_gui_settings_window_ui_config_get_ui_type (self);
#line 111 "settings.vala"
	if (g_strcmp0 (value, old_value) != 0) {
#line 3541 "settings.c"
		gchar* _tmp0_;
#line 111 "settings.vala"
		_tmp0_ = g_strdup (value);
#line 111 "settings.vala"
		_g_free0 (self->priv->_ui_type);
#line 111 "settings.vala"
		self->priv->_ui_type = _tmp0_;
#line 111 "settings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_settings_window_ui_config_properties[SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_UI_TYPE_PROPERTY]);
#line 3551 "settings.c"
	}
}

static gboolean
synapse_gui_settings_window_ui_config_get_show_indicator (SynapseGuiSettingsWindowUIConfig* self)
{
	gboolean result;
#line 112 "settings.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 112 "settings.vala"
	result = self->priv->_show_indicator;
#line 112 "settings.vala"
	return result;
#line 3565 "settings.c"
}

static void
synapse_gui_settings_window_ui_config_set_show_indicator (SynapseGuiSettingsWindowUIConfig* self,
                                                          gboolean value)
{
	gboolean old_value;
#line 112 "settings.vala"
	g_return_if_fail (self != NULL);
#line 112 "settings.vala"
	old_value = synapse_gui_settings_window_ui_config_get_show_indicator (self);
#line 112 "settings.vala"
	if (old_value != value) {
#line 112 "settings.vala"
		self->priv->_show_indicator = value;
#line 112 "settings.vala"
		g_object_notify_by_pspec ((GObject *) self, synapse_gui_settings_window_ui_config_properties[SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_SHOW_INDICATOR_PROPERTY]);
#line 3583 "settings.c"
	}
}

static void
synapse_gui_settings_window_ui_config_class_init (SynapseGuiSettingsWindowUIConfigClass * klass,
                                                  gpointer klass_data)
{
#line 109 "settings.vala"
	synapse_gui_settings_window_ui_config_parent_class = g_type_class_peek_parent (klass);
#line 109 "settings.vala"
	g_type_class_adjust_private_offset (klass, &SynapseGuiSettingsWindowUIConfig_private_offset);
#line 109 "settings.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_synapse_gui_settings_window_ui_config_get_property;
#line 109 "settings.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_synapse_gui_settings_window_ui_config_set_property;
#line 109 "settings.vala"
	G_OBJECT_CLASS (klass)->finalize = synapse_gui_settings_window_ui_config_finalize;
#line 109 "settings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_UI_TYPE_PROPERTY, synapse_gui_settings_window_ui_config_properties[SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_UI_TYPE_PROPERTY] = g_param_spec_string ("ui-type", "ui-type", "ui-type", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 109 "settings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_SHOW_INDICATOR_PROPERTY, synapse_gui_settings_window_ui_config_properties[SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_SHOW_INDICATOR_PROPERTY] = g_param_spec_boolean ("show-indicator", "show-indicator", "show-indicator", TRUE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 3605 "settings.c"
}

static void
synapse_gui_settings_window_ui_config_instance_init (SynapseGuiSettingsWindowUIConfig * self,
                                                     gpointer klass)
{
	gchar* _tmp0_;
#line 109 "settings.vala"
	self->priv = synapse_gui_settings_window_ui_config_get_instance_private (self);
#line 111 "settings.vala"
	_tmp0_ = g_strdup ("default");
#line 111 "settings.vala"
	self->priv->_ui_type = _tmp0_;
#line 112 "settings.vala"
	self->priv->_show_indicator = TRUE;
#line 3621 "settings.c"
}

static void
synapse_gui_settings_window_ui_config_finalize (GObject * obj)
{
	SynapseGuiSettingsWindowUIConfig * self;
#line 109 "settings.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG, SynapseGuiSettingsWindowUIConfig);
#line 111 "settings.vala"
	_g_free0 (self->priv->_ui_type);
#line 109 "settings.vala"
	G_OBJECT_CLASS (synapse_gui_settings_window_ui_config_parent_class)->finalize (obj);
#line 3634 "settings.c"
}

static GType
synapse_gui_settings_window_ui_config_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (SynapseGuiSettingsWindowUIConfigClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) synapse_gui_settings_window_ui_config_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SynapseGuiSettingsWindowUIConfig), 0, (GInstanceInitFunc) synapse_gui_settings_window_ui_config_instance_init, NULL };
	GType synapse_gui_settings_window_ui_config_type_id;
	synapse_gui_settings_window_ui_config_type_id = g_type_register_static (SYNAPSE_TYPE_CONFIG_OBJECT, "SynapseGuiSettingsWindowUIConfig", &g_define_type_info, 0);
	SynapseGuiSettingsWindowUIConfig_private_offset = g_type_add_instance_private (synapse_gui_settings_window_ui_config_type_id, sizeof (SynapseGuiSettingsWindowUIConfigPrivate));
	return synapse_gui_settings_window_ui_config_type_id;
}

static GType
synapse_gui_settings_window_ui_config_get_type (void)
{
	static volatile gsize synapse_gui_settings_window_ui_config_type_id__once = 0;
	if (g_once_init_enter (&synapse_gui_settings_window_ui_config_type_id__once)) {
		GType synapse_gui_settings_window_ui_config_type_id;
		synapse_gui_settings_window_ui_config_type_id = synapse_gui_settings_window_ui_config_get_type_once ();
		g_once_init_leave (&synapse_gui_settings_window_ui_config_type_id__once, synapse_gui_settings_window_ui_config_type_id);
	}
	return synapse_gui_settings_window_ui_config_type_id__once;
}

static void
_vala_synapse_gui_settings_window_ui_config_get_property (GObject * object,
                                                          guint property_id,
                                                          GValue * value,
                                                          GParamSpec * pspec)
{
	SynapseGuiSettingsWindowUIConfig * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG, SynapseGuiSettingsWindowUIConfig);
#line 109 "settings.vala"
	switch (property_id) {
#line 109 "settings.vala"
		case SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_UI_TYPE_PROPERTY:
#line 109 "settings.vala"
		g_value_set_string (value, synapse_gui_settings_window_ui_config_get_ui_type (self));
#line 109 "settings.vala"
		break;
#line 109 "settings.vala"
		case SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_SHOW_INDICATOR_PROPERTY:
#line 109 "settings.vala"
		g_value_set_boolean (value, synapse_gui_settings_window_ui_config_get_show_indicator (self));
#line 109 "settings.vala"
		break;
#line 3681 "settings.c"
		default:
#line 109 "settings.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 109 "settings.vala"
		break;
#line 3687 "settings.c"
	}
}

static void
_vala_synapse_gui_settings_window_ui_config_set_property (GObject * object,
                                                          guint property_id,
                                                          const GValue * value,
                                                          GParamSpec * pspec)
{
	SynapseGuiSettingsWindowUIConfig * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, SYNAPSE_GUI_SETTINGS_WINDOW_TYPE_UI_CONFIG, SynapseGuiSettingsWindowUIConfig);
#line 109 "settings.vala"
	switch (property_id) {
#line 109 "settings.vala"
		case SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_UI_TYPE_PROPERTY:
#line 109 "settings.vala"
		synapse_gui_settings_window_ui_config_set_ui_type (self, g_value_get_string (value));
#line 109 "settings.vala"
		break;
#line 109 "settings.vala"
		case SYNAPSE_GUI_SETTINGS_WINDOW_UI_CONFIG_SHOW_INDICATOR_PROPERTY:
#line 109 "settings.vala"
		synapse_gui_settings_window_ui_config_set_show_indicator (self, g_value_get_boolean (value));
#line 109 "settings.vala"
		break;
#line 3713 "settings.c"
		default:
#line 109 "settings.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 109 "settings.vala"
		break;
#line 3719 "settings.c"
	}
}

static void
synapse_gui_settings_window_theme_init (SynapseGuiSettingsWindowTheme *self,
                                        const gchar* name,
                                        const gchar* desc,
                                        GType obj_type)
{
	gchar* _tmp0_;
	gchar* _tmp1_;
#line 121 "settings.vala"
	g_return_if_fail (name != NULL);
#line 121 "settings.vala"
	g_return_if_fail (desc != NULL);
#line 121 "settings.vala"
	memset (self, 0, sizeof (SynapseGuiSettingsWindowTheme));
#line 123 "settings.vala"
	_tmp0_ = g_strdup (name);
#line 123 "settings.vala"
	_g_free0 ((*self).name);
#line 123 "settings.vala"
	(*self).name = _tmp0_;
#line 124 "settings.vala"
	_tmp1_ = g_strdup (desc);
#line 124 "settings.vala"
	_g_free0 ((*self).description);
#line 124 "settings.vala"
	(*self).description = _tmp1_;
#line 125 "settings.vala"
	(*self).tclass = obj_type;
#line 3751 "settings.c"
}

static void
synapse_gui_settings_window_theme_copy (const SynapseGuiSettingsWindowTheme* self,
                                        SynapseGuiSettingsWindowTheme* dest)
{
	const gchar* _tmp0_;
	gchar* _tmp1_;
	const gchar* _tmp2_;
	gchar* _tmp3_;
#line 115 "settings.vala"
	_tmp0_ = (*self).name;
#line 115 "settings.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 115 "settings.vala"
	_g_free0 ((*dest).name);
#line 115 "settings.vala"
	(*dest).name = _tmp1_;
#line 115 "settings.vala"
	_tmp2_ = (*self).description;
#line 115 "settings.vala"
	_tmp3_ = g_strdup (_tmp2_);
#line 115 "settings.vala"
	_g_free0 ((*dest).description);
#line 115 "settings.vala"
	(*dest).description = _tmp3_;
#line 115 "settings.vala"
	(*dest).tclass = (*self).tclass;
#line 3780 "settings.c"
}

static void
synapse_gui_settings_window_theme_destroy (SynapseGuiSettingsWindowTheme* self)
{
#line 117 "settings.vala"
	_g_free0 ((*self).name);
#line 118 "settings.vala"
	_g_free0 ((*self).description);
#line 3790 "settings.c"
}

static SynapseGuiSettingsWindowTheme*
synapse_gui_settings_window_theme_dup (const SynapseGuiSettingsWindowTheme* self)
{
	SynapseGuiSettingsWindowTheme* dup;
#line 115 "settings.vala"
	dup = g_new0 (SynapseGuiSettingsWindowTheme, 1);
#line 115 "settings.vala"
	synapse_gui_settings_window_theme_copy (self, dup);
#line 115 "settings.vala"
	return dup;
#line 3803 "settings.c"
}

static void
synapse_gui_settings_window_theme_free (SynapseGuiSettingsWindowTheme* self)
{
#line 115 "settings.vala"
	synapse_gui_settings_window_theme_destroy (self);
#line 115 "settings.vala"
	g_free (self);
#line 3813 "settings.c"
}

static GType
synapse_gui_settings_window_theme_get_type_once (void)
{
	GType synapse_gui_settings_window_theme_type_id;
	synapse_gui_settings_window_theme_type_id = g_boxed_type_register_static ("SynapseGuiSettingsWindowTheme", (GBoxedCopyFunc) synapse_gui_settings_window_theme_dup, (GBoxedFreeFunc) synapse_gui_settings_window_theme_free);
	return synapse_gui_settings_window_theme_type_id;
}

static GType
synapse_gui_settings_window_theme_get_type (void)
{
	static volatile gsize synapse_gui_settings_window_theme_type_id__once = 0;
	if (g_once_init_enter (&synapse_gui_settings_window_theme_type_id__once)) {
		GType synapse_gui_settings_window_theme_type_id;
		synapse_gui_settings_window_theme_type_id = synapse_gui_settings_window_theme_get_type_once ();
		g_once_init_leave (&synapse_gui_settings_window_theme_type_id__once, synapse_gui_settings_window_theme_type_id);
	}
	return synapse_gui_settings_window_theme_type_id__once;
}

static void
synapse_gui_settings_window_class_init (SynapseGuiSettingsWindowClass * klass,
                                        gpointer klass_data)
{
#line 24 "settings.vala"
	synapse_gui_settings_window_parent_class = g_type_class_peek_parent (klass);
#line 24 "settings.vala"
	g_type_class_adjust_private_offset (klass, &SynapseGuiSettingsWindow_private_offset);
#line 24 "settings.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_synapse_gui_settings_window_get_property;
#line 24 "settings.vala"
	G_OBJECT_CLASS (klass)->finalize = synapse_gui_settings_window_finalize;
#line 24 "settings.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), SYNAPSE_GUI_SETTINGS_WINDOW_INDICATOR_ACTIVE_PROPERTY, synapse_gui_settings_window_properties[SYNAPSE_GUI_SETTINGS_WINDOW_INDICATOR_ACTIVE_PROPERTY] = g_param_spec_boolean ("indicator-active", "indicator-active", "indicator-active", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
#line 24 "settings.vala"
	synapse_gui_settings_window_signals[SYNAPSE_GUI_SETTINGS_WINDOW_KEYBINDING_CHANGED_SIGNAL] = g_signal_new ("keybinding-changed", SYNAPSE_GUI_TYPE_SETTINGS_WINDOW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING);
#line 24 "settings.vala"
	synapse_gui_settings_window_signals[SYNAPSE_GUI_SETTINGS_WINDOW_THEME_SELECTED_SIGNAL] = g_signal_new ("theme-selected", SYNAPSE_GUI_TYPE_SETTINGS_WINDOW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__GTYPE, G_TYPE_NONE, 1, G_TYPE_GTYPE);
#line 3854 "settings.c"
}

static void
synapse_gui_settings_window_instance_init (SynapseGuiSettingsWindow * self,
                                           gpointer klass)
{
	gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	gchar* _tmp9_;
	gchar* _tmp10_;
	gchar* _tmp11_;
	gchar* _tmp12_;
	gchar* _tmp13_;
	gchar* _tmp14_;
	gchar* _tmp15_;
	gchar* _tmp16_;
	gchar* _tmp17_;
	gchar* _tmp18_;
	gchar* _tmp19_;
	gchar* _tmp20_;
	gchar* _tmp21_;
	gchar* _tmp22_;
	gchar* _tmp23_;
	gchar* _tmp24_;
	gchar* _tmp25_;
	gchar* _tmp26_;
	gchar* _tmp27_;
	gchar* _tmp28_;
	gchar* _tmp29_;
	gchar* _tmp30_;
	gchar* _tmp31_;
	gchar* _tmp32_;
	gchar* _tmp33_;
	gchar** _tmp34_;
	const gchar* _tmp35_;
	gchar* _tmp36_;
#line 24 "settings.vala"
	self->priv = synapse_gui_settings_window_get_instance_private (self);
#line 236 "settings.vala"
	_tmp0_ = g_strdup ("activate");
#line 236 "settings.vala"
	_tmp1_ = g_strdup (_ ("Activate"));
#line 236 "settings.vala"
	_tmp2_ = g_strdup ("execute");
#line 236 "settings.vala"
	_tmp3_ = g_strdup (_ ("Execute"));
#line 236 "settings.vala"
	_tmp4_ = g_strdup ("execute-without-hide");
#line 236 "settings.vala"
	_tmp5_ = g_strdup (_ ("Execute without hiding"));
#line 236 "settings.vala"
	_tmp6_ = g_strdup ("alternative-delete-char");
#line 236 "settings.vala"
	_tmp7_ = g_strdup (_ ("Alternative Delete"));
#line 236 "settings.vala"
	_tmp8_ = g_strdup ("next-match");
#line 236 "settings.vala"
	_tmp9_ = g_strdup (_ ("Next Result"));
#line 236 "settings.vala"
	_tmp10_ = g_strdup ("prev-match");
#line 236 "settings.vala"
	_tmp11_ = g_strdup (_ ("Previous Result"));
#line 236 "settings.vala"
	_tmp12_ = g_strdup ("first-match");
#line 236 "settings.vala"
	_tmp13_ = g_strdup (_ ("First Result"));
#line 236 "settings.vala"
	_tmp14_ = g_strdup ("last-match");
#line 236 "settings.vala"
	_tmp15_ = g_strdup (_ ("Last Result"));
#line 236 "settings.vala"
	_tmp16_ = g_strdup ("next-match_page");
#line 236 "settings.vala"
	_tmp17_ = g_strdup (_ ("Next 5 Results"));
#line 236 "settings.vala"
	_tmp18_ = g_strdup ("prev-match_page");
#line 236 "settings.vala"
	_tmp19_ = g_strdup (_ ("Previous 5 Results"));
#line 236 "settings.vala"
	_tmp20_ = g_strdup ("next-category");
#line 236 "settings.vala"
	_tmp21_ = g_strdup (_ ("Next Category"));
#line 236 "settings.vala"
	_tmp22_ = g_strdup ("prev-category");
#line 236 "settings.vala"
	_tmp23_ = g_strdup (_ ("Previous Category"));
#line 236 "settings.vala"
	_tmp24_ = g_strdup ("next-search-type");
#line 236 "settings.vala"
	_tmp25_ = g_strdup (_ ("Next Pane"));
#line 236 "settings.vala"
	_tmp26_ = g_strdup ("prev-search-type");
#line 236 "settings.vala"
	_tmp27_ = g_strdup (_ ("Previous Pane"));
#line 236 "settings.vala"
	_tmp28_ = g_strdup ("paste");
#line 236 "settings.vala"
	_tmp29_ = g_strdup (_ ("Paste"));
#line 236 "settings.vala"
	_tmp30_ = g_strdup ("alt_paste");
#line 236 "settings.vala"
	_tmp31_ = g_strdup (_ ("Paste current selection"));
#line 236 "settings.vala"
	_tmp32_ = g_strdup ("exit");
#line 236 "settings.vala"
	_tmp33_ = g_strdup (_ ("Quit"));
#line 236 "settings.vala"
	_tmp34_ = g_new0 (gchar*, (17 * 2) + 1);
#line 236 "settings.vala"
	_tmp34_[0] = _tmp0_;
#line 236 "settings.vala"
	_tmp34_[1] = _tmp1_;
#line 236 "settings.vala"
	_tmp34_[2] = _tmp2_;
#line 236 "settings.vala"
	_tmp34_[3] = _tmp3_;
#line 236 "settings.vala"
	_tmp34_[4] = _tmp4_;
#line 236 "settings.vala"
	_tmp34_[5] = _tmp5_;
#line 236 "settings.vala"
	_tmp34_[6] = _tmp6_;
#line 236 "settings.vala"
	_tmp34_[7] = _tmp7_;
#line 236 "settings.vala"
	_tmp34_[8] = _tmp8_;
#line 236 "settings.vala"
	_tmp34_[9] = _tmp9_;
#line 236 "settings.vala"
	_tmp34_[10] = _tmp10_;
#line 236 "settings.vala"
	_tmp34_[11] = _tmp11_;
#line 236 "settings.vala"
	_tmp34_[12] = _tmp12_;
#line 236 "settings.vala"
	_tmp34_[13] = _tmp13_;
#line 236 "settings.vala"
	_tmp34_[14] = _tmp14_;
#line 236 "settings.vala"
	_tmp34_[15] = _tmp15_;
#line 236 "settings.vala"
	_tmp34_[16] = _tmp16_;
#line 236 "settings.vala"
	_tmp34_[17] = _tmp17_;
#line 236 "settings.vala"
	_tmp34_[18] = _tmp18_;
#line 236 "settings.vala"
	_tmp34_[19] = _tmp19_;
#line 236 "settings.vala"
	_tmp34_[20] = _tmp20_;
#line 236 "settings.vala"
	_tmp34_[21] = _tmp21_;
#line 236 "settings.vala"
	_tmp34_[22] = _tmp22_;
#line 236 "settings.vala"
	_tmp34_[23] = _tmp23_;
#line 236 "settings.vala"
	_tmp34_[24] = _tmp24_;
#line 236 "settings.vala"
	_tmp34_[25] = _tmp25_;
#line 236 "settings.vala"
	_tmp34_[26] = _tmp26_;
#line 236 "settings.vala"
	_tmp34_[27] = _tmp27_;
#line 236 "settings.vala"
	_tmp34_[28] = _tmp28_;
#line 236 "settings.vala"
	_tmp34_[29] = _tmp29_;
#line 236 "settings.vala"
	_tmp34_[30] = _tmp30_;
#line 236 "settings.vala"
	_tmp34_[31] = _tmp31_;
#line 236 "settings.vala"
	_tmp34_[32] = _tmp32_;
#line 236 "settings.vala"
	_tmp34_[33] = _tmp33_;
#line 236 "settings.vala"
	self->priv->key_combos = _tmp34_;
#line 236 "settings.vala"
	self->priv->key_combos_length1 = 17;
#line 236 "settings.vala"
	self->priv->key_combos_length2 = 2;
#line 487 "settings.vala"
	_tmp35_ = g_get_user_config_dir ();
#line 487 "settings.vala"
	_tmp36_ = g_build_filename (_tmp35_, "autostart", "synapse.desktop", NULL, NULL);
#line 487 "settings.vala"
	self->priv->autostart_file = _tmp36_;
#line 4050 "settings.c"
}

static void
synapse_gui_settings_window_finalize (GObject * obj)
{
	SynapseGuiSettingsWindow * self;
#line 24 "settings.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, SYNAPSE_GUI_TYPE_SETTINGS_WINDOW, SynapseGuiSettingsWindow);
#line 129 "settings.vala"
	_g_free0 (self->priv->selected_theme);
#line 130 "settings.vala"
	_g_object_unref0 (self->priv->themes);
#line 134 "settings.vala"
	_g_object_unref0 (self->priv->model);
#line 135 "settings.vala"
	_g_object_unref0 (self->priv->config);
#line 236 "settings.vala"
	self->priv->key_combos = (_vala_array_free (self->priv->key_combos, self->priv->key_combos_length1 * self->priv->key_combos_length2, (GDestroyNotify) g_free), NULL);
#line 256 "settings.vala"
	_g_object_unref0 (self->priv->tile_view);
#line 487 "settings.vala"
	_g_free0 (self->priv->autostart_file);
#line 24 "settings.vala"
	G_OBJECT_CLASS (synapse_gui_settings_window_parent_class)->finalize (obj);
#line 4075 "settings.c"
}

static GType
synapse_gui_settings_window_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (SynapseGuiSettingsWindowClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) synapse_gui_settings_window_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SynapseGuiSettingsWindow), 0, (GInstanceInitFunc) synapse_gui_settings_window_instance_init, NULL };
	GType synapse_gui_settings_window_type_id;
	synapse_gui_settings_window_type_id = g_type_register_static (gtk_window_get_type (), "SynapseGuiSettingsWindow", &g_define_type_info, 0);
	SynapseGuiSettingsWindow_private_offset = g_type_add_instance_private (synapse_gui_settings_window_type_id, sizeof (SynapseGuiSettingsWindowPrivate));
	return synapse_gui_settings_window_type_id;
}

GType
synapse_gui_settings_window_get_type (void)
{
	static volatile gsize synapse_gui_settings_window_type_id__once = 0;
	if (g_once_init_enter (&synapse_gui_settings_window_type_id__once)) {
		GType synapse_gui_settings_window_type_id;
		synapse_gui_settings_window_type_id = synapse_gui_settings_window_get_type_once ();
		g_once_init_leave (&synapse_gui_settings_window_type_id__once, synapse_gui_settings_window_type_id);
	}
	return synapse_gui_settings_window_type_id__once;
}

static void
_vala_synapse_gui_settings_window_get_property (GObject * object,
                                                guint property_id,
                                                GValue * value,
                                                GParamSpec * pspec)
{
	SynapseGuiSettingsWindow * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, SYNAPSE_GUI_TYPE_SETTINGS_WINDOW, SynapseGuiSettingsWindow);
#line 24 "settings.vala"
	switch (property_id) {
#line 24 "settings.vala"
		case SYNAPSE_GUI_SETTINGS_WINDOW_INDICATOR_ACTIVE_PROPERTY:
#line 24 "settings.vala"
		g_value_set_boolean (value, synapse_gui_settings_window_get_indicator_active (self));
#line 24 "settings.vala"
		break;
#line 4116 "settings.c"
		default:
#line 24 "settings.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 24 "settings.vala"
		break;
#line 4122 "settings.c"
	}
}

static void
_vala_array_destroy (gpointer array,
                     gssize array_length,
                     GDestroyNotify destroy_func)
{
#line 24 "controller.vala"
	if ((array != NULL) && (destroy_func != NULL)) {
#line 4133 "settings.c"
		gssize i;
#line 24 "controller.vala"
		for (i = 0; i < array_length; i = i + 1) {
#line 24 "controller.vala"
			if (((gpointer*) array)[i] != NULL) {
#line 24 "controller.vala"
				destroy_func (((gpointer*) array)[i]);
#line 4141 "settings.c"
			}
		}
	}
}

static void
_vala_array_free (gpointer array,
                  gssize array_length,
                  GDestroyNotify destroy_func)
{
#line 24 "controller.vala"
	_vala_array_destroy (array, array_length, destroy_func);
#line 24 "controller.vala"
	g_free (array);
#line 4156 "settings.c"
}

static inline gpointer
_vala_memdup2 (gconstpointer mem,
               gsize byte_size)
{
	gpointer new_mem;
#line 24 "controller.vala"
	if (mem && byte_size != 0) {
#line 24 "controller.vala"
		new_mem = g_malloc (byte_size);
#line 24 "controller.vala"
		memcpy (new_mem, mem, byte_size);
#line 4170 "settings.c"
	} else {
#line 24 "controller.vala"
		new_mem = NULL;
#line 4174 "settings.c"
	}
#line 24 "controller.vala"
	return new_mem;
#line 4178 "settings.c"
}

