public void DrawUpDownButtons(Graphics g, RibbonUpDown b, Ribbon ribbon) { if (b.UpButtonPressed) DrawButtonPressed(g, b.UpButtonBounds, Corners.None, ribbon); else if (b.UpButtonSelected) DrawButtonSelected(g, b.UpButtonBounds, Corners.None, ribbon); else DrawButton(g, b.UpButtonBounds, Corners.None); if (b.DownButtonPressed) DrawButtonPressed(g, b.DownButtonBounds, Corners.None, ribbon); else if (b.DownButtonSelected) DrawButtonSelected(g, b.DownButtonBounds, Corners.None, ribbon); else DrawButton(g, b.DownButtonBounds, Corners.None); DrawArrowShaded(g, b.UpButtonBounds, RibbonArrowDirection.Up, true); DrawArrowShaded(g, b.DownButtonBounds, RibbonArrowDirection.Down, true); }
private RibbonUpDown AddUpDown(RibbonItemCollection collection, string label, string msoImageName, DocumentEventHandler getValue, string suffix, decimal increment, decimal min = 0, decimal max = 100, EventHandler changed = null) { RibbonUpDown updown = new RibbonUpDown(); updown.Text = label; updown.LabelWidth = 50; AssignImage(updown, msoImageName); decimal currentValue = 0; updown.TextBoxText = currentValue + suffix; updown.AllowTextEdit = true; updown.Enabled = true; updown.UpButtonClicked += new MouseEventHandler(delegate(object sender, MouseEventArgs e) { currentValue = Math.Min(currentValue + increment, max); updown.TextBoxText = currentValue + suffix; }); updown.DownButtonClicked += new MouseEventHandler(delegate(object sender, MouseEventArgs e) { currentValue = Math.Max(currentValue - increment, min); updown.TextBoxText = currentValue + suffix; }); m_WordInstance.Application.WindowActivate += new Word.ApplicationEvents4_WindowActivateEventHandler(delegate(Word.Document doc, Word.Window win) { currentValue = Math.Min(max, Math.Max(min, getValue(doc))); updown.TextBoxText = currentValue + suffix; }); // TODO: Uncommenting this causes serious issues. Figure out later if necessary. //updown.TextBoxTextChanged += changed; collection.Add(updown); return updown; }