示例#1
0
        private void SetMenu()
        {
            Gtk.Action  rmv;
            UIManager   manager;
            ActionGroup g;

            manager = new UIManager();
            g       = new ActionGroup("SubCategoriesMenuGroup");

            edit = new Gtk.Action("EditAction",
                                  Mono.Unix.Catalog.GetString("Edit tags"),
                                  null, "gtk-edit");
            rmv = new Gtk.Action("RemoveAction",
                                 Mono.Unix.Catalog.GetString("Remove sub-category"),
                                 null, "gtk-remove");

            g.Add(edit, null);
            g.Add(rmv, null);

            manager.InsertActionGroup(g, 0);

            manager.AddUiFromString("<ui>" +
                                    "  <popup action='CategoriesMenu'>" +
                                    "    <menuitem action='EditAction'/>" +
                                    "    <menuitem action='RemoveAction'/>" +
                                    "  </popup>" +
                                    "</ui>");

            menu = manager.GetWidget("/CategoriesMenu") as Menu;

            edit.Activated += OnEdit;
            rmv.Activated  += OnRemove;
        }
        public CompositeTrackSourceContents() : base("albumartist")
        {
            if (ServiceManager.Contains("InterfaceActionService"))
            {
                action_service = ServiceManager.Get <InterfaceActionService> ();

                if (action_service.FindActionGroup("BrowserConfiguration") == null)
                {
                    configure_browser_actions = new ActionGroup("BrowserConfiguration");

                    configure_browser_actions.Add(new ActionEntry [] {
                        new ActionEntry("BrowserContentMenuAction", null,
                                        Catalog.GetString("Browser Content"), null,
                                        Catalog.GetString("Configure the filters available in the browser"), null)
                    });

                    configure_browser_actions.Add(new ToggleActionEntry [] {
                        new ToggleActionEntry("ShowArtistFilterAction", null,
                                              Catalog.GetString("Show Artist Filter"), null,
                                              Catalog.GetString("Show a list of artists to filter by"), null, ArtistFilterVisible.Get())
                    });

                    configure_browser_actions.Add(new RadioActionEntry [] {
                        new RadioActionEntry("ShowTrackArtistFilterAction", null,
                                             Catalog.GetString("Show all Artists"), null,
                                             Catalog.GetString("Show all artists in the artist filter"), 0),

                        new RadioActionEntry("ShowAlbumArtistFilterAction", null,
                                             Catalog.GetString("Show Album Artists"), null,
                                             Catalog.GetString("Show only album artists, not artists with only single tracks"), 1),
                    }, ArtistFilterType.Get().Equals("artist") ? 0 : 1, null);

                    configure_browser_actions.Add(new ToggleActionEntry [] {
                        new ToggleActionEntry("ShowGenreFilterAction", null,
                                              Catalog.GetString("Show Genre Filter"), null,
                                              Catalog.GetString("Show a list of genres to filter by"), null, GenreFilterVisible.Get())
                    });

                    configure_browser_actions.Add(new ToggleActionEntry [] {
                        new ToggleActionEntry("ShowYearFilterAction", null,
                                              Catalog.GetString("Show Year Filter"), null,
                                              Catalog.GetString("Show a list of years to filter by"), null, YearFilterVisible.Get())
                    });

                    action_service.AddActionGroup(configure_browser_actions);
                    action_service.UIManager.AddUiFromString(menu_xml);
                }

                action_service.FindAction("BrowserConfiguration.ShowArtistFilterAction").Activated += OnArtistFilterVisibilityChanged;
                action_service.FindAction("BrowserConfiguration.ShowGenreFilterAction").Activated  += OnGenreFilterChanged;;
                action_service.FindAction("BrowserConfiguration.ShowYearFilterAction").Activated   += OnYearFilterChanged;;

                var artist_filter_action      = action_service.FindAction("BrowserConfiguration.ShowTrackArtistFilterAction") as RadioAction;
                var albumartist_filter_action = action_service.FindAction("BrowserConfiguration.ShowAlbumArtistFilterAction") as RadioAction;
                artist_filter_action.Changed       += OnArtistFilterChanged;
                artist_filter_action.Sensitive      = ArtistFilterVisible.Get();
                albumartist_filter_action.Changed  += OnArtistFilterChanged;
                albumartist_filter_action.Sensitive = ArtistFilterVisible.Get();
            }
        }
        public FilteredListSourceContents(string name,
                                          SchemaEntry <int> pane_top_position,
                                          SchemaEntry <int> pane_left_position)
        {
            this.name = name;
            this.pane_top_position  = pane_top_position;
            this.pane_left_position = pane_left_position;

            InitializeViews();

            string position = Layout();

            if (ForcePosition != null)
            {
                return;
            }

            if (ServiceManager.Contains("InterfaceActionService"))
            {
                action_service = ServiceManager.Get <InterfaceActionService> ();

                if (action_service.FindActionGroup("BrowserView") == null)
                {
                    browser_view_actions = new ActionGroup("BrowserView");

                    browser_view_actions.Add(new RadioActionEntry [] {
                        new RadioActionEntry("BrowserLeftAction", null,
                                             Catalog.GetString("Browser on Left"), null,
                                             Catalog.GetString("Show the artist/album browser to the left of the track list"), 0),

                        new RadioActionEntry("BrowserTopAction", null,
                                             Catalog.GetString("Browser on Top"), null,
                                             Catalog.GetString("Show the artist/album browser above the track list"), 1),
                    }, position == "top" ? 1 : 0, null);

                    browser_view_actions.Add(new ToggleActionEntry [] {
                        new ToggleActionEntry("BrowserVisibleAction", null,
                                              Catalog.GetString("Show Browser"), "<control>B",
                                              Catalog.GetString("Show or hide the artist/album browser"),
                                              null, BrowserVisible.Get())
                    });

                    action_service.AddActionGroup(browser_view_actions);
                    //action_merge_id = action_service.UIManager.NewMergeId ();
                    action_service.UIManager.AddUiFromString(menu_xml);
                }

                (action_service.FindAction("BrowserView.BrowserLeftAction") as RadioAction).Changed += OnViewModeChanged;
                (action_service.FindAction("BrowserView.BrowserTopAction") as RadioAction).Changed  += OnViewModeChanged;
                action_service.FindAction("BrowserView.BrowserVisibleAction").Activated             += OnToggleBrowser;
            }

            ServiceManager.SourceManager.ActiveSourceChanged += delegate {
                ThreadAssist.ProxyToMain(delegate {
                    browser_container.Visible = ActiveSourceCanHasBrowser ? BrowserVisible.Get() : false;
                });
            };

            NoShowAll = true;
        }
        public void InterfaceInitialize()
        {
            actions = new ActionGroup("Audioscrobbler");

            actions.Add(new ActionEntry [] {
                new ActionEntry("AudioscrobblerAction", null,
                                Catalog.GetString("_Last.fm"), null,
                                Catalog.GetString("Configure the Audioscrobbler plugin"), null),

                new ActionEntry("AudioscrobblerVisitAction", null,
                                Catalog.GetString("Visit _User Profile Page"), null,
                                Catalog.GetString("Visit Your Last.fm Profile Page"), OnVisitOwnProfile)
            });

            actions.Add(new ToggleActionEntry [] {
                new ToggleActionEntry("AudioscrobblerEnableAction", null,
                                      Catalog.GetString("_Enable Song Reporting"), "<control>U",
                                      Catalog.GetString("Enable song reporting"), OnToggleEnabled, Enabled)
            });

            action_service.UIManager.InsertActionGroup(actions, 0);
            ui_manager_id = action_service.UIManager.AddUiFromResource("AudioscrobblerMenu.xml");

            actions["AudioscrobblerVisitAction"].Sensitive = account.UserName != null && account.UserName != String.Empty;
        }
示例#5
0
        void CreateMenu()
        {
            Gtk.Action  select_all;
            Gtk.Action  select_none;
            UIManager   manager;
            ActionGroup g;

            manager = new UIManager();
            g       = new ActionGroup("MenuGroup");

            select_all  = new Gtk.Action("AllAction", Mono.Unix.Catalog.GetString("Select all"), null, "gtk-edit");
            select_none = new Gtk.Action("NoneAction", Mono.Unix.Catalog.GetString("Unselect all"), null, "gtk-edit");

            g.Add(select_all, null);
            g.Add(select_none, null);

            manager.InsertActionGroup(g, 0);

            manager.AddUiFromString("<ui>" +
                                    "  <popup action='Menu'>" +
                                    "    <menuitem action='AllAction'/>" +
                                    "    <menuitem action='NoneAction'/>" +
                                    "  </popup>" +
                                    "</ui>");

            playersMenu = manager.GetWidget("/Menu") as Menu;

            select_all.Activated  += (sender, e) => Select(true);
            select_none.Activated += (sender, e) => Select(false);
        }
示例#6
0
        private void InstallInterfaceActions()
        {
            InterfaceActionService action_service = ServiceManager.Get <InterfaceActionService> ();

            lyrics_action_group = new ActionGroup("Lyrics");

            lyrics_action_group.Add(new ActionEntry[] {
                new ActionEntry("LyricsAction", null,
                                AddinManager.CurrentLocalizer.GetString("L_yrics"), null,
                                AddinManager.CurrentLocalizer.GetString("Manage Lyrics"), null),
                new ActionEntry("FetchLyricsAction", null,
                                AddinManager.CurrentLocalizer.GetString("_Download Lyrics"), null,
                                AddinManager.CurrentLocalizer.GetString("Download lyrics for all tracks"), OnFetchLyrics)
            });

            lyrics_action_group.Add(new ToggleActionEntry[] {
                new ToggleActionEntry("ShowLyricsAction", null,
                                      AddinManager.CurrentLocalizer.GetString("Show Lyrics"), "<control>T",
                                      AddinManager.CurrentLocalizer.GetString("Show Lyrics in a separate window"), null, false)
            });

            lyrics_action_group.GetAction("ShowLyricsAction").Activated += OnToggleWindow;
            lyrics_action_group.GetAction("ShowLyricsAction").Sensitive  = ServiceManager.PlayerEngine.CurrentTrack != null ? true : false;

            action_service.AddActionGroup(lyrics_action_group);

            ui_manager_id = action_service.UIManager.AddUiFromResource("LyricsMenu.xml");
        }
示例#7
0
        private void AddMenuItems(UIManager uim)
        {
            ToggleActionEntry[] toggleActionEntries = new ToggleActionEntry[] {
                new ToggleActionEntry("StatusbarShowAction", null, Catalog.GetString("Show"), null, null,
                                      new EventHandler(OnStatusbarShow), false),
                new ToggleActionEntry("StatusbarOffsetAction", null, Catalog.GetString("Offset"), null, null,
                                      new EventHandler(OnStatusbarOffset), false),
                new ToggleActionEntry("StatusbarSelectionAction", null, Catalog.GetString("Selection"), null, null,
                                      new EventHandler(OnStatusbarSelection), false),
                new ToggleActionEntry("StatusbarOverwriteAction", null, Catalog.GetString("Overwrite"), null, null,
                                      new EventHandler(OnStatusbarOverwrite), false)
            };

            ActionEntry[] actionEntries = new ActionEntry[] {
                new ActionEntry("Statusbar", null, Catalog.GetString("Statusbar"), null, null, null)
            };

            ActionGroup group = new ActionGroup("StatusbarActions");

            group.Add(toggleActionEntries);
            group.Add(actionEntries);

            uim.InsertActionGroup(group, 0);
            uim.AddUiFromString(uiXml);

            viewStatusbarShowMenuItem      = (CheckMenuItem)uim.GetWidget("/menubar/View/Statusbar/Show");
            viewStatusbarOffsetMenuItem    = (CheckMenuItem)uim.GetWidget("/menubar/View/Statusbar/Offset");
            viewStatusbarSelectionMenuItem = (CheckMenuItem)uim.GetWidget("/menubar/View/Statusbar/Selection");
            viewStatusbarOverwriteMenuItem = (CheckMenuItem)uim.GetWidget("/menubar/View/Statusbar/Overwrite");

            uim.EnsureUpdate();
        }
        void AddActions()
        {
            ActionEntry[] actions = new ActionEntry[]
            {
                new ActionEntry("FileMenu", null, "_File", null, null, null),
                new ActionEntry("PreferencesMenu", null, "_Preferences", null, null, null),
                new ActionEntry("ColorMenu", null, "_Color", null, null, null),
                new ActionEntry("ShapeMenu", null, "_Shape", null, null, null),
                new ActionEntry("HelpMenu", null, "_Help", null, null, null),
                new ActionEntry("New", Stock.New, "_New", "<control>N", "Create a new file", new EventHandler(ActionActivated)),
                new ActionEntry("Open", Stock.Open, "_Open", "<control>O", "Open a file", new EventHandler(ActionActivated)),
                new ActionEntry("Save", Stock.Save, "_Save", "<control>S", "Save current file", new EventHandler(ActionActivated)),
                new ActionEntry("SaveAs", Stock.SaveAs, "Save _As", null, "Save to a file", new EventHandler(ActionActivated)),
                new ActionEntry("Quit", Stock.Quit, "_Quit", "<control>Q", "Quit", new EventHandler(ActionActivated)),
                new ActionEntry("About", null, "_About", "<control>A", "About", new EventHandler(ActionActivated)),
                new ActionEntry("Logo", "demo-gtk-logo", null, null, "Gtk#", new EventHandler(ActionActivated))
            };

            ToggleActionEntry[] toggleActions = new ToggleActionEntry[]
            {
                new ToggleActionEntry("Bold", Stock.Bold, "_Bold", "<control>B", "Bold", new EventHandler(ActionActivated), true)
            };

            RadioActionEntry[] colorActions = new RadioActionEntry[]
            {
                new RadioActionEntry("Red", null, "_Red", "<control>R", "Blood", (int)Color.Red),
                new RadioActionEntry("Green", null, "_Green", "<control>G", "Grass", (int)Color.Green),
                new RadioActionEntry("Blue", null, "_Blue", "<control>B", "Sky", (int)Color.Blue)
            };

            RadioActionEntry[] shapeActions = new RadioActionEntry[]
            {
                new RadioActionEntry("Square", null, "_Square", "<control>S", "Square", (int)Shape.Square),
                new RadioActionEntry("Rectangle", null, "_Rectangle", "<control>R", "Rectangle", (int)Shape.Rectangle),
                new RadioActionEntry("Oval", null, "_Oval", "<control>O", "Egg", (int)Shape.Oval)
            };

            ActionGroup group = new ActionGroup("AppWindowActions");

            group.Add(actions);
            group.Add(toggleActions);
            group.Add(colorActions, (int)Color.Red, new ChangedHandler(RadioActionActivated));
            group.Add(shapeActions, (int)Shape.Square, new ChangedHandler(RadioActionActivated));

            UIManager uim = new UIManager();

            uim.InsertActionGroup(group, 0);
            uim.AddWidget += new AddWidgetHandler(AddWidget);
            uim.AddUiFromString(uiInfo);

            AddAccelGroup(uim.AccelGroup);
        }
示例#9
0
        void IExtensionService.Initialize()
        {
            Log.Debug("Initializing Alarm Plugin");

            AlarmClockService.alarm_service = this;
            ThreadStart alarmThreadStart = new ThreadStart(AlarmClockService.DoWait);

            alarm_thread = new Thread(alarmThreadStart);
            alarm_thread.Start();

            action_service = ServiceManager.Get <InterfaceActionService> ();

            actions = new ActionGroup("AlarmClock");

            actions.Add(new ActionEntry [] {
                new ActionEntry("AlarmClockAction", null,
                                AddinManager.CurrentLocalizer.GetString("Alarm Clock"), null,
                                null, null),

                new ActionEntry("SetSleepTimerAction", null,
                                AddinManager.CurrentLocalizer.GetString("Sleep Timer..."), null,
                                AddinManager.CurrentLocalizer.GetString("Set the sleep timer value"), OnSetSleepTimer),

                new ActionEntry("SetAlarmAction", null,
                                AddinManager.CurrentLocalizer.GetString("Alarm..."), null,
                                AddinManager.CurrentLocalizer.GetString("Set the alarm time"), OnSetAlarm),

                new ActionEntry("AlarmClockConfigureAction", Stock.Properties,
                                AddinManager.CurrentLocalizer.GetString("_Configure..."), null,
                                AddinManager.CurrentLocalizer.GetString("Configure the Alarm Clock plugin"), OnConfigure)
            });

            action_service.UIManager.InsertActionGroup(actions, 0);
            ui_manager_id = action_service.UIManager.AddUiFromResource("AlarmMenu.xml");
        }
示例#10
0
        private void LoadMenus()
        {
            global_actions = new ActionGroup("RadioGlobal");
            global_actions.Add(new ActionEntry [] {
                new ActionEntry("RadioStationAddAction", null,
                                Catalog.GetString("New Radio Station..."), null,
                                Catalog.GetString("Add a new streaming radio station"), OnRadioStationAddActivate),
            });

            station_actions = new ActionGroup("RadioStation");
            station_actions.Add(new ActionEntry [] {
                new ActionEntry("RadioStationEditAction", null,
                                Catalog.GetString("Edit Station"), null,
                                Catalog.GetString("Edit selected streaming radio station"), OnRadioStationEditActivate),

                new ActionEntry("RadioStationRemoveAction", null,
                                Catalog.GetString("Remove Station"), null,
                                Catalog.GetString("Remove selected streaming radio station"), OnRadioStationRemoveActivate)
            });

            Globals.ActionManager.UI.InsertActionGroup(global_actions, 0);
            Globals.ActionManager.UI.InsertActionGroup(station_actions, 0);

            ui_manager_id = Globals.ActionManager.UI.AddUiFromResource("radioactions.xml");

            music_menu  = (Globals.ActionManager.GetWidget("/MainMenu/MusicMenu") as MenuItem).Submenu as Menu;
            new_station = Globals.ActionManager.GetWidget("/RadioMergeMenu/RadioStationAdd") as MenuItem;
            (new_station.Parent as Container).Remove(new_station);
            music_menu.Insert(new_station, 2);
        }
示例#11
0
    private Widget CreateGuiMenu()
    {
        // Defines the menu
        string uiInfo = "<ui>" + "  <menubar name='MenuBar'>" +
                        "    <menu action='FileMenu'>" +
                        "      <menuitem action='Quit'/>" + "    </menu>" +
                        "  </menubar>" + "</ui>";

        // Set up the actions
        ActionEntry[] entries = new[]
        {
            // "File" Menu
            new ActionEntry(
                "FileMenu", null, "_File", null, null, null),
            new ActionEntry(
                "Quit",
                Stock.Quit,
                "_Quit",
                "<control>Q",
                "Quit",
                OnQuitAction),
        };

        // Build up the actions
        ActionGroup actions = new ActionGroup("group");

        actions.Add(entries);

        uiManager.InsertActionGroup(actions, 0);
        AddAccelGroup(uiManager.AccelGroup);

        // Set up the interfaces from XML
        uiManager.AddUiFromString(uiInfo);
        return(uiManager.GetWidget("/MenuBar"));
    }
示例#12
0
        private void SetPlayersMenu()
        {
            Action      edit;
            UIManager   manager;
            ActionGroup g;

            manager = new UIManager();
            g       = new ActionGroup("PlayersMenuGroup");

            edit = new Action("EditAction", Mono.Unix.Catalog.GetString("Edit name"), null, "gtk-edit");

            g.Add(edit, null);

            manager.InsertActionGroup(g, 0);

            manager.AddUiFromString("<ui>" +
                                    "  <popup action='PlayersMenu'>" +
                                    "    <menuitem action='EditAction'/>" +
                                    "  </popup>" +
                                    "</ui>");

            playersMenu = manager.GetWidget("/PlayersMenu") as Menu;

            edit.Activated += OnEdit;
        }
示例#13
0
        void IExtensionService.Initialize()
        {
            Hyena.Log.Debug("Initializing LCD service");

            action_service = ServiceManager.Get <InterfaceActionService> ();
            actions        = new ActionGroup("LCD");
            actions.Add(new ActionEntry [] {
                new ActionEntry("LCDAction", null,
                                AddinManager.CurrentLocalizer.GetString("LCD"), null,
                                null, null),
                new ActionEntry("LCDConfigureAction", Stock.Properties,
                                AddinManager.CurrentLocalizer.GetString("_Configure..."), null,
                                AddinManager.CurrentLocalizer.GetString("Configure the LCD plugin"), OnConfigure)
            });
            action_service.UIManager.InsertActionGroup(actions, 0);
            ui_manager_id = action_service.UIManager.AddUiFromResource("LCDMenu.xml");

            ScreensCreate();

            lcdclient            = new LCDClient(Host, Port);
            lcdclient.Connected += OnConnected;
            parser = new LCDParser();
            ServiceManager.PlayerEngine.ConnectEvent(OnPlayerEvent,
                                                     PlayerEvent.Iterate |
                                                     PlayerEvent.StartOfStream |
                                                     PlayerEvent.EndOfStream |
                                                     PlayerEvent.TrackInfoUpdated |
                                                     PlayerEvent.StateChange);
        }
示例#14
0
        private void AddActions(UIManager uim)
        {
            ActionEntry[] actionEntries = new ActionEntry[] {
                new ActionEntry("NewAction", Stock.New, null, "<control>N", "New File",
                                new EventHandler(OnNewActivated)),
                new ActionEntry("OpenAction", Stock.Open, null, "<control>O", "Open File",
                                new EventHandler(OnOpenActivated)),
                new ActionEntry("SaveAction", Stock.Save, null, "<control>S", "Save File",
                                new EventHandler(OnSaveActivated)),
                new ActionEntry("SaveAsAction", Stock.SaveAs, null, "<shift><control>S", "Save File As",
                                new EventHandler(OnSaveAsActivated)),
                new ActionEntry("RevertAction", Stock.RevertToSaved, null, null, "Revert File",
                                new EventHandler(OnRevertActivated)),
                new ActionEntry("CloseAction", Stock.Close, null, "<control>W", "Close File",
                                new EventHandler(OnCloseActivated)),
                new ActionEntry("QuitAction", Stock.Quit, null, "<control>Q", "Quit Application",
                                new EventHandler(OnQuitActivated))
            };

            ActionGroup group = new ActionGroup("FileActions");

            group.Add(actionEntries);

            uim.InsertActionGroup(group, 0);
            uim.AddUiFromString(uiXml);
            SaveAction   = (Gtk.Action)uim.GetAction("/menubar/File/Save");
            SaveAsAction = (Gtk.Action)uim.GetAction("/menubar/File/SaveAs");
            CloseAction  = (Gtk.Action)uim.GetAction("/menubar/File/Close");
            QuitAction   = (Gtk.Action)uim.GetAction("/menubar/File/Quit");
            RevertAction = (Gtk.Action)uim.GetAction("/menubar/File/Revert");

            uim.EnsureUpdate();
        }
        // TODO later add option for max downloads / download directory

        /*
         * public override Widget GetConfigurationWidget()
         * {
         *  return new PodcastConfigPage ();
         * }
         */

        private void InstallInterfaceActions()
        {
            actions = new ActionGroup("Podcast");

            // Pixbufs in 'PodcastPixbufs' should be registered with the StockManager and used here.
            actions.Add(new ActionEntry [] {
                new ActionEntry("PodcastAction", null,
                                Catalog.GetString("Podcast"), null,
                                Catalog.GetString("Manage the Podcast plugin"), null),

                new ActionEntry("PodcastUpdateFeedsAction", Stock.Refresh,
                                Catalog.GetString("Update Feeds"), "<control><shift>U",
                                Catalog.GetString("Update Subscribed Podcast Feeds"),
                                OnPodcastUpdateFeedsHandler),

                new ActionEntry("PodcastSubscribeAction", Stock.New,
                                Catalog.GetString("Subscribe to New Feed"), "<control>F",
                                Catalog.GetString("Subscribe to New Podcast Feed"),
                                OnPodcastSubscribeHandler),

                new ActionEntry("PodcastVisitPodcastAlleyAction", Stock.JumpTo,
                                Catalog.GetString("Find New Podcasts"), "<control>P",
                                Catalog.GetString("Find New Podcasts at PodcastAlley.com"),
                                OnVisitPodcastAlleyHandler),
            });

            Globals.ActionManager.UI.InsertActionGroup(actions, 0);
            ui_manager_id = Globals.ActionManager.UI.AddUiFromResource("PodcastMenu.xml");
        }
示例#16
0
        private bool SetupInterfaceActions()
        {
            action_service = ServiceManager.Get <InterfaceActionService> ();

            if (action_service.FindActionGroup("ClutterFlowView") == null)
            {
                clutterflow_actions = new ActionGroup("ClutterFlowView");

                ToggleActionEntry [] tae = new ToggleActionEntry [] { new ToggleActionEntry("ClutterFlowVisibleAction", null,
                                                                                            AddinManager.CurrentLocalizer.GetString("Show ClutterFlow Browser"), null,
                                                                                            AddinManager.CurrentLocalizer.GetString("Show or hide the ClutterFlow browser"),
                                                                                            null, ClutterFlowSchemas.ShowClutterFlow.Get()) };
                clutterflow_actions.Add(tae);

                action_service.AddActionGroup(clutterflow_actions);
                ui_manager_id = action_service.UIManager.AddUiFromString(menu_xml);
            }

            source_manager.ActiveSourceChanged += HandleActiveSourceChanged;

            BrowserAction.Activated += OnToggleBrowser;
            CfBrowsAction.Activated += OnToggleClutterFlow;

            return(true);
        }
示例#17
0
        private void AddActions(UIManager uim)
        {
            ActionEntry[] actionEntries = new ActionEntry[] {
                new ActionEntry("FindAction", Stock.Find, null, "<control>F", "Find",
                                new EventHandler(OnFindActivated)),
                new ActionEntry("FindNextAction", null, Catalog.GetString("Find _Next"), "F3", null,
                                new EventHandler(OnFindNextActivated)),
                new ActionEntry("FindPreviousAction", null, Catalog.GetString("Find _Previous"), "<shift>F3", null,
                                new EventHandler(OnFindPreviousActivated)),
                new ActionEntry("ReplaceAction", Stock.FindAndReplace, null, "<control>R", "Replace",
                                new EventHandler(OnReplaceActivated))
            };

            ActionGroup group = new ActionGroup("SearchActions");

            group.Add(actionEntries);

            uim.InsertActionGroup(group, 0);
            uim.AddUiFromString(uiXml);

            FindAction         = (Gtk.Action)uim.GetAction("/menubar/Search/Find");
            FindNextAction     = (Gtk.Action)uim.GetAction("/menubar/Search/FindNext");
            FindPreviousAction = (Gtk.Action)uim.GetAction("/menubar/Search/FindPrevious");
            ReplaceAction      = (Gtk.Action)uim.GetAction("/menubar/Search/Replace");

            uim.EnsureUpdate();
        }
        void IExtensionService.Initialize()
        {
            Log.Debug("[RadioStationFetcherService] <Initialize> START");

            action_service = ServiceManager.Get <InterfaceActionService> ();
            actions        = new ActionGroup("Radio-station fetcher");

            // Add sources
            ActionEntry[] source_actions =
            {
                new ActionEntry("RadioStationFetcherAction",                                              null,
                                AddinManager.CurrentLocalizer.GetString("_Radiostation fetcher"),         null,
                                null,                                                                     null),
                new ActionEntry("ShoutcastAction",                                                        null,
                                AddinManager.CurrentLocalizer.GetString("_Shoutcast"),                    null,
                                AddinManager.CurrentLocalizer.GetString("Fetch stations from shoutcast"), delegate {
                    shoutcast.ShowDialog();
                }),
                new ActionEntry("XiphAction",                                                             null,
                                AddinManager.CurrentLocalizer.GetString("_Xiph"),                         null,
                                AddinManager.CurrentLocalizer.GetString("Fetch stations from Xiph"),      delegate {
                    xiph.ShowDialog();
                })
            };

            actions.Add(source_actions);

            action_service.UIManager.InsertActionGroup(actions, 0);
            ui_manager_id = action_service.UIManager.AddUiFromResource("RadioStationFetcherMenu.xml");

            Log.Debug("[RadioStationFetcherService] <Initialize> END");
        }
示例#19
0
        private BookmarkUI()
        {
            action_service = ServiceManager.Get <InterfaceActionService> ("InterfaceActionService");

            actions = new ActionGroup("Bookmarks");

            actions.Add(new ActionEntry [] {
                new ActionEntry("BookmarksAction", null,
                                Catalog.GetString("_Bookmarks"), null,
                                null, null),
                new ActionEntry("BookmarksAddAction", Stock.Add,
                                Catalog.GetString("_Add Bookmark"), "<control>D",
                                Catalog.GetString("Bookmark the Position in the Current Track"),
                                HandleNewBookmark)
            });

            action_service.UIManager.InsertActionGroup(actions, 0);
            ui_manager_id = action_service.UIManager.AddUiFromResource("BookmarksMenu.xml");
            bookmark_item = action_service.UIManager.GetWidget("/MainMenu/ToolsMenu/Bookmarks") as ImageMenuItem;
            new_item      = action_service.UIManager.GetWidget("/MainMenu/ToolsMenu/Bookmarks/Add") as ImageMenuItem;

            bookmark_menu           = bookmark_item.Submenu as Menu;
            bookmark_item.Selected += HandleMenuShown;

            remove_item           = new ImageMenuItem(Catalog.GetString("_Remove Bookmark"));
            remove_item.Sensitive = false;
            remove_item.Image     = new Image(Stock.Remove, IconSize.Menu);

            remove_item.Submenu = remove_menu = new Menu();
            bookmark_menu.Append(remove_item);

            LoadBookmarks();
        }
示例#20
0
        static void OnDynamicAdd(object obj, EventArgs args)
        {
            if (mergeId != 0 || dynGroup != null)
            {
                return;
            }

            int num = spin.ValueAsInt;

            dynGroup = new ActionGroup("DynamicActions");
            uim.InsertActionGroup(dynGroup, 0);
            mergeId = uim.NewMergeId();

            for (int i = 0; i < num; i++)
            {
                string     name   = "DynAction" + i;
                string     label  = "Dynamic Action " + i;
                Gtk.Action action = new Gtk.Action(name, label);
                dynGroup.Add(action);
                uim.AddUi(mergeId, "/menubar/DynamicMenu", name,
                          name, UIManagerItemType.Menuitem, false);
            }

            uim.EnsureUpdate();
        }
        private void InstallInterfaceActions()
        {
            actions = new ActionGroup("Mirage Playlist Generator");

            actions.Add(new ActionEntry [] {
                new ActionEntry("MirageAction", null,
                                AddinManager.CurrentLocalizer.GetString("Mirage Playlist Generator"), null,
                                AddinManager.CurrentLocalizer.GetString("Manage the Mirage extension"), null),

                new ActionEntry("MirageRescanMusicAction", null,
                                AddinManager.CurrentLocalizer.GetString("Rescan the Music Library"), null,
                                AddinManager.CurrentLocalizer.GetString("Rescans the Music Library for new songs"),
                                OnMirageRescanMusicHandler),

                new ActionEntry("MirageDuplicateSearchAction", null,
                                AddinManager.CurrentLocalizer.GetString("Duplicate Search (Experimental)"), null,
                                AddinManager.CurrentLocalizer.GetString("Searches your Music Library for possible duplicates"),
                                OnMirageDuplicateSearchHandler),

                new ActionEntry("MirageResetAction", null,
                                AddinManager.CurrentLocalizer.GetString("Reset Mirage"), null,
                                AddinManager.CurrentLocalizer.GetString("Resets the Mirage Playlist Generation Plugin. " +
                                                                        "All songs have to be analyzed again to use Automatic Playlist Generation."),
                                OnMirageResetHandler),
            });

            action_service.UIManager.InsertActionGroup(actions, 0);
            uiManagerId = action_service.UIManager.AddUiFromResource("MirageMenu.xml");
        }
示例#22
0
        public static int Main(string[] args)
        {
            Application.Init();
            Window win = new Window("Action Demo");

            win.DefaultSize  = new Gdk.Size(200, 150);
            win.DeleteEvent += new DeleteEventHandler(OnWindowDelete);

            box = new VBox(false, 0);
            win.Add(box);

            group = new ActionGroup("TestActions");
            group.Add(entries);
            group.Add(toggleEntries);
            group.Add(radioEntries, (int)Justify.Left, new ChangedHandler(OnRadio));
            group.Add(toolbarEntries, (int)ToolbarStyle.BothHoriz, new ChangedHandler(OnToolbarStyle));

            uim               = new UIManager();
            uim.AddWidget    += new AddWidgetHandler(OnWidgetAdd);
            uim.ConnectProxy += new ConnectProxyHandler(OnProxyConnect);
            uim.InsertActionGroup(group, 0);
            uim.AddUiFromString(ui_info);

            statusbar = new Statusbar();
            box.PackEnd(statusbar, false, true, 0);

            VBox   vbox   = new VBox(false, 5);
            Button button = new Button("Blah");

            vbox.PackEnd(button, true, true, 0);
            HBox hbox = new HBox(false, 5);

            spin = new SpinButton(new Adjustment(100, 100, 10000, 1, 100, 100), 100, 0);
            hbox.PackStart(spin, true, true, 0);
            button          = new Button("Remove");
            button.Clicked += new EventHandler(OnDynamicRemove);
            hbox.PackEnd(button, false, false, 0);
            button          = new Button("Add");
            button.Clicked += new EventHandler(OnDynamicAdd);
            hbox.PackEnd(button, false, false, 0);
            vbox.PackEnd(hbox, false, false, 0);
            box.PackEnd(vbox, true, true, 0);

            win.ShowAll();
            Application.Run();
            return(0);
        }
示例#23
0
        public UIManager(Project project)
        {
            ActionEntry[] entries = new ActionEntry[] {
                new ActionEntry("FileMenu", null, Catalog.GetString("_File"), null, null, null),
                new ActionEntry("Open", Stock.Open, null, "<control>O", Catalog.GetString("Open a file"), OpenFile),
                new ActionEntry("RecentFiles", null, Catalog.GetString("Recent files"), null, null, null),
                new ActionEntry("Save", Stock.Save, null, "<control>S", Catalog.GetString("Save"), SaveFile),
                new ActionEntry("SaveAs", Stock.SaveAs, null, "<control><shift>S", Catalog.GetString("Save As"), SaveFileAs),
                new ActionEntry("ImportGlade", null, Catalog.GetString("_Import from Glade File..."), null, Catalog.GetString("Import UI from a Glade file"), ImportGlade),
                new ActionEntry("ExportGlade", null, Catalog.GetString("_Export to Glade File..."), null, Catalog.GetString("Export UI to a Glade file"), ExportGlade),
                new ActionEntry("Close", Stock.Close, null, "<control>W", Catalog.GetString("Close"), Close),
                new ActionEntry("Quit", Stock.Quit, null, "<control>Q", Catalog.GetString("Quit"), Quit),

                new ActionEntry("EditMenu", null, "_Edit", null, null, null),
                new ActionEntry("Undo", Stock.Undo, null, "<control>Z", Catalog.GetString("Undo previous action"), Undo),
                new ActionEntry("Redo", Stock.Redo, null, "<control><shift>Z", Catalog.GetString("Redo previously-undone action"), Redo),
                new ActionEntry("Cut", Stock.Cut, null, "<control>X", Catalog.GetString("Cut selection to clipboard"), Cut),
                new ActionEntry("Copy", Stock.Copy, null, "<control>C", Catalog.GetString("Copy selection to clipboard"), Copy),
                new ActionEntry("Paste", Stock.Paste, null, "<control>V", Catalog.GetString("Paste from clipboard"), Paste),
                new ActionEntry("Delete", Stock.Delete, null, "Delete", Catalog.GetString("Delete selection"), Delete),
                new ActionEntry("LibraryManager", null, Catalog.GetString("Widget libraries..."), null, null, ShowLibraryManager),

                new ActionEntry("ProjectMenu", null, Catalog.GetString("Project"), null, null, null),
                new ActionEntry("EditProjectIcons", null, Catalog.GetString("Project Icons..."), null, null, EditIcons),

                new ActionEntry("HelpMenu", null, Catalog.GetString("_Help"), null, null, null),
                new ActionEntry("Contents", Stock.Help, Catalog.GetString("_Contents"), "F1", Catalog.GetString("Help"), Help),
                new ActionEntry("About", Stock.About, null, null, Catalog.GetString("About Stetic"), About),
            };

            ActionGroup actions = new ActionGroup("group");

            actions.Add(entries);

            InsertActionGroup(actions, 0);
            AddUiFromString(menuXml);

            // Not yet implemented
            GetAction("/menubar/HelpMenu/Contents").Sensitive = false;

            GetAction("/menubar/FileMenu/Open").IsImportant = true;
            GetAction("/menubar/FileMenu/Save").IsImportant = true;

            // Set up Edit menu sensitivity hackery
            Gtk.MenuItem editMenuItem = (Gtk.MenuItem)GetWidget("/menubar/EditMenu");
            Gtk.Menu     editMenu     = (Gtk.Menu)editMenuItem.Submenu;
            editMenu.Shown  += EditShown;
            editMenu.Hidden += EditHidden;

            Gtk.MenuItem recentMenuItem = (Gtk.MenuItem)GetWidget("/menubar/FileMenu/RecentFiles");
            recentFilesMenu        = new Gtk.Menu();
            recentMenuItem.Submenu = recentFilesMenu;
            recentMenuItem.ShowAll();

            ReadRecentFiles();

            SteticMain.CurrentDesignerChanged += OnDesignerChanged;
            Project = project;
        }
示例#24
0
        public virtual void StartMainLoop()
        {
            Gtk.UIManager uiManager = Tomboy.ActionManager.UI;

            ActionGroup mainMenuActionGroup = new ActionGroup("Mac");

            mainMenuActionGroup.Add(new ActionEntry [] {
                new ActionEntry("WindowMenuAction",
                                null,
                                // Translators: This is the name of "Window" menu in the Mac menubar
                                Catalog.GetString("_Window"),
                                null,
                                null,
                                null)
            });

            uiManager.AddUiFromString(osxMenuXml);
            uiManager.InsertActionGroup(mainMenuActionGroup, 1);

            Gtk.MenuShell mainMenu = uiManager.GetWidget("/MainWindowMenubar") as Gtk.MenuShell;
            mainMenu.Show();
            IgeMacMenu.MenuBar = mainMenu;
            WindowMenuManager.UpdateWindowMenu();

            Gtk.MenuItem about_item = uiManager.GetWidget("/MainWindowMenubar/HelpMenu/ShowAbout") as Gtk.MenuItem;
            Gtk.MenuItem prefs_item = uiManager.GetWidget("/MainWindowMenubar/EditMenu/ShowPreferences") as Gtk.MenuItem;
            Gtk.MenuItem quit_item  = uiManager.GetWidget("/MainWindowMenubar/FileMenu/QuitTomboy") as Gtk.MenuItem;

            (about_item.Child as Gtk.Label).Text = Catalog.GetString("About Tomboy");
            (prefs_item.Child as Gtk.Label).Text = Catalog.GetString("Preferences...");

            IgeMacMenuGroup about_group = IgeMacMenu.AddAppMenuGroup();
            IgeMacMenuGroup prefs_group = IgeMacMenu.AddAppMenuGroup();

            about_group.AddMenuItem(about_item, null);
            prefs_group.AddMenuItem(prefs_item, null);

            IgeMacMenu.QuitMenuItem = quit_item;

            IgeMacDock dock = new IgeMacDock();

            dock.Clicked += delegate(object sender, EventArgs args) {
                if (Tomboy.Tray.TomboyTrayMenu.Visible)
                {
                    Tomboy.Tray.TomboyTrayMenu.Hide();
                }
                else
                {
                    Tomboy.Tray.Tray.ShowMenu(false);
                }
            };
            dock.QuitActivate += delegate(object sender, EventArgs args) { Exit(0); };

            Tomboy.ActionManager ["CloseWindowAction"].Visible = false;

            Gtk.Application.Run();
        }
示例#25
0
        public void ShowWindow()
        {
            Application.Init();

            gxml = new Glade.XML("contactviewer.glade", "MainWindow");
            gxml.Autoconnect(this);

            ActionEntry[] entries = new ActionEntry [] {
                new ActionEntry("FileMenuAction", null, "_File", null, null, null),
                new ActionEntry("OpenAction", Gtk.Stock.Open,
                                "_Open", "<control>O", Catalog.GetString("Open..."), new EventHandler(OnOpenDatabase)),
                new ActionEntry("QuitAction", Gtk.Stock.Quit,
                                "_Quit", "<control>Q", Catalog.GetString("Quit"), new EventHandler(OnQuit)),
                new ActionEntry("HelpMenuAction", null, "_Help", null, null, null),
                new ActionEntry("AboutAction", Gnome.Stock.About,
                                "_About", null, Catalog.GetString("About"), new EventHandler(OnAbout))
            };

            ActionGroup grp = new ActionGroup("MainGroup");

            grp.Add(entries);

            ui_manager = new UIManager();
            ui_manager.InsertActionGroup(grp, 0);
            ui_manager.AddUiFromResource("menu.xml");
            MenubarHolder.Add(ui_manager.GetWidget("/MainMenu"));

            // Fix the TreeView that will contain all contacts
            contact_store = new ListStore(typeof(string), typeof(string));

            ContactList.Model     = contact_store;
            ContactList.RulesHint = true;
            ContactList.AppendColumn(Catalog.GetString("Contacts"), new CellRendererText(), "text", 1);
            ContactList.ButtonReleaseEvent += OnContactSelected;

            // This ListStore will let the user choose what to see in the contact list
            contact_show_type_store = new ListStore(typeof(string), typeof(string));
            contact_show_type_store.AppendValues("DisplayName", Catalog.GetString("Display name"));
            contact_show_type_store.AppendValues("PrimaryEmail", Catalog.GetString("Primary E-mail"));
            contact_show_type_store.AppendValues("SecondEmail", Catalog.GetString("Secondary E-mail"));
            contact_show_type_store.AppendValues("NickName", Catalog.GetString("Nickname"));

            CellRendererText cell = new CellRendererText();

            ListIdentifier.PackStart(cell, false);
            ListIdentifier.AddAttribute(cell, "text", 1);
            ListIdentifier.Model    = contact_show_type_store;
            ListIdentifier.Active   = 0;
            ListIdentifier.Changed += OnContactListTypeChanged;

            MainWindow.Icon         = Beagle.Images.GetPixbuf("contact-icon.png");
            MainWindow.DeleteEvent += OnDeleteEvent;

            LoadDatabase();
            Application.Run();
        }
示例#26
0
        private void InstallInterfaceActions()
        {
            actions = new ActionGroup("Radio");

            actions.Add(new ActionEntry [] {
                new ActionEntry("RefreshRadioAction", Stock.Refresh,
                                Catalog.GetString("Refresh Stations"), null,
                                Catalog.GetString("Refresh stations from the Banshee Radio Web Service"), OnRefreshStations)
            });

            actions.Add(new ActionEntry [] {
                new ActionEntry("CopyUriAction", Stock.Copy,
                                Catalog.GetString("Copy URI"), null,
                                Catalog.GetString("Copy stream URI to clipboard"), null)
            });

            Globals.ActionManager.UI.InsertActionGroup(actions, 0);
            ui_manager_id = Globals.ActionManager.UI.AddUiFromResource("RadioActions.xml");
        }
示例#27
0
        private void SetCategoriesMenu()
        {
            Gtk.Action  edit, editProp, sortMenu;
            UIManager   manager;
            ActionGroup g;

            manager = new UIManager();
            g       = new ActionGroup("CategoriesMenuGroup");

            edit           = new Gtk.Action("EditAction", Mono.Unix.Catalog.GetString("Edit name"), null, "gtk-edit");
            sortMenu       = new Gtk.Action("SortMenuAction", Mono.Unix.Catalog.GetString("Sort Method"), null, null);
            sortByName     = new Gtk.RadioAction("SortByNameAction", Mono.Unix.Catalog.GetString("Sort by name"), null, null, 1);
            sortByStart    = new Gtk.RadioAction("SortByStartAction", Mono.Unix.Catalog.GetString("Sort by start time"), null, null, 2);
            sortByStop     = new Gtk.RadioAction("SortByStopAction", Mono.Unix.Catalog.GetString("Sort by stop time"), null, null, 3);
            sortByDuration = new Gtk.RadioAction("SortByDurationAction", Mono.Unix.Catalog.GetString("Sort by duration"), null, null, 3);
            editProp       = new Gtk.Action("EditPropAction", Mono.Unix.Catalog.GetString("Edit properties"), null, "gtk-edit");

            sortByName.Group     = new GLib.SList(System.IntPtr.Zero);
            sortByStart.Group    = sortByName.Group;
            sortByStop.Group     = sortByName.Group;
            sortByDuration.Group = sortByName.Group;


            g.Add(edit, null);
            g.Add(sortMenu, null);
            g.Add(sortByName, null);
            g.Add(sortByStart, null);
            g.Add(sortByStop, null);
            g.Add(sortByDuration, null);
            g.Add(editProp, null);

            manager.InsertActionGroup(g, 0);

            manager.AddUiFromString("<ui>" +
                                    "  <popup action='CategoryMenu'>" +
                                    "    <menuitem action='EditAction'/>" +
                                    "    <menu action='SortMenuAction'>" +
                                    "      <menuitem action='SortByNameAction'/>" +
                                    "      <menuitem action='SortByStartAction'/>" +
                                    "      <menuitem action='SortByStopAction'/>" +
                                    "      <menuitem action='SortByDurationAction'/>" +
                                    "    </menu>" +
                                    "    <menuitem action='EditPropAction'/>" +
                                    "  </popup>" +
                                    "</ui>");

            categoriesMenu = manager.GetWidget("/CategoryMenu") as Menu;

            edit.Activated           += OnEdit;
            sortByName.Activated     += OnSortActivated;
            sortByStart.Activated    += OnSortActivated;
            sortByStop.Activated     += OnSortActivated;
            sortByDuration.Activated += OnSortActivated;
            editProp.Activated       += delegate(object sender, EventArgs e) {
                EditProperties(GetValueFromPath(Selection.GetSelectedRows()[0]) as Category, null);
            };
        }
示例#28
0
        public override void InitializeIdle()
        {
            ActionGroup mainMenuActionGroup = new ActionGroup("Main");

            mainMenuActionGroup.Add(new ActionEntry [] {
                new ActionEntry("FileMenuAction",
                                null,
                                Catalog.GetString("_File"),
                                null,
                                null,
                                null),
                new ActionEntry("WindowMenuAction",
                                null,
                                Catalog.GetString("_Window"),
                                null,
                                null,
                                null)
            });

            UIManager uiManager = Application.Instance.UIManager;

            uiManager.AddUiFromString(osxMenuXml);
            uiManager.InsertActionGroup(mainMenuActionGroup, 1);

            // This totally doesn't work...is my lib too old?
            IgeMacDock dock = new IgeMacDock();

            dock.Clicked      += delegate(object sender, EventArgs args) { TaskWindow.ShowWindow(); };
            dock.QuitActivate += delegate(object sender, EventArgs args) { Application.Instance.Quit(); };

            MenuShell mainMenu = uiManager.GetWidget("/MainMenu") as MenuShell;

            mainMenu.Show();
            IgeMacMenu.MenuBar = mainMenu;


            MenuItem about_item = uiManager.GetWidget("/TrayIconMenu/AboutAction") as MenuItem;
            MenuItem prefs_item = uiManager.GetWidget("/TrayIconMenu/PreferencesAction") as MenuItem;
            MenuItem quit_item  = uiManager.GetWidget("/TrayIconMenu/QuitAction") as MenuItem;


            IgeMacMenuGroup about_group = IgeMacMenu.AddAppMenuGroup();
            IgeMacMenuGroup prefs_group = IgeMacMenu.AddAppMenuGroup();

            about_group.AddMenuItem(about_item, null);
            prefs_group.AddMenuItem(prefs_item, null);

            IgeMacMenu.QuitMenuItem = quit_item;

            // Hide StatusIcon
            Application.Instance.Tray.Visible = false;
        }
        /// <summary>
        /// Initialize the service, creating the Recorder object, connecting events and adding GUI elements
        /// </summary>
        void IExtensionService.Initialize()
        {
            ServiceManager.SourceManager.ActiveSourceChanged += OnSourceChanged;

            action_service = ServiceManager.Get <InterfaceActionService> ();
            actions        = new ActionGroup("Streamrecorder");


            actions.Add(new ActionEntry[] { new ActionEntry("StreamrecorderAction", null,
                                                            AddinManager.CurrentLocalizer.GetString("_Streamrecorder"), null, null, null),
                                            new ActionEntry("StreamrecorderConfigureAction", Stock.Properties,
                                                            AddinManager.CurrentLocalizer.GetString("_Configure"), null,
                                                            AddinManager.CurrentLocalizer.GetString("Configure the Streamrecorder plugin"), OnConfigure) });

            actions.Add(new ToggleActionEntry[] { new ToggleActionEntry("StreamrecorderEnableAction", Stock.MediaRecord,
                                                                        AddinManager.CurrentLocalizer.GetString("_Activate streamrecorder"), null,
                                                                        AddinManager.CurrentLocalizer.GetString("Activate streamrecorder process"),
                                                                        OnActivateStreamrecorder, recording) });

            action_service.UIManager.InsertActionGroup(actions, 0);
            ui_menu_id = action_service.UIManager.AddUiFromResource("StreamrecorderMenu.xml");
        }
示例#30
0
        private void InstallInterfaceActions()
        {
            actions = new ActionGroup("Recommendation");

            actions.Add(new ToggleActionEntry [] {
                new ToggleActionEntry("ShowRecommendationAction", null,
                                      Catalog.GetString("Show Recommendations"), "<control>R",
                                      Catalog.GetString("Show Recommendations"), OnToggleShow, true)
            });

            Globals.ActionManager.UI.InsertActionGroup(actions, 0);
            ui_manager_id = Globals.ActionManager.UI.AddUiFromResource("RecommendationMenu.xml");
        }