SF.net SVN: geany: [1680] trunk
eht16 at users.sourceforge.net
eht16 at xxxxx
Mon Jul 9 12:46:16 UTC 2007
Revision: 1680
http://svn.sourceforge.net/geany/?rev=1680&view=rev
Author: eht16
Date: 2007-07-09 05:46:16 -0700 (Mon, 09 Jul 2007)
Log Message:
-----------
Change name of XML filetype to "XML document".
Add sub menus to "Set Filetype" menu.
Modified Paths:
--------------
trunk/ChangeLog
trunk/src/filetypes.c
trunk/src/filetypes.h
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2007-07-08 14:55:37 UTC (rev 1679)
+++ trunk/ChangeLog 2007-07-09 12:46:16 UTC (rev 1680)
@@ -1,3 +1,10 @@
+2007-07-09 Enrico Tröger <enrico.troeger at uvena.de>
+
+ * src/filetypes.c, src/filetypes.h:
+ Change name of XML filetype to "XML document".
+ Add sub menus to "Set Filetype" menu.
+
+
2007-07-08 Enrico Tröger <enrico.troeger at uvena.de>
* src/dialogs.c: Fix missing descriptive text in message box when
Modified: trunk/src/filetypes.c
===================================================================
--- trunk/src/filetypes.c 2007-07-08 14:55:37 UTC (rev 1679)
+++ trunk/src/filetypes.c 2007-07-09 12:46:16 UTC (rev 1680)
@@ -400,7 +400,7 @@
filetypes[GEANY_FILETYPES_XML]->uid = FILETYPE_UID_XML;
filetypes[GEANY_FILETYPES_XML]->lang = -2;
filetypes[GEANY_FILETYPES_XML]->name = g_strdup("XML");
- filetypes[GEANY_FILETYPES_XML]->title = g_strdup(_("XML source file"));
+ filetypes[GEANY_FILETYPES_XML]->title = g_strdup(_("XML document"));
filetypes[GEANY_FILETYPES_XML]->extension = g_strdup("xml");
filetypes[GEANY_FILETYPES_XML]->pattern = utils_strv_new(
"*.xml", "*.sgml", "*.xsl", "*.xslt", "*.xsd", NULL);
@@ -532,37 +532,69 @@
}
+#define create_sub_menu(menu, item, title) \
+ (menu) = gtk_menu_new(); \
+ (item) = gtk_menu_item_new_with_mnemonic((title)); \
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM((item)), (menu)); \
+ gtk_container_add(GTK_CONTAINER(filetype_menu), (item)); \
+ gtk_widget_show((item));
+
+
/* Calls filetypes_init_types() and creates the filetype menu. */
void filetypes_init()
{
filetype_id ft_id;
GtkWidget *filetype_menu = lookup_widget(app->window, "set_filetype1_menu");
+ GtkWidget *sub_menu;
+ GtkWidget *sub_menu_programming, *sub_menu_scripts, *sub_menu_markup, *sub_menu_misc;
+ GtkWidget *sub_item_programming, *sub_item_scripts, *sub_item_markup, *sub_item_misc;
filetypes_init_types();
+ create_sub_menu(sub_menu_programming, sub_item_programming, _("_Programming Languages"));
+ create_sub_menu(sub_menu_scripts, sub_item_scripts, _("_Scripting Languages"));
+ create_sub_menu(sub_menu_markup, sub_item_markup, _("_Markup Languages"));
+ create_sub_menu(sub_menu_misc, sub_item_misc, _("M_iscellaneous Languages"));
+
// Append all filetypes to the filetype menu
for (ft_id = 0; ft_id < GEANY_MAX_FILE_TYPES; ft_id++)
{
filetype *ft = filetypes[ft_id];
- const gchar *title = (ft_id == GEANY_FILETYPES_ALL) ? _("None") : ft->title;
+ const gchar *title = ft->title;
// insert separators for different filetype groups
switch (ft_id)
{
+ case GEANY_FILETYPES_C: // programming
+ {
+ sub_menu = sub_menu_programming;
+ break;
+ }
case GEANY_FILETYPES_PERL: // scripts
- case GEANY_FILETYPES_XML: // text documents
+ {
+ sub_menu = sub_menu_scripts;
+ break;
+ }
+ case GEANY_FILETYPES_XML: // markup
+ { // (include also CSS, not really markup but fit quite well to HTML)
+ sub_menu = sub_menu_markup;
+ break;
+ }
+ case GEANY_FILETYPES_SQL: // misc
+ {
+ sub_menu = sub_menu_misc;
+ break;
+ }
case GEANY_FILETYPES_ALL: // none
{
- GtkWidget *sep = gtk_separator_menu_item_new();
-
- gtk_widget_show(sep);
- gtk_container_add(GTK_CONTAINER(filetype_menu), sep);
+ sub_menu = filetype_menu;
+ title = _("None");
+ break;
}
- default:
- break;
+ default: break;
}
ft->item = NULL;
- filetypes_create_menu_item(filetype_menu, title, ft);
+ filetypes_create_menu_item(sub_menu, title, ft);
}
}
Modified: trunk/src/filetypes.h
===================================================================
--- trunk/src/filetypes.h 2007-07-08 14:55:37 UTC (rev 1679)
+++ trunk/src/filetypes.h 2007-07-09 12:46:16 UTC (rev 1680)
@@ -62,11 +62,13 @@
GEANY_FILETYPES_MAKE,
GEANY_FILETYPES_OMS,
- // documents and others
+ // markup langauges
GEANY_FILETYPES_XML,
GEANY_FILETYPES_DOCBOOK,
GEANY_FILETYPES_HTML,
GEANY_FILETYPES_CSS,
+
+ // miscellaneous languages
GEANY_FILETYPES_SQL,
GEANY_FILETYPES_LATEX,
GEANY_FILETYPES_DIFF,
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