Author: kelnos
Date: 2007-03-23 16:56:33 +0000 (Fri, 23 Mar 2007)
New Revision: 25270

Removed:
   xfdesktop/trunk/modules/menu/frapmenu/
   xfdesktop/trunk/modules/menu/merge-frapmenu-svn.sh
Modified:
   xfdesktop/trunk/common/desktop-menu-stub.c
   xfdesktop/trunk/configure.ac.in
   xfdesktop/trunk/modules/menu/Makefile.am
   xfdesktop/trunk/modules/menu/desktop-menu-private.h
   xfdesktop/trunk/modules/menu/desktop-menu.c
   xfdesktop/trunk/panel-plugin/Makefile.am
   xfdesktop/trunk/src/Makefile.am
Log:
ditch frapmenu and use libxfce4menu instead.  awesome.


Modified: xfdesktop/trunk/common/desktop-menu-stub.c
===================================================================
--- xfdesktop/trunk/common/desktop-menu-stub.c  2007-03-23 16:02:24 UTC (rev 
25269)
+++ xfdesktop/trunk/common/desktop-menu-stub.c  2007-03-23 16:56:33 UTC (rev 
25270)
@@ -38,8 +38,8 @@
 void (*xfce_desktop_menu_set_show_icons)(XfceDesktopMenu *desktop_menu, 
gboolean show_icons) = NULL;
 static void (*xfce_desktop_menu_destroy_p)(XfceDesktopMenu *desktop_menu) = 
NULL;
 
-static void (*my_frap_menu_init)(const gchar *env) = NULL;
-static void (*my_frap_menu_shutdown)() = NULL;
+static void (*my_xfce_menu_init)(const gchar *env) = NULL;
+static void (*my_xfce_menu_shutdown)() = NULL;
 
 static GQuark
 desktop_menu_error_quark()
@@ -114,10 +114,10 @@
     }
     
     if(!_setup_functions(module)
-       || !g_module_symbol(module, "frap_menu_init",
-                           (gpointer)&my_frap_menu_init)
-       || !g_module_symbol(module, "frap_menu_shutdown",
-                           (gpointer)&my_frap_menu_shutdown))
+       || !g_module_symbol(module, "xfce_menu_init",
+                           (gpointer)&my_xfce_menu_init)
+       || !g_module_symbol(module, "xfce_menu_shutdown",
+                           (gpointer)&my_xfce_menu_shutdown))
     {
         if(err) {
             g_set_error(err, desktop_menu_error_quark(), 0,
@@ -128,7 +128,7 @@
         return NULL;
     }
     
-    my_frap_menu_init("XFCE");
+    my_xfce_menu_init("XFCE");
     
     return module;
 }
@@ -136,7 +136,7 @@
 static void
 desktop_menu_stub_cleanup(GModule *module)
 {
-    my_frap_menu_shutdown();
+    my_xfce_menu_shutdown();
     g_module_close(module);
 }
 

Modified: xfdesktop/trunk/configure.ac.in
===================================================================
--- xfdesktop/trunk/configure.ac.in     2007-03-23 16:02:24 UTC (rev 25269)
+++ xfdesktop/trunk/configure.ac.in     2007-03-23 16:56:33 UTC (rev 25270)
@@ -9,6 +9,7 @@
 dnl minimum required versions
 m4_define([gtk_minimum_version], [2.6.0])
 m4_define([xfce_minimum_version], [4.4.0])
+m4_define([xfce4menu_minimum_version], [0.1.0])
 m4_define([exo_minimum_version], [0.3.2])
 m4_define([thunar_minimum_version], [0.8.0])
 m4_define([dbus_minimum_version], [0.34])
@@ -178,13 +179,24 @@
         [ac_cv_enable_desktop_menu=$enableval],
         [ac_cv_enable_desktop_menu=yes])
 if test "x$ac_cv_enable_desktop_menu" = "xno"; then
-        build_desktop_menu="no"
+    build_desktop_menu="no"
 else
-        build_desktop_menu="yes"
+    dnl time for more abuse!
+    XDT_CHECK_PACKAGE([LIBXFCE4MENU], [libxfce4menu-0.1],
+                      [xfce4menu_minimum_version], [build_desktop_menu="yes"],
+                      [
+echo "*** Optional package libxfce4menu-0.1 was either not found on your 
system"
+echo "*** or is too old.  Please install or upgrade to at least version"
+echo "*** xfce4menu_minimum_version, or adjust the PKG_CONFIG_PATH environment 
variable"
+echo "*** if you installed the new version of the package in a nonstandard"
+echo "*** prefix.  Desktop menu will be disabled."
+build_desktop_menu="no"
+])
+    if test "x$build_desktop_menu" = "xyes"; then
         AC_DEFINE([USE_DESKTOP_MENU], [1],
-                [Define if we should build the desktop menu module])
+                  [Define if we should build the desktop menu module])
+    fi
 fi
-AC_SUBST(DESKTOP_MENU_DIR)
 AM_CONDITIONAL([BUILD_DESKTOP_MENU], [test "x$build_desktop_menu" = "xyes"])
 
 dnl time for more abuse.  if we don't yet have thunar-vfs, we still might want
@@ -279,9 +291,6 @@
 modules/Makefile
 modules/menu/Makefile
 modules/menu/directory-data/Makefile
-modules/menu/frapmenu/Makefile
-modules/menu/frapmenu/tdb/Makefile
-modules/menu/frapmenu/tdb/tdbconfig.h
 modules/menu/menu-data/Makefile
 panel-plugin/Makefile
 pixmaps/Makefile

Modified: xfdesktop/trunk/modules/menu/Makefile.am
===================================================================
--- xfdesktop/trunk/modules/menu/Makefile.am    2007-03-23 16:02:24 UTC (rev 
25269)
+++ xfdesktop/trunk/modules/menu/Makefile.am    2007-03-23 16:56:33 UTC (rev 
25270)
@@ -1,6 +1,5 @@
 SUBDIRS = \
        directory-data \
-       frapmenu \
        menu-data
 
 plugindir = $(libdir)/xfce4/modules
@@ -15,9 +14,9 @@
 
 xfce4_desktop_menu_la_CFLAGS = \
        -I$(top_srcdir)/common \
-       -I$(srcdir)/frapmenu \
        $(GMODULE_CFLAGS) \
        $(GTHREAD_CFLAGS) \
+       $(LIBXFCE4MENU_CFLAGS) \
        $(LIBX11_CFLAGS) \
        $(LIBXFCEGUI4_CFLAGS) \
        $(THUNAR_VFS_CFLAGS) \
@@ -25,8 +24,10 @@
        -DDATADIR=\"$(datadir)\" \
        -DBINDIR=\"$(bindir)\"
 
+xfce4_desktop_menu_la_DEPENDENCIES = \
+       $(top_builddir)/common/libxfdesktop.la
+
 xfce4_desktop_menu_la_LDFLAGS = \
-       $(top_builddir)/common/libxfdesktop.la \
        -export-dynamic \
        -avoid-version \
        -module
@@ -37,9 +38,10 @@
 endif
 
 xfce4_desktop_menu_la_LIBADD = \
-       $(top_builddir)/modules/menu/frapmenu/libfrapmenu.la \
+       $(top_builddir)/common/libxfdesktop.la \
        $(GMODULE_LIBS) \
        $(GTHREAD_LIBS) \
+       $(LIBXFCE4MENU_LIBS) \
        $(LIBX11_LDFLAGS) \
        $(LIBX11_LIBS) \
        $(LIBXFCEGUI4_LIBS) \

Modified: xfdesktop/trunk/modules/menu/desktop-menu-private.h
===================================================================
--- xfdesktop/trunk/modules/menu/desktop-menu-private.h 2007-03-23 16:02:24 UTC 
(rev 25269)
+++ xfdesktop/trunk/modules/menu/desktop-menu-private.h 2007-03-23 16:56:33 UTC 
(rev 25270)
@@ -23,10 +23,10 @@
 
 #include <gtk/gtk.h>
 
-#include "libfrapmenu.h"
+#include <libxfce4menu/libxfce4menu.h>
 
 struct _XfceDesktopMenu {
-       FrapMenu *frap_menu;
+       XfceMenu *xfce_menu;
        GtkWidget *menu;  /* the menu widget itself */
        
     gchar *filename;  /* file the menu is currently using */

Modified: xfdesktop/trunk/modules/menu/desktop-menu.c
===================================================================
--- xfdesktop/trunk/modules/menu/desktop-menu.c 2007-03-23 16:02:24 UTC (rev 
25269)
+++ xfdesktop/trunk/modules/menu/desktop-menu.c 2007-03-23 16:56:33 UTC (rev 
25270)
@@ -81,7 +81,7 @@
 static gboolean _generate_menu(XfceDesktopMenu *desktop_menu,
                                gboolean deferred);
 static void desktop_menu_add_items(XfceDesktopMenu *desktop_menu,
-                                   FrapMenu *frap_menu,
+                                   XfceMenu *xfce_menu,
                                    GtkWidget *menu,
                                    GHashTable *watch_dirs);
 
@@ -96,8 +96,8 @@
 compare_items(gconstpointer a,
               gconstpointer b)
 {
-  return g_utf8_collate(frap_menu_item_get_name((FrapMenuItem *)a),
-                        frap_menu_item_get_name((FrapMenuItem *)b));
+  return g_utf8_collate(xfce_menu_item_get_name((XfceMenuItem *)a),
+                        xfce_menu_item_get_name((XfceMenuItem *)b));
 }
 #endif
 
@@ -189,31 +189,31 @@
 
 static void
 desktop_menu_add_items(XfceDesktopMenu *desktop_menu,
-                       FrapMenu *frap_menu,
+                       XfceMenu *xfce_menu,
                        GtkWidget *menu,
                        GHashTable *watch_dirs)
 {
     GSList *items, *l;
     GtkWidget *submenu, *mi, *img;
-    FrapMenu *frap_submenu;
-    FrapMenuDirectory *frap_directory;
-    FrapMenuItem *frap_item;
+    XfceMenu *xfce_submenu;
+    XfceMenuDirectory *xfce_directory;
+    XfceMenuItem *xfce_item;
     const gchar *name, *icon_name;
     
-    if(frap_menu_has_layout(frap_menu))
-        items = frap_menu_get_layout_items(frap_menu);
+    if(xfce_menu_has_layout(xfce_menu))
+        items = xfce_menu_get_layout_items(xfce_menu);
     else {
-        items = frap_menu_get_menus(frap_menu);
-        items = g_slist_concat(items, frap_menu_get_items(frap_menu));
+        items = xfce_menu_get_menus(xfce_menu);
+        items = g_slist_concat(items, xfce_menu_get_items(xfce_menu));
     }
     for(l = items; l; l = l->next) {
-        if(FRAP_IS_MENU(l->data)) {
-            frap_submenu = l->data;
-            frap_directory = frap_menu_get_directory(frap_submenu);
+        if(XFCE_IS_MENU(l->data)) {
+            xfce_submenu = l->data;
+            xfce_directory = xfce_menu_get_directory(xfce_submenu);
             
-            if(frap_directory
-               && (frap_menu_directory_get_no_display(frap_directory)
-               || !frap_menu_directory_show_in_environment(frap_directory)))
+            if(xfce_directory
+               && (xfce_menu_directory_get_no_display(xfce_directory)
+               || !xfce_menu_directory_show_in_environment(xfce_directory)))
             {
                 continue;
             }
@@ -221,13 +221,13 @@
             submenu = gtk_menu_new();
             gtk_widget_show(submenu);
             
-            if(frap_directory) {
-                name = frap_menu_directory_get_name(frap_directory);
-                icon_name = frap_menu_directory_get_icon(frap_directory);
+            if(xfce_directory) {
+                name = xfce_menu_directory_get_name(xfce_directory);
+                icon_name = xfce_menu_directory_get_icon(xfce_directory);
                 desktop_menu_watch_dirs_add(watch_dirs,
-                                            
frap_menu_directory_get_filename(frap_directory));
+                                            
xfce_menu_directory_get_filename(xfce_directory));
             } else {
-                name = frap_menu_get_name(frap_submenu);
+                name = xfce_menu_get_name(xfce_submenu);
                 icon_name = NULL;
             }
             
@@ -242,36 +242,36 @@
             gtk_menu_shell_append(GTK_MENU_SHELL(menu), mi);
             gtk_menu_item_set_submenu(GTK_MENU_ITEM(mi), submenu);
             
-            desktop_menu_add_items(desktop_menu, frap_submenu, submenu,
+            desktop_menu_add_items(desktop_menu, xfce_submenu, submenu,
                                    watch_dirs);
             
             /* we have to check emptiness down here instead of at the top of 
the
              * loop because there may be further submenus that are empty */
             if(!gtk_container_get_children(GTK_CONTAINER(submenu)))
                 gtk_widget_destroy(mi);
-        } else if(FRAP_IS_MENU_SEPARATOR(l->data)) {
+        } else if(XFCE_IS_MENU_SEPARATOR(l->data)) {
             mi = gtk_separator_menu_item_new();
             gtk_widget_show(mi);
             gtk_menu_shell_append(GTK_MENU_SHELL(menu), mi);
-        } else if(FRAP_IS_MENU_ITEM(l->data)) {
-            frap_item = l->data;
+        } else if(XFCE_IS_MENU_ITEM(l->data)) {
+            xfce_item = l->data;
             
-            if(frap_menu_item_get_no_display(frap_item)
-               || !frap_menu_item_show_in_environment(frap_item))
+            if(xfce_menu_item_get_no_display(xfce_item)
+               || !xfce_menu_item_show_in_environment(xfce_item))
             {
                 continue;
             }
             
-            mi = 
xfce_app_menu_item_new_full(frap_menu_item_get_name(frap_item),
-                                             
frap_menu_item_get_command(frap_item),
-                                             
frap_menu_item_get_icon_name(frap_item),
-                                             
frap_menu_item_requires_terminal(frap_item),
-                                             
frap_menu_item_supports_startup_notification(frap_item));
+            mi = 
xfce_app_menu_item_new_full(xfce_menu_item_get_name(xfce_item),
+                                             
xfce_menu_item_get_command(xfce_item),
+                                             
xfce_menu_item_get_icon_name(xfce_item),
+                                             
xfce_menu_item_requires_terminal(xfce_item),
+                                             
xfce_menu_item_supports_startup_notification(xfce_item));
             gtk_widget_show(mi);
             gtk_menu_shell_append(GTK_MENU_SHELL(menu), mi);
             
             desktop_menu_watch_dirs_add(watch_dirs,
-                                        
frap_menu_item_get_filename(frap_item));
+                                        
xfce_menu_item_get_filename(xfce_item));
         }
     }
     g_slist_free(items);
@@ -300,14 +300,14 @@
     
     DBG("menu file name is %s", desktop_menu->filename);
     
-    /* this is kinda lame, but frapmenu currently caches too much */
-    frap_menu_shutdown();
-    frap_menu_init("XFCE");
+    /* this is kinda lame, but xfcemenu currently caches too much */
+    xfce_menu_shutdown();
+    xfce_menu_init("XFCE");
     
     if(g_file_test(desktop_menu->filename, G_FILE_TEST_EXISTS)) {
-        desktop_menu->frap_menu = frap_menu_new(desktop_menu->filename, 
&error);
-        if(!desktop_menu->frap_menu) {
-            g_critical("Unable to create FrapMenu from file '%s': %s",
+        desktop_menu->xfce_menu = xfce_menu_new(desktop_menu->filename, 
&error);
+        if(!desktop_menu->xfce_menu) {
+            g_critical("Unable to create XfceMenu from file '%s': %s",
                        desktop_menu->filename, error->message);
             g_error_free(error);
             return FALSE;
@@ -317,15 +317,15 @@
         gtk_widget_show(desktop_menu->menu);
     
         desktop_menu_watch_dirs_add(watch_dirs,
-                                    
frap_menu_get_filename(desktop_menu->frap_menu));
+                                    
xfce_menu_get_filename(desktop_menu->xfce_menu));
     
     
-        desktop_menu_add_items(desktop_menu, desktop_menu->frap_menu,
+        desktop_menu_add_items(desktop_menu, desktop_menu->xfce_menu,
                                desktop_menu->menu, watch_dirs);
         
         /* really don't need to keep this around */
-        g_object_unref(G_OBJECT(desktop_menu->frap_menu));
-        desktop_menu->frap_menu = NULL;
+        g_object_unref(G_OBJECT(desktop_menu->xfce_menu));
+        desktop_menu->xfce_menu = NULL;
     }
     
     if(user_menu && desktop_menu->using_default_menu) {
@@ -352,11 +352,11 @@
     
     if(desktop_menu->menu)
         gtk_widget_destroy(desktop_menu->menu);
-    if(desktop_menu->frap_menu)
-        g_object_unref(G_OBJECT(desktop_menu->frap_menu));
+    if(desktop_menu->xfce_menu)
+        g_object_unref(G_OBJECT(desktop_menu->xfce_menu));
     
     desktop_menu->menu = NULL;
-    desktop_menu->frap_menu = NULL;
+    desktop_menu->xfce_menu = NULL;
 }
 
 void
@@ -489,10 +489,10 @@
 {
     gint w, h;
     
-       /* libfrapmenu registers gobject types, so we can't be removed */
+       /* libxfcemenu registers gobject types, so we can't be removed */
        g_module_make_resident(module);
        
-       frap_menu_init("XFCE");
+       xfce_menu_init("XFCE");
        
     gtk_icon_size_lookup(GTK_ICON_SIZE_MENU, &w, &h);
     _xfce_desktop_menu_icon_size = w;

Deleted: xfdesktop/trunk/modules/menu/merge-frapmenu-svn.sh

Modified: xfdesktop/trunk/panel-plugin/Makefile.am
===================================================================
--- xfdesktop/trunk/panel-plugin/Makefile.am    2007-03-23 16:02:24 UTC (rev 
25269)
+++ xfdesktop/trunk/panel-plugin/Makefile.am    2007-03-23 16:56:33 UTC (rev 
25270)
@@ -14,6 +14,10 @@
        -DLOCALEDIR=\"$(localedir)\" \
        -DBINDIR=\"$(bindir)\"
 
+xfce4_menu_plugin_DEPENDENCIES = \
+       $(top_builddir)/common/libxfdesktop-menu.la \
+       $(top_builddir)/common/libxfdesktop.la
+
 xfce4_menu_plugin_LDADD = \
        $(top_builddir)/common/libxfdesktop-menu.la \
        $(top_builddir)/common/libxfdesktop.la \

Modified: xfdesktop/trunk/src/Makefile.am
===================================================================
--- xfdesktop/trunk/src/Makefile.am     2007-03-23 16:02:24 UTC (rev 25269)
+++ xfdesktop/trunk/src/Makefile.am     2007-03-23 16:56:33 UTC (rev 25270)
@@ -62,6 +62,7 @@
        $(LIBXFCEGUI4_CFLAGS) \
        $(LIBXFCE4MCS_CLIENT_CFLAGS)
 
+
 xfdesktop_LDFLAGS = \
        -export-dynamic
 
@@ -69,6 +70,7 @@
 xfdesktop_LDADD = $(top_builddir)/common/libxfdesktop.la
 if BUILD_DESKTOP_MENU
   xfdesktop_LDADD += $(top_builddir)/common/libxfdesktop-menu.la
+  xfdesktop_DEPENDENCIES = $(top_builddir)/common/libxfdesktop-menu.la
 endif
 xfdesktop_LDADD += \
        $(LIBX11_LDFLAGS) \

_______________________________________________
Xfce4-commits mailing list
Xfce4-commits@xfce.org
http://foo-projects.org/mailman/listinfo/xfce4-commits

Reply via email to