SF.net SVN: geany:[3243] trunk
ntrel at users.sourceforge.net
ntrel at xxxxx
Tue Nov 18 13:29:53 UTC 2008
Revision: 3243
http://geany.svn.sourceforge.net/geany/?rev=3243&view=rev
Author: ntrel
Date: 2008-11-18 13:29:53 +0000 (Tue, 18 Nov 2008)
Log Message:
-----------
Move symbol list popup menu code to symbols.c.
Add symbols_init().
Modified Paths:
--------------
trunk/ChangeLog
trunk/src/main.c
trunk/src/symbols.c
trunk/src/symbols.h
trunk/src/treeviews.c
trunk/src/treeviews.h
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2008-11-18 12:58:53 UTC (rev 3242)
+++ trunk/ChangeLog 2008-11-18 13:29:53 UTC (rev 3243)
@@ -2,6 +2,10 @@
* src/treeviews.c:
Refactor with sidebar_add_common_menu_items().
+ * src/treeviews.c, src/treeviews.h, src/main.c, src/symbols.c,
+ src/symbols.h:
+ Move symbol list popup menu code to symbols.c.
+ Add symbols_init().
2008-11-16 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
Modified: trunk/src/main.c
===================================================================
--- trunk/src/main.c 2008-11-18 12:58:53 UTC (rev 3242)
+++ trunk/src/main.c 2008-11-18 13:29:53 UTC (rev 3243)
@@ -944,6 +944,7 @@
navqueue_init();
document_init_doclist();
treeviews_init();
+ symbols_init();
configuration_read_filetype_extensions();
editor_snippets_init();
Modified: trunk/src/symbols.c
===================================================================
--- trunk/src/symbols.c 2008-11-18 12:58:53 UTC (rev 3242)
+++ trunk/src/symbols.c 2008-11-18 13:29:53 UTC (rev 3243)
@@ -365,13 +365,6 @@
}
-void symbols_finalize(void)
-{
- g_strfreev(html_entities);
- g_strfreev(c_tags_ignore);
-}
-
-
/* sort by name, then line */
static gint compare_symbol(const TMTag *tag_a, const TMTag *tag_b)
{
@@ -1669,3 +1662,48 @@
}
+static void on_taglist_tree_popup_clicked(GtkMenuItem *menuitem, gpointer user_data)
+{
+ gint sort_mode = GPOINTER_TO_INT(user_data);
+ GeanyDocument *doc = document_get_current();
+
+ if (doc != NULL)
+ doc->has_tags = symbols_recreate_tag_list(doc, sort_mode);
+}
+
+
+static void create_taglist_popup_menu(void)
+{
+ GtkWidget *item;
+
+ tv.popup_taglist = gtk_menu_new();
+
+ item = gtk_menu_item_new_with_mnemonic(_("Sort by _Name"));
+ gtk_widget_show(item);
+ gtk_container_add(GTK_CONTAINER(tv.popup_taglist), item);
+ g_signal_connect(item, "activate", G_CALLBACK(on_taglist_tree_popup_clicked),
+ GINT_TO_POINTER(SYMBOLS_SORT_BY_NAME));
+
+ item = gtk_menu_item_new_with_mnemonic(_("Sort by _Appearance"));
+ gtk_widget_show(item);
+ gtk_container_add(GTK_CONTAINER(tv.popup_taglist), item);
+ g_signal_connect(item, "activate", G_CALLBACK(on_taglist_tree_popup_clicked),
+ GINT_TO_POINTER(SYMBOLS_SORT_BY_APPEARANCE));
+
+ sidebar_add_common_menu_items(GTK_MENU(tv.popup_taglist));
+}
+
+
+void symbols_init(void)
+{
+ create_taglist_popup_menu();
+}
+
+
+void symbols_finalize(void)
+{
+ g_strfreev(html_entities);
+ g_strfreev(c_tags_ignore);
+}
+
+
Modified: trunk/src/symbols.h
===================================================================
--- trunk/src/symbols.h 2008-11-18 12:58:53 UTC (rev 3242)
+++ trunk/src/symbols.h 2008-11-18 13:29:53 UTC (rev 3243)
@@ -35,6 +35,10 @@
};
+void symbols_init(void);
+
+void symbols_finalize(void);
+
void symbols_global_tags_loaded(gint file_type_idx);
GString *symbols_find_tags_as_string(GPtrArray *tags_array, guint tag_types, gint lang);
@@ -47,8 +51,6 @@
const gchar **symbols_get_html_entities(void);
-void symbols_finalize(void);
-
gboolean symbols_recreate_tag_list(GeanyDocument *doc, gint sort_mode);
gint symbols_generate_global_tags(gint argc, gchar **argv, gboolean want_preprocess);
Modified: trunk/src/treeviews.c
===================================================================
--- trunk/src/treeviews.c 2008-11-18 12:58:53 UTC (rev 3242)
+++ trunk/src/treeviews.c 2008-11-18 13:29:53 UTC (rev 3243)
@@ -54,12 +54,7 @@
{
OPENFILES_ACTION_REMOVE = 0,
OPENFILES_ACTION_SAVE,
- OPENFILES_ACTION_RELOAD,
- OPENFILES_ACTION_HIDE,
- OPENFILES_ACTION_HIDE_ALL,
- SYMBOL_ACTION_SORT_BY_NAME,
- SYMBOL_ACTION_SORT_BY_APPEARANCE,
- SYMBOL_ACTION_HIDE
+ OPENFILES_ACTION_RELOAD
};
typedef struct
@@ -73,7 +68,6 @@
static GtkWidget *tag_window; /* scrolled window that holds the symbol list GtkTreeView */
/* callback prototypes */
-static void on_taglist_tree_popup_clicked(GtkMenuItem *menuitem, gpointer user_data);
static void on_openfiles_tree_selection_changed(GtkTreeSelection *selection, gpointer data);
static void on_openfiles_document_action(GtkMenuItem *menuitem, gpointer user_data);
static gboolean on_taglist_tree_selection_changed(GtkTreeSelection *selection);
@@ -382,7 +376,7 @@
}
-static void sidebar_add_common_menu_items(GtkMenu *menu)
+void sidebar_add_common_menu_items(GtkMenu *menu)
{
GtkWidget *item;
@@ -415,28 +409,6 @@
}
-static void create_taglist_popup_menu(void)
-{
- GtkWidget *item;
-
- tv.popup_taglist = gtk_menu_new();
-
- item = gtk_menu_item_new_with_mnemonic(_("Sort by _Name"));
- gtk_widget_show(item);
- gtk_container_add(GTK_CONTAINER(tv.popup_taglist), item);
- g_signal_connect(item, "activate", G_CALLBACK(on_taglist_tree_popup_clicked),
- GINT_TO_POINTER(SYMBOL_ACTION_SORT_BY_NAME));
-
- item = gtk_menu_item_new_with_mnemonic(_("Sort by _Appearance"));
- gtk_widget_show(item);
- gtk_container_add(GTK_CONTAINER(tv.popup_taglist), item);
- g_signal_connect(item, "activate", G_CALLBACK(on_taglist_tree_popup_clicked),
- GINT_TO_POINTER(SYMBOL_ACTION_SORT_BY_APPEARANCE));
-
- sidebar_add_common_menu_items(GTK_MENU(tv.popup_taglist));
-}
-
-
static void on_openfiles_fullpath_activate(GtkCheckMenuItem *item, gpointer user_data)
{
interface_prefs.sidebar_openfiles_fullpath = gtk_check_menu_item_get_active(item);
@@ -599,34 +571,6 @@
}
-static void on_taglist_tree_popup_clicked(GtkMenuItem *menuitem, gpointer user_data)
-{
- switch (GPOINTER_TO_INT(user_data))
- {
- case SYMBOL_ACTION_SORT_BY_NAME:
- {
- GeanyDocument *doc = document_get_current();
- if (doc != NULL)
- doc->has_tags = symbols_recreate_tag_list(doc, SYMBOLS_SORT_BY_NAME);
- break;
- }
- case SYMBOL_ACTION_SORT_BY_APPEARANCE:
- {
- GeanyDocument *doc = document_get_current();
- if (doc != NULL)
- doc->has_tags = symbols_recreate_tag_list(doc, SYMBOLS_SORT_BY_APPEARANCE);
- break;
- }
- case SYMBOL_ACTION_HIDE:
- {
- interface_prefs.sidebar_symbol_visible = FALSE;
- ui_sidebar_show_hide();
- break;
- }
- }
-}
-
-
static gboolean on_taglist_tree_selection_changed(GtkTreeSelection *selection)
{
GtkTreeIter iter;
@@ -704,7 +648,7 @@
g_idle_add((GSourceFunc) on_taglist_tree_selection_changed, select);
}
else if (event->button == 3)
- { /* popupmenu to hide or clear the active treeview */
+ { /* update & show popup menus */
if (GPOINTER_TO_INT(user_data) == TREEVIEW_OPENFILES)
{
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mi.documents_fullpath),
@@ -729,7 +673,6 @@
tag_window = lookup_widget(main_widgets.window, "scrolledwindow2");
prepare_openfiles();
- create_taglist_popup_menu();
create_openfiles_popup_menu();
}
Modified: trunk/src/treeviews.h
===================================================================
--- trunk/src/treeviews.h 2008-11-18 12:58:53 UTC (rev 3242)
+++ trunk/src/treeviews.h 2008-11-18 13:29:53 UTC (rev 3243)
@@ -59,4 +59,6 @@
void treeviews_remove_document(GeanyDocument *doc);
+void sidebar_add_common_menu_items(GtkMenu *menu);
+
#endif
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