SF.net SVN: geany-plugins:[749] trunk/geany-plugins/addons/src/ao_doclist.c

eht16 at users.sourceforge.net eht16 at xxxxx
Tue Jun 16 21:34:19 UTC 2009


Revision: 749
          http://geany-plugins.svn.sourceforge.net/geany-plugins/?rev=749&view=rev
Author:   eht16
Date:     2009-06-16 21:34:16 +0000 (Tue, 16 Jun 2009)

Log Message:
-----------
Fix a typo.
Fix label for new, untitled files in the document list menu.
Show current document in bold in in the document list menu.

Modified Paths:
--------------
    trunk/geany-plugins/addons/src/ao_doclist.c

Modified: trunk/geany-plugins/addons/src/ao_doclist.c
===================================================================
--- trunk/geany-plugins/addons/src/ao_doclist.c	2009-06-16 21:17:06 UTC (rev 748)
+++ trunk/geany-plugins/addons/src/ao_doclist.c	2009-06-16 21:34:16 UTC (rev 749)
@@ -140,7 +140,7 @@
 }
 
 
-static void ao_doclist_menu_item_activate_cd(GtkMenuItem *menuitem, gpointer data)
+static void ao_doclist_menu_item_activate_cb(GtkMenuItem *menuitem, gpointer data)
 {
 	GeanyDocument *doc = data;
 	gchar *locale_filename;
@@ -175,10 +175,11 @@
 	GtkWidget *menu;
 	GtkWidget *menu_item;
 	GtkWidget *menu_item_label;
-	GeanyDocument *doc;
 	guint i;
 	gchar *base_name;
 	const GdkColor *color;
+	GeanyDocument *doc;
+	GeanyDocument *current_doc = document_get_current();
 
 	menu = gtk_menu_new();
 	/* FIXME we are leaking the menu here as it is never ever destroyed. We could destroy it in
@@ -190,16 +191,21 @@
 		if (! DOC_VALID(doc))
 			continue;
 
-		base_name = g_path_get_basename(doc->file_name);
+		base_name = g_path_get_basename(DOC_FILENAME(doc));
 		menu_item = gtk_menu_item_new_with_label(base_name);
 		gtk_widget_show(menu_item);
 		gtk_container_add(GTK_CONTAINER(menu), menu_item);
-		g_signal_connect(menu_item, "activate", G_CALLBACK(ao_doclist_menu_item_activate_cd), doc);
+		g_signal_connect(menu_item, "activate", G_CALLBACK(ao_doclist_menu_item_activate_cb), doc);
 
 		color = document_get_status_color(doc);
 		menu_item_label = gtk_bin_get_child(GTK_BIN(menu_item));
 		gtk_widget_modify_fg(menu_item_label, GTK_STATE_NORMAL, color);
 		gtk_widget_modify_fg(menu_item_label, GTK_STATE_ACTIVE, color);
+		if (doc == current_doc)
+		{
+			setptr(base_name, g_strconcat("<b>", base_name, "</b>", NULL));
+			gtk_label_set_markup(GTK_LABEL(menu_item_label), base_name);
+		}
 		g_free(base_name);
 	}
 	menu_item = gtk_separator_menu_item_new();
@@ -209,12 +215,12 @@
 	menu_item = ui_image_menu_item_new(GTK_STOCK_CLOSE, _("Close Ot_her Documents"));
 	gtk_widget_show(menu_item);
 	gtk_container_add(GTK_CONTAINER(menu), menu_item);
-	g_signal_connect(menu_item, "activate", G_CALLBACK(ao_doclist_menu_item_activate_cd),
+	g_signal_connect(menu_item, "activate", G_CALLBACK(ao_doclist_menu_item_activate_cb),
 		GINT_TO_POINTER(ACTION_CLOSE_OTHER));
 	menu_item = ui_image_menu_item_new(GTK_STOCK_CLOSE, _("C_lose All"));
 	gtk_widget_show(menu_item);
 	gtk_container_add(GTK_CONTAINER(menu), menu_item);
-	g_signal_connect(menu_item, "activate", G_CALLBACK(ao_doclist_menu_item_activate_cd),
+	g_signal_connect(menu_item, "activate", G_CALLBACK(ao_doclist_menu_item_activate_cb),
 		GINT_TO_POINTER(ACTION_CLOSE_ALL));
 
 	gtk_menu_popup(GTK_MENU(menu), NULL, NULL,


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