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

/* -*- Mode: Vala; indent-tabs-mode: nil; tab-width: 2 -*- */
/*
    This file is part of Déjà Dup.
    For copyright information, see AUTHORS.

    Déjà Dup 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.

    Déjà Dup 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 Déjà Dup.  If not, see <http://www.gnu.org/licenses/>.
*/

#include <glib.h>
#include <glib-object.h>
#include <gtk/gtk.h>
#include "deja.h"
#include <gio/gio.h>
#include "widgets.h"
#include <stdlib.h>
#include <string.h>
#include <atk/atk.h>
#include <glib/gi18n-lib.h>
#include <gdk/gdk.h>
#include <pango/pango.h>


#define DEJA_DUP_TYPE_PREFERENCES_PERIODIC_SWITCH (deja_dup_preferences_periodic_switch_get_type ())
#define DEJA_DUP_PREFERENCES_PERIODIC_SWITCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DEJA_DUP_TYPE_PREFERENCES_PERIODIC_SWITCH, DejaDupPreferencesPeriodicSwitch))
#define DEJA_DUP_PREFERENCES_PERIODIC_SWITCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DEJA_DUP_TYPE_PREFERENCES_PERIODIC_SWITCH, DejaDupPreferencesPeriodicSwitchClass))
#define DEJA_DUP_IS_PREFERENCES_PERIODIC_SWITCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DEJA_DUP_TYPE_PREFERENCES_PERIODIC_SWITCH))
#define DEJA_DUP_IS_PREFERENCES_PERIODIC_SWITCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DEJA_DUP_TYPE_PREFERENCES_PERIODIC_SWITCH))
#define DEJA_DUP_PREFERENCES_PERIODIC_SWITCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DEJA_DUP_TYPE_PREFERENCES_PERIODIC_SWITCH, DejaDupPreferencesPeriodicSwitchClass))

typedef struct _DejaDupPreferencesPeriodicSwitch DejaDupPreferencesPeriodicSwitch;
typedef struct _DejaDupPreferencesPeriodicSwitchClass DejaDupPreferencesPeriodicSwitchClass;
typedef struct _DejaDupPreferencesPeriodicSwitchPrivate DejaDupPreferencesPeriodicSwitchPrivate;
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#define DEJA_DUP_TYPE_PREFERENCES (deja_dup_preferences_get_type ())
#define DEJA_DUP_PREFERENCES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DEJA_DUP_TYPE_PREFERENCES, DejaDupPreferences))
#define DEJA_DUP_PREFERENCES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DEJA_DUP_TYPE_PREFERENCES, DejaDupPreferencesClass))
#define DEJA_DUP_IS_PREFERENCES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DEJA_DUP_TYPE_PREFERENCES))
#define DEJA_DUP_IS_PREFERENCES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DEJA_DUP_TYPE_PREFERENCES))
#define DEJA_DUP_PREFERENCES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DEJA_DUP_TYPE_PREFERENCES, DejaDupPreferencesClass))

typedef struct _DejaDupPreferences DejaDupPreferences;
typedef struct _DejaDupPreferencesClass DejaDupPreferencesClass;
typedef struct _DejaDupPreferencesPrivate DejaDupPreferencesPrivate;
typedef struct _Block1Data Block1Data;
#define _pango_attr_list_unref0(var) ((var == NULL) ? NULL : (var = (pango_attr_list_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))

struct _DejaDupPreferencesPeriodicSwitch {
	GtkSwitch parent_instance;
	DejaDupPreferencesPeriodicSwitchPrivate * priv;
};

struct _DejaDupPreferencesPeriodicSwitchClass {
	GtkSwitchClass parent_class;
};

struct _DejaDupPreferences {
	GtkGrid parent_instance;
	DejaDupPreferencesPrivate * priv;
};

struct _DejaDupPreferencesClass {
	GtkGridClass parent_class;
};

struct _DejaDupPreferencesPrivate {
	DejaDupPreferencesPeriodicSwitch* _auto_switch;
	gboolean _duplicity_installed;
	DejaDupConfigLabelDescription* backup_desc;
	GtkButton* backup_button;
	GtkProgressBar* backup_progress;
	DejaDupConfigLabelDescription* restore_desc;
	GtkButton* restore_button;
	GtkProgressBar* restore_progress;
	guint bus_watch_id;
};

struct _Block1Data {
	int _ref_count_;
	DejaDupPreferences* self;
	GtkNotebook* notebook;
	GtkListStore* cat_model;
	GtkTreeView* tree;
};


static gpointer deja_dup_preferences_periodic_switch_parent_class = NULL;
static gpointer deja_dup_preferences_parent_class = NULL;

GType deja_dup_preferences_periodic_switch_get_type (void) G_GNUC_CONST;
enum  {
	DEJA_DUP_PREFERENCES_PERIODIC_SWITCH_DUMMY_PROPERTY
};
DejaDupPreferencesPeriodicSwitch* deja_dup_preferences_periodic_switch_new (void);
DejaDupPreferencesPeriodicSwitch* deja_dup_preferences_periodic_switch_construct (GType object_type);
static GObject * deja_dup_preferences_periodic_switch_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties);
GType deja_dup_preferences_get_type (void) G_GNUC_CONST;
#define DEJA_DUP_PREFERENCES_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DEJA_DUP_TYPE_PREFERENCES, DejaDupPreferencesPrivate))
enum  {
	DEJA_DUP_PREFERENCES_DUMMY_PROPERTY,
	DEJA_DUP_PREFERENCES_AUTO_SWITCH,
	DEJA_DUP_PREFERENCES_DUPLICITY_INSTALLED
};
#define DEJA_DUP_PREFERENCES_PAGE_HMARGIN 24
#define DEJA_DUP_PREFERENCES_PAGE_VMARGIN 12
DejaDupPreferences* deja_dup_preferences_new (DejaDupPreferencesPeriodicSwitch* auto_switch);
DejaDupPreferences* deja_dup_preferences_construct (GType object_type, DejaDupPreferencesPeriodicSwitch* auto_switch);
gboolean deja_dup_preferences_get_duplicity_installed (DejaDupPreferences* self);
static GtkWidget* deja_dup_preferences_make_settings_page (DejaDupPreferences* self);
static Block1Data* block1_data_ref (Block1Data* _data1_);
static void block1_data_unref (void * _userdata_);
static void __lambda4_ (Block1Data* _data1_);
static void ___lambda4__gtk_tree_selection_changed (GtkTreeSelection* _sender, gpointer self);
static GtkGrid* deja_dup_preferences_new_panel (DejaDupPreferences* self);
static void __lambda5_ (DejaDupPreferences* self, GtkButton* b);
static void ___lambda5__gtk_button_clicked (GtkButton* _sender, gpointer self);
static void __lambda6_ (DejaDupPreferences* self, GtkButton* b);
static void ___lambda6__gtk_button_clicked (GtkButton* _sender, gpointer self);
static void __lambda7_ (DejaDupPreferences* self);
static void ___lambda7__gbus_name_appeared_callback (GDBusConnection* connection, const gchar* name, const gchar* name_owner, gpointer self);
static void __lambda8_ (DejaDupPreferences* self);
static void ___lambda8__gbus_name_vanished_callback (GDBusConnection* connection, const gchar* name, gpointer self);
DejaDupPreferencesPeriodicSwitch* deja_dup_preferences_get_auto_switch (DejaDupPreferences* self);
void deja_dup_preferences_set_auto_switch (DejaDupPreferences* self, DejaDupPreferencesPeriodicSwitch* value);
static void deja_dup_preferences_set_duplicity_installed (DejaDupPreferences* self, gboolean value);
static GObject * deja_dup_preferences_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties);
static void deja_dup_preferences_finalize (GObject* obj);
static void _vala_deja_dup_preferences_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
static void _vala_deja_dup_preferences_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);


DejaDupPreferencesPeriodicSwitch* deja_dup_preferences_periodic_switch_construct (GType object_type) {
	DejaDupPreferencesPeriodicSwitch * self = NULL;
	self = (DejaDupPreferencesPeriodicSwitch*) g_object_new (object_type, NULL);
	return self;
}


DejaDupPreferencesPeriodicSwitch* deja_dup_preferences_periodic_switch_new (void) {
	return deja_dup_preferences_periodic_switch_construct (DEJA_DUP_TYPE_PREFERENCES_PERIODIC_SWITCH);
}


static GObject * deja_dup_preferences_periodic_switch_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties) {
	GObject * obj;
	GObjectClass * parent_class;
	DejaDupPreferencesPeriodicSwitch * self;
	DejaDupFilteredSettings* settings = NULL;
	DejaDupFilteredSettings* _tmp0_ = NULL;
	DejaDupFilteredSettings* _tmp1_ = NULL;
	parent_class = G_OBJECT_CLASS (deja_dup_preferences_periodic_switch_parent_class);
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, DEJA_DUP_TYPE_PREFERENCES_PERIODIC_SWITCH, DejaDupPreferencesPeriodicSwitch);
	_tmp0_ = deja_dup_get_settings (NULL);
	settings = _tmp0_;
	_tmp1_ = settings;
	g_settings_bind ((GSettings*) _tmp1_, DEJA_DUP_PERIODIC_KEY, (GObject*) self, "active", G_SETTINGS_BIND_DEFAULT);
	_g_object_unref0 (settings);
	return obj;
}


static void deja_dup_preferences_periodic_switch_class_init (DejaDupPreferencesPeriodicSwitchClass * klass) {
	deja_dup_preferences_periodic_switch_parent_class = g_type_class_peek_parent (klass);
	G_OBJECT_CLASS (klass)->constructor = deja_dup_preferences_periodic_switch_constructor;
}


static void deja_dup_preferences_periodic_switch_instance_init (DejaDupPreferencesPeriodicSwitch * self) {
}


GType deja_dup_preferences_periodic_switch_get_type (void) {
	static volatile gsize deja_dup_preferences_periodic_switch_type_id__volatile = 0;
	if (g_once_init_enter (&deja_dup_preferences_periodic_switch_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (DejaDupPreferencesPeriodicSwitchClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) deja_dup_preferences_periodic_switch_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DejaDupPreferencesPeriodicSwitch), 0, (GInstanceInitFunc) deja_dup_preferences_periodic_switch_instance_init, NULL };
		GType deja_dup_preferences_periodic_switch_type_id;
		deja_dup_preferences_periodic_switch_type_id = g_type_register_static (gtk_switch_get_type (), "DejaDupPreferencesPeriodicSwitch", &g_define_type_info, 0);
		g_once_init_leave (&deja_dup_preferences_periodic_switch_type_id__volatile, deja_dup_preferences_periodic_switch_type_id);
	}
	return deja_dup_preferences_periodic_switch_type_id__volatile;
}


DejaDupPreferences* deja_dup_preferences_construct (GType object_type, DejaDupPreferencesPeriodicSwitch* auto_switch) {
	DejaDupPreferences * self = NULL;
	DejaDupPreferencesPeriodicSwitch* _tmp0_ = NULL;
	DejaDupPreferencesPeriodicSwitch* _tmp1_ = NULL;
	gboolean _tmp2_ = FALSE;
	_tmp0_ = auto_switch;
	self = (DejaDupPreferences*) g_object_new (object_type, "auto-switch", _tmp0_, NULL);
	_tmp1_ = auto_switch;
	_tmp2_ = self->priv->_duplicity_installed;
	gtk_widget_set_sensitive ((GtkWidget*) _tmp1_, _tmp2_);
	return self;
}


DejaDupPreferences* deja_dup_preferences_new (DejaDupPreferencesPeriodicSwitch* auto_switch) {
	return deja_dup_preferences_construct (DEJA_DUP_TYPE_PREFERENCES, auto_switch);
}


static Block1Data* block1_data_ref (Block1Data* _data1_) {
	g_atomic_int_inc (&_data1_->_ref_count_);
	return _data1_;
}


static void block1_data_unref (void * _userdata_) {
	Block1Data* _data1_;
	_data1_ = (Block1Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data1_->_ref_count_)) {
		DejaDupPreferences* self;
		self = _data1_->self;
		_g_object_unref0 (_data1_->tree);
		_g_object_unref0 (_data1_->cat_model);
		_g_object_unref0 (_data1_->notebook);
		_g_object_unref0 (self);
		g_slice_free (Block1Data, _data1_);
	}
}


static gpointer _g_object_ref0 (gpointer self) {
	return self ? g_object_ref (self) : NULL;
}


static void __lambda4_ (Block1Data* _data1_) {
	DejaDupPreferences* self;
	GtkTreeIter sel_iter = {0};
	gint page = 0;
	GtkTreeView* _tmp0_ = NULL;
	GtkTreeSelection* _tmp1_ = NULL;
	GtkTreeIter _tmp2_ = {0};
	gboolean _tmp3_ = FALSE;
	self = _data1_->self;
	_tmp0_ = _data1_->tree;
	_tmp1_ = gtk_tree_view_get_selection (_tmp0_);
	_tmp3_ = gtk_tree_selection_get_selected (_tmp1_, NULL, &_tmp2_);
	sel_iter = _tmp2_;
	if (_tmp3_) {
		GtkListStore* _tmp4_ = NULL;
		GtkTreeIter _tmp5_ = {0};
		GtkNotebook* _tmp6_ = NULL;
		gint _tmp7_ = 0;
		_tmp4_ = _data1_->cat_model;
		_tmp5_ = sel_iter;
		gtk_tree_model_get ((GtkTreeModel*) _tmp4_, &_tmp5_, 1, &page, -1);
		_tmp6_ = _data1_->notebook;
		_tmp7_ = page;
		g_object_set (_tmp6_, "page", _tmp7_, NULL);
	}
}


static void ___lambda4__gtk_tree_selection_changed (GtkTreeSelection* _sender, gpointer self) {
	__lambda4_ (self);
}


static void __lambda5_ (DejaDupPreferences* self, GtkButton* b) {
	gboolean _tmp0_ = FALSE;
	g_return_if_fail (b != NULL);
	_tmp0_ = self->priv->_duplicity_installed;
	if (_tmp0_) {
		GtkButton* _tmp1_ = NULL;
		GdkDisplay* _tmp2_ = NULL;
		GdkAppLaunchContext* _tmp3_ = NULL;
		GdkAppLaunchContext* _tmp4_ = NULL;
		_tmp1_ = b;
		_tmp2_ = gtk_widget_get_display ((GtkWidget*) _tmp1_);
		_tmp3_ = gdk_display_get_app_launch_context (_tmp2_);
		_tmp4_ = _tmp3_;
		deja_dup_run_deja_dup ("--restore", (GAppLaunchContext*) _tmp4_, NULL);
		_g_object_unref0 (_tmp4_);
	}
}


static void ___lambda5__gtk_button_clicked (GtkButton* _sender, gpointer self) {
	__lambda5_ ((DejaDupPreferences*) self, _sender);
}


static void __lambda6_ (DejaDupPreferences* self, GtkButton* b) {
	gboolean _tmp0_ = FALSE;
	g_return_if_fail (b != NULL);
	_tmp0_ = self->priv->_duplicity_installed;
	if (_tmp0_) {
		GtkButton* _tmp1_ = NULL;
		GdkDisplay* _tmp2_ = NULL;
		GdkAppLaunchContext* _tmp3_ = NULL;
		GdkAppLaunchContext* _tmp4_ = NULL;
		_tmp1_ = b;
		_tmp2_ = gtk_widget_get_display ((GtkWidget*) _tmp1_);
		_tmp3_ = gdk_display_get_app_launch_context (_tmp2_);
		_tmp4_ = _tmp3_;
		deja_dup_run_deja_dup ("--backup", (GAppLaunchContext*) _tmp4_, NULL);
		_g_object_unref0 (_tmp4_);
	}
}


static void ___lambda6__gtk_button_clicked (GtkButton* _sender, gpointer self) {
	__lambda6_ ((DejaDupPreferences*) self, _sender);
}


static void __lambda7_ (DejaDupPreferences* self) {
	GtkButton* _tmp0_ = NULL;
	GtkButton* _tmp1_ = NULL;
	_tmp0_ = self->priv->restore_button;
	gtk_widget_set_sensitive ((GtkWidget*) _tmp0_, FALSE);
	_tmp1_ = self->priv->backup_button;
	gtk_widget_set_sensitive ((GtkWidget*) _tmp1_, FALSE);
}


static void ___lambda7__gbus_name_appeared_callback (GDBusConnection* connection, const gchar* name, const gchar* name_owner, gpointer self) {
	__lambda7_ ((DejaDupPreferences*) self);
}


static void __lambda8_ (DejaDupPreferences* self) {
	GtkButton* _tmp0_ = NULL;
	GtkButton* _tmp1_ = NULL;
	_tmp0_ = self->priv->restore_button;
	gtk_widget_set_sensitive ((GtkWidget*) _tmp0_, TRUE);
	_tmp1_ = self->priv->backup_button;
	gtk_widget_set_sensitive ((GtkWidget*) _tmp1_, TRUE);
}


static void ___lambda8__gbus_name_vanished_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
	__lambda8_ ((DejaDupPreferences*) self);
}


static GtkWidget* deja_dup_preferences_make_settings_page (DejaDupPreferences* self) {
	GtkWidget* result = NULL;
	Block1Data* _data1_;
	GtkGrid* settings_page = NULL;
	GtkGrid* _tmp0_ = NULL;
	GtkNotebook* _tmp1_ = NULL;
	GtkWidget* w = NULL;
	GtkLabel* label = NULL;
	GtkGrid* table = NULL;
	GtkTreeIter iter = {0};
	gint i = 0;
	gint row = 0;
	GtkSizeGroup* label_sizes = NULL;
	DejaDupFilteredSettings* settings = NULL;
	DejaDupFilteredSettings* _tmp2_ = NULL;
	GtkGrid* _tmp3_ = NULL;
	GtkListStore* _tmp4_ = NULL;
	GtkListStore* _tmp5_ = NULL;
	GtkTreeView* _tmp6_ = NULL;
	AtkObject* accessible = NULL;
	GtkTreeView* _tmp7_ = NULL;
	AtkObject* _tmp8_ = NULL;
	AtkObject* _tmp9_ = NULL;
	AtkObject* _tmp10_ = NULL;
	GtkTreeView* _tmp14_ = NULL;
	GtkTreeView* _tmp15_ = NULL;
	GtkCellRendererText* renderer = NULL;
	GtkCellRendererText* _tmp16_ = NULL;
	GtkCellRendererText* _tmp17_ = NULL;
	GtkCellRendererText* _tmp18_ = NULL;
	GtkTreeView* _tmp19_ = NULL;
	GtkCellRendererText* _tmp20_ = NULL;
	GtkTreeView* _tmp21_ = NULL;
	GtkTreeSelection* _tmp22_ = NULL;
	GtkTreeView* _tmp23_ = NULL;
	GtkTreeSelection* _tmp24_ = NULL;
	GtkScrolledWindow* scrollwin = NULL;
	GtkScrolledWindow* _tmp25_ = NULL;
	GtkScrolledWindow* _tmp26_ = NULL;
	GtkScrolledWindow* _tmp27_ = NULL;
	GtkScrolledWindow* _tmp28_ = NULL;
	GtkScrolledWindow* _tmp29_ = NULL;
	GtkTreeView* _tmp30_ = NULL;
	GtkGrid* _tmp31_ = NULL;
	GtkScrolledWindow* _tmp32_ = NULL;
	GtkGrid* _tmp33_ = NULL;
	GtkGrid* _tmp34_ = NULL;
	GtkGrid* _tmp35_ = NULL;
	GtkGrid* _tmp36_ = NULL;
	GtkGrid* _tmp37_ = NULL;
	GtkSizeGroup* _tmp38_ = NULL;
	GtkImage* _tmp39_ = NULL;
	GtkWidget* _tmp40_ = NULL;
	GtkWidget* _tmp41_ = NULL;
	GtkGrid* _tmp42_ = NULL;
	GtkWidget* _tmp43_ = NULL;
	gint _tmp44_ = 0;
	DejaDupConfigLabelBackupDate* _tmp45_ = NULL;
	GtkWidget* _tmp46_ = NULL;
	GtkWidget* _tmp47_ = NULL;
	GtkGrid* _tmp48_ = NULL;
	GtkWidget* _tmp49_ = NULL;
	gint _tmp50_ = 0;
	gint _tmp51_ = 0;
	gboolean _tmp52_ = FALSE;
	DejaDupConfigLabelDescription* _tmp53_ = NULL;
	GtkWidget* _tmp54_ = NULL;
	GtkWidget* _tmp55_ = NULL;
	GtkWidget* _tmp56_ = NULL;
	DejaDupConfigLabelDescription* _tmp57_ = NULL;
	GtkGrid* _tmp58_ = NULL;
	GtkWidget* _tmp59_ = NULL;
	gint _tmp60_ = 0;
	gint _tmp61_ = 0;
	const gchar* _tmp62_ = NULL;
	gboolean _tmp63_ = FALSE;
	GtkButton* _tmp66_ = NULL;
	GtkWidget* _tmp67_ = NULL;
	GtkWidget* _tmp68_ = NULL;
	GtkWidget* _tmp69_ = NULL;
	GtkWidget* _tmp70_ = NULL;
	GtkWidget* _tmp71_ = NULL;
	GtkButton* _tmp72_ = NULL;
	GtkSizeGroup* _tmp73_ = NULL;
	GtkWidget* _tmp74_ = NULL;
	GtkGrid* _tmp75_ = NULL;
	GtkWidget* _tmp76_ = NULL;
	gint _tmp77_ = 0;
	GtkProgressBar* _tmp78_ = NULL;
	GtkWidget* _tmp79_ = NULL;
	GtkWidget* _tmp80_ = NULL;
	GtkWidget* _tmp81_ = NULL;
	GtkWidget* _tmp82_ = NULL;
	GtkWidget* _tmp83_ = NULL;
	GtkProgressBar* _tmp84_ = NULL;
	GtkGrid* _tmp85_ = NULL;
	GtkWidget* _tmp86_ = NULL;
	gint _tmp87_ = 0;
	gint _tmp88_ = 0;
	GtkGrid* _tmp89_ = NULL;
	GtkWidget* _tmp90_ = NULL;
	GtkGrid* _tmp91_ = NULL;
	GtkWidget* _tmp92_ = NULL;
	gint _tmp93_ = 0;
	gint _tmp94_ = 0;
	GtkImage* _tmp95_ = NULL;
	GtkWidget* _tmp96_ = NULL;
	GtkWidget* _tmp97_ = NULL;
	GtkGrid* _tmp98_ = NULL;
	GtkWidget* _tmp99_ = NULL;
	gint _tmp100_ = 0;
	DejaDupConfigLabelBackupDate* _tmp101_ = NULL;
	GtkWidget* _tmp102_ = NULL;
	GtkWidget* _tmp103_ = NULL;
	GtkGrid* _tmp104_ = NULL;
	GtkWidget* _tmp105_ = NULL;
	gint _tmp106_ = 0;
	gint _tmp107_ = 0;
	gboolean _tmp108_ = FALSE;
	DejaDupConfigLabelDescription* _tmp109_ = NULL;
	GtkWidget* _tmp110_ = NULL;
	GtkWidget* _tmp111_ = NULL;
	GtkWidget* _tmp112_ = NULL;
	DejaDupConfigLabelDescription* _tmp113_ = NULL;
	GtkGrid* _tmp114_ = NULL;
	GtkWidget* _tmp115_ = NULL;
	gint _tmp116_ = 0;
	gint _tmp117_ = 0;
	const gchar* _tmp118_ = NULL;
	gboolean _tmp119_ = FALSE;
	GtkButton* _tmp122_ = NULL;
	GtkWidget* _tmp123_ = NULL;
	GtkWidget* _tmp124_ = NULL;
	GtkWidget* _tmp125_ = NULL;
	GtkWidget* _tmp126_ = NULL;
	GtkWidget* _tmp127_ = NULL;
	GtkButton* _tmp128_ = NULL;
	GtkSizeGroup* _tmp129_ = NULL;
	GtkWidget* _tmp130_ = NULL;
	GtkGrid* _tmp131_ = NULL;
	GtkWidget* _tmp132_ = NULL;
	gint _tmp133_ = 0;
	GtkProgressBar* _tmp134_ = NULL;
	GtkWidget* _tmp135_ = NULL;
	GtkWidget* _tmp136_ = NULL;
	GtkWidget* _tmp137_ = NULL;
	GtkWidget* _tmp138_ = NULL;
	GtkWidget* _tmp139_ = NULL;
	GtkProgressBar* _tmp140_ = NULL;
	GtkGrid* _tmp141_ = NULL;
	GtkWidget* _tmp142_ = NULL;
	gint _tmp143_ = 0;
	gint _tmp144_ = 0;
	guint _tmp145_ = 0U;
	GtkNotebook* _tmp146_ = NULL;
	GtkGrid* _tmp147_ = NULL;
	GtkListStore* _tmp148_ = NULL;
	gint _tmp149_ = 0;
	const gchar* _tmp150_ = NULL;
	gint _tmp151_ = 0;
	GtkTreeIter _tmp152_ = {0};
	gint _tmp153_ = 0;
	GtkGrid* _tmp154_ = NULL;
	DejaDupConfigList* _tmp155_ = NULL;
	GtkWidget* _tmp156_ = NULL;
	GtkGrid* _tmp157_ = NULL;
	GtkWidget* _tmp158_ = NULL;
	GtkNotebook* _tmp159_ = NULL;
	GtkGrid* _tmp160_ = NULL;
	GtkListStore* _tmp161_ = NULL;
	gint _tmp162_ = 0;
	const gchar* _tmp163_ = NULL;
	gint _tmp164_ = 0;
	GtkTreeIter _tmp165_ = {0};
	gint _tmp166_ = 0;
	GtkGrid* _tmp167_ = NULL;
	DejaDupConfigList* _tmp168_ = NULL;
	GtkWidget* _tmp169_ = NULL;
	GtkGrid* _tmp170_ = NULL;
	GtkWidget* _tmp171_ = NULL;
	GtkNotebook* _tmp172_ = NULL;
	GtkGrid* _tmp173_ = NULL;
	GtkListStore* _tmp174_ = NULL;
	gint _tmp175_ = 0;
	const gchar* _tmp176_ = NULL;
	gint _tmp177_ = 0;
	GtkTreeIter _tmp178_ = {0};
	gint _tmp179_ = 0;
	GtkGrid* _tmp180_ = NULL;
	GtkGrid* _tmp181_ = NULL;
	GtkGrid* _tmp182_ = NULL;
	GtkSizeGroup* _tmp183_ = NULL;
	DejaDupConfigLocation* location = NULL;
	GtkSizeGroup* _tmp184_ = NULL;
	DejaDupConfigLocation* _tmp185_ = NULL;
	const gchar* _tmp186_ = NULL;
	GtkLabel* _tmp187_ = NULL;
	GtkLabel* _tmp188_ = NULL;
	DejaDupConfigLocation* _tmp189_ = NULL;
	GtkSizeGroup* _tmp190_ = NULL;
	GtkLabel* _tmp191_ = NULL;
	GtkGrid* _tmp192_ = NULL;
	GtkLabel* _tmp193_ = NULL;
	gint _tmp194_ = 0;
	GtkGrid* _tmp195_ = NULL;
	DejaDupConfigLocation* _tmp196_ = NULL;
	gint _tmp197_ = 0;
	DejaDupConfigLocation* _tmp198_ = NULL;
	gint _tmp199_ = 0;
	DejaDupConfigLocation* _tmp200_ = NULL;
	GtkEventBox* _tmp201_ = NULL;
	GtkEventBox* _tmp202_ = NULL;
	GtkGrid* _tmp203_ = NULL;
	DejaDupConfigLocation* _tmp204_ = NULL;
	GtkEventBox* _tmp205_ = NULL;
	GtkEventBox* _tmp206_ = NULL;
	gint _tmp207_ = 0;
	gint _tmp208_ = 0;
	GtkNotebook* _tmp209_ = NULL;
	GtkGrid* _tmp210_ = NULL;
	GtkListStore* _tmp211_ = NULL;
	gint _tmp212_ = 0;
	const gchar* _tmp213_ = NULL;
	gint _tmp214_ = 0;
	GtkTreeIter _tmp215_ = {0};
	gint _tmp216_ = 0;
	GtkRequisition req = {0};
	GtkRequisition hidden = {0};
	GtkGrid* _tmp217_ = NULL;
	GtkGrid* _tmp218_ = NULL;
	GtkRequisition _tmp219_ = {0};
	DejaDupConfigLocation* _tmp220_ = NULL;
	GtkRequisition _tmp221_ = {0};
	GtkRequisition _tmp222_ = {0};
	gint _tmp223_ = 0;
	GtkRequisition _tmp224_ = {0};
	gint _tmp225_ = 0;
	GtkRequisition _tmp226_ = {0};
	gint _tmp227_ = 0;
	GtkRequisition _tmp228_ = {0};
	gint _tmp229_ = 0;
	GtkGrid* _tmp230_ = NULL;
	GtkRequisition _tmp231_ = {0};
	gint _tmp232_ = 0;
	GtkRequisition _tmp233_ = {0};
	gint _tmp234_ = 0;
	GtkGrid* _tmp235_ = NULL;
	GtkGrid* _tmp236_ = NULL;
	GtkGrid* _tmp237_ = NULL;
	GtkGrid* _tmp238_ = NULL;
	DejaDupPreferencesPeriodicSwitch* _tmp239_ = NULL;
	DejaDupConfigPeriod* _tmp257_ = NULL;
	GtkWidget* _tmp258_ = NULL;
	DejaDupFilteredSettings* _tmp259_ = NULL;
	GtkWidget* _tmp260_ = NULL;
	const gchar* _tmp261_ = NULL;
	GtkLabel* _tmp262_ = NULL;
	GtkLabel* _tmp263_ = NULL;
	GtkWidget* _tmp264_ = NULL;
	GtkLabel* _tmp265_ = NULL;
	DejaDupFilteredSettings* _tmp266_ = NULL;
	GtkLabel* _tmp267_ = NULL;
	GtkGrid* _tmp268_ = NULL;
	GtkLabel* _tmp269_ = NULL;
	gint _tmp270_ = 0;
	GtkGrid* _tmp271_ = NULL;
	GtkWidget* _tmp272_ = NULL;
	gint _tmp273_ = 0;
	gint _tmp274_ = 0;
	DejaDupConfigDelete* _tmp275_ = NULL;
	GtkWidget* _tmp276_ = NULL;
	const gchar* _tmp277_ = NULL;
	GtkLabel* _tmp278_ = NULL;
	GtkLabel* _tmp279_ = NULL;
	GtkWidget* _tmp280_ = NULL;
	GtkLabel* _tmp281_ = NULL;
	GtkGrid* _tmp282_ = NULL;
	GtkLabel* _tmp283_ = NULL;
	gint _tmp284_ = 0;
	GtkGrid* _tmp285_ = NULL;
	GtkWidget* _tmp286_ = NULL;
	gint _tmp287_ = 0;
	gint _tmp288_ = 0;
	const gchar* _tmp289_ = NULL;
	GtkLabel* _tmp290_ = NULL;
	PangoAttrList* attrs = NULL;
	PangoAttrList* _tmp291_ = NULL;
	PangoAttribute* _tmp292_ = NULL;
	GtkLabel* _tmp293_ = NULL;
	GtkLabel* _tmp294_ = NULL;
	GtkLabel* _tmp295_ = NULL;
	GtkGrid* _tmp296_ = NULL;
	GtkLabel* _tmp297_ = NULL;
	gint _tmp298_ = 0;
	gint _tmp299_ = 0;
	GtkNotebook* _tmp300_ = NULL;
	GtkGrid* _tmp301_ = NULL;
	GtkListStore* _tmp302_ = NULL;
	gint _tmp303_ = 0;
	const gchar* _tmp304_ = NULL;
	gint _tmp305_ = 0;
	GtkTreeIter _tmp306_ = {0};
	gint _tmp307_ = 0;
	GtkListStore* _tmp308_ = NULL;
	GtkTreeIter _tmp309_ = {0};
	GtkTreeView* _tmp310_ = NULL;
	GtkTreeSelection* _tmp311_ = NULL;
	GtkTreeIter _tmp312_ = {0};
	GtkNotebook* _tmp313_ = NULL;
	GtkNotebook* _tmp314_ = NULL;
	GtkNotebook* _tmp315_ = NULL;
	GtkGrid* _tmp316_ = NULL;
	GtkNotebook* _tmp317_ = NULL;
	GtkGrid* _tmp318_ = NULL;
	g_return_val_if_fail (self != NULL, NULL);
	_data1_ = g_slice_new0 (Block1Data);
	_data1_->_ref_count_ = 1;
	_data1_->self = g_object_ref (self);
	_tmp0_ = (GtkGrid*) gtk_grid_new ();
	g_object_ref_sink (_tmp0_);
	settings_page = _tmp0_;
	_tmp1_ = (GtkNotebook*) gtk_notebook_new ();
	g_object_ref_sink (_tmp1_);
	_data1_->notebook = _tmp1_;
	i = 0;
	_tmp2_ = deja_dup_get_settings (NULL);
	settings = _tmp2_;
	_tmp3_ = settings_page;
	gtk_grid_set_column_spacing (_tmp3_, 12);
	_tmp4_ = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_INT, -1);
	_data1_->cat_model = _tmp4_;
	_tmp5_ = _data1_->cat_model;
	_tmp6_ = (GtkTreeView*) gtk_tree_view_new_with_model ((GtkTreeModel*) _tmp5_);
	g_object_ref_sink (_tmp6_);
	_data1_->tree = _tmp6_;
	_tmp7_ = _data1_->tree;
	_tmp8_ = gtk_widget_get_accessible ((GtkWidget*) _tmp7_);
	_tmp9_ = _g_object_ref0 (_tmp8_);
	accessible = _tmp9_;
	_tmp10_ = accessible;
	if (_tmp10_ != NULL) {
		AtkObject* _tmp11_ = NULL;
		AtkObject* _tmp12_ = NULL;
		const gchar* _tmp13_ = NULL;
		_tmp11_ = accessible;
		atk_object_set_name (_tmp11_, "Categories");
		_tmp12_ = accessible;
		_tmp13_ = _ ("Categories");
		atk_object_set_description (_tmp12_, _tmp13_);
	}
	_tmp14_ = _data1_->tree;
	gtk_tree_view_set_headers_visible (_tmp14_, FALSE);
	_tmp15_ = _data1_->tree;
	gtk_widget_set_size_request ((GtkWidget*) _tmp15_, 150, -1);
	_tmp16_ = (GtkCellRendererText*) gtk_cell_renderer_text_new ();
	g_object_ref_sink (_tmp16_);
	renderer = _tmp16_;
	_tmp17_ = renderer;
	g_object_set ((GtkCellRenderer*) _tmp17_, "xpad", (guint) 6, NULL);
	_tmp18_ = renderer;
	g_object_set ((GtkCellRenderer*) _tmp18_, "ypad", (guint) 6, NULL);
	_tmp19_ = _data1_->tree;
	_tmp20_ = renderer;
	gtk_tree_view_insert_column_with_attributes (_tmp19_, -1, NULL, (GtkCellRenderer*) _tmp20_, "text", 0, NULL);
	_tmp21_ = _data1_->tree;
	_tmp22_ = gtk_tree_view_get_selection (_tmp21_);
	gtk_tree_selection_set_mode (_tmp22_, GTK_SELECTION_SINGLE);
	_tmp23_ = _data1_->tree;
	_tmp24_ = gtk_tree_view_get_selection (_tmp23_);
	g_signal_connect_data (_tmp24_, "changed", (GCallback) ___lambda4__gtk_tree_selection_changed, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0);
	_tmp25_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL);
	g_object_ref_sink (_tmp25_);
	scrollwin = _tmp25_;
	_tmp26_ = scrollwin;
	g_object_set (_tmp26_, "hscrollbar-policy", GTK_POLICY_NEVER, NULL);
	_tmp27_ = scrollwin;
	g_object_set (_tmp27_, "vscrollbar-policy", GTK_POLICY_NEVER, NULL);
	_tmp28_ = scrollwin;
	gtk_scrolled_window_set_shadow_type (_tmp28_, GTK_SHADOW_IN);
	_tmp29_ = scrollwin;
	_tmp30_ = _data1_->tree;
	gtk_container_add ((GtkContainer*) _tmp29_, (GtkWidget*) _tmp30_);
	_tmp31_ = settings_page;
	_tmp32_ = scrollwin;
	gtk_container_add ((GtkContainer*) _tmp31_, (GtkWidget*) _tmp32_);
	_tmp33_ = deja_dup_preferences_new_panel (self);
	_g_object_unref0 (table);
	table = _tmp33_;
	_tmp34_ = table;
	gtk_orientable_set_orientation ((GtkOrientable*) _tmp34_, GTK_ORIENTATION_VERTICAL);
	_tmp35_ = table;
	gtk_grid_set_row_spacing (_tmp35_, 6);
	_tmp36_ = table;
	gtk_grid_set_column_spacing (_tmp36_, 12);
	_tmp37_ = table;
	g_object_set ((GtkWidget*) _tmp37_, "expand", TRUE, NULL);
	row = 0;
	_tmp38_ = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
	_g_object_unref0 (label_sizes);
	label_sizes = _tmp38_;
	_tmp39_ = (GtkImage*) gtk_image_new_from_icon_name ("document-save-symbolic", GTK_ICON_SIZE_DIALOG);
	g_object_ref_sink (_tmp39_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp39_;
	_tmp40_ = w;
	gtk_widget_set_halign (_tmp40_, GTK_ALIGN_CENTER);
	_tmp41_ = w;
	gtk_widget_set_valign (_tmp41_, GTK_ALIGN_START);
	_tmp42_ = table;
	_tmp43_ = w;
	_tmp44_ = row;
	gtk_grid_attach (_tmp42_, _tmp43_, 0, _tmp44_, 1, 3);
	_tmp45_ = deja_dup_config_label_backup_date_new (DEJA_DUP_CONFIG_LABEL_BACKUP_DATE_KIND_LAST);
	g_object_ref_sink (_tmp45_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp45_;
	_tmp46_ = w;
	gtk_widget_set_halign (_tmp46_, GTK_ALIGN_START);
	_tmp47_ = w;
	gtk_widget_set_valign (_tmp47_, GTK_ALIGN_START);
	_tmp48_ = table;
	_tmp49_ = w;
	_tmp50_ = row;
	gtk_grid_attach (_tmp48_, _tmp49_, 1, _tmp50_, 2, 1);
	_tmp51_ = row;
	row = _tmp51_ + 1;
	_tmp52_ = self->priv->_duplicity_installed;
	_tmp53_ = deja_dup_config_label_description_new (DEJA_DUP_CONFIG_LABEL_DESCRIPTION_KIND_RESTORE, _tmp52_);
	g_object_ref_sink (_tmp53_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp53_;
	_tmp54_ = w;
	gtk_widget_set_halign (_tmp54_, GTK_ALIGN_START);
	_tmp55_ = w;
	gtk_widget_set_valign (_tmp55_, GTK_ALIGN_START);
	_tmp56_ = w;
	_tmp57_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp56_, DEJA_DUP_TYPE_CONFIG_LABEL_DESCRIPTION) ? ((DejaDupConfigLabelDescription*) _tmp56_) : NULL);
	_g_object_unref0 (self->priv->restore_desc);
	self->priv->restore_desc = _tmp57_;
	_tmp58_ = table;
	_tmp59_ = w;
	_tmp60_ = row;
	gtk_grid_attach (_tmp58_, _tmp59_, 1, _tmp60_, 2, 1);
	_tmp61_ = row;
	row = _tmp61_ + 1;
	_tmp63_ = self->priv->_duplicity_installed;
	if (_tmp63_) {
		const gchar* _tmp64_ = NULL;
		_tmp64_ = _ ("_Restore…");
		_tmp62_ = _tmp64_;
	} else {
		const gchar* _tmp65_ = NULL;
		_tmp65_ = _ ("_Install…");
		_tmp62_ = _tmp65_;
	}
	_tmp66_ = (GtkButton*) gtk_button_new_with_mnemonic (_tmp62_);
	g_object_ref_sink (_tmp66_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp66_;
	_tmp67_ = w;
	gtk_widget_set_margin_top (_tmp67_, 6);
	_tmp68_ = w;
	gtk_widget_set_halign (_tmp68_, GTK_ALIGN_START);
	_tmp69_ = w;
	g_object_set (_tmp69_, "expand", FALSE, NULL);
	_tmp70_ = w;
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_TYPE (_tmp70_, gtk_button_get_type ()) ? ((GtkButton*) _tmp70_) : NULL, "clicked", (GCallback) ___lambda5__gtk_button_clicked, self, 0);
	_tmp71_ = w;
	_tmp72_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp71_, gtk_button_get_type ()) ? ((GtkButton*) _tmp71_) : NULL);
	_g_object_unref0 (self->priv->restore_button);
	self->priv->restore_button = _tmp72_;
	_tmp73_ = label_sizes;
	_tmp74_ = w;
	gtk_size_group_add_widget (_tmp73_, _tmp74_);
	_tmp75_ = table;
	_tmp76_ = w;
	_tmp77_ = row;
	gtk_grid_attach (_tmp75_, _tmp76_, 1, _tmp77_, 1, 1);
	_tmp78_ = (GtkProgressBar*) gtk_progress_bar_new ();
	g_object_ref_sink (_tmp78_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp78_;
	_tmp79_ = w;
	gtk_widget_set_halign (_tmp79_, GTK_ALIGN_START);
	_tmp80_ = w;
	gtk_widget_set_valign (_tmp80_, GTK_ALIGN_CENTER);
	_tmp81_ = w;
	gtk_widget_set_hexpand (_tmp81_, TRUE);
	_tmp82_ = w;
	gtk_widget_set_no_show_all (_tmp82_, TRUE);
	_tmp83_ = w;
	_tmp84_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp83_, gtk_progress_bar_get_type ()) ? ((GtkProgressBar*) _tmp83_) : NULL);
	_g_object_unref0 (self->priv->restore_progress);
	self->priv->restore_progress = _tmp84_;
	_tmp85_ = table;
	_tmp86_ = w;
	_tmp87_ = row;
	gtk_grid_attach (_tmp85_, _tmp86_, 2, _tmp87_, 1, 1);
	_tmp88_ = row;
	row = _tmp88_ + 1;
	_tmp89_ = (GtkGrid*) gtk_grid_new ();
	g_object_ref_sink (_tmp89_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp89_;
	_tmp90_ = w;
	g_object_set (_tmp90_, "height-request", 24, NULL);
	_tmp91_ = table;
	_tmp92_ = w;
	_tmp93_ = row;
	gtk_grid_attach (_tmp91_, _tmp92_, 0, _tmp93_, 2, 1);
	_tmp94_ = row;
	row = _tmp94_ + 1;
	_tmp95_ = (GtkImage*) gtk_image_new_from_icon_name ("document-open-recent-symbolic", GTK_ICON_SIZE_DIALOG);
	g_object_ref_sink (_tmp95_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp95_;
	_tmp96_ = w;
	gtk_widget_set_halign (_tmp96_, GTK_ALIGN_CENTER);
	_tmp97_ = w;
	gtk_widget_set_valign (_tmp97_, GTK_ALIGN_START);
	_tmp98_ = table;
	_tmp99_ = w;
	_tmp100_ = row;
	gtk_grid_attach (_tmp98_, _tmp99_, 0, _tmp100_, 1, 3);
	_tmp101_ = deja_dup_config_label_backup_date_new (DEJA_DUP_CONFIG_LABEL_BACKUP_DATE_KIND_NEXT);
	g_object_ref_sink (_tmp101_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp101_;
	_tmp102_ = w;
	gtk_widget_set_halign (_tmp102_, GTK_ALIGN_START);
	_tmp103_ = w;
	gtk_widget_set_valign (_tmp103_, GTK_ALIGN_START);
	_tmp104_ = table;
	_tmp105_ = w;
	_tmp106_ = row;
	gtk_grid_attach (_tmp104_, _tmp105_, 1, _tmp106_, 2, 1);
	_tmp107_ = row;
	row = _tmp107_ + 1;
	_tmp108_ = self->priv->_duplicity_installed;
	_tmp109_ = deja_dup_config_label_description_new (DEJA_DUP_CONFIG_LABEL_DESCRIPTION_KIND_BACKUP, _tmp108_);
	g_object_ref_sink (_tmp109_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp109_;
	_tmp110_ = w;
	gtk_widget_set_halign (_tmp110_, GTK_ALIGN_START);
	_tmp111_ = w;
	gtk_widget_set_valign (_tmp111_, GTK_ALIGN_START);
	_tmp112_ = w;
	_tmp113_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp112_, DEJA_DUP_TYPE_CONFIG_LABEL_DESCRIPTION) ? ((DejaDupConfigLabelDescription*) _tmp112_) : NULL);
	_g_object_unref0 (self->priv->backup_desc);
	self->priv->backup_desc = _tmp113_;
	_tmp114_ = table;
	_tmp115_ = w;
	_tmp116_ = row;
	gtk_grid_attach (_tmp114_, _tmp115_, 1, _tmp116_, 2, 1);
	_tmp117_ = row;
	row = _tmp117_ + 1;
	_tmp119_ = self->priv->_duplicity_installed;
	if (_tmp119_) {
		const gchar* _tmp120_ = NULL;
		_tmp120_ = _ ("_Back Up Now…");
		_tmp118_ = _tmp120_;
	} else {
		const gchar* _tmp121_ = NULL;
		_tmp121_ = _ ("Install…");
		_tmp118_ = _tmp121_;
	}
	_tmp122_ = (GtkButton*) gtk_button_new_with_mnemonic (_tmp118_);
	g_object_ref_sink (_tmp122_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp122_;
	_tmp123_ = w;
	gtk_widget_set_margin_top (_tmp123_, 6);
	_tmp124_ = w;
	gtk_widget_set_halign (_tmp124_, GTK_ALIGN_START);
	_tmp125_ = w;
	g_object_set (_tmp125_, "expand", FALSE, NULL);
	_tmp126_ = w;
	g_signal_connect_object (G_TYPE_CHECK_INSTANCE_TYPE (_tmp126_, gtk_button_get_type ()) ? ((GtkButton*) _tmp126_) : NULL, "clicked", (GCallback) ___lambda6__gtk_button_clicked, self, 0);
	_tmp127_ = w;
	_tmp128_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp127_, gtk_button_get_type ()) ? ((GtkButton*) _tmp127_) : NULL);
	_g_object_unref0 (self->priv->backup_button);
	self->priv->backup_button = _tmp128_;
	_tmp129_ = label_sizes;
	_tmp130_ = w;
	gtk_size_group_add_widget (_tmp129_, _tmp130_);
	_tmp131_ = table;
	_tmp132_ = w;
	_tmp133_ = row;
	gtk_grid_attach (_tmp131_, _tmp132_, 1, _tmp133_, 1, 1);
	_tmp134_ = (GtkProgressBar*) gtk_progress_bar_new ();
	g_object_ref_sink (_tmp134_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp134_;
	_tmp135_ = w;
	gtk_widget_set_halign (_tmp135_, GTK_ALIGN_START);
	_tmp136_ = w;
	gtk_widget_set_valign (_tmp136_, GTK_ALIGN_CENTER);
	_tmp137_ = w;
	gtk_widget_set_hexpand (_tmp137_, TRUE);
	_tmp138_ = w;
	gtk_widget_set_no_show_all (_tmp138_, TRUE);
	_tmp139_ = w;
	_tmp140_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp139_, gtk_progress_bar_get_type ()) ? ((GtkProgressBar*) _tmp139_) : NULL);
	_g_object_unref0 (self->priv->backup_progress);
	self->priv->backup_progress = _tmp140_;
	_tmp141_ = table;
	_tmp142_ = w;
	_tmp143_ = row;
	gtk_grid_attach (_tmp141_, _tmp142_, 2, _tmp143_, 1, 1);
	_tmp144_ = row;
	row = _tmp144_ + 1;
	_tmp145_ = g_bus_watch_name_with_closures (G_BUS_TYPE_SESSION, "org.gnome.DejaDup.Operation", G_BUS_NAME_WATCHER_FLAGS_NONE, (GClosure*) ((___lambda7__gbus_name_appeared_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda7__gbus_name_appeared_callback, g_object_ref (self), g_object_unref)), (GClosure*) ((___lambda8__gbus_name_vanished_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda8__gbus_name_vanished_callback, g_object_ref (self), g_object_unref)));
	self->priv->bus_watch_id = _tmp145_;
	_tmp146_ = _data1_->notebook;
	_tmp147_ = table;
	gtk_notebook_append_page (_tmp146_, (GtkWidget*) _tmp147_, NULL);
	_tmp148_ = _data1_->cat_model;
	_tmp149_ = i;
	_tmp150_ = _ ("Overview");
	_tmp151_ = i;
	gtk_list_store_insert_with_values (_tmp148_, &_tmp152_, _tmp149_, 0, _tmp150_, 1, _tmp151_, -1);
	iter = _tmp152_;
	_tmp153_ = i;
	i = _tmp153_ + 1;
	_tmp154_ = deja_dup_preferences_new_panel (self);
	_g_object_unref0 (table);
	table = _tmp154_;
	_tmp155_ = deja_dup_config_list_new (DEJA_DUP_INCLUDE_LIST_KEY, "");
	g_object_ref_sink (_tmp155_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp155_;
	_tmp156_ = w;
	g_object_set (_tmp156_, "expand", TRUE, NULL);
	_tmp157_ = table;
	_tmp158_ = w;
	gtk_container_add ((GtkContainer*) _tmp157_, _tmp158_);
	_tmp159_ = _data1_->notebook;
	_tmp160_ = table;
	gtk_notebook_append_page (_tmp159_, (GtkWidget*) _tmp160_, NULL);
	_tmp161_ = _data1_->cat_model;
	_tmp162_ = i;
	_tmp163_ = _ ("Folders to save");
	_tmp164_ = i;
	gtk_list_store_insert_with_values (_tmp161_, &_tmp165_, _tmp162_, 0, _tmp163_, 1, _tmp164_, -1);
	iter = _tmp165_;
	_tmp166_ = i;
	i = _tmp166_ + 1;
	_tmp167_ = deja_dup_preferences_new_panel (self);
	_g_object_unref0 (table);
	table = _tmp167_;
	_tmp168_ = deja_dup_config_list_new (DEJA_DUP_EXCLUDE_LIST_KEY, "");
	g_object_ref_sink (_tmp168_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp168_;
	_tmp169_ = w;
	g_object_set (_tmp169_, "expand", TRUE, NULL);
	_tmp170_ = table;
	_tmp171_ = w;
	gtk_container_add ((GtkContainer*) _tmp170_, _tmp171_);
	_tmp172_ = _data1_->notebook;
	_tmp173_ = table;
	gtk_notebook_append_page (_tmp172_, (GtkWidget*) _tmp173_, NULL);
	_tmp174_ = _data1_->cat_model;
	_tmp175_ = i;
	_tmp176_ = _ ("Folders to ignore");
	_tmp177_ = i;
	gtk_list_store_insert_with_values (_tmp174_, &_tmp178_, _tmp175_, 0, _tmp176_, 1, _tmp177_, -1);
	iter = _tmp178_;
	_tmp179_ = i;
	i = _tmp179_ + 1;
	_tmp180_ = deja_dup_preferences_new_panel (self);
	_g_object_unref0 (table);
	table = _tmp180_;
	_tmp181_ = table;
	gtk_grid_set_row_spacing (_tmp181_, 6);
	_tmp182_ = table;
	gtk_grid_set_column_spacing (_tmp182_, 12);
	row = 0;
	_tmp183_ = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
	_g_object_unref0 (label_sizes);
	label_sizes = _tmp183_;
	_tmp184_ = label_sizes;
	_tmp185_ = deja_dup_config_location_new (_tmp184_);
	g_object_ref_sink (_tmp185_);
	location = _tmp185_;
	_tmp186_ = _ ("_Storage location");
	_tmp187_ = (GtkLabel*) gtk_label_new (_tmp186_);
	g_object_ref_sink (_tmp187_);
	_g_object_unref0 (label);
	label = _tmp187_;
	_tmp188_ = label;
	_tmp189_ = location;
	g_object_set ((GObject*) _tmp188_, "mnemonic-widget", _tmp189_, "use-underline", TRUE, "xalign", 1.0f, NULL);
	_tmp190_ = label_sizes;
	_tmp191_ = label;
	gtk_size_group_add_widget (_tmp190_, (GtkWidget*) _tmp191_);
	_tmp192_ = table;
	_tmp193_ = label;
	_tmp194_ = row;
	gtk_grid_attach (_tmp192_, (GtkWidget*) _tmp193_, 0, _tmp194_, 1, 1);
	_tmp195_ = table;
	_tmp196_ = location;
	_tmp197_ = row;
	gtk_grid_attach (_tmp195_, (GtkWidget*) _tmp196_, 1, _tmp197_, 1, 1);
	_tmp198_ = location;
	g_object_set ((GObject*) _tmp198_, "hexpand", TRUE, NULL);
	_tmp199_ = row;
	row = _tmp199_ + 1;
	_tmp200_ = location;
	_tmp201_ = deja_dup_config_location_get_extras (_tmp200_);
	_tmp202_ = _tmp201_;
	g_object_set ((GObject*) _tmp202_, "hexpand", TRUE, NULL);
	_tmp203_ = table;
	_tmp204_ = location;
	_tmp205_ = deja_dup_config_location_get_extras (_tmp204_);
	_tmp206_ = _tmp205_;
	_tmp207_ = row;
	gtk_grid_attach (_tmp203_, (GtkWidget*) _tmp206_, 0, _tmp207_, 2, 1);
	_tmp208_ = row;
	row = _tmp208_ + 1;
	_tmp209_ = _data1_->notebook;
	_tmp210_ = table;
	gtk_notebook_append_page (_tmp209_, (GtkWidget*) _tmp210_, NULL);
	_tmp211_ = _data1_->cat_model;
	_tmp212_ = i;
	_tmp213_ = _ ("Storage location");
	_tmp214_ = i;
	gtk_list_store_insert_with_values (_tmp211_, &_tmp215_, _tmp212_, 0, _tmp213_, 1, _tmp214_, -1);
	iter = _tmp215_;
	_tmp216_ = i;
	i = _tmp216_ + 1;
	_tmp217_ = table;
	gtk_widget_show_all ((GtkWidget*) _tmp217_);
	_tmp218_ = table;
	gtk_widget_get_preferred_size ((GtkWidget*) _tmp218_, NULL, &_tmp219_);
	req = _tmp219_;
	_tmp220_ = location;
	deja_dup_config_location_hidden_size (_tmp220_, &_tmp221_);
	hidden = _tmp221_;
	_tmp222_ = req;
	_tmp223_ = _tmp222_.width;
	_tmp224_ = hidden;
	_tmp225_ = _tmp224_.width;
	req.width = _tmp223_ + _tmp225_;
	_tmp226_ = req;
	_tmp227_ = _tmp226_.height;
	_tmp228_ = hidden;
	_tmp229_ = _tmp228_.height;
	req.height = _tmp227_ + _tmp229_;
	_tmp230_ = table;
	_tmp231_ = req;
	_tmp232_ = _tmp231_.width;
	_tmp233_ = req;
	_tmp234_ = _tmp233_.height;
	gtk_widget_set_size_request ((GtkWidget*) _tmp230_, _tmp232_, _tmp234_);
	_tmp235_ = deja_dup_preferences_new_panel (self);
	_g_object_unref0 (table);
	table = _tmp235_;
	_tmp236_ = table;
	gtk_grid_set_row_spacing (_tmp236_, 6);
	_tmp237_ = table;
	gtk_grid_set_column_spacing (_tmp237_, 12);
	_tmp238_ = table;
	gtk_widget_set_halign ((GtkWidget*) _tmp238_, GTK_ALIGN_CENTER);
	row = 0;
	_tmp239_ = self->priv->_auto_switch;
	if (_tmp239_ == NULL) {
		GtkAlignment* align = NULL;
		GtkAlignment* _tmp240_ = NULL;
		DejaDupPreferencesPeriodicSwitch* _tmp241_ = NULL;
		DejaDupPreferencesPeriodicSwitch* _tmp242_ = NULL;
		GtkAlignment* _tmp243_ = NULL;
		DejaDupPreferencesPeriodicSwitch* _tmp244_ = NULL;
		const gchar* _tmp245_ = NULL;
		GtkLabel* _tmp246_ = NULL;
		GtkLabel* _tmp247_ = NULL;
		DejaDupPreferencesPeriodicSwitch* _tmp248_ = NULL;
		GtkLabel* _tmp249_ = NULL;
		GtkGrid* _tmp250_ = NULL;
		GtkLabel* _tmp251_ = NULL;
		gint _tmp252_ = 0;
		GtkGrid* _tmp253_ = NULL;
		GtkAlignment* _tmp254_ = NULL;
		gint _tmp255_ = 0;
		gint _tmp256_ = 0;
		_tmp240_ = (GtkAlignment*) gtk_alignment_new (0.0f, 0.5f, 0.0f, 0.0f);
		g_object_ref_sink (_tmp240_);
		align = _tmp240_;
		_tmp241_ = deja_dup_preferences_periodic_switch_new ();
		g_object_ref_sink (_tmp241_);
		_tmp242_ = _tmp241_;
		deja_dup_preferences_set_auto_switch (self, _tmp242_);
		_g_object_unref0 (_tmp242_);
		_tmp243_ = align;
		_tmp244_ = self->priv->_auto_switch;
		gtk_container_add ((GtkContainer*) _tmp243_, (GtkWidget*) _tmp244_);
		_tmp245_ = _ ("_Automatic backup");
		_tmp246_ = (GtkLabel*) gtk_label_new_with_mnemonic (_tmp245_);
		g_object_ref_sink (_tmp246_);
		_g_object_unref0 (label);
		label = _tmp246_;
		_tmp247_ = label;
		_tmp248_ = self->priv->_auto_switch;
		gtk_label_set_mnemonic_widget (_tmp247_, (GtkWidget*) _tmp248_);
		_tmp249_ = label;
		gtk_label_set_xalign (_tmp249_, 1.0f);
		_tmp250_ = table;
		_tmp251_ = label;
		_tmp252_ = row;
		gtk_grid_attach (_tmp250_, (GtkWidget*) _tmp251_, 0, _tmp252_, 1, 1);
		_tmp253_ = table;
		_tmp254_ = align;
		_tmp255_ = row;
		gtk_grid_attach (_tmp253_, (GtkWidget*) _tmp254_, 1, _tmp255_, 1, 1);
		_tmp256_ = row;
		row = _tmp256_ + 1;
		_g_object_unref0 (align);
	}
	_tmp257_ = deja_dup_config_period_new (DEJA_DUP_PERIODIC_PERIOD_KEY, "");
	g_object_ref_sink (_tmp257_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp257_;
	_tmp258_ = w;
	gtk_widget_set_hexpand (_tmp258_, TRUE);
	_tmp259_ = settings;
	_tmp260_ = w;
	g_settings_bind ((GSettings*) _tmp259_, DEJA_DUP_PERIODIC_KEY, (GObject*) _tmp260_, "sensitive", G_SETTINGS_BIND_GET);
	_tmp261_ = _ ("_Every");
	_tmp262_ = (GtkLabel*) gtk_label_new_with_mnemonic (_tmp261_);
	g_object_ref_sink (_tmp262_);
	_g_object_unref0 (label);
	label = _tmp262_;
	_tmp263_ = label;
	_tmp264_ = w;
	gtk_label_set_mnemonic_widget (_tmp263_, _tmp264_);
	_tmp265_ = label;
	gtk_label_set_xalign (_tmp265_, 1.0f);
	_tmp266_ = settings;
	_tmp267_ = label;
	g_settings_bind ((GSettings*) _tmp266_, DEJA_DUP_PERIODIC_KEY, (GObject*) _tmp267_, "sensitive", G_SETTINGS_BIND_GET);
	_tmp268_ = table;
	_tmp269_ = label;
	_tmp270_ = row;
	gtk_grid_attach (_tmp268_, (GtkWidget*) _tmp269_, 0, _tmp270_, 1, 1);
	_tmp271_ = table;
	_tmp272_ = w;
	_tmp273_ = row;
	gtk_grid_attach (_tmp271_, _tmp272_, 1, _tmp273_, 1, 1);
	_tmp274_ = row;
	row = _tmp274_ + 1;
	_tmp275_ = deja_dup_config_delete_new (DEJA_DUP_DELETE_AFTER_KEY, "");
	g_object_ref_sink (_tmp275_);
	_g_object_unref0 (w);
	w = (GtkWidget*) _tmp275_;
	_tmp276_ = w;
	gtk_widget_set_hexpand (_tmp276_, TRUE);
	_tmp277_ = C_ ("verb", "_Keep");
	_tmp278_ = (GtkLabel*) gtk_label_new_with_mnemonic (_tmp277_);
	g_object_ref_sink (_tmp278_);
	_g_object_unref0 (label);
	label = _tmp278_;
	_tmp279_ = label;
	_tmp280_ = w;
	gtk_label_set_mnemonic_widget (_tmp279_, _tmp280_);
	_tmp281_ = label;
	gtk_label_set_xalign (_tmp281_, 1.0f);
	_tmp282_ = table;
	_tmp283_ = label;
	_tmp284_ = row;
	gtk_grid_attach (_tmp282_, (GtkWidget*) _tmp283_, 0, _tmp284_, 1, 1);
	_tmp285_ = table;
	_tmp286_ = w;
	_tmp287_ = row;
	gtk_grid_attach (_tmp285_, _tmp286_, 1, _tmp287_, 1, 1);
	_tmp288_ = row;
	row = _tmp288_ + 1;
	_tmp289_ = _ ("Old backups will be deleted earlier if the storage location is low on " \
"space.");
	_tmp290_ = (GtkLabel*) gtk_label_new (_tmp289_);
	g_object_ref_sink (_tmp290_);
	_g_object_unref0 (label);
	label = _tmp290_;
	_tmp291_ = pango_attr_list_new ();
	attrs = _tmp291_;
	_tmp292_ = pango_attr_style_new (PANGO_STYLE_ITALIC);
	pango_attr_list_insert (attrs, _tmp292_);
	_tmp293_ = label;
	gtk_label_set_attributes (_tmp293_, attrs);
	_tmp294_ = label;
	g_object_set (_tmp294_, "wrap", TRUE, NULL);
	_tmp295_ = label;
	gtk_label_set_max_width_chars (_tmp295_, 25);
	_tmp296_ = table;
	_tmp297_ = label;
	_tmp298_ = row;
	gtk_grid_attach (_tmp296_, (GtkWidget*) _tmp297_, 1, _tmp298_, 1, 1);
	_tmp299_ = row;
	row = _tmp299_ + 1;
	_tmp300_ = _data1_->notebook;
	_tmp301_ = table;
	gtk_notebook_append_page (_tmp300_, (GtkWidget*) _tmp301_, NULL);
	_tmp302_ = _data1_->cat_model;
	_tmp303_ = i;
	_tmp304_ = _ ("Scheduling");
	_tmp305_ = i;
	gtk_list_store_insert_with_values (_tmp302_, &_tmp306_, _tmp303_, 0, _tmp304_, 1, _tmp305_, -1);
	iter = _tmp306_;
	_tmp307_ = i;
	i = _tmp307_ + 1;
	_tmp308_ = _data1_->cat_model;
	gtk_tree_model_get_iter_first ((GtkTreeModel*) _tmp308_, &_tmp309_);
	iter = _tmp309_;
	_tmp310_ = _data1_->tree;
	_tmp311_ = gtk_tree_view_get_selection (_tmp310_);
	_tmp312_ = iter;
	gtk_tree_selection_select_iter (_tmp311_, &_tmp312_);
	_tmp313_ = _data1_->notebook;
	gtk_notebook_set_show_tabs (_tmp313_, FALSE);
	_tmp314_ = _data1_->notebook;
	gtk_notebook_set_show_border (_tmp314_, FALSE);
	_tmp315_ = _data1_->notebook;
	g_object_set ((GtkWidget*) _tmp315_, "expand", TRUE, NULL);
	_tmp316_ = settings_page;
	_tmp317_ = _data1_->notebook;
	gtk_container_add ((GtkContainer*) _tmp316_, (GtkWidget*) _tmp317_);
	_tmp318_ = settings_page;
	gtk_widget_show ((GtkWidget*) _tmp318_);
	result = (GtkWidget*) settings_page;
	_pango_attr_list_unref0 (attrs);
	_g_object_unref0 (location);
	_g_object_unref0 (scrollwin);
	_g_object_unref0 (renderer);
	_g_object_unref0 (accessible);
	_g_object_unref0 (settings);
	_g_object_unref0 (label_sizes);
	_g_object_unref0 (table);
	_g_object_unref0 (label);
	_g_object_unref0 (w);
	block1_data_unref (_data1_);
	_data1_ = NULL;
	return result;
}


static GtkGrid* deja_dup_preferences_new_panel (DejaDupPreferences* self) {
	GtkGrid* result = NULL;
	GtkGrid* table = NULL;
	GtkGrid* _tmp0_ = NULL;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = (GtkGrid*) gtk_grid_new ();
	g_object_ref_sink (_tmp0_);
	table = _tmp0_;
	gtk_widget_set_margin_left ((GtkWidget*) table, DEJA_DUP_PREFERENCES_PAGE_HMARGIN);
	gtk_widget_set_margin_right ((GtkWidget*) table, DEJA_DUP_PREFERENCES_PAGE_HMARGIN);
	gtk_widget_set_margin_top ((GtkWidget*) table, DEJA_DUP_PREFERENCES_PAGE_VMARGIN);
	gtk_widget_set_margin_bottom ((GtkWidget*) table, DEJA_DUP_PREFERENCES_PAGE_VMARGIN);
	result = table;
	return result;
}


DejaDupPreferencesPeriodicSwitch* deja_dup_preferences_get_auto_switch (DejaDupPreferences* self) {
	DejaDupPreferencesPeriodicSwitch* result;
	DejaDupPreferencesPeriodicSwitch* _tmp0_ = NULL;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_auto_switch;
	result = _tmp0_;
	return result;
}


void deja_dup_preferences_set_auto_switch (DejaDupPreferences* self, DejaDupPreferencesPeriodicSwitch* value) {
	DejaDupPreferencesPeriodicSwitch* _tmp0_ = NULL;
	DejaDupPreferencesPeriodicSwitch* _tmp1_ = NULL;
	g_return_if_fail (self != NULL);
	_tmp0_ = value;
	_tmp1_ = _g_object_ref0 (_tmp0_);
	_g_object_unref0 (self->priv->_auto_switch);
	self->priv->_auto_switch = _tmp1_;
	g_object_notify ((GObject *) self, "auto-switch");
}


gboolean deja_dup_preferences_get_duplicity_installed (DejaDupPreferences* self) {
	gboolean result;
	gboolean _tmp0_ = FALSE;
	g_return_val_if_fail (self != NULL, FALSE);
	_tmp0_ = self->priv->_duplicity_installed;
	result = _tmp0_;
	return result;
}


static void deja_dup_preferences_set_duplicity_installed (DejaDupPreferences* self, gboolean value) {
	gboolean _tmp0_ = FALSE;
	g_return_if_fail (self != NULL);
	_tmp0_ = value;
	self->priv->_duplicity_installed = _tmp0_;
	g_object_notify ((GObject *) self, "duplicity-installed");
}


static GObject * deja_dup_preferences_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties) {
	GObject * obj;
	GObjectClass * parent_class;
	DejaDupPreferences * self;
	gchar* _tmp0_ = NULL;
	gchar* _tmp1_ = NULL;
	GtkWidget* _tmp2_ = NULL;
	GtkWidget* _tmp3_ = NULL;
	parent_class = G_OBJECT_CLASS (deja_dup_preferences_parent_class);
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, DEJA_DUP_TYPE_PREFERENCES, DejaDupPreferences);
	_tmp0_ = g_find_program_in_path ("duplicity");
	_tmp1_ = _tmp0_;
	deja_dup_preferences_set_duplicity_installed (self, _tmp1_ != NULL);
	_g_free0 (_tmp1_);
	_tmp2_ = deja_dup_preferences_make_settings_page (self);
	_tmp3_ = _tmp2_;
	gtk_container_add ((GtkContainer*) self, _tmp3_);
	_g_object_unref0 (_tmp3_);
	gtk_widget_set_size_request ((GtkWidget*) self, -1, 400);
	return obj;
}


static void deja_dup_preferences_class_init (DejaDupPreferencesClass * klass) {
	deja_dup_preferences_parent_class = g_type_class_peek_parent (klass);
	g_type_class_add_private (klass, sizeof (DejaDupPreferencesPrivate));
	G_OBJECT_CLASS (klass)->get_property = _vala_deja_dup_preferences_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_deja_dup_preferences_set_property;
	G_OBJECT_CLASS (klass)->constructor = deja_dup_preferences_constructor;
	G_OBJECT_CLASS (klass)->finalize = deja_dup_preferences_finalize;
	g_object_class_install_property (G_OBJECT_CLASS (klass), DEJA_DUP_PREFERENCES_AUTO_SWITCH, g_param_spec_object ("auto-switch", "auto-switch", "auto-switch", DEJA_DUP_TYPE_PREFERENCES_PERIODIC_SWITCH, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), DEJA_DUP_PREFERENCES_DUPLICITY_INSTALLED, g_param_spec_boolean ("duplicity-installed", "duplicity-installed", "duplicity-installed", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
}


static void deja_dup_preferences_instance_init (DejaDupPreferences * self) {
	self->priv = DEJA_DUP_PREFERENCES_GET_PRIVATE (self);
	self->priv->_auto_switch = NULL;
	self->priv->_duplicity_installed = FALSE;
	self->priv->bus_watch_id = (guint) 0;
}


static void deja_dup_preferences_finalize (GObject* obj) {
	DejaDupPreferences * self;
	guint _tmp0_ = 0U;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, DEJA_DUP_TYPE_PREFERENCES, DejaDupPreferences);
	_tmp0_ = self->priv->bus_watch_id;
	if (_tmp0_ > ((guint) 0)) {
		guint _tmp1_ = 0U;
		_tmp1_ = self->priv->bus_watch_id;
		g_bus_unwatch_name (_tmp1_);
		self->priv->bus_watch_id = (guint) 0;
	}
	_g_object_unref0 (self->priv->_auto_switch);
	_g_object_unref0 (self->priv->backup_desc);
	_g_object_unref0 (self->priv->backup_button);
	_g_object_unref0 (self->priv->backup_progress);
	_g_object_unref0 (self->priv->restore_desc);
	_g_object_unref0 (self->priv->restore_button);
	_g_object_unref0 (self->priv->restore_progress);
	G_OBJECT_CLASS (deja_dup_preferences_parent_class)->finalize (obj);
}


GType deja_dup_preferences_get_type (void) {
	static volatile gsize deja_dup_preferences_type_id__volatile = 0;
	if (g_once_init_enter (&deja_dup_preferences_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (DejaDupPreferencesClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) deja_dup_preferences_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DejaDupPreferences), 0, (GInstanceInitFunc) deja_dup_preferences_instance_init, NULL };
		GType deja_dup_preferences_type_id;
		deja_dup_preferences_type_id = g_type_register_static (gtk_grid_get_type (), "DejaDupPreferences", &g_define_type_info, 0);
		g_once_init_leave (&deja_dup_preferences_type_id__volatile, deja_dup_preferences_type_id);
	}
	return deja_dup_preferences_type_id__volatile;
}


static void _vala_deja_dup_preferences_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	DejaDupPreferences * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, DEJA_DUP_TYPE_PREFERENCES, DejaDupPreferences);
	switch (property_id) {
		case DEJA_DUP_PREFERENCES_AUTO_SWITCH:
		g_value_set_object (value, deja_dup_preferences_get_auto_switch (self));
		break;
		case DEJA_DUP_PREFERENCES_DUPLICITY_INSTALLED:
		g_value_set_boolean (value, deja_dup_preferences_get_duplicity_installed (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}


static void _vala_deja_dup_preferences_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	DejaDupPreferences * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, DEJA_DUP_TYPE_PREFERENCES, DejaDupPreferences);
	switch (property_id) {
		case DEJA_DUP_PREFERENCES_AUTO_SWITCH:
		deja_dup_preferences_set_auto_switch (self, g_value_get_object (value));
		break;
		case DEJA_DUP_PREFERENCES_DUPLICITY_INSTALLED:
		deja_dup_preferences_set_duplicity_installed (self, g_value_get_boolean (value));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}



