SF.net SVN: geany: [1622] trunk

eht16 at users.sourceforge.net eht16 at xxxxx
Fri Jun 15 15:37:59 UTC 2007


Revision: 1622
          http://svn.sourceforge.net/geany/?rev=1622&view=rev
Author:   eht16
Date:     2007-06-15 08:37:59 -0700 (Fri, 15 Jun 2007)

Log Message:
-----------
Fix bug when reopening the Insert special characters dialog after it was closed by a delete event.
Fix creation of class files with an empty name and some code reformatting.

Modified Paths:
--------------
    trunk/ChangeLog
    trunk/src/tools.c

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2007-06-15 13:33:01 UTC (rev 1621)
+++ trunk/ChangeLog	2007-06-15 15:37:59 UTC (rev 1622)
@@ -1,6 +1,11 @@
 2007-06-15  Enrico Tröger  <enrico.troeger at uvena.de>
 
- * geany.glade, src/interface.c, src/tools.c: Fixed spelling of GTK.
+ * geany.glade, src/interface.c, src/tools.c: Fix spelling of GTK.
+ * src/tools.c:
+   Fix bug when reopening the Insert special characters dialog after it
+   was closed by a delete event.
+   Fix creation of class files with an empty name and some code
+   reformatting.
 
 
 2007-06-14  Frank Lanitz  <frank at frank.uvena.de>

Modified: trunk/src/tools.c
===================================================================
--- trunk/src/tools.c	2007-06-15 13:33:01 UTC (rev 1621)
+++ trunk/src/tools.c	2007-06-15 15:37:59 UTC (rev 1622)
@@ -70,8 +70,7 @@
 	GtkWidget *create_constructor_box;
 	GtkWidget *create_destructor_box;
 	GtkWidget *gtk_constructor_type_entry;
-}
-CreateClassDialog;
+} CreateClassDialog;
 
 static GtkWidget *sc_dialog = NULL;
 static GtkTreeStore *sc_store = NULL;
@@ -89,6 +88,7 @@
 static void on_base_name_entry_changed(GtkWidget *entry, CreateClassDialog *cc_dlg);
 static void on_create_class(CreateClassDialog *cc_dlg);
 
+
 void tools_show_dialog_insert_special_chars()
 {
 	if (sc_dialog == NULL)
@@ -147,6 +147,9 @@
 		g_signal_connect((gpointer) sc_dialog, "response",
 					G_CALLBACK(sc_on_tools_show_dialog_insert_special_chars_response), NULL);
 
+		g_signal_connect((gpointer) sc_dialog, "delete_event",
+					G_CALLBACK(gtk_widget_hide_on_delete), NULL);
+
 		sc_fill_store(sc_store);
 
 		//gtk_tree_view_expand_all(special_characters_tree);
@@ -933,7 +936,7 @@
 	GtkWidget *cancel_button;
 	GtkWidget *ok_button;
 
-	cc_dlg = g_malloc(sizeof(CreateClassDialog));
+	cc_dlg = g_new0(CreateClassDialog, 1);
 	cc_dlg->class_type = type;
 
 	cc_dlg->dialog = gtk_dialog_new();
@@ -1109,6 +1112,7 @@
 	gtk_widget_show(cc_dlg->dialog);
 }
 
+
 static void on_set_sensitive_toggled(GtkWidget *toggle_button, GtkWidget *target_widget)
 {
 	g_return_if_fail(toggle_button != NULL);
@@ -1120,6 +1124,7 @@
 			gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(toggle_button)));
 }
 
+
 static void on_class_name_entry_changed(GtkWidget *entry, CreateClassDialog *cc_dlg)
 {
 	gchar *class_name_down;
@@ -1145,7 +1150,8 @@
 	g_free(class_source);
 }
 
-static gchar* str_case_split(const gchar *str, char splitter)
+
+static gchar* str_case_split(const gchar *str, gchar splitter)
 {
 	GString *result;
 
@@ -1164,6 +1170,7 @@
 	return g_string_free(result, FALSE);
 }
 
+
 static void on_base_name_entry_changed(GtkWidget *entry, CreateClassDialog *cc_dlg)
 {
 	gchar *base_name_splitted;
@@ -1201,6 +1208,7 @@
 	g_free(base_gtype);
 }
 
+
 static void on_create_class(CreateClassDialog *cc_dlg)
 {
 	ClassInfo *class_info;
@@ -1209,7 +1217,10 @@
 
 	g_return_if_fail(cc_dlg != NULL);
 
-	class_info = g_malloc0(sizeof(ClassInfo));
+	if (utils_str_equal(gtk_entry_get_text(GTK_ENTRY(cc_dlg->class_name_entry)), ""))
+		return;
+
+	class_info = g_new0(ClassInfo, 1);
 	class_info->type = cc_dlg->class_type;
 	class_info->class_name = g_strdup(gtk_entry_get_text(GTK_ENTRY(cc_dlg->class_name_entry)));
 	class_info->class_name_up = str_case_split(class_info->class_name, '_');
@@ -1319,5 +1330,3 @@
 	gtk_object_destroy(GTK_OBJECT(cc_dlg->dialog));
 }
 
-
-


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