Fixed wrong sensitiveness of custom commands menu items.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1341 ea778897-0a13-0410-b9d1-a72fbfd435f5
This commit is contained in:
parent
fd5288c2e8
commit
1e3a92d617
@ -1,3 +1,8 @@
|
|||||||
|
2007-02-26 Enrico Tröger <enrico.troeger@uvena.de>
|
||||||
|
|
||||||
|
* src/tools.c: Fixed wrong sensitiveness of custom commands menu items.
|
||||||
|
|
||||||
|
|
||||||
2007-02-25 Enrico Tröger <enrico.troeger@uvena.de>
|
2007-02-25 Enrico Tröger <enrico.troeger@uvena.de>
|
||||||
|
|
||||||
* geany.glade, doc/geany.docbook, src/geany.h, src/interface.c,
|
* geany.glade, doc/geany.docbook, src/geany.h, src/interface.c,
|
||||||
|
28
src/tools.c
28
src/tools.c
@ -681,7 +681,7 @@ static void cc_show_dialog_custom_commands()
|
|||||||
GSList *result_list = NULL;
|
GSList *result_list = NULL;
|
||||||
gint i = 0;
|
gint i = 0;
|
||||||
gint len = 0;
|
gint len = 0;
|
||||||
gchar **result;
|
gchar **result = NULL;
|
||||||
const gchar *text;
|
const gchar *text;
|
||||||
|
|
||||||
while (children != NULL)
|
while (children != NULL)
|
||||||
@ -702,21 +702,27 @@ static void cc_show_dialog_custom_commands()
|
|||||||
}
|
}
|
||||||
children = children->next;
|
children = children->next;
|
||||||
}
|
}
|
||||||
// create a new null-terminated array
|
// create a new null-terminated array but only if there any commands defined
|
||||||
result = g_new(gchar*, len + 1);
|
if (len > 0)
|
||||||
while (result_list != NULL)
|
|
||||||
{
|
{
|
||||||
result[i] = (gchar*) result_list->data;
|
result = g_new(gchar*, len + 1);
|
||||||
|
while (result_list != NULL)
|
||||||
|
{
|
||||||
|
result[i] = (gchar*) result_list->data;
|
||||||
|
|
||||||
result_list = result_list->next;
|
result_list = result_list->next;
|
||||||
i++;
|
i++;
|
||||||
|
}
|
||||||
|
result[len] = NULL; // null-terminate the array
|
||||||
}
|
}
|
||||||
g_slist_free(result_list);
|
// set the new array
|
||||||
g_list_free(children);
|
|
||||||
result[len] = NULL; // null-terminate the array
|
|
||||||
g_strfreev(app->custom_commands);
|
g_strfreev(app->custom_commands);
|
||||||
app->custom_commands = result;
|
app->custom_commands = result;
|
||||||
|
// rebuild the menu items
|
||||||
tools_create_insert_custom_command_menu_items();
|
tools_create_insert_custom_command_menu_items();
|
||||||
|
|
||||||
|
g_slist_free(result_list);
|
||||||
|
g_list_free(children);
|
||||||
}
|
}
|
||||||
gtk_widget_destroy(dialog);
|
gtk_widget_destroy(dialog);
|
||||||
}
|
}
|
||||||
@ -732,7 +738,7 @@ static void cc_on_custom_command_menu_activate(GtkMenuItem *menuitem, gpointer u
|
|||||||
|
|
||||||
if (! DOC_IDX_VALID(idx)) return;
|
if (! DOC_IDX_VALID(idx)) return;
|
||||||
|
|
||||||
enable = sci_can_copy(doc_list[idx].sci);
|
enable = sci_can_copy(doc_list[idx].sci) && (app->custom_commands != NULL);
|
||||||
|
|
||||||
children = gtk_container_get_children(GTK_CONTAINER(user_data));
|
children = gtk_container_get_children(GTK_CONTAINER(user_data));
|
||||||
len = g_list_length(children);
|
len = g_list_length(children);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user