1'''
2Defines the main UI manager with a layout.
3
4@author: Eitan Isaacson
5@organization: Mozilla Foundation
6@copyright: Copyright (c) 2007 Mozilla Foundation
7@license: BSD
8
9All rights reserved. This program and the accompanying materials are made
10available under the terms of the BSD which accompanies this distribution, and
11is available at U{http://www.opensource.org/licenses/bsd-license.php}
12'''
13
14import gi
15
16from gi.repository import Gtk as gtk
17
18from .i18n import _, N_, C_
19
20menu_actions = gtk.ActionGroup.new('MenuActions')
21
22menu_actions.add_actions([
23    ('File', None, _('_File')),
24    ('Edit', None, _('_Edit')),
25    ('Bookmarks', None, C_('menu', '_Bookmarks')),
26    ('View', None, C_('menu', '_View')),
27    ('Help', None, _('_Help'))])
28
29ui_xml = '''
30<ui>
31  <menubar name="MainMenuBar">
32    <menu action="File">
33    </menu>
34    <menu action="Edit">
35    </menu>
36    <menu action="Bookmarks">
37    </menu>
38    <menu action="View">
39      <placeholder name="PluginLayout">
40      </placeholder>
41      <separator />
42      <placeholder name="TreeActions">
43      </placeholder>
44    </menu>
45    <menu action="Help">
46    </menu>
47  </menubar>
48  <popup name="AccTreePopup">
49  </popup>
50</ui>
51'''
52
53MAIN_MENU_PATH = '/MainMenuBar'
54FILE_MENU_PATH = MAIN_MENU_PATH+'/File'
55EDIT_MENU_PATH = MAIN_MENU_PATH+'/Edit'
56BOOKMARKS_MENU_PATH = MAIN_MENU_PATH+'/Bookmarks'
57VIEW_MENU_PATH = MAIN_MENU_PATH+'/View'
58PLUGIN_LAYOUT_PATH = VIEW_MENU_PATH+'/PluginLayout'
59TREE_ACTIONS_PATH = VIEW_MENU_PATH+'/TreeActions'
60HELP_MENU_PATH = MAIN_MENU_PATH+'/Help'
61POPUP_MENU_PATH = '/AccTreePopup'
62
63uimanager = gtk.UIManager()
64uimanager.insert_action_group(menu_actions, 0)
65uimanager.add_ui_from_string(ui_xml)
66