Esempio n. 1
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();
        }
Esempio n. 2
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;
        }
Esempio n. 3
0
        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();
        }