/* keyboard.h generated by valac 0.56.19, the Vala compiler, do not modify */

#ifndef __KEYBOARD_H__
#define __KEYBOARD_H__

#include <wingpanel-9.h>
#include <glib-object.h>
#include <gmodule.h>
#include <granite-7.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <gtk/gtk.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 KEYBOARD_WIDGETS_POPOVER_WIDGET_XKB_RULES_FILE "evdev.xml"
#define KEYBOARD_WIDGETS_POPOVER_WIDGET_XKB_MANAGER_TYPE "xkb"
#define KEYBOARD_WIDGETS_POPOVER_WIDGET_IBUS_MANAGER_TYPE "ibus"
#define CONSTANTS_XKB_BASE "/usr/share/X11/xkb"
#define CONSTANTS_GETTEXT_PACKAGE "io.elementary.panel.keyboard"
#define CONSTANTS_LOCALEDIR "/usr/share/locale"

#define KEYBOARD_TYPE_INDICATOR (keyboard_indicator_get_type ())
#define KEYBOARD_INDICATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), KEYBOARD_TYPE_INDICATOR, KeyboardIndicator))
#define KEYBOARD_INDICATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), KEYBOARD_TYPE_INDICATOR, KeyboardIndicatorClass))
#define KEYBOARD_IS_INDICATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), KEYBOARD_TYPE_INDICATOR))
#define KEYBOARD_IS_INDICATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), KEYBOARD_TYPE_INDICATOR))
#define KEYBOARD_INDICATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), KEYBOARD_TYPE_INDICATOR, KeyboardIndicatorClass))

typedef struct _KeyboardIndicator KeyboardIndicator;
typedef struct _KeyboardIndicatorClass KeyboardIndicatorClass;
typedef struct _KeyboardIndicatorPrivate KeyboardIndicatorPrivate;

#define KEYBOARD_WIDGETS_TYPE_LAYOUT_BUTTON (keyboard_widgets_layout_button_get_type ())
#define KEYBOARD_WIDGETS_LAYOUT_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), KEYBOARD_WIDGETS_TYPE_LAYOUT_BUTTON, KeyboardWidgetsLayoutButton))
#define KEYBOARD_WIDGETS_LAYOUT_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), KEYBOARD_WIDGETS_TYPE_LAYOUT_BUTTON, KeyboardWidgetsLayoutButtonClass))
#define KEYBOARD_WIDGETS_IS_LAYOUT_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), KEYBOARD_WIDGETS_TYPE_LAYOUT_BUTTON))
#define KEYBOARD_WIDGETS_IS_LAYOUT_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), KEYBOARD_WIDGETS_TYPE_LAYOUT_BUTTON))
#define KEYBOARD_WIDGETS_LAYOUT_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), KEYBOARD_WIDGETS_TYPE_LAYOUT_BUTTON, KeyboardWidgetsLayoutButtonClass))

typedef struct _KeyboardWidgetsLayoutButton KeyboardWidgetsLayoutButton;
typedef struct _KeyboardWidgetsLayoutButtonClass KeyboardWidgetsLayoutButtonClass;
typedef struct _KeyboardWidgetsLayoutButtonPrivate KeyboardWidgetsLayoutButtonPrivate;

#define KEYBOARD_WIDGETS_TYPE_POPOVER_WIDGET (keyboard_widgets_popover_widget_get_type ())
#define KEYBOARD_WIDGETS_POPOVER_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), KEYBOARD_WIDGETS_TYPE_POPOVER_WIDGET, KeyboardWidgetsPopoverWidget))
#define KEYBOARD_WIDGETS_POPOVER_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), KEYBOARD_WIDGETS_TYPE_POPOVER_WIDGET, KeyboardWidgetsPopoverWidgetClass))
#define KEYBOARD_WIDGETS_IS_POPOVER_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), KEYBOARD_WIDGETS_TYPE_POPOVER_WIDGET))
#define KEYBOARD_WIDGETS_IS_POPOVER_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), KEYBOARD_WIDGETS_TYPE_POPOVER_WIDGET))
#define KEYBOARD_WIDGETS_POPOVER_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), KEYBOARD_WIDGETS_TYPE_POPOVER_WIDGET, KeyboardWidgetsPopoverWidgetClass))

typedef struct _KeyboardWidgetsPopoverWidget KeyboardWidgetsPopoverWidget;
typedef struct _KeyboardWidgetsPopoverWidgetClass KeyboardWidgetsPopoverWidgetClass;
typedef struct _KeyboardWidgetsPopoverWidgetPrivate KeyboardWidgetsPopoverWidgetPrivate;

struct _KeyboardIndicator {
	WingpanelIndicator parent_instance;
	KeyboardIndicatorPrivate * priv;
};

struct _KeyboardIndicatorClass {
	WingpanelIndicatorClass parent_class;
};

struct _KeyboardWidgetsLayoutButton {
	GraniteBin parent_instance;
	KeyboardWidgetsLayoutButtonPrivate * priv;
};

struct _KeyboardWidgetsLayoutButtonClass {
	GraniteBinClass parent_class;
};

struct _KeyboardWidgetsPopoverWidget {
	GtkBox parent_instance;
	KeyboardWidgetsPopoverWidgetPrivate * priv;
};

struct _KeyboardWidgetsPopoverWidgetClass {
	GtkBoxClass parent_class;
};

VALA_EXTERN GType keyboard_indicator_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (KeyboardIndicator, g_object_unref)
VALA_EXTERN KeyboardIndicator* keyboard_indicator_new (WingpanelIndicatorManagerServerType server_type);
VALA_EXTERN KeyboardIndicator* keyboard_indicator_construct (GType object_type,
                                                 WingpanelIndicatorManagerServerType server_type);
VALA_EXTERN WingpanelIndicatorManagerServerType keyboard_indicator_get_server_type (KeyboardIndicator* self);
VALA_EXTERN WingpanelIndicator* get_indicator (GModule* module,
                                   WingpanelIndicatorManagerServerType server_type);
VALA_EXTERN GType keyboard_widgets_layout_button_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (KeyboardWidgetsLayoutButton, g_object_unref)
VALA_EXTERN KeyboardWidgetsLayoutButton* keyboard_widgets_layout_button_new (const gchar* _label,
                                                                 const gchar* _action_name,
                                                                 GVariant* _action_target);
VALA_EXTERN KeyboardWidgetsLayoutButton* keyboard_widgets_layout_button_construct (GType object_type,
                                                                       const gchar* _label,
                                                                       const gchar* _action_name,
                                                                       GVariant* _action_target);
VALA_EXTERN const gchar* keyboard_widgets_layout_button_get_label (KeyboardWidgetsLayoutButton* self);
VALA_EXTERN const gchar* keyboard_widgets_layout_button_get_action_name (KeyboardWidgetsLayoutButton* self);
VALA_EXTERN GVariant* keyboard_widgets_layout_button_get_action_target (KeyboardWidgetsLayoutButton* self);
VALA_EXTERN gboolean keyboard_widgets_layout_button_get_active (KeyboardWidgetsLayoutButton* self);
VALA_EXTERN void keyboard_widgets_layout_button_set_active (KeyboardWidgetsLayoutButton* self,
                                                gboolean value);
VALA_EXTERN guint32 keyboard_widgets_layout_button_get_index (KeyboardWidgetsLayoutButton* self);
VALA_EXTERN void keyboard_widgets_layout_button_set_index (KeyboardWidgetsLayoutButton* self,
                                               guint32 value);
VALA_EXTERN const gchar* keyboard_widgets_layout_button_get_language_code (KeyboardWidgetsLayoutButton* self);
VALA_EXTERN void keyboard_widgets_layout_button_set_language_code (KeyboardWidgetsLayoutButton* self,
                                                       const gchar* value);
VALA_EXTERN const gchar* keyboard_widgets_layout_button_get_layout_variant (KeyboardWidgetsLayoutButton* self);
VALA_EXTERN void keyboard_widgets_layout_button_set_layout_variant (KeyboardWidgetsLayoutButton* self,
                                                        const gchar* value);
VALA_EXTERN const gchar* keyboard_widgets_layout_button_get_manager_type (KeyboardWidgetsLayoutButton* self);
VALA_EXTERN void keyboard_widgets_layout_button_set_manager_type (KeyboardWidgetsLayoutButton* self,
                                                      const gchar* value);
VALA_EXTERN const gchar* keyboard_widgets_layout_button_get_source (KeyboardWidgetsLayoutButton* self);
VALA_EXTERN void keyboard_widgets_layout_button_set_source (KeyboardWidgetsLayoutButton* self,
                                                const gchar* value);
VALA_EXTERN GType keyboard_widgets_popover_widget_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (KeyboardWidgetsPopoverWidget, g_object_unref)
VALA_EXTERN KeyboardWidgetsPopoverWidget* keyboard_widgets_popover_widget_new (WingpanelIndicatorManagerServerType server_type);
VALA_EXTERN KeyboardWidgetsPopoverWidget* keyboard_widgets_popover_widget_construct (GType object_type,
                                                                         WingpanelIndicatorManagerServerType server_type);
VALA_EXTERN gchar* keyboard_widgets_popover_widget_get_xml_rules_file_path (KeyboardWidgetsPopoverWidget* self);
VALA_EXTERN gchar* keyboard_widgets_popover_widget_get_name_for_xkb_layout (KeyboardWidgetsPopoverWidget* self,
                                                                const gchar* language,
                                                                const gchar* variant);
VALA_EXTERN gchar* keyboard_widgets_popover_widget_get_current_with_variant (KeyboardWidgetsPopoverWidget* self);
VALA_EXTERN gchar* keyboard_widgets_popover_widget_get_current_description (KeyboardWidgetsPopoverWidget* self);
VALA_EXTERN void keyboard_widgets_popover_widget_next (KeyboardWidgetsPopoverWidget* self);
VALA_EXTERN gboolean keyboard_widgets_popover_widget_has_multiple_layouts (KeyboardWidgetsPopoverWidget* self);
VALA_EXTERN const gchar* keyboard_widgets_popover_widget_get_current_language_code (KeyboardWidgetsPopoverWidget* self);
VALA_EXTERN void keyboard_widgets_popover_widget_set_current_language_code (KeyboardWidgetsPopoverWidget* self,
                                                                const gchar* value);
VALA_EXTERN const gchar* keyboard_widgets_popover_widget_get_current_layout_variant (KeyboardWidgetsPopoverWidget* self);
VALA_EXTERN void keyboard_widgets_popover_widget_set_current_layout_variant (KeyboardWidgetsPopoverWidget* self,
                                                                 const gchar* value);
VALA_EXTERN WingpanelIndicatorManagerServerType keyboard_widgets_popover_widget_get_server_type (KeyboardWidgetsPopoverWidget* self);

G_END_DECLS

#endif
