/* wingpanel.h generated by valac 0.56.13, the Vala compiler, do not modify */

#ifndef __LIB_WINGPANEL_H__
#define __LIB_WINGPANEL_H__

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

G_BEGIN_DECLS

#define WINGPANEL_INDICATOR_APP_LAUNCHER "app-launcher"
#define WINGPANEL_INDICATOR_SESSION "session"
#define WINGPANEL_INDICATOR_DATETIME "datetime"
#define WINGPANEL_INDICATOR_NETWORK "network"
#define WINGPANEL_INDICATOR_MESSAGES "messages"
#define WINGPANEL_INDICATOR_SOUND "sound"
#define WINGPANEL_INDICATOR_POWER "power"
#define WINGPANEL_INDICATOR_SYNC "sync"
#define WINGPANEL_INDICATOR_PRINTER "printer"
#define WINGPANEL_INDICATOR_BLUETOOTH "bluetooth"
#define WINGPANEL_INDICATOR_KEYBOARD "keyboard"
#define WINGPANEL_INDICATOR_NIGHT_LIGHT "nightlight"
#define WINGPANEL_INDICATOR_PRIVACY "privacy"
#define WINGPANEL_INDICATOR_ACCESSIBILITY "a11y"
#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 WINGPANEL_TYPE_INDICATOR (wingpanel_indicator_get_type ())
#define WINGPANEL_INDICATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WINGPANEL_TYPE_INDICATOR, WingpanelIndicator))
#define WINGPANEL_INDICATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WINGPANEL_TYPE_INDICATOR, WingpanelIndicatorClass))
#define WINGPANEL_IS_INDICATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WINGPANEL_TYPE_INDICATOR))
#define WINGPANEL_IS_INDICATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WINGPANEL_TYPE_INDICATOR))
#define WINGPANEL_INDICATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WINGPANEL_TYPE_INDICATOR, WingpanelIndicatorClass))

typedef struct _WingpanelIndicator WingpanelIndicator;
typedef struct _WingpanelIndicatorClass WingpanelIndicatorClass;
typedef struct _WingpanelIndicatorPrivate WingpanelIndicatorPrivate;

#define WINGPANEL_TYPE_INDICATOR_MANAGER (wingpanel_indicator_manager_get_type ())
#define WINGPANEL_INDICATOR_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WINGPANEL_TYPE_INDICATOR_MANAGER, WingpanelIndicatorManager))
#define WINGPANEL_INDICATOR_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WINGPANEL_TYPE_INDICATOR_MANAGER, WingpanelIndicatorManagerClass))
#define WINGPANEL_IS_INDICATOR_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WINGPANEL_TYPE_INDICATOR_MANAGER))
#define WINGPANEL_IS_INDICATOR_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WINGPANEL_TYPE_INDICATOR_MANAGER))
#define WINGPANEL_INDICATOR_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WINGPANEL_TYPE_INDICATOR_MANAGER, WingpanelIndicatorManagerClass))

typedef struct _WingpanelIndicatorManager WingpanelIndicatorManager;
typedef struct _WingpanelIndicatorManagerClass WingpanelIndicatorManagerClass;
typedef struct _WingpanelIndicatorManagerPrivate WingpanelIndicatorManagerPrivate;
typedef enum  {
	WINGPANEL_INDICATOR_MANAGER_SERVER_TYPE_SESSION,
	WINGPANEL_INDICATOR_MANAGER_SERVER_TYPE_GREETER
} WingpanelIndicatorManagerServerType;

#define WINGPANEL_INDICATOR_MANAGER_TYPE_SERVER_TYPE (wingpanel_indicator_manager_server_type_get_type ())

#define WINGPANEL_WIDGETS_TYPE_CONTAINER (wingpanel_widgets_container_get_type ())
#define WINGPANEL_WIDGETS_CONTAINER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WINGPANEL_WIDGETS_TYPE_CONTAINER, WingpanelWidgetsContainer))
#define WINGPANEL_WIDGETS_CONTAINER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WINGPANEL_WIDGETS_TYPE_CONTAINER, WingpanelWidgetsContainerClass))
#define WINGPANEL_WIDGETS_IS_CONTAINER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WINGPANEL_WIDGETS_TYPE_CONTAINER))
#define WINGPANEL_WIDGETS_IS_CONTAINER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WINGPANEL_WIDGETS_TYPE_CONTAINER))
#define WINGPANEL_WIDGETS_CONTAINER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WINGPANEL_WIDGETS_TYPE_CONTAINER, WingpanelWidgetsContainerClass))

typedef struct _WingpanelWidgetsContainer WingpanelWidgetsContainer;
typedef struct _WingpanelWidgetsContainerClass WingpanelWidgetsContainerClass;
typedef struct _WingpanelWidgetsContainerPrivate WingpanelWidgetsContainerPrivate;

#define WINGPANEL_WIDGETS_TYPE_OVERLAY_ICON (wingpanel_widgets_overlay_icon_get_type ())
#define WINGPANEL_WIDGETS_OVERLAY_ICON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WINGPANEL_WIDGETS_TYPE_OVERLAY_ICON, WingpanelWidgetsOverlayIcon))
#define WINGPANEL_WIDGETS_OVERLAY_ICON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WINGPANEL_WIDGETS_TYPE_OVERLAY_ICON, WingpanelWidgetsOverlayIconClass))
#define WINGPANEL_WIDGETS_IS_OVERLAY_ICON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WINGPANEL_WIDGETS_TYPE_OVERLAY_ICON))
#define WINGPANEL_WIDGETS_IS_OVERLAY_ICON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WINGPANEL_WIDGETS_TYPE_OVERLAY_ICON))
#define WINGPANEL_WIDGETS_OVERLAY_ICON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WINGPANEL_WIDGETS_TYPE_OVERLAY_ICON, WingpanelWidgetsOverlayIconClass))

typedef struct _WingpanelWidgetsOverlayIcon WingpanelWidgetsOverlayIcon;
typedef struct _WingpanelWidgetsOverlayIconClass WingpanelWidgetsOverlayIconClass;
typedef struct _WingpanelWidgetsOverlayIconPrivate WingpanelWidgetsOverlayIconPrivate;

#define WINGPANEL_WIDGETS_TYPE_SEPARATOR (wingpanel_widgets_separator_get_type ())
#define WINGPANEL_WIDGETS_SEPARATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WINGPANEL_WIDGETS_TYPE_SEPARATOR, WingpanelWidgetsSeparator))
#define WINGPANEL_WIDGETS_SEPARATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WINGPANEL_WIDGETS_TYPE_SEPARATOR, WingpanelWidgetsSeparatorClass))
#define WINGPANEL_WIDGETS_IS_SEPARATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WINGPANEL_WIDGETS_TYPE_SEPARATOR))
#define WINGPANEL_WIDGETS_IS_SEPARATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WINGPANEL_WIDGETS_TYPE_SEPARATOR))
#define WINGPANEL_WIDGETS_SEPARATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WINGPANEL_WIDGETS_TYPE_SEPARATOR, WingpanelWidgetsSeparatorClass))

typedef struct _WingpanelWidgetsSeparator WingpanelWidgetsSeparator;
typedef struct _WingpanelWidgetsSeparatorClass WingpanelWidgetsSeparatorClass;
typedef struct _WingpanelWidgetsSeparatorPrivate WingpanelWidgetsSeparatorPrivate;

#define WINGPANEL_WIDGETS_TYPE_SWITCH (wingpanel_widgets_switch_get_type ())
#define WINGPANEL_WIDGETS_SWITCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WINGPANEL_WIDGETS_TYPE_SWITCH, WingpanelWidgetsSwitch))
#define WINGPANEL_WIDGETS_SWITCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WINGPANEL_WIDGETS_TYPE_SWITCH, WingpanelWidgetsSwitchClass))
#define WINGPANEL_WIDGETS_IS_SWITCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WINGPANEL_WIDGETS_TYPE_SWITCH))
#define WINGPANEL_WIDGETS_IS_SWITCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WINGPANEL_WIDGETS_TYPE_SWITCH))
#define WINGPANEL_WIDGETS_SWITCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WINGPANEL_WIDGETS_TYPE_SWITCH, WingpanelWidgetsSwitchClass))

typedef struct _WingpanelWidgetsSwitch WingpanelWidgetsSwitch;
typedef struct _WingpanelWidgetsSwitchClass WingpanelWidgetsSwitchClass;
typedef struct _WingpanelWidgetsSwitchPrivate WingpanelWidgetsSwitchPrivate;

struct _WingpanelIndicator {
	GObject parent_instance;
	WingpanelIndicatorPrivate * priv;
};

struct _WingpanelIndicatorClass {
	GObjectClass parent_class;
	GtkWidget* (*get_display_widget) (WingpanelIndicator* self);
	GtkWidget* (*get_widget) (WingpanelIndicator* self);
	void (*opened) (WingpanelIndicator* self);
	void (*closed) (WingpanelIndicator* self);
};

struct _WingpanelIndicatorManager {
	GObject parent_instance;
	WingpanelIndicatorManagerPrivate * priv;
};

struct _WingpanelIndicatorManagerClass {
	GObjectClass parent_class;
};

struct _WingpanelWidgetsContainer {
	GtkButton parent_instance;
	WingpanelWidgetsContainerPrivate * priv;
};

struct _WingpanelWidgetsContainerClass {
	GtkButtonClass parent_class;
};

struct _WingpanelWidgetsOverlayIcon {
	GtkOverlay parent_instance;
	WingpanelWidgetsOverlayIconPrivate * priv;
};

struct _WingpanelWidgetsOverlayIconClass {
	GtkOverlayClass parent_class;
};

struct _WingpanelWidgetsSeparator {
	GtkSeparator parent_instance;
	WingpanelWidgetsSeparatorPrivate * priv;
};

struct _WingpanelWidgetsSeparatorClass {
	GtkSeparatorClass parent_class;
};

struct _WingpanelWidgetsSwitch {
	GtkBin parent_instance;
	WingpanelWidgetsSwitchPrivate * priv;
};

struct _WingpanelWidgetsSwitchClass {
	GtkBinClass parent_class;
};

VALA_EXTERN GType wingpanel_indicator_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WingpanelIndicator, g_object_unref)
VALA_EXTERN GtkWidget* wingpanel_indicator_get_display_widget (WingpanelIndicator* self);
VALA_EXTERN GtkWidget* wingpanel_indicator_get_widget (WingpanelIndicator* self);
VALA_EXTERN void wingpanel_indicator_opened (WingpanelIndicator* self);
VALA_EXTERN void wingpanel_indicator_closed (WingpanelIndicator* self);
VALA_EXTERN WingpanelIndicator* wingpanel_indicator_construct (GType object_type);
VALA_EXTERN const gchar* wingpanel_indicator_get_code_name (WingpanelIndicator* self);
VALA_EXTERN gboolean wingpanel_indicator_get_visible (WingpanelIndicator* self);
VALA_EXTERN void wingpanel_indicator_set_visible (WingpanelIndicator* self,
                                      gboolean value);
VALA_EXTERN GType wingpanel_indicator_manager_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WingpanelIndicatorManager, g_object_unref)
VALA_EXTERN GType wingpanel_indicator_manager_server_type_get_type (void) G_GNUC_CONST ;
VALA_EXTERN gchar* wingpanel_indicator_manager_server_type_restrictions_file_name (WingpanelIndicatorManagerServerType self);
VALA_EXTERN WingpanelIndicatorManager* wingpanel_indicator_manager_get_default (void);
VALA_EXTERN void wingpanel_indicator_manager_initialize (WingpanelIndicatorManager* self,
                                             WingpanelIndicatorManagerServerType server_type);
VALA_EXTERN void wingpanel_indicator_manager_register_indicator (WingpanelIndicatorManager* self,
                                                     const gchar* path,
                                                     WingpanelIndicator* indicator);
VALA_EXTERN void wingpanel_indicator_manager_deregister_indicator (WingpanelIndicatorManager* self,
                                                       const gchar* path,
                                                       WingpanelIndicator* indicator);
VALA_EXTERN gboolean wingpanel_indicator_manager_has_indicators (WingpanelIndicatorManager* self);
VALA_EXTERN GeeCollection* wingpanel_indicator_manager_get_indicators (WingpanelIndicatorManager* self);
VALA_EXTERN GType wingpanel_widgets_container_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WingpanelWidgetsContainer, g_object_unref)
GtkGrid* wingpanel_widgets_container_get_content_widget (WingpanelWidgetsContainer* self);
VALA_EXTERN WingpanelWidgetsContainer* wingpanel_widgets_container_new (void);
VALA_EXTERN WingpanelWidgetsContainer* wingpanel_widgets_container_construct (GType object_type);
VALA_EXTERN GType wingpanel_widgets_overlay_icon_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WingpanelWidgetsOverlayIcon, g_object_unref)
VALA_EXTERN WingpanelWidgetsOverlayIcon* wingpanel_widgets_overlay_icon_new (const gchar* icon_name);
VALA_EXTERN WingpanelWidgetsOverlayIcon* wingpanel_widgets_overlay_icon_construct (GType object_type,
                                                                       const gchar* icon_name);
VALA_EXTERN WingpanelWidgetsOverlayIcon* wingpanel_widgets_overlay_icon_new_from_pixbuf (GdkPixbuf* pixbuf);
VALA_EXTERN WingpanelWidgetsOverlayIcon* wingpanel_widgets_overlay_icon_construct_from_pixbuf (GType object_type,
                                                                                   GdkPixbuf* pixbuf);
VALA_EXTERN void wingpanel_widgets_overlay_icon_set_main_pixbuf (WingpanelWidgetsOverlayIcon* self,
                                                     GdkPixbuf* pixbuf);
VALA_EXTERN GdkPixbuf* wingpanel_widgets_overlay_icon_get_main_pixbuf (WingpanelWidgetsOverlayIcon* self);
VALA_EXTERN void wingpanel_widgets_overlay_icon_set_overlay_pixbuf (WingpanelWidgetsOverlayIcon* self,
                                                        GdkPixbuf* pixbuf);
VALA_EXTERN GdkPixbuf* wingpanel_widgets_overlay_icon_get_overlay_pixbuf (WingpanelWidgetsOverlayIcon* self);
VALA_EXTERN void wingpanel_widgets_overlay_icon_set_main_icon_name (WingpanelWidgetsOverlayIcon* self,
                                                        const gchar* icon_name);
VALA_EXTERN gchar* wingpanel_widgets_overlay_icon_get_main_icon_name (WingpanelWidgetsOverlayIcon* self);
VALA_EXTERN void wingpanel_widgets_overlay_icon_set_overlay_icon_name (WingpanelWidgetsOverlayIcon* self,
                                                           const gchar* icon_name);
VALA_EXTERN gchar* wingpanel_widgets_overlay_icon_get_overlay_icon_name (WingpanelWidgetsOverlayIcon* self);
VALA_EXTERN GtkImage* wingpanel_widgets_overlay_icon_get_main_image (WingpanelWidgetsOverlayIcon* self);
VALA_EXTERN GtkImage* wingpanel_widgets_overlay_icon_get_overlay_image (WingpanelWidgetsOverlayIcon* self);
VALA_EXTERN GType wingpanel_widgets_separator_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WingpanelWidgetsSeparator, g_object_unref)
VALA_EXTERN WingpanelWidgetsSeparator* wingpanel_widgets_separator_new (void);
VALA_EXTERN WingpanelWidgetsSeparator* wingpanel_widgets_separator_construct (GType object_type);
VALA_EXTERN GType wingpanel_widgets_switch_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (WingpanelWidgetsSwitch, g_object_unref)
VALA_EXTERN WingpanelWidgetsSwitch* wingpanel_widgets_switch_new (const gchar* caption,
                                                      gboolean active);
VALA_EXTERN WingpanelWidgetsSwitch* wingpanel_widgets_switch_construct (GType object_type,
                                                            const gchar* caption,
                                                            gboolean active);
VALA_EXTERN WingpanelWidgetsSwitch* wingpanel_widgets_switch_new_with_mnemonic (const gchar* caption,
                                                                    gboolean active);
VALA_EXTERN WingpanelWidgetsSwitch* wingpanel_widgets_switch_construct_with_mnemonic (GType object_type,
                                                                          const gchar* caption,
                                                                          gboolean active);
VALA_EXTERN GtkLabel* wingpanel_widgets_switch_get_label (WingpanelWidgetsSwitch* self);
VALA_EXTERN GtkSwitch* wingpanel_widgets_switch_get_switch (WingpanelWidgetsSwitch* self);
VALA_EXTERN void wingpanel_widgets_switch_toggle_switch (WingpanelWidgetsSwitch* self);
VALA_EXTERN gboolean wingpanel_widgets_switch_get_active (WingpanelWidgetsSwitch* self);
VALA_EXTERN void wingpanel_widgets_switch_set_active (WingpanelWidgetsSwitch* self,
                                          gboolean value);
VALA_EXTERN gchar* wingpanel_widgets_switch_get_caption (WingpanelWidgetsSwitch* self);
VALA_EXTERN void wingpanel_widgets_switch_set_caption (WingpanelWidgetsSwitch* self,
                                           const gchar* value);

G_END_DECLS

#endif
