/* showdesktopapplet.h generated by valac 0.56.18-dirty, the Vala compiler, do not modify */

#ifndef __SRC_PANEL_APPLETS_SHOW_DESKTOP_SHOWDESKTOPAPPLET_H__
#define __SRC_PANEL_APPLETS_SHOW_DESKTOP_SHOWDESKTOPAPPLET_H__

#include <libpeas.h>
#include "plugin.h"
#include <glib-object.h>
#include <gtk/gtk.h>
#include <glib.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 TYPE_SHOW_DESKTOP_PLUGIN (show_desktop_plugin_get_type ())
#define SHOW_DESKTOP_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SHOW_DESKTOP_PLUGIN, ShowDesktopPlugin))
#define SHOW_DESKTOP_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SHOW_DESKTOP_PLUGIN, ShowDesktopPluginClass))
#define IS_SHOW_DESKTOP_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SHOW_DESKTOP_PLUGIN))
#define IS_SHOW_DESKTOP_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SHOW_DESKTOP_PLUGIN))
#define SHOW_DESKTOP_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SHOW_DESKTOP_PLUGIN, ShowDesktopPluginClass))

typedef struct _ShowDesktopPlugin ShowDesktopPlugin;
typedef struct _ShowDesktopPluginClass ShowDesktopPluginClass;
typedef struct _ShowDesktopPluginPrivate ShowDesktopPluginPrivate;

#define TYPE_SHOW_DESKTOP_APPLET (show_desktop_applet_get_type ())
#define SHOW_DESKTOP_APPLET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SHOW_DESKTOP_APPLET, ShowDesktopApplet))
#define SHOW_DESKTOP_APPLET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SHOW_DESKTOP_APPLET, ShowDesktopAppletClass))
#define IS_SHOW_DESKTOP_APPLET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SHOW_DESKTOP_APPLET))
#define IS_SHOW_DESKTOP_APPLET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SHOW_DESKTOP_APPLET))
#define SHOW_DESKTOP_APPLET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SHOW_DESKTOP_APPLET, ShowDesktopAppletClass))

typedef struct _ShowDesktopApplet ShowDesktopApplet;
typedef struct _ShowDesktopAppletClass ShowDesktopAppletClass;
typedef struct _ShowDesktopAppletPrivate ShowDesktopAppletPrivate;

struct _ShowDesktopPlugin {
	PeasExtensionBase parent_instance;
	ShowDesktopPluginPrivate * priv;
};

struct _ShowDesktopPluginClass {
	PeasExtensionBaseClass parent_class;
};

struct _ShowDesktopApplet {
	BudgieApplet parent_instance;
	ShowDesktopAppletPrivate * priv;
	GtkToggleButton* widget;
	GtkImage* img;
};

struct _ShowDesktopAppletClass {
	BudgieAppletClass parent_class;
};

GType show_desktop_plugin_register_type (GTypeModule * module);
VALA_EXTERN GType show_desktop_plugin_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ShowDesktopPlugin, g_object_unref)
VALA_EXTERN ShowDesktopPlugin* show_desktop_plugin_new (void);
VALA_EXTERN ShowDesktopPlugin* show_desktop_plugin_construct (GType object_type);
GType show_desktop_applet_register_type (GTypeModule * module);
VALA_EXTERN GType show_desktop_applet_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ShowDesktopApplet, g_object_unref)
VALA_EXTERN ShowDesktopApplet* show_desktop_applet_new (void);
VALA_EXTERN ShowDesktopApplet* show_desktop_applet_construct (GType object_type);
VALA_EXTERN void peas_register_types (GTypeModule* module);

G_END_DECLS

#endif
