예제 #1
0
        public void Initalize(MainWindow window, MenuItem treerebuild, PropertiesView propertiesView)
        {
            this.window = window;
            this.propertiesView = propertiesView;

            menu = new Menu ();

            treenewitem = new MenuItem ("New Item...");
            treenewitem.Activated += window.OnNewItemActionActivated;
            menu.Add (treenewitem);

            treeadditem = new MenuItem ("Add Item...");
            treeadditem.Activated += window.OnAddItemActionActivated;
            menu.Add (treeadditem);

            treedelete = new MenuItem ("Delete");
            treedelete.Activated += window.OnDeleteActionActivated;
            menu.Add (treedelete);

            seperator = new SeparatorMenuItem ();
            menu.Add (seperator);

            treeopenfile = new MenuItem ("Open File");
            treeopenfile.Activated += delegate {
                List<TreeIter> iters;
                List<Gdk.Pixbuf> icons;
                GetSelectedTreePath(out iters, out icons);

                if(icons[0] != ICON_BASE)
                    Process.Start(window._controller.GetFullPath(GetPathFromIter(iters[0])));
                else
                    Process.Start(openedProject);
            };
            menu.Add (treeopenfile);

            treeopenfilelocation = new MenuItem ("Open File Location");
            treeopenfilelocation.Activated += delegate {
                List<TreeIter> iters;
                List<Gdk.Pixbuf> icons;
                GetSelectedTreePath(out iters, out icons);

                if(icons[0] != ICON_BASE)
                    Process.Start(System.IO.Path.GetDirectoryName(window._controller.GetFullPath(GetPathFromIter(iters[0]))));
                else
                    Process.Start(System.IO.Path.GetDirectoryName(window._controller.GetFullPath("")));
            };
            menu.Add (treeopenfilelocation);

            seperator2 = new SeparatorMenuItem ();
            menu.Add (seperator2);

            menu.Add (treerebuild);
        }
예제 #2
0
        public void Initalize(MainWindow window, MenuItem treerebuild, PropertiesView propertiesView)
        {
            this.window = window;
            this.propertiesView = propertiesView;

            menu = new Menu ();
            addmenu = new Menu();

            treeadd = new MenuItem("Add");
            treeadd.Submenu = addmenu;

            treeaddseperator = new SeparatorMenuItem ();

            treenewitem = new MenuItem ("New Item...");
            treenewitem.ButtonPressEvent += delegate(object o, ButtonPressEventArgs args)
                { menu.Popdown(); window.OnNewItemActionActivated(o, args); };

            treenewfolder = new MenuItem ("New Folder...");
            treenewfolder.ButtonPressEvent += delegate(object o, ButtonPressEventArgs args)
                { menu.Popdown(); window.OnNewFolderActionActivated(o, args); };

            treeadditem = new MenuItem ("Existing Item...");
            treeadditem.ButtonPressEvent += window.OnAddItemActionActivated;

            treeaddfolder = new MenuItem ("Existing Folder...");
            treeaddfolder.ButtonPressEvent += window.OnAddFolderActionActivated;
            
            treerename = new MenuItem ("Rename");
            treerename.Activated += window.OnRenameActionActivated;
            
            treerenameseparator = new SeparatorMenuItem();

            treedelete = new MenuItem ("Delete");
            treedelete.Activated += window.OnDeleteActionActivated;

            treeopenfile = new MenuItem ("Open");
            treeopenfile.Activated += delegate {
                List<TreeIter> iters;
                List<string> ids;
                GetSelectedTreePath(out iters, out ids);

                if (ids.Count != 1)
                    return;

                string start = openedProject;

                if(ids[0] != ID_BASE)
                    start = window._controller.GetFullPath(GetPathFromIter(iters[0]));

                #if LINUX
                Process.Start("mimeopen", "-n " + start);
                #else
                Process.Start(start);
                #endif
            };

            treeopenfilelocation = new MenuItem ("Open Item Directory");
            treeopenfilelocation.Activated += delegate {
                List<TreeIter> iters;
                List<string> ids;
                GetSelectedTreePath(out iters, out ids);

                if(ids[0] != ID_BASE)
                    Process.Start(System.IO.Path.GetDirectoryName(window._controller.GetFullPath(GetPathFromIter(iters[0]))));
                else
                    Process.Start(System.IO.Path.GetDirectoryName(window._controller.GetFullPath("")));
            };

            addmenu.Add (treenewitem);
            addmenu.Add (treenewfolder);
            addmenu.Add (new SeparatorMenuItem ());
            addmenu.Add (treeadditem);
            addmenu.Add (treeaddfolder);

            menu.Add (treeopenfile);
            menu.Add (treeadd);
            menu.Add (treeaddseperator);
            menu.Add (treeopenfilelocation);
            menu.Add (treerebuild);
            menu.Add (new SeparatorMenuItem ());
            menu.Add (treerename);
            menu.Add (treerenameseparator);
            menu.Add (treedelete);
        }
예제 #3
0
        public void Initalize(MainWindow window, MenuItem treerebuild, PropertiesView propertiesView)
        {
            this.window         = window;
            this.propertiesView = propertiesView;

            menu    = new Menu();
            addmenu = new Menu();

            treeadd         = new MenuItem("Add");
            treeadd.Submenu = addmenu;

            treeaddseperator = new SeparatorMenuItem();

            treenewitem = new MenuItem("New Item...");
            treenewitem.ButtonPressEvent += delegate(object o, ButtonPressEventArgs args)
            { menu.Popdown(); window.OnNewItemActionActivated(o, args); };

            treenewfolder = new MenuItem("New Folder...");
            treenewfolder.ButtonPressEvent += delegate(object o, ButtonPressEventArgs args)
            { menu.Popdown(); window.OnNewFolderActionActivated(o, args); };

            treeadditem = new MenuItem("Existing Item...");
            treeadditem.ButtonPressEvent += window.OnAddItemActionActivated;

            treeaddfolder = new MenuItem("Existing Folder...");
            treeaddfolder.ButtonPressEvent += window.OnAddFolderActionActivated;

            treerename            = new MenuItem("Rename");
            treerename.Activated += window.OnRenameActionActivated;

            treedelete            = new MenuItem("Delete");
            treedelete.Activated += window.OnDeleteActionActivated;

            treeopenfile            = new MenuItem("Open");
            treeopenfile.Activated += delegate {
                List <TreeIter> iters;
                List <string>   ids;
                GetSelectedTreePath(out iters, out ids);

                if (ids.Count != 1)
                {
                    return;
                }

                string start = openedProject;

                if (ids[0] != ID_BASE)
                {
                    start = window._controller.GetFullPath(GetPathFromIter(iters[0]));
                }

                #if LINUX
                Process.Start("xdg-open", start);
                #else
                Process.Start(start);
                #endif
            };

            treeopenfilelocation            = new MenuItem("Open Item Directory");
            treeopenfilelocation.Activated += delegate {
                List <TreeIter> iters;
                List <string>   ids;
                GetSelectedTreePath(out iters, out ids);

                if (ids[0] != ID_BASE)
                {
                    Process.Start(System.IO.Path.GetDirectoryName(window._controller.GetFullPath(GetPathFromIter(iters[0]))));
                }
                else
                {
                    Process.Start(System.IO.Path.GetDirectoryName(window._controller.GetFullPath("")));
                }
            };

            addmenu.Add(treenewitem);
            addmenu.Add(treenewfolder);
            addmenu.Add(new SeparatorMenuItem());
            addmenu.Add(treeadditem);
            addmenu.Add(treeaddfolder);

            menu.Add(treeopenfile);
            menu.Add(treeadd);
            menu.Add(treeaddseperator);
            menu.Add(treeopenfilelocation);
            menu.Add(treerebuild);
            menu.Add(new SeparatorMenuItem());
            menu.Add(treerename);
            menu.Add(treedelete);
        }
예제 #4
0
        public void Initalize(MainWindow window, MenuItem treerebuild, PropertiesView propertiesView)
        {
            this.window         = window;
            this.propertiesView = propertiesView;

            menu = new Menu();

            treenewitem            = new MenuItem("New Item...");
            treenewitem.Activated += window.OnNewItemActionActivated;
            menu.Add(treenewitem);

            treeadditem            = new MenuItem("Add Item...");
            treeadditem.Activated += window.OnAddItemActionActivated;
            menu.Add(treeadditem);

            treedelete            = new MenuItem("Delete");
            treedelete.Activated += window.OnDeleteActionActivated;
            menu.Add(treedelete);

            seperator = new SeparatorMenuItem();
            menu.Add(seperator);

            treeopenfile            = new MenuItem("Open File");
            treeopenfile.Activated += delegate {
                List <TreeIter>   iters;
                List <Gdk.Pixbuf> icons;
                GetSelectedTreePath(out iters, out icons);

                if (icons[0] != ICON_BASE)
                {
                    Process.Start(window._controller.GetFullPath(GetPathFromIter(iters[0])));
                }
                else
                {
                    Process.Start(openedProject);
                }
            };
            menu.Add(treeopenfile);

            treeopenfilelocation            = new MenuItem("Open File Location");
            treeopenfilelocation.Activated += delegate {
                List <TreeIter>   iters;
                List <Gdk.Pixbuf> icons;
                GetSelectedTreePath(out iters, out icons);

                if (icons[0] != ICON_BASE)
                {
                    Process.Start(System.IO.Path.GetDirectoryName(window._controller.GetFullPath(GetPathFromIter(iters[0]))));
                }
                else
                {
                    Process.Start(System.IO.Path.GetDirectoryName(window._controller.GetFullPath("")));
                }
            };
            menu.Add(treeopenfilelocation);

            seperator2 = new SeparatorMenuItem();
            menu.Add(seperator2);

            menu.Add(treerebuild);
        }