/* libgnome-games-support.h generated by valac 0.56.19, the Vala compiler, do not modify */

#ifndef __SUBPROJECTS_LIBGNOME_GAMES_SUPPORT_GAMES_LIBGNOME_GAMES_SUPPORT_H__
#define __SUBPROJECTS_LIBGNOME_GAMES_SUPPORT_GAMES_LIBGNOME_GAMES_SUPPORT_H__

#include <gtk/gtk.h>
#include <glib-object.h>
#include <glib.h>
#include <float.h>
#include <math.h>
#include <adwaita.h>
#include <gio/gio.h>
#include <stdlib.h>
#include <string.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 GAMES_TYPE_GRID_FRAME (games_grid_frame_get_type ())
#define GAMES_GRID_FRAME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAMES_TYPE_GRID_FRAME, GamesGridFrame))
#define GAMES_GRID_FRAME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GAMES_TYPE_GRID_FRAME, GamesGridFrameClass))
#define GAMES_IS_GRID_FRAME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GAMES_TYPE_GRID_FRAME))
#define GAMES_IS_GRID_FRAME_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GAMES_TYPE_GRID_FRAME))
#define GAMES_GRID_FRAME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GAMES_TYPE_GRID_FRAME, GamesGridFrameClass))

typedef struct _GamesGridFrame GamesGridFrame;
typedef struct _GamesGridFrameClass GamesGridFrameClass;
typedef struct _GamesGridFramePrivate GamesGridFramePrivate;

#define GAMES_TYPE_THEME_SELECTOR_DIALOG (games_theme_selector_dialog_get_type ())
#define GAMES_THEME_SELECTOR_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAMES_TYPE_THEME_SELECTOR_DIALOG, GamesThemeSelectorDialog))
#define GAMES_THEME_SELECTOR_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GAMES_TYPE_THEME_SELECTOR_DIALOG, GamesThemeSelectorDialogClass))
#define GAMES_IS_THEME_SELECTOR_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GAMES_TYPE_THEME_SELECTOR_DIALOG))
#define GAMES_IS_THEME_SELECTOR_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GAMES_TYPE_THEME_SELECTOR_DIALOG))
#define GAMES_THEME_SELECTOR_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GAMES_TYPE_THEME_SELECTOR_DIALOG, GamesThemeSelectorDialogClass))

typedef struct _GamesThemeSelectorDialog GamesThemeSelectorDialog;
typedef struct _GamesThemeSelectorDialogClass GamesThemeSelectorDialogClass;
typedef struct _GamesThemeSelectorDialogPrivate GamesThemeSelectorDialogPrivate;

#define GAMES_SCORES_TYPE_CATEGORY (games_scores_category_get_type ())
#define GAMES_SCORES_CATEGORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAMES_SCORES_TYPE_CATEGORY, GamesScoresCategory))
#define GAMES_SCORES_CATEGORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GAMES_SCORES_TYPE_CATEGORY, GamesScoresCategoryClass))
#define GAMES_SCORES_IS_CATEGORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GAMES_SCORES_TYPE_CATEGORY))
#define GAMES_SCORES_IS_CATEGORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GAMES_SCORES_TYPE_CATEGORY))
#define GAMES_SCORES_CATEGORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GAMES_SCORES_TYPE_CATEGORY, GamesScoresCategoryClass))

typedef struct _GamesScoresCategory GamesScoresCategory;
typedef struct _GamesScoresCategoryClass GamesScoresCategoryClass;
typedef struct _GamesScoresCategoryPrivate GamesScoresCategoryPrivate;
typedef enum  {
	GAMES_SCORES_STYLE_POINTS_GREATER_IS_BETTER,
	GAMES_SCORES_STYLE_POINTS_LESS_IS_BETTER,
	GAMES_SCORES_STYLE_TIME_GREATER_IS_BETTER,
	GAMES_SCORES_STYLE_TIME_LESS_IS_BETTER
} GamesScoresStyle;

#define GAMES_SCORES_TYPE_STYLE (games_scores_style_get_type ())

#define GAMES_SCORES_TYPE_CONTEXT (games_scores_context_get_type ())
#define GAMES_SCORES_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAMES_SCORES_TYPE_CONTEXT, GamesScoresContext))
#define GAMES_SCORES_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GAMES_SCORES_TYPE_CONTEXT, GamesScoresContextClass))
#define GAMES_SCORES_IS_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GAMES_SCORES_TYPE_CONTEXT))
#define GAMES_SCORES_IS_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GAMES_SCORES_TYPE_CONTEXT))
#define GAMES_SCORES_CONTEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GAMES_SCORES_TYPE_CONTEXT, GamesScoresContextClass))

typedef struct _GamesScoresContext GamesScoresContext;
typedef struct _GamesScoresContextClass GamesScoresContextClass;
typedef struct _GamesScoresContextPrivate GamesScoresContextPrivate;
typedef GamesScoresCategory* (*GamesScoresContextCategoryRequestFunc) (const gchar* category_key, gpointer user_data);
typedef gboolean (*GamesScoresContextIsLowerOrderCategoryFunc) (GamesScoresCategory* a, GamesScoresCategory* b, gpointer user_data);

#define GAMES_SCORES_TYPE_SCORE (games_scores_score_get_type ())
#define GAMES_SCORES_SCORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAMES_SCORES_TYPE_SCORE, GamesScoresScore))
#define GAMES_SCORES_SCORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GAMES_SCORES_TYPE_SCORE, GamesScoresScoreClass))
#define GAMES_SCORES_IS_SCORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GAMES_SCORES_TYPE_SCORE))
#define GAMES_SCORES_IS_SCORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GAMES_SCORES_TYPE_SCORE))
#define GAMES_SCORES_SCORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GAMES_SCORES_TYPE_SCORE, GamesScoresScoreClass))

typedef struct _GamesScoresScore GamesScoresScore;
typedef struct _GamesScoresScoreClass GamesScoresScoreClass;
typedef void (*GamesScoresContextNewGameFunc) (gpointer user_data);
typedef void (*GamesScoresContextQuitAppFunc) (gpointer user_data);
typedef struct _GamesScoresScorePrivate GamesScoresScorePrivate;

struct _GamesGridFrame {
	GtkWidget parent_instance;
	GamesGridFramePrivate * priv;
};

struct _GamesGridFrameClass {
	GtkWidgetClass parent_class;
};

struct _GamesThemeSelectorDialog {
	AdwDialog parent_instance;
	GamesThemeSelectorDialogPrivate * priv;
	guint active_index;
};

struct _GamesThemeSelectorDialogClass {
	AdwDialogClass parent_class;
};

struct _GamesScoresCategory {
	GObject parent_instance;
	GamesScoresCategoryPrivate * priv;
};

struct _GamesScoresCategoryClass {
	GObjectClass parent_class;
};

struct _GamesScoresContext {
	GObject parent_instance;
	GamesScoresContextPrivate * priv;
};

struct _GamesScoresContextClass {
	GObjectClass parent_class;
};

struct _GamesScoresScore {
	GObject parent_instance;
	GamesScoresScorePrivate * priv;
};

struct _GamesScoresScoreClass {
	GObjectClass parent_class;
};

VALA_EXTERN GType games_grid_frame_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GamesGridFrame, g_object_unref)
VALA_EXTERN GamesGridFrame* games_grid_frame_new (gint width,
                                      gint height);
VALA_EXTERN GamesGridFrame* games_grid_frame_construct (GType object_type,
                                            gint width,
                                            gint height);
VALA_EXTERN void games_grid_frame_set (GamesGridFrame* self,
                           gint width,
                           gint height);
VALA_EXTERN void games_grid_frame_set_padding (GamesGridFrame* self,
                                   gint xpadding,
                                   gint ypadding);
VALA_EXTERN void games_grid_frame_set_alignment (GamesGridFrame* self,
                                     gfloat xalign,
                                     gfloat yalign);
VALA_EXTERN gint games_grid_frame_get_xpadding (GamesGridFrame* self);
VALA_EXTERN void games_grid_frame_set_xpadding (GamesGridFrame* self,
                                    gint value);
VALA_EXTERN gint games_grid_frame_get_ypadding (GamesGridFrame* self);
VALA_EXTERN void games_grid_frame_set_ypadding (GamesGridFrame* self,
                                    gint value);
VALA_EXTERN gint games_grid_frame_get_width (GamesGridFrame* self);
VALA_EXTERN void games_grid_frame_set_width (GamesGridFrame* self,
                                 gint value);
VALA_EXTERN gint games_grid_frame_get_height (GamesGridFrame* self);
VALA_EXTERN void games_grid_frame_set_height (GamesGridFrame* self,
                                  gint value);
VALA_EXTERN gfloat games_grid_frame_get_xalign (GamesGridFrame* self);
VALA_EXTERN void games_grid_frame_set_xalign (GamesGridFrame* self,
                                  gfloat value);
VALA_EXTERN gfloat games_grid_frame_get_yalign (GamesGridFrame* self);
VALA_EXTERN void games_grid_frame_set_yalign (GamesGridFrame* self,
                                  gfloat value);
VALA_EXTERN GtkWidget* games_grid_frame_get_child (GamesGridFrame* self);
VALA_EXTERN void games_grid_frame_set_child (GamesGridFrame* self,
                                 GtkWidget* value);
VALA_EXTERN GType games_theme_selector_dialog_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GamesThemeSelectorDialog, g_object_unref)
VALA_EXTERN GamesThemeSelectorDialog* games_theme_selector_dialog_new (GListStore* themes);
VALA_EXTERN GamesThemeSelectorDialog* games_theme_selector_dialog_construct (GType object_type,
                                                                 GListStore* themes);
VALA_EXTERN GType games_scores_category_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GamesScoresCategory, g_object_unref)
VALA_EXTERN GamesScoresCategory* games_scores_category_new (const gchar* key,
                                                const gchar* name);
VALA_EXTERN GamesScoresCategory* games_scores_category_construct (GType object_type,
                                                      const gchar* key,
                                                      const gchar* name);
VALA_EXTERN const gchar* games_scores_category_get_key (GamesScoresCategory* self);
VALA_EXTERN void games_scores_category_set_key (GamesScoresCategory* self,
                                    const gchar* value);
VALA_EXTERN const gchar* games_scores_category_get_name (GamesScoresCategory* self);
VALA_EXTERN void games_scores_category_set_name (GamesScoresCategory* self,
                                     const gchar* value);
VALA_EXTERN GType games_scores_style_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GType games_scores_context_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GamesScoresContext, g_object_unref)
VALA_EXTERN GamesScoresContext* games_scores_context_new (const gchar* app_name,
                                              gchar** clear_dialog_strings,
                                              gint clear_dialog_strings_length1,
                                              GtkWindow* game_window,
                                              GamesScoresContextCategoryRequestFunc category_request,
                                              gpointer category_request_target,
                                              GamesScoresStyle style,
                                              const gchar* icon_name,
                                              GamesScoresContextIsLowerOrderCategoryFunc is_lower_order,
                                              gpointer is_lower_order_target);
VALA_EXTERN GamesScoresContext* games_scores_context_construct (GType object_type,
                                                    const gchar* app_name,
                                                    gchar** clear_dialog_strings,
                                                    gint clear_dialog_strings_length1,
                                                    GtkWindow* game_window,
                                                    GamesScoresContextCategoryRequestFunc category_request,
                                                    gpointer category_request_target,
                                                    GamesScoresStyle style,
                                                    const gchar* icon_name,
                                                    GamesScoresContextIsLowerOrderCategoryFunc is_lower_order,
                                                    gpointer is_lower_order_target);
VALA_EXTERN GType games_scores_score_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GamesScoresScore, g_object_unref)
VALA_EXTERN GeeList* games_scores_context_get_high_scores (GamesScoresContext* self,
                                               GamesScoresCategory* category,
                                               gint n);
VALA_EXTERN void games_scores_context_clear_score_file (GamesScoresContext* self,
                                            GamesScoresCategory* category);
VALA_EXTERN void games_scores_context_clear_score_files (GamesScoresContext* self);
VALA_EXTERN void games_scores_context_add_score (GamesScoresContext* self,
                                     glong score,
                                     GamesScoresCategory* category,
                                     GCancellable* cancellable,
                                     GAsyncReadyCallback _callback_,
                                     gpointer _user_data_);
VALA_EXTERN gboolean games_scores_context_add_score_finish (GamesScoresContext* self,
                                                GAsyncResult* _res_,
                                                GError** error);
VALA_EXTERN void games_scores_context_add_score_full (GamesScoresContext* self,
                                          glong score_value,
                                          GamesScoresCategory* category,
                                          GamesScoresContextNewGameFunc new_game_func,
                                          gpointer new_game_func_target,
                                          GamesScoresContextQuitAppFunc quit_app_func,
                                          gpointer quit_app_func_target,
                                          GCancellable* cancellable,
                                          GAsyncReadyCallback _callback_,
                                          gpointer _user_data_);
VALA_EXTERN gboolean games_scores_context_add_score_full_finish (GamesScoresContext* self,
                                                     GAsyncResult* _res_,
                                                     GError** error);
VALA_EXTERN void games_scores_context_load_scores (GamesScoresContext* self,
                                       GamesScoresContextCategoryRequestFunc category_request,
                                       gpointer category_request_target,
                                       GError** error);
VALA_EXTERN void games_scores_context_present_dialog (GamesScoresContext* self);
VALA_EXTERN gboolean games_scores_context_has_scores (GamesScoresContext* self);
VALA_EXTERN const gchar* games_scores_context_get_app_name (GamesScoresContext* self);
VALA_EXTERN GtkWindow* games_scores_context_get_game_window (GamesScoresContext* self);
VALA_EXTERN GamesScoresStyle games_scores_context_get_style (GamesScoresContext* self);
VALA_EXTERN const gchar* games_scores_context_get_icon_name (GamesScoresContext* self);
VALA_EXTERN GamesScoresScore* games_scores_score_new (glong score,
                                          gint64 time,
                                          const gchar* user);
VALA_EXTERN GamesScoresScore* games_scores_score_construct (GType object_type,
                                                glong score,
                                                gint64 time,
                                                const gchar* user);
VALA_EXTERN gboolean games_scores_score_equals (GamesScoresScore* a,
                                    GamesScoresScore* b);
VALA_EXTERN glong games_scores_score_get_score (GamesScoresScore* self);
VALA_EXTERN void games_scores_score_set_score (GamesScoresScore* self,
                                   glong value);
VALA_EXTERN gint64 games_scores_score_get_time (GamesScoresScore* self);
VALA_EXTERN void games_scores_score_set_time (GamesScoresScore* self,
                                  gint64 value);
VALA_EXTERN const gchar* games_scores_score_get_user (GamesScoresScore* self);
VALA_EXTERN void games_scores_score_set_user (GamesScoresScore* self,
                                  const gchar* value);

G_END_DECLS

#endif
