OSDN Git Service

Add Bluray support
[handbrake-jp/handbrake-jp-git.git] / gtk / src / settings.h
index 3ffc42f..2f96403 100644 (file)
@@ -18,9 +18,6 @@
 
 #include <gtk/gtk.h>
 
-#define PRESET_CUSTOM  1
-#define PRESET_DEFAULT 2
-
 #define GHB_WIDGET(b,n)        GTK_WIDGET(gtk_builder_get_object ((b), (n)))
 //#define GHB_WIDGET(b,n)      GTK_WIDGET(debug_get_object((b), (n)))
 #define GHB_ACTION(b,n)        GTK_ACTION(gtk_builder_get_object ((b), (n)))
@@ -30,24 +27,43 @@ GObject* debug_get_object(GtkBuilder *b, const gchar *n);
 
 enum
 {
-       GHB_STATE_IDLE = 0x00,
-       GHB_STATE_START = 0x01,
-       GHB_STATE_SCANNING = 0x02,
-       GHB_STATE_WORKING = 0x04
+       GHB_STATE_IDLE          = 0x00,
+       GHB_STATE_SCANNING      = 0x02,
+       GHB_STATE_SCANDONE      = 0x04,
+       GHB_STATE_WORKING       = 0x08,
+       GHB_STATE_WORKDONE      = 0x10,
+       GHB_STATE_PAUSED        = 0x20,
+       GHB_STATE_MUXING        = 0x40,
+       GHB_STATE_SEARCHING     = 0x80,
+};
+
+enum
+{
+       GHB_CANCEL_NONE,
+       GHB_CANCEL_ALL,
+       GHB_CANCEL_CURRENT,
+       GHB_CANCEL_FINISH
 };
 
+typedef struct preview_s preview_t;
+
 typedef struct
 {
-       gint state;
        gchar *current_dvd_device;
        gboolean debug;
        gboolean dont_clear_presets;
+       gboolean scale_busy;
+       gint cancel_encode;
        GtkBuilder *builder;
-       GHashTable *settings;
-       GSList *audio_settings;
-       gchar **chapter_list;
-       GSList *queue;
+       GValue *settings;
+       GValue *queue;
+       GValue *current_job;
        GIOChannel *activity_log;
+       GIOChannel *job_activity_log;
+       preview_t *preview;
+       gchar *appcast;
+       gint appcast_len;
+       GdkVisibilityState hb_visibility;
 } signal_user_data_t;
 
 enum
@@ -58,70 +74,41 @@ enum
        GHB_QUEUE_DONE,
 };
 
-typedef struct
-{
-       gint unique_id;
-       gint status;
-       GHashTable *settings;
-       GSList *audio_settings;
-       gchar **chapter_list;
-} job_settings_t;
-
-typedef struct
-{
-       gint index;
-       gchar *option;
-       gchar *shortOpt;
-       gint ivalue;
-       gdouble dvalue;
-       gchar *svalue;
-} setting_value_t;
+GValue* ghb_settings_new(void);
+void ghb_settings_take_value(
+       GValue *settings, const gchar *key, GValue *value);
+void ghb_settings_set_value(
+       GValue *settings, const gchar *key, const GValue *value);
+void ghb_settings_set_string(
+       GValue *settings, const gchar *key, const gchar *sval);
+void ghb_settings_set_double(GValue *settings, const gchar *key, gdouble dval);
+void ghb_settings_set_int64(GValue *settings, const gchar *key, gint64 ival);
+void ghb_settings_set_int(GValue *settings, const gchar *key, gint ival);
+void ghb_settings_set_boolean(
+       GValue *settings, const gchar *key, gboolean bval);
+void ghb_settings_copy(
+       GValue *settings, const gchar *key, const GValue *value);
+GValue* ghb_settings_get_value(const GValue *settings, const gchar *key);
+gboolean ghb_settings_get_boolean(const GValue *settings, const gchar *key);
+gint64 ghb_settings_get_int64(const GValue *settings, const gchar *key);
+gint ghb_settings_get_int(const GValue *settings, const gchar *key);
+gdouble ghb_settings_get_double(const GValue *settings, const gchar *key);
+gchar* ghb_settings_get_string(const GValue *settings, const gchar *key);
+gint ghb_settings_combo_int(const GValue *settings, const gchar *key);
+gdouble ghb_settings_combo_double(const GValue *settings, const gchar *key);
+const gchar* ghb_settings_combo_option(const GValue *settings, const gchar *key);
+const gchar* ghb_settings_combo_string(const GValue *settings, const gchar *key);
 
-GHashTable* ghb_settings_new();
-void ghb_settings_set(GHashTable *settings, const gchar *key, 
-                                         setting_value_t *value);
-void ghb_settings_set_string(GHashTable *settings, const gchar *key, const gchar *str);
-void ghb_settings_set_dbl(GHashTable *settings, const gchar *key, gdouble dvalue);
-void ghb_settings_copy(GHashTable *settings, const gchar *key, const setting_value_t *value);
-const setting_value_t* ghb_settings_get(GHashTable *settings, const gchar *key);
-gboolean ghb_settings_get_bool(GHashTable *settings, const gchar *key);
-gint ghb_settings_get_index(GHashTable *settings, const gchar *key);
-gint ghb_settings_get_int(GHashTable *settings, const gchar *key);
-gdouble ghb_settings_get_dbl(GHashTable *settings, const gchar *key);
-setting_value_t* ghb_widget_value(GtkWidget *widget);
-gchar* ghb_widget_short_opt(GtkWidget *widget);
-gchar* ghb_widget_option(GtkWidget *widget);
+GValue* ghb_widget_value(GtkWidget *widget);
 gchar* ghb_widget_string(GtkWidget *widget);
+gdouble ghb_widget_double(GtkWidget *widget);
+gint64 ghb_widget_int64(GtkWidget *widget);
 gint ghb_widget_int(GtkWidget *widget);
-gdouble ghb_widget_dbl(GtkWidget *widget);
-gint ghb_widget_index(GtkWidget *widget);
+gint ghb_widget_boolean(GtkWidget *widget);
 
-const gchar* ghb_settings_get_string(GHashTable *settings, const gchar *key);
-const gchar* ghb_settings_get_option(GHashTable *settings, const gchar *name);
-const gchar* ghb_settings_get_short_opt(GHashTable *settings, const gchar *key);
-GHashTable* ghb_settings_dup(GHashTable *settings);
-void ghb_widget_to_setting(GHashTable *settings, GtkWidget *widget);
-int ghb_ui_update(signal_user_data_t *ud, const gchar *key, const gchar *value);
-int ghb_ui_update_int(signal_user_data_t *ud, const gchar *key, gint ivalue);
-void ghb_settings_save(signal_user_data_t *ud, const gchar *name);
-void ghb_presets_load(signal_user_data_t *ud);
-void ghb_set_preset(signal_user_data_t *ud, const gchar *name);
-void ghb_update_from_preset( signal_user_data_t *ud, 
-                                                       const gchar *name, const gchar *key);
-gchar** ghb_presets_get_names();
-gchar** ghb_presets_get_descriptions();
-const gchar* ghb_presets_get_name(gint index);
-gboolean ghb_presets_is_standard(const gchar *name);
-gboolean ghb_presets_remove(GHashTable *settings, const gchar *name);
-void ghb_presets_revert(signal_user_data_t *ud, const gchar *name);
-GdkColor* ghb_presets_color(gboolean modified);
-const gchar* ghb_presets_current_name();
-gint ghb_presets_list_index(const gchar *name);
-gint ghb_preset_flags(const gchar *name, gint *index);
-void ghb_prefs_load(signal_user_data_t *ud);
-void ghb_prefs_to_ui(signal_user_data_t *ud);
-void ghb_prefs_save(GHashTable *settings);
-void ghb_pref_save(GHashTable *settings, const gchar *key);
-void ghb_set_preset_default(GHashTable *settings);
+void ghb_widget_to_setting(GValue *settings, GtkWidget *widget);
+int ghb_ui_update(
+       signal_user_data_t *ud, const gchar *name, const GValue *value);
+const gchar* ghb_get_setting_key(GtkWidget *widget);
 
 #endif // _SETTINGS_H_