public void CreateMainMenu(Gtk.Menu menu) { MenuItem show_pad = (MenuItem)menu.Children[0]; menu.Remove(show_pad); menu.Append(ToolBar.CreateMenuItem()); menu.Append(PixelGrid.CreateMenuItem()); menu.Append(Rulers.CreateMenuItem()); menu.Append(ImageTabs.CreateMenuItem()); menu.AppendSeparator(); ImageMenuItem zoomin = ZoomIn.CreateAcceleratedMenuItem(Gdk.Key.plus, Gdk.ModifierType.ControlMask); zoomin.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.equal, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); zoomin.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.equal, 0, AccelFlags.Visible)); zoomin.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.KP_Add, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); zoomin.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.KP_Add, 0, AccelFlags.Visible)); menu.Append(zoomin); ImageMenuItem zoomout = ZoomOut.CreateAcceleratedMenuItem(Gdk.Key.minus, Gdk.ModifierType.ControlMask); zoomout.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.minus, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); zoomout.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.minus, 0, AccelFlags.Visible)); zoomout.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.KP_Subtract, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); zoomout.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.KP_Subtract, 0, AccelFlags.Visible)); menu.Append(zoomout); ImageMenuItem actualsize = ActualSize.CreateAcceleratedMenuItem(Gdk.Key.Key_0, Gdk.ModifierType.ControlMask); actualsize.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.A, Gdk.ModifierType.ControlMask | Gdk.ModifierType.ShiftMask, AccelFlags.Visible)); menu.Append(actualsize); menu.Append(ZoomToWindow.CreateAcceleratedMenuItem(Gdk.Key.B, Gdk.ModifierType.ControlMask)); //menu.Append (ZoomToSelection.CreateAcceleratedMenuItem (Gdk.Key.B, Gdk.ModifierType.ControlMask | Gdk.ModifierType.ShiftMask)); menu.Append(Fullscreen.CreateAcceleratedMenuItem(Gdk.Key.F11, Gdk.ModifierType.None)); menu.AppendSeparator(); Gtk.Action unit_action = new Gtk.Action("RulerUnits", Mono.Unix.Catalog.GetString("Ruler Units"), null, null); Menu unit_menu = (Menu)menu.AppendItem(unit_action.CreateSubMenuItem()).Submenu; unit_menu.Append(Pixels.CreateMenuItem()); unit_menu.Append(Inches.CreateMenuItem()); unit_menu.Append(Centimeters.CreateMenuItem()); menu.AppendSeparator(); menu.Append(show_pad); }
void OnPopulatePopup(object o, PopulatePopupArgs args) { Menu menu = args.Menu; MenuItem item; item = new SeparatorMenuItem(); item.Show(); menu.Prepend(item); item = new ImageMenuItem(Stock.Redo, null) { Sensitive = UndoManager.CanRedo }; item.Activated += delegate { UndoManager.Redo(); }; item.AddAccelerator("activate", accel_group, (uint)Gdk.Key.z, Gdk.ModifierType.ControlMask | Gdk.ModifierType.ShiftMask, AccelFlags.Visible); item.Show(); menu.Prepend(item); item = new ImageMenuItem(Stock.Undo, null) { Sensitive = UndoManager.CanUndo }; item.Activated += delegate { UndoManager.Undo(); }; item.AddAccelerator("activate", accel_group, (uint)Gdk.Key.z, Gdk.ModifierType.ControlMask, AccelFlags.Visible); item.Show(); menu.Prepend(item); }
//build menubar void BuildMenuBar() { //create new menu bar menuBar = new MenuBar(); //create 'file' dropdown filemenu = new Gtk.Menu(); file = new Gtk.MenuItem("File"); file.Submenu = filemenu; agr = new AccelGroup(); mainWindowTracker.AddAccelGroup(agr); //add new button to file dropdown newi = new ImageMenuItem(Stock.New, agr); newi.AddAccelerator("activate", agr, new AccelKey( Gdk.Key.n, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); newi.Activated += NewCrop; filemenu.Append(newi); //add hr line sep = new SeparatorMenuItem(); filemenu.Append(sep); //add close button exit = new ImageMenuItem(Stock.Quit, agr); exit.AddAccelerator("activate", agr, new AccelKey( Gdk.Key.q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); //set up exit button exit.Activated += OnActivated; filemenu.Append(exit); //add to menu bar menuBar.Append(file); //add new vbox vbox = new VBox(false, 2); vbox.PackStart(menuBar, true, true, 0); //add our event box that contains our image vbox.PackStart(toCropBox); //add our upload button hbox = new HBox(); uploadButton = new Gtk.Button(); uploadButton.Label = "Upload Image"; uploadButton.Clicked += UploadCroppedImage; hbox.PackEnd(uploadButton, false, false, 2); vbox.PackEnd(hbox, false, false, 5); //finally add to main window mainWindowTracker.Add(vbox); mainWindowTracker.ShowAll(); }
public static Gtk.ImageMenuItem CreateAcceleratedMenuItem(this Gtk.Action action, Gdk.Key key, Gdk.ModifierType mods) { ImageMenuItem item = (ImageMenuItem)action.CreateMenuItem(); (item.Child as AccelLabel).AccelWidget = item; item.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(key, mods, AccelFlags.Visible)); return(item); }
/// <summary>Populate the context menu from the descriptions passed in.</summary> /// <param name="menuDescriptions">Menu descriptions for each menu item.</param> public void PopulateContextMenu(List <MenuDescriptionArgs> menuDescriptions) { ClearPopup(); foreach (MenuDescriptionArgs Description in menuDescriptions) { ImageMenuItem item = new ImageMenuItem(Description.Name); if (!String.IsNullOrEmpty(Description.ResourceNameForImage) && hasResource(Description.ResourceNameForImage)) { item.Image = new Image(null, Description.ResourceNameForImage); } if (!String.IsNullOrEmpty(Description.ShortcutKey)) { string keyName = String.Empty; Gdk.ModifierType modifier = Gdk.ModifierType.None; string[] keyNames = Description.ShortcutKey.Split(new Char[] { '+' }); foreach (string name in keyNames) { if (name == "Ctrl") { modifier |= Gdk.ModifierType.ControlMask; } else if (name == "Shift") { modifier |= Gdk.ModifierType.ShiftMask; } else if (name == "Alt") { modifier |= Gdk.ModifierType.Mod1Mask; } else if (name == "Del") { keyName = "Delete"; } else { keyName = name; } } try { Gdk.Key accelKey = (Gdk.Key)Enum.Parse(typeof(Gdk.Key), keyName, false); item.AddAccelerator("activate", accel, (uint)accelKey, modifier, AccelFlags.Visible); } catch { } } item.Activated += Description.OnClick; Popup.Append(item); } if (Popup.AttachWidget == null) { Popup.AttachToWidget(treeview1, null); } Popup.ShowAll(); }
// Create "View" menu MenuItem CreateViewMenu(AccelGroup agr) { MenuItem view = new MenuItem("_View"); Menu viewMenu = new Menu(); view.Submenu = viewMenu; powerVisible = new CheckMenuItem("Show power _graph"); powerVisible.Active = settings.PowerGraphVisible; powerVisible.Activated += OnShowPowerGraph; powerVisible.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.F3, Gdk.ModifierType.None, AccelFlags.Visible)); viewMenu.Append(powerVisible); viewMenu.Append(new SeparatorMenuItem()); MenuItem zoomIn = new ImageMenuItem(Stock.ZoomIn, agr); zoomIn.Activated += (obj, evt) => debugPane.PowerView.ZoomIn(); zoomIn.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.plus, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); viewMenu.Append(zoomIn); MenuItem zoomOut = new ImageMenuItem(Stock.ZoomOut, agr); zoomOut.Activated += (obj, evt) => debugPane.PowerView.ZoomOut(); zoomOut.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.minus, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); viewMenu.Append(zoomOut); MenuItem zoomFit = new ImageMenuItem(Stock.ZoomFit, agr); zoomFit.Activated += (obj, evt) => debugPane.PowerView.ZoomFit(); zoomFit.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.Key_0, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); viewMenu.Append(zoomFit); MenuItem zoomFull = new ImageMenuItem(Stock.Zoom100, agr); zoomFull.Activated += (obj, evt) => debugPane.PowerView.ZoomFull(); zoomFull.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.Key_1, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); viewMenu.Append(zoomFull); return(view); }
/// <summary> /// Add an action (on context menu) on the text area. /// </summary> /// <param name="menuItemText">The text of the menu item</param> /// <param name="onClick">The event handler to call when menu is selected</param> /// <param name="shortcut">The shortcut string</param> public MenuItem AddContextActionWithAccel(string menuItemText, System.EventHandler onClick, string shortcut) { ImageMenuItem item = new ImageMenuItem(menuItemText); if (!string.IsNullOrEmpty(shortcut)) { string keyName = string.Empty; Gdk.ModifierType modifier = Gdk.ModifierType.None; string[] keyNames = shortcut.Split(new char[] { '+' }); foreach (string name in keyNames) { if (name == "Ctrl") { modifier |= Gdk.ModifierType.ControlMask; } else if (name == "Shift") { modifier |= Gdk.ModifierType.ShiftMask; } else if (name == "Alt") { modifier |= Gdk.ModifierType.Mod1Mask; } else if (name == "Del") { keyName = "Delete"; } else { keyName = name; } } try { Gdk.Key accelKey = (Gdk.Key)Enum.Parse(typeof(Gdk.Key), keyName, false); item.AddAccelerator("activate", accel, (uint)accelKey, modifier, AccelFlags.Visible); } catch { } } if (onClick != null) { item.Activated += onClick; } popupMenu.Append(item); popupMenu.ShowAll(); return(item); }
void AddMenu() { var mb = new MenuBar(); var filemenu = new Menu(); var file = new MenuItem("文件") { Submenu = filemenu }; var agr = new AccelGroup(); AddAccelGroup(agr); var newi = new ImageMenuItem(Stock.New, agr); newi.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.n, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); filemenu.Append(newi); var open = new ImageMenuItem(Stock.Open, agr); open.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.n, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); filemenu.Append(open); var sep = new SeparatorMenuItem(); filemenu.Append(sep); var exit = new ImageMenuItem(Stock.Quit, agr); exit.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); //var exit = new MenuItem("退出"); exit.Activated += (sender, args) => { Application.Quit(); }; filemenu.Append(exit); mb.Append(file); //var _windowBox = new VBox(false, 2); _windowBox.PackStart(mb, false, false, 0); //_windowBox.PackStart(new Label("2333"), false, false, 0); //Add(_windowBox); }
private MenuItem MakeFileMenu() { Menu menu = new Menu(); AccelGroup group = new AccelGroup(); window.AddAccelGroup(group); ImageMenuItem quit = new ImageMenuItem(Stock.Quit, group); quit.AddAccelerator("activate", group, new AccelKey(Gdk.Key.q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); quit.Activated += new EventHandler(OnFileQuit); menu.Append(quit); MenuItem label = new MenuItem("_File"); label.Submenu = menu; return(label); }
public void CreateMainMenu(Gtk.Menu menu) { menu.Append(Undo.CreateAcceleratedMenuItem(Gdk.Key.Z, Gdk.ModifierType.ControlMask)); ImageMenuItem redo = Redo.CreateAcceleratedMenuItem(Gdk.Key.Z, Gdk.ModifierType.ControlMask | Gdk.ModifierType.ShiftMask); redo.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.Y, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); menu.Append(redo); menu.AppendSeparator(); menu.Append(Cut.CreateAcceleratedMenuItem(Gdk.Key.X, Gdk.ModifierType.ControlMask)); menu.Append(Copy.CreateAcceleratedMenuItem(Gdk.Key.C, Gdk.ModifierType.ControlMask)); menu.Append(CopyMerged.CreateAcceleratedMenuItem(Gdk.Key.C, Gdk.ModifierType.ControlMask | Gdk.ModifierType.ShiftMask)); menu.Append(Paste.CreateAcceleratedMenuItem(Gdk.Key.V, Gdk.ModifierType.ControlMask)); menu.Append(PasteIntoNewLayer.CreateAcceleratedMenuItem(Gdk.Key.V, Gdk.ModifierType.ShiftMask | Gdk.ModifierType.ControlMask)); menu.Append(PasteIntoNewImage.CreateAcceleratedMenuItem(Gdk.Key.V, Gdk.ModifierType.Mod1Mask | Gdk.ModifierType.ControlMask)); menu.AppendSeparator(); menu.Append(SelectAll.CreateAcceleratedMenuItem(Gdk.Key.A, Gdk.ModifierType.ControlMask)); ImageMenuItem deslect = Deselect.CreateAcceleratedMenuItem(Gdk.Key.A, Gdk.ModifierType.ControlMask | Gdk.ModifierType.ShiftMask); deslect.AddAccelerator("activate", PintaCore.Actions.AccelGroup, new AccelKey(Gdk.Key.D, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); menu.Append(deslect); menu.AppendSeparator(); menu.Append(EraseSelection.CreateAcceleratedMenuItem(Gdk.Key.Delete, Gdk.ModifierType.None)); menu.Append(FillSelection.CreateAcceleratedMenuItem(Gdk.Key.BackSpace, Gdk.ModifierType.None)); menu.Append(InvertSelection.CreateAcceleratedMenuItem(Gdk.Key.I, Gdk.ModifierType.ControlMask)); menu.AppendSeparator(); Gtk.Action menu_action = new Gtk.Action("Palette", Mono.Unix.Catalog.GetString("Palette"), null, null); Menu palette_menu = (Menu)menu.AppendItem(menu_action.CreateSubMenuItem()).Submenu; palette_menu.Append(LoadPalette.CreateMenuItem()); palette_menu.Append(SavePalette.CreateMenuItem()); palette_menu.Append(ResetPalette.CreateMenuItem()); palette_menu.Append(ResizePalette.CreateMenuItem()); menu.AppendSeparator(); menu.Append(AddinManager.CreateMenuItem()); }
private Menu AddDefaultMenus(Menu menu) { AccelGroup agr = new AccelGroup(); menu.Append(new SeparatorMenuItem()); ImageMenuItem menuItemPrefs = new ImageMenuItem(Stock.Preferences, agr); menuItemPrefs.Activated += OnPrefs; menuItemPrefs.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); menu.Append(menuItemPrefs); ImageMenuItem menuItemHelp = new ImageMenuItem(Stock.Help, agr); menuItemHelp.Activated += OnHelp; menuItemHelp.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); menu.Append(menuItemHelp); ImageMenuItem menuItemInfo = new ImageMenuItem(Stock.About, agr); menuItemInfo.Activated += OnInfo; menuItemInfo.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); menu.Append(menuItemInfo); ImageMenuItem menuItemQuit = new ImageMenuItem(Stock.Quit, agr); menuItemQuit.Activated += OnQuit; menuItemQuit.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); menu.Append(menuItemQuit); return(menu); }
public static void BuildMenu(MenuItem bookmark_menu) { Menu aux = (Menu)bookmark_menu.Submenu; foreach (Widget w in aux.Children) { aux.Remove(w); } menu_to_id.Clear(); //adding Default Items: AccelGroup bk_grp = new AccelGroup(); _Browser.window1.AddAccelGroup(bk_grp); ImageMenuItem item; item = new ImageMenuItem(ADD_BANNER); //item.Image = new Gtk.Image (Stock.Add,IconSize.Menu); item.AddAccelerator("activate", bk_grp, new AccelKey(Gdk.Key.D, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); item.Activated += on_add_bookmark_activated; aux.Append(item); //edit item = new ImageMenuItem(EDIT_BANNER); item.AddAccelerator("activate", bk_grp, new AccelKey(Gdk.Key.M, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); item.Activated += on_edit_bookmark_activated; //item.Image = new Gtk.Image (Stock.Edit,Iconsize,Menu); aux.Append(item); // and finally the separtor aux.Append(new SeparatorMenuItem()); BuildMenuHelper(aux, root_group); aux.ShowAll(); }
private MenuItem MakeEditMenu() { Menu menu = new Menu(); AccelGroup group = new AccelGroup(); window.AddAccelGroup(group); ImageMenuItem copy = new ImageMenuItem(Stock.Copy, group); copy.AddAccelerator("activate", group, new AccelKey(Gdk.Key.c, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); //copy.Activated += new EventHandler(OnEditCopy); menu.Append(copy); ImageMenuItem selectAll = new ImageMenuItem(Stock.SelectAll, group); selectAll.AddAccelerator("activate", group, new AccelKey(Gdk.Key.a, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); //selectAll.Activated += new EventHandler(OnEditSelectAll); menu.Append(selectAll); MenuItem label = new MenuItem("_Edit"); label.Submenu = menu; return(label); }
void CreateMenuBar() { topMenu = new Gtk.MenuBar(); Menu fileMenu = new Menu(); MenuItem file = new MenuItem("File"); file.Submenu = fileMenu; AccelGroup agr = new AccelGroup(); AddAccelGroup(agr); ImageMenuItem exit = new ImageMenuItem(Stock.Quit, agr); exit.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); exit.Activated += onButtonPressEvent; fileMenu.Append(exit); topMenu.Append(file); ((VBox)fullViewVBox).PackStart(topMenu, false, false, 0); ((Gtk.Box.BoxChild)fullViewVBox [topMenu]).Position = 0; topMenu.ShowAll(); }
void GenerateNewMenu(Connection conn) { Gtk.Menu newMenu = new Gtk.Menu(); foreach (ViewPlugin vp in Global.Plugins.ServerViewPlugins) { if (conn.ServerViews.Contains(vp.GetType().ToString())) { ImageMenuItem menuitem = new ImageMenuItem(vp.MenuLabel, newAccelGroup); menuitem.AddAccelerator("activate", newAccelGroup, vp.MenuKey); Gtk.Label l = (Gtk.Label)menuitem.Child; l.Text = vp.MenuLabel; menuitem.Image = new Gtk.Image(vp.Icon); menuitem.Activated += OnNewMenuItemActivate; menuitem.Show(); newMenu.Append(menuitem); } } newMenuItem.Submenu = newMenu; newMenuToolButton.Menu = newMenu; }
public MainWindow() : base(Gtk.WindowType.Toplevel) { /* Set up ghostscript calls for progress update */ m_ghostscript = new ghostsharp(); m_ghostscript.gsUpdateMain += new ghostsharp.gsCallBackMain(gsProgress); m_ghostscript.gsIOUpdateMain += new ghostsharp.gsIOCallBackMain(gsIO); m_ghostscript.gsDLLProblemMain += new ghostsharp.gsDLLProblem(gsDLL); DeleteEvent += delegate { Application.Quit(); }; m_currpage = 0; m_gsoutput = new gsOutput(); m_gsoutput.Activate(); m_tempfiles = new List <TempFile>(); m_thumbnails = new List <DocPage>(); m_docPages = new Pages(); m_page_sizes = new List <pagesizes_t>(); m_page_scroll_pos = new List <int>(); m_file_open = false; m_doczoom = 1.0; m_init_done = false; m_busy_render = true; m_firstime = true; m_aa = true; m_aa_change = false; m_zoom_txt = "100"; m_page_txt = "1"; m_ignore_scroll_change = false; /* Set up Vbox in main window */ this.SetDefaultSize(500, 700); this.Title = "GhostPDL Mono GTK Demo"; m_GtkvBoxMain = new VBox(false, 0); this.Add(m_GtkvBoxMain); /* Add Menu Bar to vBox */ Gtk.MenuBar menu_bar = new MenuBar(); Menu filemenu = new Menu(); MenuItem file = new MenuItem("File"); file.Submenu = filemenu; AccelGroup agr = new AccelGroup(); AddAccelGroup(agr); ImageMenuItem openi = new ImageMenuItem(Stock.Open, agr); openi.AddAccelerator("activate", agr, new AccelKey( Gdk.Key.o, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); openi.Activated += OnOpen; filemenu.Append(openi); ImageMenuItem closei = new ImageMenuItem(Stock.Close, agr); closei.AddAccelerator("activate", agr, new AccelKey( Gdk.Key.w, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); closei.Activated += OnClose; filemenu.Append(closei); MenuItem messagesi = new MenuItem("Show Messages"); messagesi.Activated += OnShowMessages; filemenu.Append(messagesi); MenuItem about = new MenuItem("About"); about.Activated += OnAboutClicked; filemenu.Append(about); SeparatorMenuItem sep = new SeparatorMenuItem(); filemenu.Append(sep); ImageMenuItem quiti = new ImageMenuItem(Stock.Quit, agr); quiti.AddAccelerator("activate", agr, new AccelKey( Gdk.Key.q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); filemenu.Append(quiti); quiti.Activated += OnQuit; menu_bar.Append(file); m_GtkvBoxMain.PackStart(menu_bar, false, false, 0); /* Add a hbox with the page information, zoom control, and aa to vbox */ HBox pageBox = new HBox(false, 0); m_GtkpageEntry = new Entry(); m_GtkpageEntry.Activated += PageChanged; m_GtkpageEntry.WidthChars = 4; m_GtkpageTotal = new Label("/0"); pageBox.PackStart(m_GtkpageEntry, false, false, 0); pageBox.PackStart(m_GtkpageTotal, false, false, 0); HBox zoomBox = new HBox(false, 0); m_GtkZoomPlus = new Button(); m_GtkZoomPlus.Label = "+"; m_GtkZoomPlus.Clicked += ZoomIn; m_GtkZoomMinus = new Button(); m_GtkZoomMinus.Label = "–"; m_GtkZoomMinus.Clicked += ZoomOut; m_GtkzoomEntry = new Entry(); m_GtkzoomEntry.WidthChars = 3; m_GtkzoomEntry.Activated += ZoomChanged; Label precentLabel = new Label("%"); zoomBox.PackStart(m_GtkZoomPlus, false, false, 0); zoomBox.PackStart(m_GtkZoomMinus, false, false, 0); zoomBox.PackStart(m_GtkzoomEntry, false, false, 0); zoomBox.PackStart(precentLabel, false, false, 0); HBox hBoxControls = new HBox(false, 0); m_GtkaaCheck = new CheckButton("Enable Antialias:"); m_GtkaaCheck.Active = true; m_GtkaaCheck.Clicked += AaCheck_Clicked; hBoxControls.PackStart(pageBox, false, false, 0); hBoxControls.PackStart(zoomBox, false, false, 20); hBoxControls.PackStart(m_GtkaaCheck, false, false, 0); m_GtkvBoxMain.PackStart(hBoxControls, false, false, 0); /* Tree view containing thumbnail and main images */ HBox hBoxPages = new HBox(false, 0); /* Must be scrollable */ m_GtkthumbScroll = new ScrolledWindow(); m_GtkthumbScroll.BorderWidth = 5; m_GtkthumbScroll.ShadowType = ShadowType.In; m_GtkmainScroll = new ScrolledWindow(); m_GtkmainScroll.BorderWidth = 5; m_GtkmainScroll.ShadowType = ShadowType.In; m_GtkmainScroll.Vadjustment.ValueChanged += Vadjustment_Changed; m_GtkTreeThumb = new Gtk.TreeView(); m_GtkTreeThumb.HeadersVisible = false; m_GtkimageStoreThumb = new Gtk.ListStore(typeof(Gdk.Pixbuf)); m_GtkTreeThumb.AppendColumn("Thumb", new Gtk.CellRendererPixbuf(), "pixbuf", 0); m_GtkTreeThumb.Style.YThickness = 100; m_GtkthumbScroll.Add(m_GtkTreeThumb); m_GtkTreeThumb.RowActivated += M_GtkTreeThumb_RowActivated; m_GtkTreeMain = new Gtk.TreeView(); m_GtkTreeMain.HeadersVisible = false; m_GtkTreeMain.RulesHint = false; m_GtkimageStoreMain = new Gtk.ListStore(typeof(Gdk.Pixbuf)); m_GtkTreeMain.AppendColumn("Main", new Gtk.CellRendererPixbuf(), "pixbuf", 0); m_GtkmainScroll.Add(m_GtkTreeMain); // Separate with gridlines m_GtkTreeMain.EnableGridLines = TreeViewGridLines.Horizontal; //To disable selections, set the selection mode to None: m_GtkTreeMain.Selection.Mode = SelectionMode.None; hBoxPages.PackStart(m_GtkthumbScroll, false, false, 0); hBoxPages.PackStart(m_GtkmainScroll, true, true, 0); m_GtkTreeThumb.Model = m_GtkimageStoreThumb; m_GtkTreeMain.Model = m_GtkimageStoreMain; m_GtkvBoxMain.PackStart(hBoxPages, true, true, 0); /* For case of opening another file */ string[] arguments = Environment.GetCommandLineArgs(); if (arguments.Length > 1) { m_currfile = arguments[1]; ProcessFile(); } }
public FasmEditor() : base("Fasm editor - by mythcat") { SetDefaultSize(640, 480); SetPosition(WindowPosition.Center); DeleteEvent += delegate { Application.Quit(); }; MenuBar my_menubar = new MenuBar(); Menu filemenu = new Menu(); MenuItem file = new MenuItem("File"); file.Submenu = filemenu; Menu runmenu = new Menu(); MenuItem run = new MenuItem("Run"); run.Submenu = runmenu; AccelGroup agr = new AccelGroup(); AddAccelGroup(agr); ImageMenuItem newi = new ImageMenuItem(Stock.New, agr); newi.AddAccelerator("activate", agr, new AccelKey( Gdk.Key.n, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); filemenu.Append(newi); ImageMenuItem open = new ImageMenuItem(Stock.Open, agr); open.AddAccelerator("activate", agr, new AccelKey( Gdk.Key.n, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); filemenu.Append(open); SeparatorMenuItem sep = new SeparatorMenuItem(); filemenu.Append(sep); ImageMenuItem exit = new ImageMenuItem(Stock.Quit, agr); exit.AddAccelerator("activate", agr, new AccelKey( Gdk.Key.q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); // ImageMenuItem runn = new ImageMenuItem(Stock.Execute, agr); newi.AddAccelerator("activate", agr, new AccelKey( Gdk.Key.F9, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); runmenu.Append(runn); ImageMenuItem compile = new ImageMenuItem(Stock.Execute, agr); newi.AddAccelerator("activate", agr, new AccelKey( Gdk.Key.F5, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); runmenu.Append(compile); exit.Activated += OnActivated; filemenu.Append(exit); my_menubar.Append(file); my_menubar.Append(run); TextView textview = new TextView(); VBox vbox = new VBox(false, 2); vbox.PackStart(my_menubar, false, false, 0); //vbox.PackStart(new Label(), false, false, 0); vbox.PackStart(textview, false, false, 0); Add(vbox); ShowAll(); }
/// <summary> /// Constructor. /// </summary> public MainMenuBar(MainWindow mainWindow) { m_mainWindow = mainWindow; AccelGroup accelGroup = new AccelGroup(); m_mainWindow.AddAccelGroup(accelGroup); // file menu MenuItem file_item = new MenuItem("_File"); Menu file_menu = new Menu(); file_item.Submenu = file_menu; Append(file_item); ImageMenuItem file_openTr3 = new ImageMenuItem("Open _Tr3"); file_openTr3.Image = new Image(Stock.Open, IconSize.Menu); file_openTr3.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.O, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); file_openTr3.Activated += OnOpenTr3; file_menu.Append(file_openTr3); ImageMenuItem file_openVrml = new ImageMenuItem("Open _Meshes"); file_openVrml.Image = new Image(Stock.Open, IconSize.Menu); file_openVrml.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.M, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); file_openVrml.Activated += OnOpenVRML; file_menu.Append(file_openVrml); file_menu.Append(new SeparatorMenuItem()); ImageMenuItem file_quit = new ImageMenuItem("_Quit"); file_quit.Image = new Image(Stock.Quit, IconSize.Menu); file_quit.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.Q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); file_quit.Activated += OnQuit; file_menu.Append(file_quit); // edit menu MenuItem edit_item = new MenuItem("_Edit"); Menu edit_menu = new Menu(); edit_item.Submenu = edit_menu; Append(edit_item); MenuItem edit_undo = new MenuItem("_Undo"); edit_undo.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.Z, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); edit_undo.Activated += ((o, e) => UndoStack.Instance.Undo()); edit_menu.Append(edit_undo); MenuItem edit_redo = new MenuItem("_Redo"); edit_redo.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.Y, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); edit_redo.Activated += ((o, e) => UndoStack.Instance.Redo()); edit_menu.Append(edit_redo); // mesh menu MenuItem mesh_item = new MenuItem("_Mesh"); Menu mesh_menu = new Menu(); mesh_item.Submenu = mesh_menu; Append(mesh_item); MenuItem mesh_selectAll = new MenuItem("Select _All/None"); mesh_selectAll.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.A, Gdk.ModifierType.None, AccelFlags.Visible)); mesh_selectAll.Activated += ((o, e) => MeshManager.Instance.ToggleSelected()); mesh_menu.Append(mesh_selectAll); MenuItem mesh_hide = new MenuItem("_Hide Selected"); mesh_hide.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.h, Gdk.ModifierType.None, AccelFlags.Visible)); mesh_hide.Activated += ((o, e) => MeshManager.Instance.HideSelected()); mesh_menu.Append(mesh_hide); MenuItem mesh_unhide = new MenuItem("_Unhide All"); mesh_unhide.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.H, Gdk.ModifierType.ShiftMask, AccelFlags.Visible)); mesh_unhide.Activated += ((o, e) => MeshManager.Instance.ShowAll()); mesh_menu.Append(mesh_unhide); MenuItem mesh_delete = new MenuItem("_Remove Selected"); mesh_delete.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.Delete, Gdk.ModifierType.None, AccelFlags.Visible)); mesh_delete.Activated += ((o, e) => MeshManager.Instance.DeleteSelected()); mesh_menu.Append(mesh_delete); mesh_menu.Append(new SeparatorMenuItem()); MenuItem mesh_smooth = new MenuItem("_Smooth Selected"); mesh_smooth.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.S, Gdk.ModifierType.None, AccelFlags.Visible)); mesh_smooth.Activated += ((o, e) => SmoothingManager.Instance.SmoothSelected()); mesh_menu.Append(mesh_smooth); }