/* go-for-it-0.h generated by valac 0.56.18, the Vala compiler, do not modify */

#ifndef __GO_FOR_IT_0_H__
#define __GO_FOR_IT_0_H__

#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <glib-object.h>
#include <gtk/gtk.h>
#include <gio/gio.h>
#include <gdk/gdk.h>

G_BEGIN_DECLS

#define GOFI_APP_NAME "GoForIt!"
#define GOFI_EXEC_NAME "go-for-it"
#define GOFI_APP_SYSTEM_NAME "go-for-it"
#define GOFI_APP_ID "com.github.jmoerman.go-for-it"
#define GOFI_ICON_NAME "com.github.jmoerman.go-for-it"
#define GOFI_MAJOR_VERSION 1
#define GOFI_MINOR_VERSION 9
#define GOFI_MICRO_VERSION 6
#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 GOFI_KEY_BINDING_SETTINGS_SCK_ADD_NEW "add-new"
#define GOFI_KEY_BINDING_SETTINGS_SCK_CYCLE_PAGE "cycle-page"
#define GOFI_KEY_BINDING_SETTINGS_SCK_CYCLE_PAGE_REV "cycle-page-reverse"
#define GOFI_KEY_BINDING_SETTINGS_SCK_DELETE "delete"
#define GOFI_KEY_BINDING_SETTINGS_SCK_EDIT_PROPERTIES "edit-properties"
#define GOFI_KEY_BINDING_SETTINGS_SCK_FILTER "filter"
#define GOFI_KEY_BINDING_SETTINGS_SCK_MARK_TASK_DONE "mark-task-done"
#define GOFI_KEY_BINDING_SETTINGS_SCK_MOVE_ROW_DOWN "move-row-down"
#define GOFI_KEY_BINDING_SETTINGS_SCK_MOVE_ROW_UP "move-row-up"
#define GOFI_KEY_BINDING_SETTINGS_SCK_NEXT_TASK "next-task"
#define GOFI_KEY_BINDING_SETTINGS_SCK_PREV_TASK "prev-task"
#define GOFI_KEY_BINDING_SETTINGS_SCK_SORT "sort"
#define GOFI_KEY_BINDING_SETTINGS_SCK_SKIP "skip"
#define GOFI_KEY_BINDING_SETTINGS_SCK_TOGGLE_TIMER "toggle-timer"
#define GOFI_DIALOG_UTILS_SPACING_SETTINGS_ROW 6
#define GOFI_DIALOG_UTILS_SPACING_SETTINGS_COLUMN 10

#define GOFI_TYPE_DATE (gofi_date_get_type ())
#define GOFI_DATE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_DATE, GOFIDate))
#define GOFI_DATE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOFI_TYPE_DATE, GOFIDateClass))
#define GOFI_IS_DATE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_DATE))
#define GOFI_IS_DATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOFI_TYPE_DATE))
#define GOFI_DATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOFI_TYPE_DATE, GOFIDateClass))

typedef struct _GOFIDate GOFIDate;
typedef struct _GOFIDateClass GOFIDateClass;
typedef struct _GOFIDatePrivate GOFIDatePrivate;

#define GOFI_TYPE_UTILS (gofi_utils_get_type ())
#define GOFI_UTILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_UTILS, GOFIUtils))
#define GOFI_UTILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOFI_TYPE_UTILS, GOFIUtilsClass))
#define GOFI_IS_UTILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_UTILS))
#define GOFI_IS_UTILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOFI_TYPE_UTILS))
#define GOFI_UTILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOFI_TYPE_UTILS, GOFIUtilsClass))

typedef struct _GOFIUtils GOFIUtils;
typedef struct _GOFIUtilsClass GOFIUtilsClass;
typedef struct _GOFIUtilsPrivate GOFIUtilsPrivate;

#define GOFI_TYPE_TODO_LIST_INFO (gofi_todo_list_info_get_type ())
#define GOFI_TODO_LIST_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_TODO_LIST_INFO, GOFITodoListInfo))
#define GOFI_IS_TODO_LIST_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_TODO_LIST_INFO))
#define GOFI_TODO_LIST_INFO_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GOFI_TYPE_TODO_LIST_INFO, GOFITodoListInfoIface))

typedef struct _GOFITodoListInfo GOFITodoListInfo;
typedef struct _GOFITodoListInfoIface GOFITodoListInfoIface;

#define GOFI_TYPE_SCHEDULE (gofi_schedule_get_type ())
#define GOFI_SCHEDULE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_SCHEDULE, GOFISchedule))
#define GOFI_SCHEDULE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOFI_TYPE_SCHEDULE, GOFIScheduleClass))
#define GOFI_IS_SCHEDULE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_SCHEDULE))
#define GOFI_IS_SCHEDULE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOFI_TYPE_SCHEDULE))
#define GOFI_SCHEDULE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOFI_TYPE_SCHEDULE, GOFIScheduleClass))

typedef struct _GOFISchedule GOFISchedule;
typedef struct _GOFIScheduleClass GOFIScheduleClass;
typedef struct _GOFISchedulePrivate GOFISchedulePrivate;
typedef enum  {
	TASK_STATUS_NONE = 0,
	TASK_STATUS_TIMER_ACTIVE = 0x01
} TaskStatus;

#define TYPE_TASK_STATUS (task_status_get_type ())

#define GOFI_TYPE_TODO_TASK (gofi_todo_task_get_type ())
#define GOFI_TODO_TASK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_TODO_TASK, GOFITodoTask))
#define GOFI_TODO_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOFI_TYPE_TODO_TASK, GOFITodoTaskClass))
#define GOFI_IS_TODO_TASK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_TODO_TASK))
#define GOFI_IS_TODO_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOFI_TYPE_TODO_TASK))
#define GOFI_TODO_TASK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOFI_TYPE_TODO_TASK, GOFITodoTaskClass))

typedef struct _GOFITodoTask GOFITodoTask;
typedef struct _GOFITodoTaskClass GOFITodoTaskClass;
typedef struct _GOFITodoTaskPrivate GOFITodoTaskPrivate;

#define GOFI_TYPE_TASK_LIST (gofi_task_list_get_type ())
#define GOFI_TASK_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_TASK_LIST, GOFITaskList))
#define GOFI_IS_TASK_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_TASK_LIST))
#define GOFI_TASK_LIST_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GOFI_TYPE_TASK_LIST, GOFITaskListIface))

typedef struct _GOFITaskList GOFITaskList;
typedef struct _GOFITaskListIface GOFITaskListIface;

#define GOFI_TYPE_TASK_TIMER (gofi_task_timer_get_type ())
#define GOFI_TASK_TIMER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_TASK_TIMER, GOFITaskTimer))
#define GOFI_TASK_TIMER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOFI_TYPE_TASK_TIMER, GOFITaskTimerClass))
#define GOFI_IS_TASK_TIMER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_TASK_TIMER))
#define GOFI_IS_TASK_TIMER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOFI_TYPE_TASK_TIMER))
#define GOFI_TASK_TIMER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOFI_TYPE_TASK_TIMER, GOFITaskTimerClass))

typedef struct _GOFITaskTimer GOFITaskTimer;
typedef struct _GOFITaskTimerClass GOFITaskTimerClass;
typedef struct _GOFITaskTimerPrivate GOFITaskTimerPrivate;

#define GOFI_TYPE_SHORTCUT (gofi_shortcut_get_type ())
#define GOFI_SHORTCUT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_SHORTCUT, GOFIShortcut))
#define GOFI_SHORTCUT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOFI_TYPE_SHORTCUT, GOFIShortcutClass))
#define GOFI_IS_SHORTCUT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_SHORTCUT))
#define GOFI_IS_SHORTCUT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOFI_TYPE_SHORTCUT))
#define GOFI_SHORTCUT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOFI_TYPE_SHORTCUT, GOFIShortcutClass))

typedef struct _GOFIShortcut GOFIShortcut;
typedef struct _GOFIShortcutClass GOFIShortcutClass;
typedef struct _GOFIShortcutPrivate GOFIShortcutPrivate;

#define GOFI_TYPE_KEY_BINDING_PARAM (gofi_key_binding_param_get_type ())
typedef struct _GOFIKeyBindingParam GOFIKeyBindingParam;

#define GOFI_TYPE_MOVE_KEY_PARAMS (gofi_move_key_params_get_type ())
typedef struct _GOFIMoveKeyParams GOFIMoveKeyParams;

#define GOFI_TYPE_KEY_BINDING (gofi_key_binding_get_type ())
typedef struct _GOFIKeyBinding GOFIKeyBinding;

#define GOFI_TYPE_KEY_BINDING_SETTINGS (gofi_key_binding_settings_get_type ())
#define GOFI_KEY_BINDING_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_KEY_BINDING_SETTINGS, GOFIKeyBindingSettings))
#define GOFI_KEY_BINDING_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOFI_TYPE_KEY_BINDING_SETTINGS, GOFIKeyBindingSettingsClass))
#define GOFI_IS_KEY_BINDING_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_KEY_BINDING_SETTINGS))
#define GOFI_IS_KEY_BINDING_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOFI_TYPE_KEY_BINDING_SETTINGS))
#define GOFI_KEY_BINDING_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOFI_TYPE_KEY_BINDING_SETTINGS, GOFIKeyBindingSettingsClass))

typedef struct _GOFIKeyBindingSettings GOFIKeyBindingSettings;
typedef struct _GOFIKeyBindingSettingsClass GOFIKeyBindingSettingsClass;
typedef struct _GOFIKeyBindingSettingsPrivate GOFIKeyBindingSettingsPrivate;

#define GOFI_KEY_BINDING_SETTINGS_TYPE_CONFIGURABLE_SHORTCUT (gofi_key_binding_settings_configurable_shortcut_get_type ())
typedef struct _GOFIKeyBindingSettingsConfigurableShortcut GOFIKeyBindingSettingsConfigurableShortcut;

#define GOFI_TYPE_DRAG_LIST_MODEL (gofi_drag_list_model_get_type ())
#define GOFI_DRAG_LIST_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_DRAG_LIST_MODEL, GOFIDragListModel))
#define GOFI_IS_DRAG_LIST_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_DRAG_LIST_MODEL))
#define GOFI_DRAG_LIST_MODEL_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GOFI_TYPE_DRAG_LIST_MODEL, GOFIDragListModelIface))

typedef struct _GOFIDragListModel GOFIDragListModel;
typedef struct _GOFIDragListModelIface GOFIDragListModelIface;

#define GOFI_TYPE_DRAG_LIST (gofi_drag_list_get_type ())
#define GOFI_DRAG_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_DRAG_LIST, GOFIDragList))
#define GOFI_DRAG_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOFI_TYPE_DRAG_LIST, GOFIDragListClass))
#define GOFI_IS_DRAG_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_DRAG_LIST))
#define GOFI_IS_DRAG_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOFI_TYPE_DRAG_LIST))
#define GOFI_DRAG_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOFI_TYPE_DRAG_LIST, GOFIDragListClass))

typedef struct _GOFIDragList GOFIDragList;
typedef struct _GOFIDragListClass GOFIDragListClass;
typedef struct _GOFIDragListPrivate GOFIDragListPrivate;

#define GOFI_TYPE_DRAG_LIST_ROW (gofi_drag_list_row_get_type ())
#define GOFI_DRAG_LIST_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOFI_TYPE_DRAG_LIST_ROW, GOFIDragListRow))
#define GOFI_DRAG_LIST_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOFI_TYPE_DRAG_LIST_ROW, GOFIDragListRowClass))
#define GOFI_IS_DRAG_LIST_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOFI_TYPE_DRAG_LIST_ROW))
#define GOFI_IS_DRAG_LIST_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOFI_TYPE_DRAG_LIST_ROW))
#define GOFI_DRAG_LIST_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOFI_TYPE_DRAG_LIST_ROW, GOFIDragListRowClass))

typedef struct _GOFIDragListRow GOFIDragListRow;
typedef struct _GOFIDragListRowClass GOFIDragListRowClass;
typedef GtkWidget* (*GOFIDragListCreateWidgetFunc) (GObject* item, gpointer user_data);
typedef gboolean (*GOFIDragListFilterFunc) (GOFIDragListRow* row, gpointer user_data);
typedef struct _GOFIDragListRowPrivate GOFIDragListRowPrivate;

#define TYPE_FILE_CHOOSER_WIDGET (file_chooser_widget_get_type ())
#define FILE_CHOOSER_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_FILE_CHOOSER_WIDGET, FileChooserWidget))
#define FILE_CHOOSER_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_FILE_CHOOSER_WIDGET, FileChooserWidgetClass))
#define IS_FILE_CHOOSER_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_FILE_CHOOSER_WIDGET))
#define IS_FILE_CHOOSER_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_FILE_CHOOSER_WIDGET))
#define FILE_CHOOSER_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_FILE_CHOOSER_WIDGET, FileChooserWidgetClass))

typedef struct _FileChooserWidget FileChooserWidget;
typedef struct _FileChooserWidgetClass FileChooserWidgetClass;
typedef struct _FileChooserWidgetPrivate FileChooserWidgetPrivate;

struct _GOFIDate {
	GTypeInstance parent_instance;
	volatile int ref_count;
	GOFIDatePrivate * priv;
};

struct _GOFIDateClass {
	GTypeClass parent_class;
	void (*finalize) (GOFIDate *self);
};

struct _GOFIUtils {
	GTypeInstance parent_instance;
	volatile int ref_count;
	GOFIUtilsPrivate * priv;
};

struct _GOFIUtilsClass {
	GTypeClass parent_class;
	void (*finalize) (GOFIUtils *self);
};

struct _GOFITodoListInfoIface {
	GTypeInterface parent_iface;
	const gchar* (*get_id) (GOFITodoListInfo* self);
	void (*set_id) (GOFITodoListInfo* self, const gchar* value);
	const gchar* (*get_provider_name) (GOFITodoListInfo* self);
	const gchar* (*get_name) (GOFITodoListInfo* self);
	void (*set_name) (GOFITodoListInfo* self, const gchar* value);
};

struct _GOFISchedule {
	GTypeInstance parent_instance;
	volatile int ref_count;
	GOFISchedulePrivate * priv;
};

struct _GOFIScheduleClass {
	GTypeClass parent_class;
	void (*finalize) (GOFISchedule *self);
};

struct _GOFITodoTask {
	GObject parent_instance;
	GOFITodoTaskPrivate * priv;
};

struct _GOFITodoTaskClass {
	GObjectClass parent_class;
	const gchar* (*get_description) (GOFITodoTask* self);
	void (*set_description) (GOFITodoTask* self, const gchar* value);
	gboolean (*get_valid) (GOFITodoTask* self);
	guint (*get_timer_value) (GOFITodoTask* self);
	void (*set_timer_value) (GOFITodoTask* self, guint value);
	TaskStatus (*get_status) (GOFITodoTask* self);
	void (*set_status) (GOFITodoTask* self, TaskStatus value);
};

struct _GOFITaskListIface {
	GTypeInterface parent_iface;
	GFile* (*get_log_file) (GOFITaskList* self);
	GOFITodoTask* (*get_next) (GOFITaskList* self);
	GOFITodoTask* (*get_prev) (GOFITaskList* self);
	void (*mark_done) (GOFITaskList* self, GOFITodoTask* task);
	GtkWidget* (*get_primary_page) (GOFITaskList* self, gchar** page_name);
	GtkWidget* (*get_secondary_page) (GOFITaskList* self, gchar** page_name);
	GtkWidget* (*get_menu) (GOFITaskList* self);
	GOFISchedule* (*get_schedule) (GOFITaskList* self);
	gint (*get_reminder_time) (GOFITaskList* self);
	void (*add_task_shortcut) (GOFITaskList* self);
	void (*load) (GOFITaskList* self);
	void (*unload) (GOFITaskList* self);
	GOFITodoTask* (*get_selected_task) (GOFITaskList* self);
	void (*set_selected_task) (GOFITaskList* self, GOFITodoTask* value);
	GOFITodoTask* (*get_active_task) (GOFITaskList* self);
	void (*set_active_task) (GOFITaskList* self, GOFITodoTask* value);
	GOFITodoListInfo* (*get_list_info) (GOFITaskList* self);
};

struct _GOFITaskTimer {
	GTypeInstance parent_instance;
	volatile int ref_count;
	GOFITaskTimerPrivate * priv;
};

struct _GOFITaskTimerClass {
	GTypeClass parent_class;
	void (*finalize) (GOFITaskTimer *self);
};

struct _GOFIShortcut {
	GTypeInstance parent_instance;
	volatile int ref_count;
	GOFIShortcutPrivate * priv;
	guint key;
	GdkModifierType modifier;
};

struct _GOFIShortcutClass {
	GTypeClass parent_class;
	void (*finalize) (GOFIShortcut *self);
};

struct _GOFIKeyBindingParam {
	GtkBindingArg arg;
};

struct _GOFIMoveKeyParams {
	GOFIKeyBindingParam* params;
	gint params_length1;
};

struct _GOFIKeyBinding {
	gchar* shortcut_id;
	gchar* signal_name;
	GOFIKeyBindingParam* params;
	gint params_length1;
};

struct _GOFIKeyBindingSettings {
	GTypeInstance parent_instance;
	volatile int ref_count;
	GOFIKeyBindingSettingsPrivate * priv;
};

struct _GOFIKeyBindingSettingsClass {
	GTypeClass parent_class;
	void (*finalize) (GOFIKeyBindingSettings *self);
};

struct _GOFIKeyBindingSettingsConfigurableShortcut {
	gchar* shortcut_id;
	gchar* description;
};

struct _GOFIDragListModelIface {
	GTypeInterface parent_iface;
	void (*move_item) (GOFIDragListModel* self, guint old_position, guint new_position);
	GObject* (*get_item) (GOFIDragListModel* self, guint position);
	GType (*get_item_type) (GOFIDragListModel* self);
	guint (*get_n_items) (GOFIDragListModel* self);
};

struct _GOFIDragList {
	GtkBox parent_instance;
	GOFIDragListPrivate * priv;
	GOFIDragListModel* model;
	GOFIDragListRow* drag_row;
};

struct _GOFIDragListClass {
	GtkBoxClass parent_class;
	void (*activate_cursor_row) (GOFIDragList* self);
	void (*row_activated) (GOFIDragList* self, GOFIDragListRow* row);
	void (*move_cursor) (GOFIDragList* self, GtkMovementStep step, gint count);
	void (*move_selected_row) (GOFIDragList* self, gint offset);
	void (*row_selected) (GOFIDragList* self, GOFIDragListRow* row);
	void (*row_received_with_model) (GOFIDragList* self, GOFIDragListRow* row, gint index);
};

struct _GOFIDragListRow {
	GtkListBoxRow parent_instance;
	GOFIDragListRowPrivate * priv;
	gint marginless_height;
};

struct _GOFIDragListRowClass {
	GtkListBoxRowClass parent_class;
};

struct _FileChooserWidget {
	GtkButton parent_instance;
	FileChooserWidgetPrivate * priv;
};

struct _FileChooserWidgetClass {
	GtkButtonClass parent_class;
	void (*on_button_clicked) (FileChooserWidget* self);
};

VALA_EXTERN gchar* gofi_get_app_name (void);
VALA_EXTERN gchar* gofi_get_app_id (void);
VALA_EXTERN gint gofi_get_major_version (void);
VALA_EXTERN gint gofi_get_minor_version (void);
VALA_EXTERN gint gofi_get_micro_version (void);
VALA_EXTERN gchar* gofi_get_version_str (void);
VALA_EXTERN gchar** gofi_get_default_todos (gint* result_length1);
VALA_EXTERN gpointer gofi_date_ref (gpointer instance);
VALA_EXTERN void gofi_date_unref (gpointer instance);
VALA_EXTERN GParamSpec* gofi_param_spec_date (const gchar* name,
                                  const gchar* nick,
                                  const gchar* blurb,
                                  GType object_type,
                                  GParamFlags flags);
VALA_EXTERN void gofi_value_set_date (GValue* value,
                          gpointer v_object);
VALA_EXTERN void gofi_value_take_date (GValue* value,
                           gpointer v_object);
VALA_EXTERN gpointer gofi_value_get_date (const GValue* value);
VALA_EXTERN GType gofi_date_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFIDate, gofi_date_unref)
VALA_EXTERN GOFIDate* gofi_date_new (GDateTime* dt,
                         gboolean has_time,
                         gboolean time_is_floating);
VALA_EXTERN GOFIDate* gofi_date_construct (GType object_type,
                               GDateTime* dt,
                               gboolean has_time,
                               gboolean time_is_floating);
VALA_EXTERN GOFIDate* gofi_date_new_from_ymd (gint year,
                                  gint month,
                                  gint day);
VALA_EXTERN GOFIDate* gofi_date_construct_from_ymd (GType object_type,
                                        gint year,
                                        gint month,
                                        gint day);
VALA_EXTERN GDateTime* gofi_date_to_timezone (GOFIDate* self,
                                  GTimeZone* tz);
VALA_EXTERN gint gofi_date_dt_compare_date (GOFIDate* self,
                                GDateTime* dt);
VALA_EXTERN gint gofi_date_compare (GOFIDate* self,
                        GOFIDate* date);
VALA_EXTERN gint gofi_date_days_between (GOFIDate* self,
                             GOFIDate* date);
VALA_EXTERN GDateTime* gofi_date_get_dt (GOFIDate* self);
VALA_EXTERN gboolean gofi_date_get_has_time (GOFIDate* self);
VALA_EXTERN gboolean gofi_date_get_time_is_floating (GOFIDate* self);
VALA_EXTERN gpointer gofi_utils_ref (gpointer instance);
VALA_EXTERN void gofi_utils_unref (gpointer instance);
VALA_EXTERN GParamSpec* gofi_param_spec_utils (const gchar* name,
                                   const gchar* nick,
                                   const gchar* blurb,
                                   GType object_type,
                                   GParamFlags flags);
VALA_EXTERN void gofi_value_set_utils (GValue* value,
                           gpointer v_object);
VALA_EXTERN void gofi_value_take_utils (GValue* value,
                            gpointer v_object);
VALA_EXTERN gpointer gofi_value_get_utils (const GValue* value);
VALA_EXTERN GType gofi_utils_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFIUtils, gofi_utils_unref)
VALA_EXTERN GtkImage* gofi_utils_load_image_fallback (GtkIconSize size,
                                          const gchar* icon_name,
                                          ...);
VALA_EXTERN gchar* gofi_utils_get_image_fallback (const gchar* icon_name,
                                      ...);
VALA_EXTERN gchar* gofi_utils_seconds_to_pretty_string (guint seconds);
VALA_EXTERN void gofi_utils_uint_to_time (guint time_val,
                              guint* hours,
                              guint* minutes,
                              guint* seconds);
VALA_EXTERN guint gofi_utils_time_to_uint (guint hours,
                               guint minutes,
                               guint seconds);
VALA_EXTERN GtkButton* gofi_utils_create_menu_button (const gchar* label);
VALA_EXTERN void gofi_utils_popover_hide (GtkPopover* popover);
VALA_EXTERN void gofi_utils_popover_show (GtkPopover* popover);
VALA_EXTERN gchar* gofi_utils_string_to_exclamation (const gchar* str);
VALA_EXTERN gboolean gofi_utils_ensure_file_exists (GFile* file,
                                        GFileCreateFlags flags,
                                        GError** error);
VALA_EXTERN GOFIUtils* gofi_utils_new (void);
VALA_EXTERN GOFIUtils* gofi_utils_construct (GType object_type);
VALA_EXTERN GType gofi_todo_list_info_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFITodoListInfo, g_object_unref)
VALA_EXTERN gint gofi_todo_list_info_cmp (GOFITodoListInfo* self,
                              GOFITodoListInfo* other);
VALA_EXTERN const gchar* gofi_todo_list_info_get_id (GOFITodoListInfo* self);
VALA_EXTERN void gofi_todo_list_info_set_id (GOFITodoListInfo* self,
                                 const gchar* value);
VALA_EXTERN const gchar* gofi_todo_list_info_get_provider_name (GOFITodoListInfo* self);
VALA_EXTERN const gchar* gofi_todo_list_info_get_name (GOFITodoListInfo* self);
VALA_EXTERN void gofi_todo_list_info_set_name (GOFITodoListInfo* self,
                                   const gchar* value);
VALA_EXTERN gpointer gofi_schedule_ref (gpointer instance);
VALA_EXTERN void gofi_schedule_unref (gpointer instance);
VALA_EXTERN GParamSpec* gofi_param_spec_schedule (const gchar* name,
                                      const gchar* nick,
                                      const gchar* blurb,
                                      GType object_type,
                                      GParamFlags flags);
VALA_EXTERN void gofi_value_set_schedule (GValue* value,
                              gpointer v_object);
VALA_EXTERN void gofi_value_take_schedule (GValue* value,
                               gpointer v_object);
VALA_EXTERN gpointer gofi_value_get_schedule (const GValue* value);
VALA_EXTERN GType gofi_schedule_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFISchedule, gofi_schedule_unref)
VALA_EXTERN GOFISchedule* gofi_schedule_new (void);
VALA_EXTERN GOFISchedule* gofi_schedule_construct (GType object_type);
VALA_EXTERN void gofi_schedule_append_multiple (GOFISchedule* self,
                                    gint* durations,
                                    gint durations_length1);
VALA_EXTERN void gofi_schedule_append (GOFISchedule* self,
                           gint task_duration,
                           gint break_duration);
VALA_EXTERN gint gofi_schedule_get_task_duration (GOFISchedule* self,
                                      guint iteration);
VALA_EXTERN gint gofi_schedule_get_break_duration (GOFISchedule* self,
                                       guint iteration);
VALA_EXTERN void gofi_schedule_import_raw (GOFISchedule* self,
                               gint* durations,
                               gint durations_length1);
VALA_EXTERN gint* gofi_schedule_export_raw (GOFISchedule* self,
                                gint* result_length1);
VALA_EXTERN void gofi_schedule_load_variant (GOFISchedule* self,
                                 GVariant* variant);
VALA_EXTERN GVariant* gofi_schedule_to_variant (GOFISchedule* self);
VALA_EXTERN guint gofi_schedule_get_length (GOFISchedule* self);
VALA_EXTERN gboolean gofi_schedule_get_valid (GOFISchedule* self);
VALA_EXTERN GType task_status_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GType gofi_todo_task_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFITodoTask, g_object_unref)
VALA_EXTERN GOFITodoTask* gofi_todo_task_new (const gchar* line);
VALA_EXTERN GOFITodoTask* gofi_todo_task_construct (GType object_type,
                                        const gchar* line);
VALA_EXTERN const gchar* gofi_todo_task_get_description (GOFITodoTask* self);
VALA_EXTERN void gofi_todo_task_set_description (GOFITodoTask* self,
                                     const gchar* value);
VALA_EXTERN gboolean gofi_todo_task_get_valid (GOFITodoTask* self);
VALA_EXTERN guint gofi_todo_task_get_timer_value (GOFITodoTask* self);
VALA_EXTERN void gofi_todo_task_set_timer_value (GOFITodoTask* self,
                                     guint value);
VALA_EXTERN TaskStatus gofi_todo_task_get_status (GOFITodoTask* self);
VALA_EXTERN void gofi_todo_task_set_status (GOFITodoTask* self,
                                TaskStatus value);
VALA_EXTERN guint gofi_todo_task_get_duration (GOFITodoTask* self);
VALA_EXTERN void gofi_todo_task_set_duration (GOFITodoTask* self,
                                  guint value);
VALA_EXTERN GType gofi_task_list_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFITaskList, g_object_unref)
VALA_EXTERN GFile* gofi_task_list_get_log_file (GOFITaskList* self);
VALA_EXTERN GOFITodoTask* gofi_task_list_get_next (GOFITaskList* self);
VALA_EXTERN GOFITodoTask* gofi_task_list_get_prev (GOFITaskList* self);
VALA_EXTERN void gofi_task_list_mark_done (GOFITaskList* self,
                               GOFITodoTask* task);
VALA_EXTERN GtkWidget* gofi_task_list_get_primary_page (GOFITaskList* self,
                                            gchar** page_name);
VALA_EXTERN GtkWidget* gofi_task_list_get_secondary_page (GOFITaskList* self,
                                              gchar** page_name);
VALA_EXTERN GtkWidget* gofi_task_list_get_menu (GOFITaskList* self);
VALA_EXTERN GOFISchedule* gofi_task_list_get_schedule (GOFITaskList* self);
VALA_EXTERN gint gofi_task_list_get_reminder_time (GOFITaskList* self);
VALA_EXTERN void gofi_task_list_add_task_shortcut (GOFITaskList* self);
VALA_EXTERN void gofi_task_list_load (GOFITaskList* self);
VALA_EXTERN void gofi_task_list_unload (GOFITaskList* self);
VALA_EXTERN GOFITodoTask* gofi_task_list_get_selected_task (GOFITaskList* self);
VALA_EXTERN void gofi_task_list_set_selected_task (GOFITaskList* self,
                                       GOFITodoTask* value);
VALA_EXTERN GOFITodoTask* gofi_task_list_get_active_task (GOFITaskList* self);
VALA_EXTERN void gofi_task_list_set_active_task (GOFITaskList* self,
                                     GOFITodoTask* value);
VALA_EXTERN GOFITodoListInfo* gofi_task_list_get_list_info (GOFITaskList* self);
VALA_EXTERN gpointer gofi_task_timer_ref (gpointer instance);
VALA_EXTERN void gofi_task_timer_unref (gpointer instance);
VALA_EXTERN GParamSpec* gofi_param_spec_task_timer (const gchar* name,
                                        const gchar* nick,
                                        const gchar* blurb,
                                        GType object_type,
                                        GParamFlags flags);
VALA_EXTERN void gofi_value_set_task_timer (GValue* value,
                                gpointer v_object);
VALA_EXTERN void gofi_value_take_task_timer (GValue* value,
                                 gpointer v_object);
VALA_EXTERN gpointer gofi_value_get_task_timer (const GValue* value);
VALA_EXTERN GType gofi_task_timer_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFITaskTimer, gofi_task_timer_unref)
VALA_EXTERN GOFITaskTimer* gofi_task_timer_new (void);
VALA_EXTERN GOFITaskTimer* gofi_task_timer_construct (GType object_type);
VALA_EXTERN void gofi_task_timer_toggle_running (GOFITaskTimer* self);
VALA_EXTERN void gofi_task_timer_start (GOFITaskTimer* self);
VALA_EXTERN void gofi_task_timer_stop (GOFITaskTimer* self);
VALA_EXTERN void gofi_task_timer_reset (GOFITaskTimer* self);
VALA_EXTERN void gofi_task_timer_update (GOFITaskTimer* self);
VALA_EXTERN void gofi_task_timer_update_active_task (GOFITaskTimer* self);
VALA_EXTERN void gofi_task_timer_end_iteration (GOFITaskTimer* self);
VALA_EXTERN gboolean gofi_task_timer_get_running (GOFITaskTimer* self);
VALA_EXTERN gboolean gofi_task_timer_get_break_active (GOFITaskTimer* self);
VALA_EXTERN guint gofi_task_timer_get_remaining_duration (GOFITaskTimer* self);
VALA_EXTERN void gofi_task_timer_set_remaining_duration (GOFITaskTimer* self,
                                             guint value);
VALA_EXTERN GOFITodoTask* gofi_task_timer_get_active_task (GOFITaskTimer* self);
VALA_EXTERN GOFISchedule* gofi_task_timer_get_schedule (GOFITaskTimer* self);
VALA_EXTERN void gofi_task_timer_set_schedule (GOFITaskTimer* self,
                                   GOFISchedule* value);
VALA_EXTERN gint gofi_task_timer_get_reminder_time (GOFITaskTimer* self);
VALA_EXTERN void gofi_task_timer_set_reminder_time (GOFITaskTimer* self,
                                        gint value);
VALA_EXTERN gpointer gofi_shortcut_ref (gpointer instance);
VALA_EXTERN void gofi_shortcut_unref (gpointer instance);
VALA_EXTERN GParamSpec* gofi_param_spec_shortcut (const gchar* name,
                                      const gchar* nick,
                                      const gchar* blurb,
                                      GType object_type,
                                      GParamFlags flags);
VALA_EXTERN void gofi_value_set_shortcut (GValue* value,
                              gpointer v_object);
VALA_EXTERN void gofi_value_take_shortcut (GValue* value,
                               gpointer v_object);
VALA_EXTERN gpointer gofi_value_get_shortcut (const GValue* value);
VALA_EXTERN GType gofi_shortcut_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFIShortcut, gofi_shortcut_unref)
VALA_EXTERN GOFIShortcut* gofi_shortcut_new (guint k,
                                 GdkModifierType m);
VALA_EXTERN GOFIShortcut* gofi_shortcut_construct (GType object_type,
                                       guint k,
                                       GdkModifierType m);
VALA_EXTERN GOFIShortcut* gofi_shortcut_new_from_string (const gchar* accelerator);
VALA_EXTERN GOFIShortcut* gofi_shortcut_construct_from_string (GType object_type,
                                                   const gchar* accelerator);
VALA_EXTERN GOFIShortcut* gofi_shortcut_new_disabled (void);
VALA_EXTERN GOFIShortcut* gofi_shortcut_construct_disabled (GType object_type);
VALA_EXTERN gchar* gofi_shortcut_to_string (GOFIShortcut* self);
VALA_EXTERN gchar* gofi_shortcut_to_readable (GOFIShortcut* self);
VALA_EXTERN gchar* gofi_shortcut_get_accel_markup (GOFIShortcut* self,
                                       const gchar* description);
VALA_EXTERN gboolean gofi_shortcut_equals (GOFIShortcut* self,
                               GOFIShortcut* other);
VALA_EXTERN gboolean gofi_shortcut_get_is_valid (GOFIShortcut* self);
VALA_EXTERN GType gofi_key_binding_param_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GOFIKeyBindingParam* gofi_key_binding_param_dup (const GOFIKeyBindingParam* self);
VALA_EXTERN void gofi_key_binding_param_free (GOFIKeyBindingParam* self);
VALA_EXTERN void gofi_key_binding_param_init (GOFIKeyBindingParam *self,
                                  gconstpointer p,
                                  GType t);
VALA_EXTERN gpointer gofi_key_binding_param_get_param (GOFIKeyBindingParam *self);
VALA_EXTERN GType gofi_move_key_params_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GOFIMoveKeyParams* gofi_move_key_params_dup (const GOFIMoveKeyParams* self);
VALA_EXTERN void gofi_move_key_params_free (GOFIMoveKeyParams* self);
VALA_EXTERN void gofi_move_key_params_copy (const GOFIMoveKeyParams* self,
                                GOFIMoveKeyParams* dest);
VALA_EXTERN void gofi_move_key_params_destroy (GOFIMoveKeyParams* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (GOFIMoveKeyParams, gofi_move_key_params_destroy)
VALA_EXTERN GType gofi_key_binding_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GOFIKeyBinding* gofi_key_binding_dup (const GOFIKeyBinding* self);
VALA_EXTERN void gofi_key_binding_free (GOFIKeyBinding* self);
VALA_EXTERN void gofi_key_binding_copy (const GOFIKeyBinding* self,
                            GOFIKeyBinding* dest);
VALA_EXTERN void gofi_key_binding_destroy (GOFIKeyBinding* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (GOFIKeyBinding, gofi_key_binding_destroy)
VALA_EXTERN void gofi_key_binding_init (GOFIKeyBinding *self,
                            const gchar* sc,
                            const gchar* s,
                            GOFIKeyBindingParam* p,
                            gint p_length1);
VALA_EXTERN gpointer gofi_key_binding_settings_ref (gpointer instance);
VALA_EXTERN void gofi_key_binding_settings_unref (gpointer instance);
VALA_EXTERN GParamSpec* gofi_param_spec_key_binding_settings (const gchar* name,
                                                  const gchar* nick,
                                                  const gchar* blurb,
                                                  GType object_type,
                                                  GParamFlags flags);
VALA_EXTERN void gofi_value_set_key_binding_settings (GValue* value,
                                          gpointer v_object);
VALA_EXTERN void gofi_value_take_key_binding_settings (GValue* value,
                                           gpointer v_object);
VALA_EXTERN gpointer gofi_value_get_key_binding_settings (const GValue* value);
VALA_EXTERN GType gofi_key_binding_settings_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFIKeyBindingSettings, gofi_key_binding_settings_unref)
VALA_EXTERN GType gofi_key_binding_settings_configurable_shortcut_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GOFIKeyBindingSettingsConfigurableShortcut* gofi_key_binding_settings_configurable_shortcut_dup (const GOFIKeyBindingSettingsConfigurableShortcut* self);
VALA_EXTERN void gofi_key_binding_settings_configurable_shortcut_free (GOFIKeyBindingSettingsConfigurableShortcut* self);
VALA_EXTERN void gofi_key_binding_settings_configurable_shortcut_copy (const GOFIKeyBindingSettingsConfigurableShortcut* self,
                                                           GOFIKeyBindingSettingsConfigurableShortcut* dest);
VALA_EXTERN void gofi_key_binding_settings_configurable_shortcut_destroy (GOFIKeyBindingSettingsConfigurableShortcut* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (GOFIKeyBindingSettingsConfigurableShortcut, gofi_key_binding_settings_configurable_shortcut_destroy)
VALA_EXTERN GOFIKeyBindingSettingsConfigurableShortcut* gofi_key_binding_settings_known_shortcuts;
VALA_EXTERN gint gofi_key_binding_settings_known_shortcuts_length1;
VALA_EXTERN GOFIKeyBindingSettings* gofi_key_binding_settings_new (void);
VALA_EXTERN GOFIKeyBindingSettings* gofi_key_binding_settings_construct (GType object_type);
VALA_EXTERN GOFIShortcut* gofi_key_binding_settings_get_shortcut (GOFIKeyBindingSettings* self,
                                                      const gchar* shortcut_id);
VALA_EXTERN gchar* gofi_key_binding_settings_conflicts (GOFIKeyBindingSettings* self,
                                            GOFIShortcut* sc);
VALA_EXTERN void gofi_key_binding_settings_set_shortcut (GOFIKeyBindingSettings* self,
                                             const gchar* shortcut_id,
                                             GOFIShortcut* sc);
VALA_EXTERN void gofi_key_binding_settings_install_bindings_for_class (GOFIKeyBindingSettings* self,
                                                           GType type,
                                                           GOFIKeyBinding* bindings,
                                                           gint bindings_length1);
VALA_EXTERN void gofi_key_binding_settings_install_bindings (GOFIKeyBindingSettings* self,
                                                 GtkBindingSet* bind_set,
                                                 GOFIKeyBinding* bindings,
                                                 gint bindings_length1);
VALA_EXTERN void gofi_key_binding_settings_configurable_shortcut_init (GOFIKeyBindingSettingsConfigurableShortcut *self,
                                                           const gchar* sc_id,
                                                           const gchar* descr);
VALA_EXTERN GType gofi_drag_list_model_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFIDragListModel, g_object_unref)
VALA_EXTERN void gofi_drag_list_model_move_item (GOFIDragListModel* self,
                                     guint old_position,
                                     guint new_position);
VALA_EXTERN GObject* gofi_drag_list_model_get_item (GOFIDragListModel* self,
                                        guint position);
VALA_EXTERN GType gofi_drag_list_model_get_item_type (GOFIDragListModel* self);
VALA_EXTERN guint gofi_drag_list_model_get_n_items (GOFIDragListModel* self);
VALA_EXTERN GType gofi_drag_list_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFIDragList, g_object_unref)
VALA_EXTERN GType gofi_drag_list_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GOFIDragListRow, g_object_unref)
VALA_EXTERN GOFIDragList* gofi_drag_list_new (void);
VALA_EXTERN GOFIDragList* gofi_drag_list_construct (GType object_type);
VALA_EXTERN void gofi_drag_list_bind_model (GOFIDragList* self,
                                GOFIDragListModel* model,
                                GOFIDragListCreateWidgetFunc create_widget_func,
                                gpointer create_widget_func_target,
                                GDestroyNotify create_widget_func_target_destroy_notify);
VALA_EXTERN GOFIDragListRow* gofi_drag_list_get_selected_row (GOFIDragList* self);
VALA_EXTERN void gofi_drag_list_select_row (GOFIDragList* self,
                                GOFIDragListRow* row);
VALA_EXTERN void gofi_drag_list_set_placeholder (GOFIDragList* self,
                                     GtkWidget* placeholder);
VALA_EXTERN void gofi_drag_list_add_row (GOFIDragList* self,
                             GtkWidget* widget);
VALA_EXTERN void gofi_drag_list_insert_row (GOFIDragList* self,
                                GtkWidget* widget,
                                gint position);
VALA_EXTERN void gofi_drag_list_remove_row (GOFIDragList* self,
                                GOFIDragListRow* row);
VALA_EXTERN GList* gofi_drag_list_get_rows (GOFIDragList* self);
VALA_EXTERN void gofi_drag_list_move_row (GOFIDragList* self,
                              GOFIDragListRow* row,
                              gint index);
VALA_EXTERN GOFIDragListRow* gofi_drag_list_get_row_at_index (GOFIDragList* self,
                                                  gint index);
VALA_EXTERN void gofi_drag_list_set_filter_func (GOFIDragList* self,
                                     GOFIDragListFilterFunc filter_func,
                                     gpointer filter_func_target,
                                     GDestroyNotify filter_func_target_destroy_notify);
VALA_EXTERN void gofi_drag_list_invalidate_filter (GOFIDragList* self);
VALA_EXTERN GtkAdjustment* gofi_drag_list_get_vadjustment (GOFIDragList* self);
VALA_EXTERN void gofi_drag_list_set_vadjustment (GOFIDragList* self,
                                     GtkAdjustment* value);
VALA_EXTERN gint gofi_drag_list_get_dnd_drop_height (GOFIDragList* self);
VALA_EXTERN void gofi_drag_list_set_dnd_drop_height (GOFIDragList* self,
                                         gint value);
VALA_EXTERN GOFIDragListRow* gofi_drag_list_row_new (void);
VALA_EXTERN GOFIDragListRow* gofi_drag_list_row_construct (GType object_type);
VALA_EXTERN void gofi_drag_list_row_set_start_widget (GOFIDragListRow* self,
                                          GtkWidget* widget);
VALA_EXTERN GtkWidget* gofi_drag_list_row_get_start_widget (GOFIDragListRow* self);
VALA_EXTERN void gofi_drag_list_row_set_center_widget (GOFIDragListRow* self,
                                           GtkWidget* widget);
VALA_EXTERN GtkWidget* gofi_drag_list_row_get_center_widget (GOFIDragListRow* self);
VALA_EXTERN GOFIDragList* gofi_drag_list_row_get_drag_list_box (GOFIDragListRow* self);
VALA_EXTERN GType file_chooser_widget_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FileChooserWidget, g_object_unref)
VALA_EXTERN GSList* file_chooser_widget_list_filters (FileChooserWidget* self);
VALA_EXTERN void file_chooser_widget_add_filter (FileChooserWidget* self,
                                     GtkFileFilter* filter);
VALA_EXTERN void file_chooser_widget_remove_filter (FileChooserWidget* self,
                                        GtkFileFilter* filter);
VALA_EXTERN FileChooserWidget* file_chooser_widget_new (GFile* file,
                                            const gchar* dialog_title,
                                            const gchar* default_filename);
VALA_EXTERN FileChooserWidget* file_chooser_widget_construct (GType object_type,
                                                  GFile* file,
                                                  const gchar* dialog_title,
                                                  const gchar* default_filename);
VALA_EXTERN void file_chooser_widget_on_button_clicked (FileChooserWidget* self);
VALA_EXTERN GFile* file_chooser_widget_get_selected_file (FileChooserWidget* self);
VALA_EXTERN void file_chooser_widget_set_selected_file (FileChooserWidget* self,
                                            GFile* value);
VALA_EXTERN const gchar* file_chooser_widget_get_dialog_title (FileChooserWidget* self);
VALA_EXTERN void file_chooser_widget_set_dialog_title (FileChooserWidget* self,
                                           const gchar* value);
VALA_EXTERN const gchar* file_chooser_widget_get_default_filename (FileChooserWidget* self);
VALA_EXTERN void file_chooser_widget_set_default_filename (FileChooserWidget* self,
                                               const gchar* value);
VALA_EXTERN GtkFileFilter* file_chooser_widget_get_filter (FileChooserWidget* self);
VALA_EXTERN void file_chooser_widget_set_filter (FileChooserWidget* self,
                                     GtkFileFilter* value);
VALA_EXTERN GtkWidget* gofi_dialog_utils_get_explanation_widget (const gchar* explanation);
VALA_EXTERN gboolean gofi_txt_txt_utils_is_date (const gchar* token);
VALA_EXTERN gboolean gofi_txt_txt_utils_is_priority (const gchar* token);
VALA_EXTERN gboolean gofi_txt_txt_utils_is_project_tag (const gchar* token);
VALA_EXTERN gboolean gofi_txt_txt_utils_is_context_tag (const gchar* token);
VALA_EXTERN gboolean gofi_txt_txt_utils_is_common_uri_tag (const gchar* str);
VALA_EXTERN gboolean gofi_txt_txt_utils_match_duration_value (const gchar* duration_str,
                                                  guint* duration_value);
VALA_EXTERN GOFIDate* gofi_txt_txt_utils_string_to_date (const gchar* date_txt);
VALA_EXTERN gchar* gofi_txt_txt_utils_dt_to_string (GDateTime* date);
VALA_EXTERN gchar* gofi_txt_txt_utils_timer_to_string (guint timer_val);
VALA_EXTERN guint gofi_txt_txt_utils_string_to_timer (const gchar* timer_str);
VALA_EXTERN GOFIKeyBindingSettings* gofi_kbsettings;

VALA_EXTERN const gchar* GOFI_KEY_BINDING_SETTINGS_SC_KEYS[13];

G_END_DECLS

#endif
