* configure.in.in: Depend on GTK+ 2.12 and GLib 2.14. Add dependency
on GIO 2.14 as well. * libxfce4menu/Makefile.am: Add new source and header files. * libxfce4menu/libxfce4menu.h: Add new header files. * libxfce4menu/xfce-menu-node.{c,h}: Add new class XfceMenuNode which holds the information for one element in the menu DOM tree, e.g. <MergeFile>, <Name> or <Menu> * libxfce4menu/xfce-menu-tree-provider.{c,h}: Add new interface XfceMenuTreeProvider for classes which hold a GNode DOM representation for .menu files. * libxfce4menu/xfce-menu-parser.{c,h}: Add new parser for .menu XML files. It builds a GNode DOM representation for the XML data. Each GNode in the tree (except for the menu nodes) contains one XfceMenuNode for the XML element information. The parser implements XfceMenuTreeProvider. * libxfce4menu/xfce-menu-merger.{c,h}: Add new class XfceMenuMerger which takes the DOM tree from the parser or any other XfceMenuTreeProvider and resolves duplicates, relative paths and, most importantly, merges and deletes menus according to the information in the DOM tree. It implements XfceMenuTreeProvider. It is not complete yet because it doesn't implement <Move> elements and is not capable of consolidating child menus with the same name at the moment. * tests/Makefile.am, tests/test-menu-parser.c: Add a small test program which parses a menu file using XfceMenuParser and then runs an XfceMenuMerger and prints the output of both.
Showing
- ChangeLog 29 additions, 0 deletionsChangeLog
- configure.in.in 3 additions, 2 deletionsconfigure.in.in
- libxfce4menu/Makefile.am 12 additions, 2 deletionslibxfce4menu/Makefile.am
- libxfce4menu/libxfce4menu-config.h 55 additions, 0 deletionslibxfce4menu/libxfce4menu-config.h
- libxfce4menu/libxfce4menu.h 4 additions, 0 deletionslibxfce4menu/libxfce4menu.h
- libxfce4menu/xfce-menu-layout.h 2 additions, 7 deletionslibxfce4menu/xfce-menu-layout.h
- libxfce4menu/xfce-menu-merger.c 934 additions, 0 deletionslibxfce4menu/xfce-menu-merger.c
- libxfce4menu/xfce-menu-merger.h 68 additions, 0 deletionslibxfce4menu/xfce-menu-merger.h
- libxfce4menu/xfce-menu-node.c 546 additions, 0 deletionslibxfce4menu/xfce-menu-node.c
- libxfce4menu/xfce-menu-node.h 142 additions, 0 deletionslibxfce4menu/xfce-menu-node.h
- libxfce4menu/xfce-menu-parser.c 729 additions, 0 deletionslibxfce4menu/xfce-menu-parser.c
- libxfce4menu/xfce-menu-parser.h 67 additions, 0 deletionslibxfce4menu/xfce-menu-parser.h
- libxfce4menu/xfce-menu-tree-provider.c 66 additions, 0 deletionslibxfce4menu/xfce-menu-tree-provider.c
- libxfce4menu/xfce-menu-tree-provider.h 57 additions, 0 deletionslibxfce4menu/xfce-menu-tree-provider.h
- libxfce4menu/xfce-menu.c 3 additions, 0 deletionslibxfce4menu/xfce-menu.c
- tests/Makefile.am 18 additions, 1 deletiontests/Makefile.am
- tests/test-menu-parser.c 272 additions, 0 deletionstests/test-menu-parser.c
Loading
Please register or sign in to comment