#ifndef SIV_H #define SIV_H #include #include #include #define APPLICATION_NAME "Simple Image Viewer" #define GLADE_FILE DATADIR"/siv.glade" typedef struct SivWindow SivWindow; typedef struct App App; typedef struct MetaData MetaData; typedef enum { BG_FIRST, BG_NONE = BG_FIRST, BG_CHECKERBOARD, BG_WHITE, BG_LAST } BackgroundType; struct MetaData { int window_x; int window_y; int window_width; int window_height; BackgroundType background; gboolean smooth_image; int zoom_level; int vadj; int hadj; gboolean show_toolbar; gboolean show_status_bar; }; /* App */ void app_register_window (App *app, SivWindow *window); void app_unregister_window (App *app, SivWindow *window); gboolean app_get_meta_data (App *app, const char *file, MetaData *data); void app_set_meta_data (App *data, const char *filename, int window_x, int window_y, int window_height, int window_width, gboolean smooth_image, BackgroundType background, int zoom_level, int vadj, int hadj, gboolean show_toolbar, gboolean show_status_bar); GtkWidget *app_get_open_chooser (App *app); /* Doesn't really belong in the app namespace */ void app_show_warning (GtkWidget *parent_window, const gchar *secondary, const gchar *format, ...); void app_show_could_not_open (GtkWidget *parent_window, int n_files, gchar **files); /* SivWindow */ SivWindow * window_new (App *app); gboolean window_load_file (SivWindow *window, const char *file, GError **err); void window_present (SivWindow *window, const char *startup_id); void window_show (SivWindow *window, const char *startup_id); gboolean window_matches_file (SivWindow *window, const char *filename); gboolean window_is_blank (SivWindow *window); void window_free (SivWindow *window); #endif