as discussed on the mailing list - e providexs enlightenment.menu now.

no one actually did this, so i did it finally.



SVN revision: 59337
This commit is contained in:
Carsten Haitzler 2011-05-12 03:29:23 +00:00
parent 2dd6734aa9
commit 49bbbf6066
5 changed files with 330 additions and 3 deletions

View File

@ -278,6 +278,14 @@ AC_ARG_ENABLE([install-sysactions],
AC_MSG_RESULT([$e_cv_enable_install_sysactions])
AM_CONDITIONAL(INSTALL_SYSACTIONS, test x${e_cv_enable_install_sysactions} = xyes)
AC_MSG_CHECKING([whether to install enlightenment.menu])
AC_ARG_ENABLE([install-enlightenment-menu],
AS_HELP_STRING([--disable-enlightenment-menu],[disable installing /etc/xdg/menus/enlightenment.menu @<:@default=enabled@:>@]),
[e_cv_enable_install_enlightenment_menu=$enableval],
AC_CACHE_VAL([e_cv_enable_install_enlightenment_menu], [e_cv_enable_install_enlightenment_menu=yes]))
AC_MSG_RESULT([$e_cv_enable_install_enlightenment_menu])
AM_CONDITIONAL(INSTALL_ENLIGHTENMENT_MENU, test x${e_cv_enable_install_enlightenment_menu} = xyes)
AC_MSG_CHECKING([whether to enable Files menu item])
AC_ARG_ENABLE([files],
AS_HELP_STRING([--disable-files],[disable Files menu item @<:@default=enabled@:>@]),

View File

@ -6,4 +6,11 @@ if INSTALL_SYSACTIONS
files_DATA += sysactions.conf
endif
EXTRA_DIST = $(files_DATA)
menusdir = $(sysconfdir)/xdg/menus
menus_DATA =
if INSTALL_ENLIGHTENMENT_MENU
menus_DATA += enlightenment.menu
endif
EXTRA_DIST = $(files_DATA) $(menus_DATA)

295
data/etc/enlightenment.menu Normal file
View File

@ -0,0 +1,295 @@
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
"http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
<Menu>
<Name>Applications</Name>
<Directory>Applications.directory</Directory>
<!-- Scan legacy dirs first, as later items take priority -->
<LegacyDir>/etc/X11/applnk</LegacyDir>
<LegacyDir>/usr/share/gnome/apps</LegacyDir>
<KDELegacyDirs/>
<!-- Read standard .directory and .desktop file locations -->
<DefaultAppDirs/>
<DefaultDirectoryDirs/>
<!-- Read in overrides and child menus from applications-merged/ -->
<DefaultMergeDirs/>
<!-- Accessories submenu -->
<Menu>
<Name>Accessories</Name>
<Directory>Utility.directory</Directory>
<Include>
<And>
<Category>Utility</Category>
<!-- Accessibility spec must have either the Utility or Settings
category, and we display an accessibility submenu already for
the ones that do not have Settings, so don't display accessibility
applications here -->
<Not><Category>Accessibility</Category></Not>
<Not><Category>System</Category></Not>
</And>
</Include>
</Menu> <!-- End Accessories -->
<!-- Accessibility submenu -->
<Menu>
<Name>Universal Access</Name>
<Directory>Utility-Accessibility.directory</Directory>
<Include>
<And>
<Category>Accessibility</Category>
<Not><Category>Settings</Category></Not>
</And>
</Include>
</Menu> <!-- End Accessibility -->
<!-- Development Tools -->
<Menu>
<Name>Development</Name>
<Directory>Development.directory</Directory>
<Include>
<And>
<Category>Development</Category>
<Category>X-KDE-KDevelopIDE</Category>
<Category>Translation</Category>
<Category>WebDevelopment</Category>
</And>
<Filename>emacs.desktop</Filename>
</Include>
</Menu> <!-- End Development Tools -->
<!-- Education -->
<Menu>
<Name>Education</Name>
<Directory>Education.directory</Directory>
<Include>
<And>
<Category>Education</Category>
<Category>X-KDE-Edu-Language</Category>
<Not><Category>Science</Category></Not>
</And>
</Include>
</Menu> <!-- End Education -->
<!-- Science -->
<Menu>
<Name>Science</Name>
<Directory>GnomeScience.directory</Directory>
<Include>
<And>
<Category>Education</Category>
<Category>Science</Category>
<Category>Astronomy</Category>
<Category>Biology</Category>
<Category>Chemistry</Category>
<Category>Geology</Category>
<Category>MedicalSoftware</Category>
<Category>Physics</Category>
<Category>Math</Category>
</And>
</Include>
</Menu> <!-- End Science -->
<!-- Games -->
<Menu>
<Name>Games</Name>
<Directory>Game.directory</Directory>
<Include>
<And>
<Category>Game</Category>
<Category>Amusement</Category>
<Not><Category>ActionGame</Category></Not>
<Not><Category>AdventureGame</Category></Not>
<Not><Category>ArcadeGame</Category></Not>
<Not><Category>BoardGame</Category></Not>
<Not><Category>BlocksGame</Category></Not>
<Not><Category>CardGame</Category></Not>
<Not><Category>KidsGame</Category></Not>
<Not><Category>LogicGame</Category></Not>
<Not><Category>RolePlaying</Category></Not>
<Not><Category>Simulation</Category></Not>
<Not><Category>SportsGame</Category></Not>
<Not><Category>StrategyGame</Category></Not>
<Not><Category>X-KDE-KidsGame</Category></Not>
</And>
</Include>
<DefaultLayout inline="true" inline_limit="6" inline_header="false">
<Merge type="menus"/>
<Merge type="files"/>
</DefaultLayout>
<Menu>
<Name>Action</Name>
<Directory>ActionGames.directory</Directory>
<Include>
<Category>ActionGame</Category>
</Include>
</Menu>
<Menu>
<Name>Adventure</Name>
<Directory>AdventureGames.directory</Directory>
<Include>
<Category>AdventureGame</Category>
</Include>
</Menu>
<Menu>
<Name>Arcade</Name>
<Directory>ArcadeGames.directory</Directory>
<Include>
<Category>ArcadeGame</Category>
</Include>
</Menu>
<Menu>
<Name>Board</Name>
<Directory>BoardGames.directory</Directory>
<Include>
<Category>BoardGame</Category>
</Include>
</Menu>
<Menu>
<Name>Blocks</Name>
<Directory>BlocksGames.directory</Directory>
<Include>
<Category>BlocksGame</Category>
</Include>
</Menu>
<Menu>
<Name>Cards</Name>
<Directory>CardGames.directory</Directory>
<Include>
<Category>CardGame</Category>
</Include>
</Menu>
<Menu>
<Name>Kids</Name>
<Directory>KidsGames.directory</Directory>
<Include>
<Category>KidsGame</Category>
<Category>X-KDE-KidsGame</Category>
</Include>
</Menu>
<Menu>
<Name>Logic</Name>
<Directory>LogicGames.directory</Directory>
<Include>
<Category>LogicGame</Category>
</Include>
</Menu>
<Menu>
<Name>Role Playing</Name>
<Directory>RolePlayingGames.directory</Directory>
<Include>
<Category>RolePlaying</Category>
</Include>
</Menu>
<Menu>
<Name>Simulation</Name>
<Directory>SimulationGames.directory</Directory>
<Include>
<Category>Simulation</Category>
</Include>
</Menu>
<Menu>
<Name>Sports</Name>
<Directory>SportsGames.directory</Directory>
<Include>
<Category>SportsGame</Category>
</Include>
</Menu>
<Menu>
<Name>Strategy</Name>
<Directory>StrategyGames.directory</Directory>
<Include>
<Category>StrategyGame</Category>
</Include>
</Menu>
</Menu> <!-- End Games -->
<!-- Graphics -->
<Menu>
<Name>Graphics</Name>
<Directory>Graphics.directory</Directory>
<Include>
<And>
<Category>Graphics</Category>
</And>
</Include>
</Menu> <!-- End Graphics -->
<!-- Internet -->
<Menu>
<Name>Internet</Name>
<Directory>Network.directory</Directory>
<Include>
<And>
<Category>Network</Category>
</And>
</Include>
</Menu> <!-- End Internet -->
<!-- Multimedia -->
<Menu>
<Name>Multimedia</Name>
<Directory>AudioVideo.directory</Directory>
<Include>
<And>
<Category>AudioVideo</Category>
</And>
</Include>
</Menu> <!-- End Multimedia -->
<!-- Office -->
<Menu>
<Name>Office</Name>
<Directory>Office.directory</Directory>
<Include>
<And>
<Category>Office</Category>
</And>
</Include>
</Menu> <!-- End Office -->
<!-- System Tools-->
<Menu>
<Name>System</Name>
<Directory>System-Tools.directory</Directory>
<Include>
<And>
<Category>System</Category>
<Not><Category>Settings</Category></Not>
<Not><Category>Game</Category></Not>
</And>
</Include>
</Menu> <!-- End System Tools -->
<!-- Other -->
<Menu>
<Name>Other</Name>
<Directory>Other.directory</Directory>
<OnlyUnallocated/>
<Include>
<And>
<Not><Category>Core</Category></Not>
<Not><Category>Settings</Category></Not>
<Not><Category>Screensaver</Category></Not>
</And>
</Include>
</Menu> <!-- End Other -->
<!-- The Debian menu -->
<Menu>
<Name>Debian</Name>
<MergeFile>debian-menu.menu</MergeFile>
<Directory>Debian.directory</Directory>
</Menu>
<Layout>
<Merge type="menus"/>
<Merge type="files"/>
<Separator/>
</Layout>
</Menu> <!-- End Applications -->

View File

@ -154,7 +154,7 @@ _create_menus_list(Evas *evas, E_Config_Dialog_Data *cfdata)
EINA_LIST_FREE(menus, file)
{
char buf[PATH_MAX], *p, *p2, *tlabel, *tdesc;
char buf[PATH_MAX], buf2[PATH_MAX], *p, *p2, *tlabel, *tdesc;
const char *label;
label = file;
@ -162,11 +162,21 @@ _create_menus_list(Evas *evas, E_Config_Dialog_Data *cfdata)
tdesc = NULL;
e_user_homedir_concat(buf, sizeof(buf),
".config/menus/applications.menu");
snprintf(buf2, sizeof(buf2), "%s/etc/xdg/enlightenment.menu",
e_prefix_get());
if (!strcmp("/etc/xdg/menus/applications.menu", file))
{
label = _("System Default");
if (!cfdata->default_system_menu) sel = i;
}
else if (!strcmp(buf2, file))
{
label = _("Enlightenment Default");
if (cfdata->default_system_menu)
{
if (!strcmp(cfdata->default_system_menu, file)) sel = i;
}
}
else if (!strcmp(buf, file))
{
label = _("Personal Default");

View File

@ -113,7 +113,7 @@ wizard_page_show(E_Wizard_Page *pg)
EINA_LIST_FREE(menus, file)
{
char buf[PATH_MAX], *p, *p2, *tlabel, *tdesc;
char buf[PATH_MAX], buf2[PATH_MAX], *p, *p2, *tlabel, *tdesc;
const char *label;
label = file;
@ -121,11 +121,18 @@ wizard_page_show(E_Wizard_Page *pg)
tdesc = NULL;
e_user_homedir_concat(buf, sizeof(buf),
".config/menus/applications.menu");
snprintf(buf2, sizeof(buf2), "%s/etc/xdg/enlightenment.menu",
e_prefix_get());
if (!strcmp("/etc/xdg/menus/applications.menu", file))
{
label = _("System Default");
sel = i;
}
else if (!strcmp(buf2, file))
{
label = _("Enlightenment Default");
sel = i;
}
else if (!strcmp(buf, file))
{
label = _("Personal Default");