SF.net SVN: geany: [1794] trunk

ntrel at users.sourceforge.net ntrel at xxxxx
Tue Aug 14 15:36:13 UTC 2007


Revision: 1794
          http://geany.svn.sourceforge.net/geany/?rev=1794&view=rev
Author:   ntrel
Date:     2007-08-14 08:36:12 -0700 (Tue, 14 Aug 2007)

Log Message:
-----------
Rewrite filetypes_get_from_uid() for easier maintenance.

Modified Paths:
--------------
    trunk/ChangeLog
    trunk/src/filetypes.c

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2007-08-14 15:24:01 UTC (rev 1793)
+++ trunk/ChangeLog	2007-08-14 15:36:12 UTC (rev 1794)
@@ -9,6 +9,8 @@
  * src/keyfile.c, src/filetypes.c, data/filetype_extensions.conf:
    Add comment about generating filetype_extensions.conf.
    Update filetype_extensions.conf.
+ * src/filetypes.c:
+   Rewrite filetypes_get_from_uid() for easier maintenance.
 
 
 2007-08-13  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

Modified: trunk/src/filetypes.c
===================================================================
--- trunk/src/filetypes.c	2007-08-14 15:24:01 UTC (rev 1793)
+++ trunk/src/filetypes.c	2007-08-14 15:36:12 UTC (rev 1794)
@@ -87,49 +87,6 @@
 static void filetypes_create_menu_item(GtkWidget *menu, const gchar *label, filetype *ftype);
 
 
-// If uid is valid, return corresponding filetype, otherwise NULL.
-filetype *filetypes_get_from_uid(gint uid)
-{
-	switch (uid)
-	{
-		case FILETYPE_UID_C:		return filetypes[GEANY_FILETYPES_C];
-		case FILETYPE_UID_CPP:		return filetypes[GEANY_FILETYPES_CPP];
-		case FILETYPE_UID_JAVA:		return filetypes[GEANY_FILETYPES_JAVA];
-		case FILETYPE_UID_PERL:		return filetypes[GEANY_FILETYPES_PERL];
-		case FILETYPE_UID_PHP:		return filetypes[GEANY_FILETYPES_PHP];
-		case FILETYPE_UID_XML:		return filetypes[GEANY_FILETYPES_XML];
-		case FILETYPE_UID_DOCBOOK:	return filetypes[GEANY_FILETYPES_DOCBOOK];
-		case FILETYPE_UID_PYTHON:	return filetypes[GEANY_FILETYPES_PYTHON];
-		case FILETYPE_UID_LATEX:	return filetypes[GEANY_FILETYPES_LATEX];
-		case FILETYPE_UID_PASCAL:	return filetypes[GEANY_FILETYPES_PASCAL];
-		case FILETYPE_UID_SH:		return filetypes[GEANY_FILETYPES_SH];
-		case FILETYPE_UID_MAKE:		return filetypes[GEANY_FILETYPES_MAKE];
-		case FILETYPE_UID_CSS:		return filetypes[GEANY_FILETYPES_CSS];
-		case FILETYPE_UID_CONF:		return filetypes[GEANY_FILETYPES_CONF];
-		case FILETYPE_UID_ASM:		return filetypes[GEANY_FILETYPES_ASM];
-		case FILETYPE_UID_SQL:		return filetypes[GEANY_FILETYPES_SQL];
-		case FILETYPE_UID_CAML:		return filetypes[GEANY_FILETYPES_CAML];
-		case FILETYPE_UID_OMS:		return filetypes[GEANY_FILETYPES_OMS];
-		case FILETYPE_UID_RUBY:		return filetypes[GEANY_FILETYPES_RUBY];
-		case FILETYPE_UID_TCL:		return filetypes[GEANY_FILETYPES_TCL];
-		case FILETYPE_UID_ALL:		return filetypes[GEANY_FILETYPES_ALL];
-		case FILETYPE_UID_D:		return filetypes[GEANY_FILETYPES_D];
-		case FILETYPE_UID_FORTRAN:	return filetypes[GEANY_FILETYPES_FORTRAN];
-		case FILETYPE_UID_DIFF:		return filetypes[GEANY_FILETYPES_DIFF];
-		case FILETYPE_UID_FERITE:	return filetypes[GEANY_FILETYPES_FERITE];
-		case FILETYPE_UID_HTML:		return filetypes[GEANY_FILETYPES_HTML];
-		case FILETYPE_UID_VHDL:		return filetypes[GEANY_FILETYPES_VHDL];
-		case FILETYPE_UID_JS:		return filetypes[GEANY_FILETYPES_JS];
-		case FILETYPE_UID_LUA:		return filetypes[GEANY_FILETYPES_LUA];
-		case FILETYPE_UID_HASKELL:	return filetypes[GEANY_FILETYPES_HASKELL];
-		case FILETYPE_UID_CS:		return filetypes[GEANY_FILETYPES_CS];
-		case FILETYPE_UID_BASIC:	return filetypes[GEANY_FILETYPES_BASIC];
-		case FILETYPE_UID_HAXE:		return filetypes[GEANY_FILETYPES_HAXE];
-		default: 					return NULL;
-	}
-}
-
-
 /* Create the filetype array and fill it with the known filetypes. */
 void filetypes_init_types()
 {
@@ -629,6 +586,22 @@
 }
 
 
+// If uid is valid, return corresponding filetype, otherwise NULL.
+filetype *filetypes_get_from_uid(gint uid)
+{
+	gint i;
+
+	for (i = 0; i < GEANY_MAX_FILE_TYPES; i++)
+	{
+		filetype *ft = filetypes[i];
+
+		if (ft->uid == (guint) uid)
+			return ft;
+	}
+	return NULL;
+}
+
+
 static filetype *find_shebang(gint idx)
 {
 	gchar *line = sci_get_line(doc_list[idx].sci, 0);


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