Revision: 1876 http://geany.svn.sourceforge.net/geany/?rev=1876&view=rev Author: ntrel Date: 2007-09-12 09:01:23 -0700 (Wed, 12 Sep 2007)
Log Message: ----------- Make Toggle Case use the current word if there's no selection. Make Toggle Case keep an existing selection. Rename ui_widgets.popup_items to popup_copy_items.
Modified Paths: -------------- trunk/ChangeLog trunk/src/callbacks.c trunk/src/main.c trunk/src/ui_utils.c trunk/src/ui_utils.h
Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2007-09-12 12:08:07 UTC (rev 1875) +++ trunk/ChangeLog 2007-09-12 16:01:23 UTC (rev 1876) @@ -11,6 +11,10 @@ doc/geany.html: Allow autocompletion on a line with trailing whitespace. Add auto_complete_whilst_editing hidden preference. + * src/ui_utils.h, src/callbacks.c, src/main.c, src/ui_utils.c: + Make Toggle Case use the current word if there's no selection. + Make Toggle Case keep an existing selection. + Rename ui_widgets.popup_items to popup_copy_items.
2007-09-11 Enrico Tröger enrico.troeger@uvena.de
Modified: trunk/src/callbacks.c =================================================================== --- trunk/src/callbacks.c 2007-09-12 12:08:07 UTC (rev 1875) +++ trunk/src/callbacks.c 2007-09-12 16:01:23 UTC (rev 1876) @@ -888,32 +888,42 @@ }
-void -on_toggle_case1_activate (GtkMenuItem *menuitem, - gpointer user_data) +void on_toggle_case1_activate(GtkMenuItem *menuitem, gpointer user_data) { gint idx = document_get_cur_idx(); + ScintillaObject *sci = doc_list[idx].sci; gchar *text; + gboolean keep_sel = TRUE;
if (! DOC_IDX_VALID(idx)) return;
- if (sci_can_copy(doc_list[idx].sci)) + if (! sci_can_copy(sci)) { + keybindings_cmd(GEANY_KEYS_EDIT_SELECTWORD); + keep_sel = FALSE; + } + + if (sci_can_copy(sci)) + { gchar *result; + gint text_len = sci_get_selected_text_length(sci);
- text = g_malloc(sci_get_selected_text_length(doc_list[idx].sci) + 1); - sci_get_selected_text(doc_list[idx].sci, text); + text = g_malloc(text_len + 1); + sci_get_selected_text(sci, text);
if (utils_str_has_upper(text)) result = g_utf8_strdown(text, -1); else result = g_utf8_strup(text, -1);
- sci_replace_sel(doc_list[idx].sci, result); + sci_replace_sel(sci, result);
g_free(result); g_free(text); + + if (keep_sel) + sci_set_selection_start(sci, sci_get_current_position(sci) - text_len + 1); } }
Modified: trunk/src/main.c =================================================================== --- trunk/src/main.c 2007-09-12 12:08:07 UTC (rev 1875) +++ trunk/src/main.c 2007-09-12 16:01:23 UTC (rev 1876) @@ -297,14 +297,12 @@ ui_widgets.popup_goto_items[0] = lookup_widget(app->popup_menu, "goto_tag_definition1"); ui_widgets.popup_goto_items[1] = lookup_widget(app->popup_menu, "goto_tag_declaration1"); ui_widgets.popup_goto_items[2] = lookup_widget(app->popup_menu, "find_usage1"); - ui_widgets.popup_items[0] = lookup_widget(app->popup_menu, "cut1"); - ui_widgets.popup_items[1] = lookup_widget(app->popup_menu, "copy1"); - ui_widgets.popup_items[2] = lookup_widget(app->popup_menu, "delete1"); - ui_widgets.popup_items[3] = lookup_widget(app->popup_menu, "toggle_case1"); + ui_widgets.popup_copy_items[0] = lookup_widget(app->popup_menu, "cut1"); + ui_widgets.popup_copy_items[1] = lookup_widget(app->popup_menu, "copy1"); + ui_widgets.popup_copy_items[2] = lookup_widget(app->popup_menu, "delete1"); ui_widgets.menu_copy_items[0] = lookup_widget(app->window, "menu_cut1"); ui_widgets.menu_copy_items[1] = lookup_widget(app->window, "menu_copy1"); ui_widgets.menu_copy_items[2] = lookup_widget(app->window, "menu_delete1"); - ui_widgets.menu_copy_items[3] = lookup_widget(app->window, "menu_toggle_case2"); ui_widgets.menu_insert_include_items[0] = lookup_widget(app->popup_menu, "insert_include1"); ui_widgets.menu_insert_include_items[1] = lookup_widget(app->window, "insert_include2"); ui_widgets.save_buttons[0] = lookup_widget(app->window, "menu_save1");
Modified: trunk/src/ui_utils.c =================================================================== --- trunk/src/ui_utils.c 2007-09-12 12:08:07 UTC (rev 1875) +++ trunk/src/ui_utils.c 2007-09-12 16:01:23 UTC (rev 1876) @@ -290,8 +290,8 @@ if (idx == -1) enable = FALSE; else enable = sci_can_copy(doc_list[idx].sci);
- for(i = 0; i < (sizeof(ui_widgets.popup_items)/sizeof(GtkWidget*)); i++) - gtk_widget_set_sensitive(ui_widgets.popup_items[i], enable); + for(i = 0; i < (sizeof(ui_widgets.popup_copy_items)/sizeof(GtkWidget*)); i++) + gtk_widget_set_sensitive(ui_widgets.popup_copy_items[i], enable); }
Modified: trunk/src/ui_utils.h =================================================================== --- trunk/src/ui_utils.h 2007-09-12 12:08:07 UTC (rev 1875) +++ trunk/src/ui_utils.h 2007-09-12 16:01:23 UTC (rev 1876) @@ -54,8 +54,8 @@ GtkWidget *recent_files_toolbar; GtkWidget *menu_insert_include_items[2]; GtkWidget *popup_goto_items[3]; - GtkWidget *popup_items[4]; - GtkWidget *menu_copy_items[4]; + GtkWidget *popup_copy_items[3]; + GtkWidget *menu_copy_items[3]; GtkWidget *redo_items[3]; GtkWidget *undo_items[3]; GtkWidget *save_buttons[4];
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.