SF.net SVN: geany:[4429] trunk
eht16 at users.sourceforge.net
eht16 at xxxxx
Tue Nov 17 21:49:43 UTC 2009
Revision: 4429
http://geany.svn.sourceforge.net/geany/?rev=4429&view=rev
Author: eht16
Date: 2009-11-17 21:49:43 +0000 (Tue, 17 Nov 2009)
Log Message:
-----------
Refactor color and font button callback functions in the preferences dialog. Move the VTE related callback functions into vte.c.
Make use of ui_setup_open_button_callback().
Modified Paths:
--------------
trunk/ChangeLog
trunk/src/prefs.c
trunk/src/prefs.h
trunk/src/vte.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-11-17 21:47:06 UTC (rev 4428)
+++ trunk/ChangeLog 2009-11-17 21:49:43 UTC (rev 4429)
@@ -5,6 +5,11 @@
* src/ui_utils.c:
Implement GTK_FILE_CHOOSER_ACTION_OPEN mode in
ui_setup_open_button_callback().
+ * src/prefs.c, src/prefs.c, src/vte.c:
+ Refactor color and font button callback functions in the
+ preferences dialog. Move the VTE related callback functions
+ into vte.c.
+ Make use of ui_setup_open_button_callback().
2009-11-16 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
Modified: trunk/src/prefs.c
===================================================================
--- trunk/src/prefs.c 2009-11-17 21:47:06 UTC (rev 4428)
+++ trunk/src/prefs.c 2009-11-17 21:49:43 UTC (rev 4429)
@@ -1149,39 +1149,16 @@
}
-void on_prefs_color_choosed(GtkColorButton *widget, gpointer user_data)
+static void on_color_button_choose_cb(GtkColorButton *widget, gpointer user_data)
{
GdkColor color;
- switch (GPOINTER_TO_INT(user_data))
- {
- case 1:
- {
- gtk_color_button_get_color(widget, &color);
- setptr(editor_prefs.long_line_color, utils_get_hex_from_color(&color));
- break;
- }
-#ifdef HAVE_VTE
- case 2:
- {
- g_free(vc->colour_fore);
- vc->colour_fore = g_new0(GdkColor, 1);
- gtk_color_button_get_color(widget, vc->colour_fore);
- break;
- }
- case 3:
- {
- g_free(vc->colour_back);
- vc->colour_back = g_new0(GdkColor, 1);
- gtk_color_button_get_color(widget, vc->colour_back);
- break;
- }
-#endif
- }
+ gtk_color_button_get_color(widget, &color);
+ setptr(editor_prefs.long_line_color, utils_get_hex_from_color(&color));
}
-void on_prefs_font_choosed(GtkFontButton *widget, gpointer user_data)
+static void on_prefs_font_choosed(GtkFontButton *widget, gpointer user_data)
{
const gchar *fontbtn = gtk_font_button_get_font_name(widget);
guint i;
@@ -1225,17 +1202,6 @@
ui_set_editor_font(fontbtn);
break;
}
-#ifdef HAVE_VTE
- case 4:
- {
- /* VTE settings */
- if (strcmp(fontbtn, vc->font) == 0)
- break;
- setptr(vc->font, g_strdup(gtk_font_button_get_font_name(widget)));
- vte_apply_user_settings();
- break;
- }
-#endif
}
}
@@ -1606,24 +1572,33 @@
g_signal_connect(ui_lookup_widget(ui_widgets.prefs_dialog, "editor_font"),
"font-set", G_CALLBACK(on_prefs_font_choosed), GINT_TO_POINTER(3));
g_signal_connect(ui_lookup_widget(ui_widgets.prefs_dialog, "long_line_color"),
- "color-set", G_CALLBACK(on_prefs_color_choosed), GINT_TO_POINTER(1));
- /* file chooser buttons in the tools tab
- g_signal_connect(ui_lookup_widget(ui_widgets.prefs_dialog, "button_make"),
- "clicked", G_CALLBACK(on_prefs_tools_button_clicked), ui_lookup_widget(ui_widgets.prefs_dialog, "entry_com_make")); */
- g_signal_connect(ui_lookup_widget(ui_widgets.prefs_dialog, "button_term"),
- "clicked", G_CALLBACK(on_prefs_tools_button_clicked), ui_lookup_widget(ui_widgets.prefs_dialog, "entry_com_term"));
- g_signal_connect(ui_lookup_widget(ui_widgets.prefs_dialog, "button_browser"),
- "clicked", G_CALLBACK(on_prefs_tools_button_clicked), ui_lookup_widget(ui_widgets.prefs_dialog, "entry_browser"));
- g_signal_connect(ui_lookup_widget(ui_widgets.prefs_dialog, "button_grep"),
- "clicked", G_CALLBACK(on_prefs_tools_button_clicked), ui_lookup_widget(ui_widgets.prefs_dialog, "entry_grep"));
+ "color-set", G_CALLBACK(on_color_button_choose_cb), NULL);
+ /* file chooser buttons in the tools tab */
+ ui_setup_open_button_callback(ui_lookup_widget(ui_widgets.prefs_dialog, "button_term"),
+ _("Open File"),
+ GTK_FILE_CHOOSER_ACTION_OPEN,
+ GTK_ENTRY(ui_lookup_widget(ui_widgets.prefs_dialog, "entry_com_term")));
+ ui_setup_open_button_callback(ui_lookup_widget(ui_widgets.prefs_dialog, "button_browser"),
+ _("Open File"),
+ GTK_FILE_CHOOSER_ACTION_OPEN,
+ GTK_ENTRY(ui_lookup_widget(ui_widgets.prefs_dialog, "entry_browser")));
+ ui_setup_open_button_callback(ui_lookup_widget(ui_widgets.prefs_dialog, "button_grep"),
+ _("Open File"),
+ GTK_FILE_CHOOSER_ACTION_OPEN,
+ GTK_ENTRY(ui_lookup_widget(ui_widgets.prefs_dialog, "entry_grep")));
/* tools commands */
- g_signal_connect(ui_lookup_widget(ui_widgets.prefs_dialog, "button_contextaction"),
- "clicked", G_CALLBACK(on_prefs_tools_button_clicked), ui_lookup_widget(ui_widgets.prefs_dialog, "entry_contextaction"));
+ ui_setup_open_button_callback(ui_lookup_widget(ui_widgets.prefs_dialog, "button_contextaction"),
+ _("Open File"),
+ GTK_FILE_CHOOSER_ACTION_OPEN,
+ GTK_ENTRY(ui_lookup_widget(ui_widgets.prefs_dialog, "entry_contextaction")));
/* printing */
- g_signal_connect(ui_lookup_widget(ui_widgets.prefs_dialog, "button_print_external_cmd"),
- "clicked", G_CALLBACK(on_prefs_tools_button_clicked), ui_lookup_widget(ui_widgets.prefs_dialog, "entry_print_external_cmd"));
+ ui_setup_open_button_callback(ui_lookup_widget(ui_widgets.prefs_dialog, "button_print_external_cmd"),
+ _("Open File"),
+ GTK_FILE_CHOOSER_ACTION_OPEN,
+ GTK_ENTRY(ui_lookup_widget(ui_widgets.prefs_dialog, "entry_print_external_cmd")));
+
g_signal_connect(ui_lookup_widget(ui_widgets.prefs_dialog, "radio_print_gtk"),
"toggled", G_CALLBACK(on_prefs_print_radio_button_toggled), NULL);
g_signal_connect(ui_lookup_widget(ui_widgets.prefs_dialog, "check_print_pageheader"),
@@ -1645,58 +1620,3 @@
gtk_window_present(GTK_WINDOW(ui_widgets.prefs_dialog));
}
-
-void
-on_prefs_tools_button_clicked (GtkButton *button,
- gpointer item)
-{
-#ifdef G_OS_WIN32
- win32_show_pref_file_dialog(item);
-#else
- GtkWidget *dialog;
- gchar *filename, *tmp, **field;
-
- /* initialize the dialog */
- dialog = gtk_file_chooser_dialog_new(_("Open File"), GTK_WINDOW(ui_widgets.prefs_dialog),
- GTK_FILE_CHOOSER_ACTION_OPEN,
- GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL);
- /* cut the options from the command line */
- field = g_strsplit(gtk_entry_get_text(GTK_ENTRY(item)), " ", 2);
- if (field[0])
- {
- filename = g_find_program_in_path(field[0]);
- if (filename)
- {
- gtk_file_chooser_select_filename(GTK_FILE_CHOOSER(dialog), filename);
- g_free(filename);
- }
- }
-
- /* run it */
- if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT)
- {
- gchar *utf8_filename;
-
- tmp = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
- utf8_filename = utils_get_utf8_from_locale(tmp);
-
- if (g_strv_length(field) > 1)
- filename = g_strconcat(utf8_filename, " ", field[1], NULL);
- else
- {
- filename = utf8_filename;
- utf8_filename = NULL;
- }
- gtk_entry_set_text(GTK_ENTRY(item), filename);
- g_free(filename);
- g_free(tmp);
- g_free(utf8_filename);
- }
-
- g_strfreev(field);
- gtk_widget_destroy(dialog);
-#endif
-}
-
-
Modified: trunk/src/prefs.h
===================================================================
--- trunk/src/prefs.h 2009-11-17 21:47:06 UTC (rev 4428)
+++ trunk/src/prefs.h 2009-11-17 21:49:43 UTC (rev 4429)
@@ -62,10 +62,4 @@
void prefs_show_dialog(void);
-void on_prefs_font_choosed(GtkFontButton *widget, gpointer user_data);
-
-void on_prefs_color_choosed(GtkColorButton *widget, gpointer user_data);
-
-void on_prefs_tools_button_clicked(GtkButton *button, gpointer user_data);
-
#endif
Modified: trunk/src/vte.c
===================================================================
--- trunk/src/vte.c 2009-11-17 21:47:06 UTC (rev 4428)
+++ trunk/src/vte.c 2009-11-17 21:49:43 UTC (rev 4429)
@@ -705,6 +705,40 @@
}
+static void font_button_clicked_cb(GtkFontButton *widget, gpointer user_data)
+{
+ const gchar *fontbtn = gtk_font_button_get_font_name(widget);
+
+ if (! utils_str_equal(fontbtn, vc->font))
+ {
+ setptr(vc->font, g_strdup(gtk_font_button_get_font_name(widget)));
+ vte_apply_user_settings();
+ }
+}
+
+
+static void on_color_button_choose_cb(GtkColorButton *widget, gpointer user_data)
+{
+ switch (GPOINTER_TO_INT(user_data))
+ {
+ case 1:
+ {
+ g_free(vc->colour_fore);
+ vc->colour_fore = g_new0(GdkColor, 1);
+ gtk_color_button_get_color(widget, vc->colour_fore);
+ break;
+ }
+ case 2:
+ {
+ g_free(vc->colour_back);
+ vc->colour_back = g_new0(GdkColor, 1);
+ gtk_color_button_get_color(widget, vc->colour_back);
+ break;
+ }
+ }
+}
+
+
void vte_append_preferences_tab(void)
{
if (vte_info.have_vte)
@@ -881,14 +915,13 @@
gtk_widget_show_all(frame);
- g_signal_connect(font_term, "font-set", G_CALLBACK(on_prefs_font_choosed),
- GINT_TO_POINTER(4));
- g_signal_connect(color_fore, "color-set", G_CALLBACK(on_prefs_color_choosed),
+ g_signal_connect(font_term, "font-set", G_CALLBACK(font_button_clicked_cb), NULL);
+ g_signal_connect(color_fore, "color-set", G_CALLBACK(on_color_button_choose_cb),
+ GINT_TO_POINTER(1));
+ g_signal_connect(color_back, "color-set", G_CALLBACK(on_color_button_choose_cb),
GINT_TO_POINTER(2));
- g_signal_connect(color_back, "color-set", G_CALLBACK(on_prefs_color_choosed),
- GINT_TO_POINTER(3));
- g_signal_connect(button_shell, "clicked",
- G_CALLBACK(on_prefs_tools_button_clicked), entry_shell);
+ ui_setup_open_button_callback(button_shell, _("Open File"),
+ GTK_FILE_CHOOSER_ACTION_OPEN, GTK_ENTRY(entry_shell));
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Commits
mailing list