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(); }
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; }
private void AdjustMainMenu() { UIManager ui = interface_action_service.UIManager; MenuItem about_item = ui.GetWidget("/MainMenu/HelpMenu/About") as MenuItem; MenuItem prefs_item = ui.GetWidget("/MainMenu/EditMenu/Preferences") as MenuItem; MenuItem quit_item = ui.GetWidget("/MainMenu/MediaMenu/Quit") as MenuItem; IgeMacMenuGroup about_group = IgeMacMenu.AddAppMenuGroup(); IgeMacMenuGroup prefs_group = IgeMacMenu.AddAppMenuGroup(); IgeMacMenu.QuitMenuItem = quit_item; about_group.AddMenuItem(about_item, null); prefs_group.AddMenuItem(prefs_item, null); }
public static void Main() { Application.Init(); if (!modFunctions.RunningLock()) { return; } GLib.ExceptionManager.UnhandledException += unhandledException; System.Threading.Thread.CurrentThread.CurrentUICulture = System.Globalization.CultureInfo.GetCultureInfo(1033); if (CurrentOS.IsMac) { try { string sOldConfig = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), modFunctions.CompanyName); if (Directory.Exists(sOldConfig)) { modFunctions.MoveDirectory(sOldConfig, Path.Combine(modFunctions.LocalAppData, modFunctions.CompanyName)); AppSettings cSettings = new AppSettings(); cSettings.HistoryDir = modFunctions.AppData; cSettings.Save(); Directory.Delete(sOldConfig, true); } } catch (Exception) { } } try { string sUpdatePath = Path.Combine(modFunctions.AppData, "Setup"); if (CurrentOS.IsMac) { sUpdatePath += ".dmg"; } else if (CurrentOS.IsLinux) { sUpdatePath += ".bz2.sh"; } if (File.Exists(sUpdatePath)) { File.Delete(sUpdatePath); } } catch (Exception) { } fMain = new frmMain(); if (CurrentOS.IsMac) { try { ApplicationEvents.Quit += delegate(object sender, ApplicationQuitEventArgs e) { Application.Quit(); e.Handled = true; }; ApplicationEvents.Reopen += delegate(object sender, ApplicationEventArgs e) { fMain.ShowFromTray(); e.Handled = true; }; ApplicationEvents.Prefs += delegate(object sender, ApplicationEventArgs e) { fMain.cmdConfig_Click(new object(), new EventArgs()); e.Handled = true; }; } catch (Exception) { } bool bMenu = false; try { IgeMacMenuGroup appGroup = IgeMacMenu.AddAppMenuGroup(); if (appGroup != null) { MenuItem mnuAbout = new MenuItem(); mnuAbout.Activated += delegate(object sender, EventArgs e) { fMain.cmdAbout_Click(new object(), new EventArgs()); }; appGroup.AddMenuItem(mnuAbout, "About " + modFunctions.ProductName); appGroup.AddMenuItem(new MenuItem(), "-"); MenuItem mnuHistory = new MenuItem(); mnuHistory.Activated += delegate(object sender, EventArgs e) { fMain.cmdHistory_Click(new object(), new EventArgs()); }; appGroup.AddMenuItem(mnuHistory, "Usage History"); MenuItem mnuConfig = new MenuItem(); mnuConfig.Activated += delegate(object sender, EventArgs e) { fMain.cmdConfig_Click(new object(), new EventArgs()); }; appGroup.AddMenuItem(mnuConfig, "Preferences..."); } MenuBar srtMenu = new MenuBar(); Menu helpMenu = new Menu(); MenuItem helpMenuItem = new MenuItem("Help"); MenuItem mnuFAQ = new MenuItem("Frequently Asked Questions"); mnuFAQ.Activated += delegate(object sender, EventArgs e) { System.Diagnostics.Process.Start("http://srt.realityripple.com/faq.php"); }; helpMenu.Append(mnuFAQ); mnuFAQ.Show(); MenuItem mnuChanges = new MenuItem("What's New in " + modFunctions.ProductName + " v" + modFunctions.ProductVersion); mnuChanges.Activated += delegate(object sender, EventArgs e) { System.Diagnostics.Process.Start("http://srt.realityripple.com/For-MONO/changes.php"); }; helpMenu.Append(mnuChanges); mnuChanges.Show(); MenuItem mnuHelpSpace1 = new MenuItem("-"); helpMenu.Append(mnuHelpSpace1); mnuHelpSpace1.Show(); MenuItem mnuWebsite = new MenuItem("Visit the " + modFunctions.ProductName + " Home Page"); mnuWebsite.Activated += delegate(object sender, EventArgs e) { System.Diagnostics.Process.Start("http://srt.realityripple.com/For-MONO/mac.php"); }; helpMenu.Append(mnuWebsite); mnuWebsite.Show(); MenuItem mnuBug = new MenuItem("Report a Bug"); mnuBug.Activated += delegate(object sender, EventArgs e) { System.Diagnostics.Process.Start("http://bugs.realityripple.com/bug_report_page.php?project_id=2"); }; helpMenu.Append(mnuBug); mnuBug.Show(); helpMenuItem.Submenu = helpMenu; helpMenu.Show(); srtMenu.Append(helpMenuItem); helpMenuItem.Show(); IgeMacMenu.MenuBar = srtMenu; srtMenu.Show(); bMenu = true; } catch (Exception) { } if (bMenu == false) { try { MenuBar srtMenu = new MenuBar(); Menu helpMenu = new Menu(); MenuItem helpMenuItem = new MenuItem("Help"); MenuItem mnuFAQ = new MenuItem("Frequently Asked Questions"); mnuFAQ.Activated += delegate(object sender, EventArgs e) { System.Diagnostics.Process.Start("http://srt.realityripple.com/faq.php"); }; helpMenu.Append(mnuFAQ); mnuFAQ.Show(); MenuItem mnuChanges = new MenuItem("What's New in " + modFunctions.ProductName + " v" + modFunctions.ProductVersion); mnuChanges.Activated += delegate(object sender, EventArgs e) { System.Diagnostics.Process.Start("http://srt.realityripple.com/For-MONO/changes.php"); }; helpMenu.Append(mnuChanges); mnuChanges.Show(); SeparatorMenuItem mnuHelpSpace1 = new SeparatorMenuItem(); helpMenu.Append(mnuHelpSpace1); mnuHelpSpace1.Show(); MenuItem mnuWebsite = new MenuItem("Visit the " + modFunctions.ProductName + " Home Page"); mnuWebsite.Activated += delegate(object sender, EventArgs e) { System.Diagnostics.Process.Start("http://srt.realityripple.com/For-MONO/mac.php"); }; helpMenu.Append(mnuWebsite); mnuWebsite.Show(); MenuItem mnuBug = new MenuItem("Report a Bug"); mnuBug.Activated += delegate(object sender, EventArgs e) { System.Diagnostics.Process.Start("http://bugs.realityripple.com/bug_report_page.php?project_id=2"); }; helpMenu.Append(mnuBug); mnuBug.Show(); helpMenuItem.Submenu = helpMenu; helpMenu.Show(); srtMenu.Append(helpMenuItem); helpMenuItem.Show(); GtkOSXApplication.MenuBar = srtMenu; srtMenu.Show(); GtkMacMenuGroup appGroup = GtkOSXApplication.AddAppMenuGroup(); if (appGroup != null) { MenuItem mnuAbout = new MenuItem("About " + modFunctions.ProductName); mnuAbout.Activated += delegate(object sender, EventArgs e) { fMain.cmdAbout_Click(new object(), new EventArgs()); }; appGroup.AddMenuItem(mnuAbout); mnuAbout.Show(); SeparatorMenuItem mnuAppSpace1 = new SeparatorMenuItem(); appGroup.AddMenuItem(mnuAppSpace1); mnuAppSpace1.Show(); MenuItem mnuHistory = new MenuItem("Usage History"); mnuHistory.Activated += delegate(object sender, EventArgs e) { fMain.cmdHistory_Click(new object(), new EventArgs()); }; appGroup.AddMenuItem(mnuHistory); mnuHistory.Show(); MenuItem mnuConfig = new MenuItem("Preferences..."); mnuConfig.Activated += delegate(object sender, EventArgs e) { fMain.cmdConfig_Click(new object(), new EventArgs()); }; appGroup.AddMenuItem(mnuConfig); mnuConfig.Show(); SeparatorMenuItem mnuAppSpace2 = new SeparatorMenuItem(); appGroup.AddMenuItem(mnuAppSpace2); mnuAppSpace2.Show(); } bMenu = true; } catch (Exception) { } } } fMain.Show(); Application.Run(); }