/// <summary> /// Creates the glyphs for navigation and manipulating pages /// </summary> private void CreateGlyphs() { toolbarAdorner = new Adorner(); if (BehaviorService != null) { BehaviorService.Adorners.Add(toolbarAdorner); } toolbar = new GlyphToolBar(BehaviorService, this, toolbarAdorner); moveToolbarButton = new ButtonGlyph(); moveToolbarButton.Path = GetUpDownArrowSign(toolbar.DefaultIconSize.Height); moveToolbarButton.ToolTipText = "Move toolbar"; moveToolbarButton.Click += MoveToolbarButton_Click; navigateBackButton = new ButtonGlyph(); navigateBackButton.Path = GetLeftArrowSign(toolbar.DefaultIconSize.Height); navigateBackButton.ToolTipText = "Previous page"; navigateBackButton.Click += NavigateBackButton_Click; navigateNextButton = new ButtonGlyph(); navigateNextButton.Path = GetRightArrowSign(toolbar.DefaultIconSize.Height); navigateNextButton.ToolTipText = "Next page"; navigateNextButton.Click += NavigateNextButton_Click; addPageButton = new ButtonGlyph(); addPageButton.Path = GetPlusSign(toolbar.DefaultIconSize.Height); addPageButton.ToolTipText = "Add a new page"; addPageButton.Click += AddPageButton_Click; removePageButton = new ButtonGlyph(); removePageButton.Path = GetMinusSign(toolbar.DefaultIconSize.Height); removePageButton.ToolTipText = "Remove current page"; removePageButton.Click += RemovePageButton_Click; currentPageLabel = new LabelGlyph(); currentPageLabel.Text = string.Format("Page {0} of {1}", Control.SelectedIndex + 1, Control.Pages.Count); toolbar.AddButton(moveToolbarButton); toolbar.AddButton(new SeparatorGlyph()); toolbar.AddButton(navigateBackButton); toolbar.AddButton(currentPageLabel); toolbar.AddButton(navigateNextButton); toolbar.AddButton(new SeparatorGlyph()); toolbar.AddButton(addPageButton); toolbar.AddButton(removePageButton); toolbarAdorner.Glyphs.Add(toolbar); }
public override bool OnMouseDown(Glyph g, MouseButtons mouseButton, Point mouseLoc) { if (mouseButton == MouseButtons.Left) { GlyphToolBar toolbar = (GlyphToolBar)g; foreach (var glyph in toolbar.buttons.OfType <ButtonGlyph>()) { var button = glyph; if (button.Enabled && button.Bounds.Contains(mouseLoc)) { button.OnClick(EventArgs.Empty); return(true); } } } return(false); }
public GlyphIndexer(GlyphToolBar toolbar) { this.toolbar = toolbar; }