SF.net SVN: geany-plugins:[2036] trunk/geany-plugins/addons/src
eht16 at users.sourceforge.net
eht16 at xxxxx
Sun Apr 17 13:54:59 UTC 2011
Revision: 2036
http://geany-plugins.svn.sourceforge.net/geany-plugins/?rev=2036&view=rev
Author: eht16
Date: 2011-04-17 13:54:58 +0000 (Sun, 17 Apr 2011)
Log Message:
-----------
Add new document list sort option to sort the menu items by occurrence in reverse order
Modified Paths:
--------------
trunk/geany-plugins/addons/src/addons.c
trunk/geany-plugins/addons/src/ao_doclist.c
trunk/geany-plugins/addons/src/ao_doclist.h
Modified: trunk/geany-plugins/addons/src/addons.c
===================================================================
--- trunk/geany-plugins/addons/src/addons.c 2011-04-17 13:05:27 UTC (rev 2035)
+++ trunk/geany-plugins/addons/src/addons.c 2011-04-17 13:54:58 UTC (rev 2036)
@@ -41,7 +41,7 @@
GeanyFunctions *geany_functions;
-PLUGIN_VERSION_CHECK(208)
+PLUGIN_VERSION_CHECK(209)
PLUGIN_SET_TRANSLATABLE_INFO(
LOCALEDIR,
GETTEXT_PACKAGE,
@@ -248,7 +248,7 @@
ao_info->enable_doclist = utils_get_setting_boolean(config,
"addons", "show_toolbar_doclist_item", TRUE);
ao_info->doclist_sort_mode = utils_get_setting_integer(config,
- "addons", "doclist_sort_mode", DOCLIST_SORT_BY_OCCURRENCE);
+ "addons", "doclist_sort_mode", DOCLIST_SORT_BY_TAB_ORDER);
ao_info->enable_openuri = utils_get_setting_boolean(config,
"addons", "enable_openuri", FALSE);
ao_info->enable_tasks = utils_get_setting_boolean(config,
@@ -306,8 +306,12 @@
{
gboolean sens = gtk_toggle_button_get_active(togglebutton);
- gtk_widget_set_sensitive(g_object_get_data(G_OBJECT(data), "radio_doclist_name"), sens);
- gtk_widget_set_sensitive(g_object_get_data(G_OBJECT(data), "radio_doclist_occurrence"), sens);
+ gtk_widget_set_sensitive(g_object_get_data(G_OBJECT(data),
+ "radio_doclist_name"), sens);
+ gtk_widget_set_sensitive(g_object_get_data(G_OBJECT(data),
+ "radio_doclist_tab_order"), sens);
+ gtk_widget_set_sensitive(g_object_get_data(G_OBJECT(data),
+ "radio_doclist_tab_order_reversed"), sens);
}
@@ -321,11 +325,14 @@
ao_info->enable_doclist = (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(
g_object_get_data(G_OBJECT(dialog), "check_doclist"))));
- if (gtk_toggle_button_get_active(
- GTK_TOGGLE_BUTTON(g_object_get_data(G_OBJECT(dialog), "radio_doclist_name"))))
+ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(g_object_get_data(
+ G_OBJECT(dialog), "radio_doclist_name"))))
ao_info->doclist_sort_mode = DOCLIST_SORT_BY_NAME;
+ else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(g_object_get_data(
+ G_OBJECT(dialog), "radio_doclist_tab_order_reversed"))))
+ ao_info->doclist_sort_mode = DOCLIST_SORT_BY_TAB_ORDER_REVERSE;
else
- ao_info->doclist_sort_mode = DOCLIST_SORT_BY_OCCURRENCE;
+ ao_info->doclist_sort_mode = DOCLIST_SORT_BY_TAB_ORDER;
ao_info->enable_openuri = (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(
g_object_get_data(G_OBJECT(dialog), "check_openuri"))));
@@ -401,7 +408,7 @@
{
GtkWidget *vbox, *check_openuri, *check_tasks, *check_systray;
GtkWidget *check_doclist, *vbox_doclist, *frame_doclist;
- GtkWidget *radio_doclist_name, *radio_doclist_occurrence;
+ GtkWidget *radio_doclist_name, *radio_doclist_tab_order, *radio_doclist_tab_order_reversed;
GtkWidget *check_bookmarklist, *check_markword, *frame_tasks, *vbox_tasks;
GtkWidget *check_tasks_scan_mode, *entry_tasks_tokens, *label_tasks_tokens, *tokens_hbox;
GtkWidget *check_blanklines, *check_xmltagging;
@@ -417,19 +424,34 @@
ui_widget_set_tooltip_text(radio_doclist_name,
_("Sort the documents in the list by their filename"));
- radio_doclist_occurrence = gtk_radio_button_new_with_mnemonic_from_widget(
+ radio_doclist_tab_order = gtk_radio_button_new_with_mnemonic_from_widget(
GTK_RADIO_BUTTON(radio_doclist_name), _("Sort documents by _occurrence"));
- ui_widget_set_tooltip_text(radio_doclist_name,
+ ui_widget_set_tooltip_text(radio_doclist_tab_order,
_("Sort the documents in the order of the document tabs"));
- if (ao_info->doclist_sort_mode == DOCLIST_SORT_BY_NAME)
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_doclist_name), TRUE);
- else
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_doclist_occurrence), TRUE);
+ radio_doclist_tab_order_reversed = gtk_radio_button_new_with_mnemonic_from_widget(
+ GTK_RADIO_BUTTON(radio_doclist_name), _("Sort documents by _occurrence (reversed)"));
+ ui_widget_set_tooltip_text(radio_doclist_tab_order_reversed,
+ _("Sort the documents in the order of the document tabs (reversed)"));
+ switch (ao_info->doclist_sort_mode)
+ {
+ case DOCLIST_SORT_BY_NAME:
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_doclist_name), TRUE);
+ break;
+ case DOCLIST_SORT_BY_TAB_ORDER_REVERSE:
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_doclist_tab_order_reversed), TRUE);
+ break;
+ case DOCLIST_SORT_BY_TAB_ORDER:
+ default:
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_doclist_tab_order), TRUE);
+ break;
+ }
+
vbox_doclist = gtk_vbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(vbox_doclist), radio_doclist_name, FALSE, FALSE, 3);
- gtk_box_pack_start(GTK_BOX(vbox_doclist), radio_doclist_occurrence, TRUE, TRUE, 3);
+ gtk_box_pack_start(GTK_BOX(vbox_doclist), radio_doclist_tab_order, TRUE, TRUE, 3);
+ gtk_box_pack_start(GTK_BOX(vbox_doclist), radio_doclist_tab_order_reversed, TRUE, TRUE, 3);
frame_doclist = gtk_frame_new(NULL);
gtk_frame_set_label_widget(GTK_FRAME(frame_doclist), check_doclist);
@@ -511,7 +533,9 @@
g_object_set_data(G_OBJECT(dialog), "check_doclist", check_doclist);
g_object_set_data(G_OBJECT(dialog), "radio_doclist_name", radio_doclist_name);
- g_object_set_data(G_OBJECT(dialog), "radio_doclist_occurrence", radio_doclist_occurrence);
+ g_object_set_data(G_OBJECT(dialog), "radio_doclist_tab_order", radio_doclist_tab_order);
+ g_object_set_data(G_OBJECT(dialog), "radio_doclist_tab_order_reversed",
+ radio_doclist_tab_order_reversed);
g_object_set_data(G_OBJECT(dialog), "check_openuri", check_openuri);
g_object_set_data(G_OBJECT(dialog), "check_tasks", check_tasks);
g_object_set_data(G_OBJECT(dialog), "entry_tasks_tokens", entry_tasks_tokens);
Modified: trunk/geany-plugins/addons/src/ao_doclist.c
===================================================================
--- trunk/geany-plugins/addons/src/ao_doclist.c 2011-04-17 13:05:27 UTC (rev 2035)
+++ trunk/geany-plugins/addons/src/ao_doclist.c 2011-04-17 13:54:58 UTC (rev 2036)
@@ -98,7 +98,7 @@
"How to sort the documents in the list",
0,
G_MAXINT,
- DOCLIST_SORT_BY_OCCURRENCE,
+ DOCLIST_SORT_BY_TAB_ORDER,
G_PARAM_WRITABLE));
}
@@ -184,10 +184,19 @@
menu = gtk_menu_new();
- if (priv->sort_mode == DOCLIST_SORT_BY_NAME)
- compare_func = document_compare_by_display_name;
- else
- compare_func = NULL;
+ switch (priv->sort_mode)
+ {
+ case DOCLIST_SORT_BY_NAME:
+ compare_func = document_compare_by_display_name;
+ break;
+ case DOCLIST_SORT_BY_TAB_ORDER_REVERSE:
+ compare_func = document_compare_by_tab_order_reverse;
+ break;
+ case DOCLIST_SORT_BY_TAB_ORDER:
+ default:
+ compare_func = document_compare_by_tab_order;
+ break;
+ }
ui_menu_add_document_items_sorted(GTK_MENU(menu), current_doc,
G_CALLBACK(ao_doclist_menu_item_activate_cb), compare_func);
Modified: trunk/geany-plugins/addons/src/ao_doclist.h
===================================================================
--- trunk/geany-plugins/addons/src/ao_doclist.h 2011-04-17 13:05:27 UTC (rev 2035)
+++ trunk/geany-plugins/addons/src/ao_doclist.h 2011-04-17 13:54:58 UTC (rev 2036)
@@ -43,7 +43,8 @@
typedef enum
{
DOCLIST_SORT_BY_NAME = 1,
- DOCLIST_SORT_BY_OCCURRENCE = 2
+ DOCLIST_SORT_BY_TAB_ORDER = 2,
+ DOCLIST_SORT_BY_TAB_ORDER_REVERSE = 3
} DocListSortMode;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Plugins-Commits
mailing list