/* switchboard.h generated by valac 0.56.18, the Vala compiler, do not modify */

#ifndef __LIB_SWITCHBOARD_H__
#define __LIB_SWITCHBOARD_H__

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

G_BEGIN_DECLS

#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 SWITCHBOARD_PLUG_SEP "<sep>"

#define SWITCHBOARD_TYPE_SETTINGS_PAGE (switchboard_settings_page_get_type ())
#define SWITCHBOARD_SETTINGS_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWITCHBOARD_TYPE_SETTINGS_PAGE, SwitchboardSettingsPage))
#define SWITCHBOARD_SETTINGS_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWITCHBOARD_TYPE_SETTINGS_PAGE, SwitchboardSettingsPageClass))
#define SWITCHBOARD_IS_SETTINGS_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWITCHBOARD_TYPE_SETTINGS_PAGE))
#define SWITCHBOARD_IS_SETTINGS_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWITCHBOARD_TYPE_SETTINGS_PAGE))
#define SWITCHBOARD_SETTINGS_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWITCHBOARD_TYPE_SETTINGS_PAGE, SwitchboardSettingsPageClass))

typedef struct _SwitchboardSettingsPage SwitchboardSettingsPage;
typedef struct _SwitchboardSettingsPageClass SwitchboardSettingsPageClass;
typedef struct _SwitchboardSettingsPagePrivate SwitchboardSettingsPagePrivate;
typedef enum  {
	SWITCHBOARD_SETTINGS_PAGE_STATUS_TYPE_ERROR,
	SWITCHBOARD_SETTINGS_PAGE_STATUS_TYPE_OFFLINE,
	SWITCHBOARD_SETTINGS_PAGE_STATUS_TYPE_SUCCESS,
	SWITCHBOARD_SETTINGS_PAGE_STATUS_TYPE_WARNING,
	SWITCHBOARD_SETTINGS_PAGE_STATUS_TYPE_NONE
} SwitchboardSettingsPageStatusType;

#define SWITCHBOARD_SETTINGS_PAGE_TYPE_STATUS_TYPE (switchboard_settings_page_status_type_get_type ())

#define SWITCHBOARD_TYPE_PLUGS_MANAGER (switchboard_plugs_manager_get_type ())
#define SWITCHBOARD_PLUGS_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWITCHBOARD_TYPE_PLUGS_MANAGER, SwitchboardPlugsManager))
#define SWITCHBOARD_PLUGS_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWITCHBOARD_TYPE_PLUGS_MANAGER, SwitchboardPlugsManagerClass))
#define SWITCHBOARD_IS_PLUGS_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWITCHBOARD_TYPE_PLUGS_MANAGER))
#define SWITCHBOARD_IS_PLUGS_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWITCHBOARD_TYPE_PLUGS_MANAGER))
#define SWITCHBOARD_PLUGS_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWITCHBOARD_TYPE_PLUGS_MANAGER, SwitchboardPlugsManagerClass))

typedef struct _SwitchboardPlugsManager SwitchboardPlugsManager;
typedef struct _SwitchboardPlugsManagerClass SwitchboardPlugsManagerClass;
typedef struct _SwitchboardPlugsManagerPrivate SwitchboardPlugsManagerPrivate;

#define SWITCHBOARD_TYPE_PLUG (switchboard_plug_get_type ())
#define SWITCHBOARD_PLUG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWITCHBOARD_TYPE_PLUG, SwitchboardPlug))
#define SWITCHBOARD_PLUG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWITCHBOARD_TYPE_PLUG, SwitchboardPlugClass))
#define SWITCHBOARD_IS_PLUG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWITCHBOARD_TYPE_PLUG))
#define SWITCHBOARD_IS_PLUG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWITCHBOARD_TYPE_PLUG))
#define SWITCHBOARD_PLUG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWITCHBOARD_TYPE_PLUG, SwitchboardPlugClass))

typedef struct _SwitchboardPlug SwitchboardPlug;
typedef struct _SwitchboardPlugClass SwitchboardPlugClass;
typedef struct _SwitchboardPlugPrivate SwitchboardPlugPrivate;
typedef enum  {
	SWITCHBOARD_PLUG_CATEGORY_PERSONAL = 0,
	SWITCHBOARD_PLUG_CATEGORY_HARDWARE = 1,
	SWITCHBOARD_PLUG_CATEGORY_NETWORK = 2,
	SWITCHBOARD_PLUG_CATEGORY_SYSTEM = 3
} SwitchboardPlugCategory;

#define SWITCHBOARD_PLUG_TYPE_CATEGORY (switchboard_plug_category_get_type ())

#define SWITCHBOARD_TYPE_SETTINGS_SIDEBAR (switchboard_settings_sidebar_get_type ())
#define SWITCHBOARD_SETTINGS_SIDEBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWITCHBOARD_TYPE_SETTINGS_SIDEBAR, SwitchboardSettingsSidebar))
#define SWITCHBOARD_SETTINGS_SIDEBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWITCHBOARD_TYPE_SETTINGS_SIDEBAR, SwitchboardSettingsSidebarClass))
#define SWITCHBOARD_IS_SETTINGS_SIDEBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWITCHBOARD_TYPE_SETTINGS_SIDEBAR))
#define SWITCHBOARD_IS_SETTINGS_SIDEBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWITCHBOARD_TYPE_SETTINGS_SIDEBAR))
#define SWITCHBOARD_SETTINGS_SIDEBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWITCHBOARD_TYPE_SETTINGS_SIDEBAR, SwitchboardSettingsSidebarClass))

typedef struct _SwitchboardSettingsSidebar SwitchboardSettingsSidebar;
typedef struct _SwitchboardSettingsSidebarClass SwitchboardSettingsSidebarClass;
typedef struct _SwitchboardSettingsSidebarPrivate SwitchboardSettingsSidebarPrivate;

struct _SwitchboardSettingsPage {
	GtkWidget parent_instance;
	SwitchboardSettingsPagePrivate * priv;
};

struct _SwitchboardSettingsPageClass {
	GtkWidgetClass parent_class;
};

struct _SwitchboardPlugsManager {
	GObject parent_instance;
	SwitchboardPlugsManagerPrivate * priv;
};

struct _SwitchboardPlugsManagerClass {
	GObjectClass parent_class;
};

struct _SwitchboardPlug {
	GObject parent_instance;
	SwitchboardPlugPrivate * priv;
};

struct _SwitchboardPlugClass {
	GObjectClass parent_class;
	GtkWidget* (*get_widget) (SwitchboardPlug* self);
	void (*shown) (SwitchboardPlug* self);
	void (*hidden) (SwitchboardPlug* self);
	void (*search) (SwitchboardPlug* self, const gchar* search, GAsyncReadyCallback _callback_, gpointer _user_data_);
	GeeTreeMap* (*search_finish) (SwitchboardPlug* self, GAsyncResult* _res_);
	void (*search_callback) (SwitchboardPlug* self, const gchar* location);
};

struct _SwitchboardSettingsSidebar {
	GtkWidget parent_instance;
	SwitchboardSettingsSidebarPrivate * priv;
};

struct _SwitchboardSettingsSidebarClass {
	GtkWidgetClass parent_class;
};

VALA_EXTERN GType switchboard_settings_page_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwitchboardSettingsPage, g_object_unref)
VALA_EXTERN GType switchboard_settings_page_status_type_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GtkButton* switchboard_settings_page_add_start_button (SwitchboardSettingsPage* self,
                                                       const gchar* label);
VALA_EXTERN GtkButton* switchboard_settings_page_add_button (SwitchboardSettingsPage* self,
                                                 const gchar* label);
VALA_EXTERN SwitchboardSettingsPage* switchboard_settings_page_construct (GType object_type);
VALA_EXTERN SwitchboardSettingsPageStatusType switchboard_settings_page_get_status_type (SwitchboardSettingsPage* self);
VALA_EXTERN void switchboard_settings_page_set_status_type (SwitchboardSettingsPage* self,
                                                SwitchboardSettingsPageStatusType value);
VALA_EXTERN const gchar* switchboard_settings_page_get_header (SwitchboardSettingsPage* self);
VALA_EXTERN const gchar* switchboard_settings_page_get_status (SwitchboardSettingsPage* self);
VALA_EXTERN void switchboard_settings_page_set_status (SwitchboardSettingsPage* self,
                                           const gchar* value);
VALA_EXTERN GIcon* switchboard_settings_page_get_icon (SwitchboardSettingsPage* self);
VALA_EXTERN void switchboard_settings_page_set_icon (SwitchboardSettingsPage* self,
                                         GIcon* value);
VALA_EXTERN const gchar* switchboard_settings_page_get_title (SwitchboardSettingsPage* self);
VALA_EXTERN void switchboard_settings_page_set_title (SwitchboardSettingsPage* self,
                                          const gchar* value);
VALA_EXTERN GtkWidget* switchboard_settings_page_get_child (SwitchboardSettingsPage* self);
VALA_EXTERN void switchboard_settings_page_set_child (SwitchboardSettingsPage* self,
                                          GtkWidget* value);
VALA_EXTERN GtkSwitch* switchboard_settings_page_get_status_switch (SwitchboardSettingsPage* self);
VALA_EXTERN gboolean switchboard_settings_page_get_activatable (SwitchboardSettingsPage* self);
VALA_EXTERN gboolean switchboard_settings_page_get_with_avatar (SwitchboardSettingsPage* self);
VALA_EXTERN GdkPaintable* switchboard_settings_page_get_avatar_paintable (SwitchboardSettingsPage* self);
VALA_EXTERN void switchboard_settings_page_set_avatar_paintable (SwitchboardSettingsPage* self,
                                                     GdkPaintable* value);
VALA_EXTERN const gchar* switchboard_settings_page_get_description (SwitchboardSettingsPage* self);
VALA_EXTERN void switchboard_settings_page_set_description (SwitchboardSettingsPage* self,
                                                const gchar* value);
VALA_EXTERN gboolean switchboard_settings_page_get_show_end_title_buttons (SwitchboardSettingsPage* self);
VALA_EXTERN void switchboard_settings_page_set_show_end_title_buttons (SwitchboardSettingsPage* self,
                                                           gboolean value);
VALA_EXTERN GType switchboard_plugs_manager_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwitchboardPlugsManager, g_object_unref)
VALA_EXTERN SwitchboardPlugsManager* switchboard_plugs_manager_get_default (void);
VALA_EXTERN gboolean switchboard_plugs_manager_has_plugs (SwitchboardPlugsManager* self);
VALA_EXTERN GType switchboard_plug_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwitchboardPlug, g_object_unref)
VALA_EXTERN GeeCollection* switchboard_plugs_manager_get_plugs (SwitchboardPlugsManager* self);
VALA_EXTERN GType switchboard_plug_category_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GtkWidget* switchboard_plug_get_widget (SwitchboardPlug* self);
VALA_EXTERN void switchboard_plug_shown (SwitchboardPlug* self);
VALA_EXTERN void switchboard_plug_hidden (SwitchboardPlug* self);
VALA_EXTERN void switchboard_plug_search (SwitchboardPlug* self,
                              const gchar* search,
                              GAsyncReadyCallback _callback_,
                              gpointer _user_data_);
VALA_EXTERN GeeTreeMap* switchboard_plug_search_finish (SwitchboardPlug* self,
                                            GAsyncResult* _res_);
VALA_EXTERN void switchboard_plug_search_callback (SwitchboardPlug* self,
                                       const gchar* location);
VALA_EXTERN SwitchboardPlug* switchboard_plug_construct (GType object_type);
VALA_EXTERN SwitchboardPlugCategory switchboard_plug_get_category (SwitchboardPlug* self);
VALA_EXTERN const gchar* switchboard_plug_get_code_name (SwitchboardPlug* self);
VALA_EXTERN const gchar* switchboard_plug_get_display_name (SwitchboardPlug* self);
VALA_EXTERN const gchar* switchboard_plug_get_description (SwitchboardPlug* self);
VALA_EXTERN const gchar* switchboard_plug_get_icon (SwitchboardPlug* self);
VALA_EXTERN GeeTreeMap* switchboard_plug_get_supported_settings (SwitchboardPlug* self);
VALA_EXTERN gboolean switchboard_plug_get_can_show (SwitchboardPlug* self);
VALA_EXTERN void switchboard_plug_set_can_show (SwitchboardPlug* self,
                                    gboolean value);
VALA_EXTERN GType switchboard_settings_sidebar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwitchboardSettingsSidebar, g_object_unref)
VALA_EXTERN SwitchboardSettingsSidebar* switchboard_settings_sidebar_new (GtkStack* stack);
VALA_EXTERN SwitchboardSettingsSidebar* switchboard_settings_sidebar_construct (GType object_type,
                                                                    GtkStack* stack);
VALA_EXTERN GtkStack* switchboard_settings_sidebar_get_stack (SwitchboardSettingsSidebar* self);
VALA_EXTERN gboolean switchboard_settings_sidebar_get_show_title_buttons (SwitchboardSettingsSidebar* self);
VALA_EXTERN void switchboard_settings_sidebar_set_show_title_buttons (SwitchboardSettingsSidebar* self,
                                                          gboolean value);
VALA_EXTERN const gchar* switchboard_settings_sidebar_get_visible_child_name (SwitchboardSettingsSidebar* self);
VALA_EXTERN void switchboard_settings_sidebar_set_visible_child_name (SwitchboardSettingsSidebar* self,
                                                          const gchar* value);

G_END_DECLS

#endif
