main_pref_window.c
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #include <libheraia.h>
00030
00031 static gboolean pref_window_delete(GtkWidget *widget, GdkEvent *event, gpointer data);
00032 static void main_pref_window_connect_signals(heraia_struct_t *main_struct);
00033
00034
00035 static void on_mp_tb_fp_bt_toggled(GtkToggleToolButton *tool_button, gpointer data);
00036 static void on_mp_tb_display_bt_toggled(GtkToggleToolButton *tool_button, gpointer data);
00037
00038
00039 static void on_mp_thousand_bt_toggled(GtkToggleButton *toggle_button, gpointer data);
00040 static void on_mp_display_offset_bt_toggled(GtkToggleButton *toggle_button, gpointer data);
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053 static gboolean pref_window_delete(GtkWidget *widget, GdkEvent *event, gpointer data)
00054 {
00055 heraia_struct_t *main_struct = (heraia_struct_t *) data;
00056 GtkWidget *pref_window = NULL;
00057
00058 if (main_struct != NULL && main_struct->win_prop != NULL && main_struct->win_prop->main_pref_window != NULL)
00059 {
00060 pref_window = heraia_get_widget(main_struct->xmls->main, "main_preferences_window");
00061 save_preferences(main_struct, main_struct->prefs);
00062 record_and_hide_dialog_box(pref_window, main_struct->win_prop->main_pref_window);
00063 }
00064
00065 return TRUE;
00066 }
00067
00068
00069
00070
00071
00072
00073
00074 static void main_pref_window_connect_signals(heraia_struct_t *main_struct)
00075 {
00076
00077 g_signal_connect(G_OBJECT(heraia_get_widget(main_struct->xmls->main, "main_preferences_window")), "delete-event",
00078 G_CALLBACK(pref_window_delete), main_struct);
00079
00080
00081 g_signal_connect(G_OBJECT(heraia_get_widget(main_struct->xmls->main, "mp_tb_fp_bt")), "toggled",
00082 G_CALLBACK(on_mp_tb_fp_bt_toggled), main_struct);
00083
00084
00085 g_signal_connect(G_OBJECT(heraia_get_widget(main_struct->xmls->main, "mp_tb_display_bt")), "toggled",
00086 G_CALLBACK(on_mp_tb_display_bt_toggled), main_struct);
00087
00088
00089 g_signal_connect(G_OBJECT(heraia_get_widget(main_struct->xmls->main, "mp_thousand_bt")), "toggled",
00090 G_CALLBACK(on_mp_thousand_bt_toggled), main_struct);
00091
00092
00093 g_signal_connect(G_OBJECT(heraia_get_widget(main_struct->xmls->main, "mp_display_offset_bt")), "toggled",
00094 G_CALLBACK(on_mp_display_offset_bt_toggled), main_struct);
00095 }
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108 static void on_mp_tb_fp_bt_toggled(GtkToggleToolButton *tool_button, gpointer data)
00109 {
00110 heraia_struct_t *main_struct = (heraia_struct_t *) data;
00111 GtkWidget *notebook = NULL;
00112
00113 if (main_struct != NULL && main_struct->xmls != NULL && main_struct->xmls->main != NULL)
00114 {
00115 notebook = heraia_get_widget(main_struct->xmls->main, "mp_first_notebook");
00116 gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook), 0);
00117 }
00118 }
00119
00120
00121
00122
00123
00124
00125
00126
00127 static void on_mp_tb_display_bt_toggled(GtkToggleToolButton *tool_button, gpointer data)
00128 {
00129 heraia_struct_t *main_struct = (heraia_struct_t *) data;
00130 GtkWidget *notebook = NULL;
00131
00132 if (main_struct != NULL && main_struct->xmls != NULL && main_struct->xmls->main != NULL)
00133 {
00134
00135 notebook = heraia_get_widget(main_struct->xmls->main, "mp_first_notebook");
00136 gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook), 1);
00137 }
00138 }
00139
00140
00141
00142
00143
00144
00145
00146
00147 static void on_mp_thousand_bt_toggled(GtkToggleButton *toggle_button, gpointer data)
00148 {
00149 heraia_struct_t *main_struct = (heraia_struct_t *) data;
00150
00151 refresh_file_labels(main_struct);
00152 }
00153
00154
00155
00156
00157
00158
00159
00160 static void on_mp_display_offset_bt_toggled(GtkToggleButton *toggle_button, gpointer data)
00161 {
00162 heraia_struct_t *main_struct = (heraia_struct_t *) data;
00163 doc_t *document = NULL;
00164 guint i = 0;
00165
00166 if (toggle_button != NULL && main_struct != NULL && main_struct->documents != NULL)
00167 {
00168
00169 for(i = 0; i < main_struct->documents->len; i++)
00170 {
00171 document = g_ptr_array_index(main_struct->documents, i);
00172 gtk_hex_show_offsets(GTK_HEX(document->hex_widget), gtk_toggle_button_get_active(toggle_button));
00173 }
00174 }
00175 }
00176
00177
00178
00179
00180
00181
00182
00183
00184
00185 void main_pref_window_init_interface(heraia_struct_t *main_struct)
00186 {
00187 main_pref_window_connect_signals(main_struct);
00188 }