/// <summary> /// Initializes a new instance of the <see cref="MessageBox"/> class. /// </summary> /// <param name="parent">Parent control.</param> /// <param name="text">Message to display.</param> /// <param name="caption">Window caption.</param> /// <param name="buttons">Message box buttons.</param> public MessageBox(ControlBase parent, string text, string caption = "", MessageBoxButtons buttons = MessageBoxButtons.OK) : base(parent) { HorizontalAlignment = HorizontalAlignment.Left; VerticalAlignment = VerticalAlignment.Top; Canvas canvas = GetCanvas(); MaximumSize = new Size((int)(canvas.ActualWidth * 0.8f), canvas.ActualHeight); StartPosition = StartPosition.CenterParent; Title = caption; DeleteOnClose = true; DockLayout layout = new Control.Layout.DockLayout(this); m_Text = new RichLabel(layout); m_Text.Dock = Dock.Fill; m_Text.Margin = Margin.Ten; m_Text.Document = new Document(text); HorizontalLayout buttonsLayout = new HorizontalLayout(layout); buttonsLayout.Dock = Dock.Bottom; buttonsLayout.HorizontalAlignment = HorizontalAlignment.Center; switch (buttons) { case MessageBoxButtons.AbortRetryIgnore: CreateButton(buttonsLayout, "Abort", MessageBoxResult.Abort); CreateButton(buttonsLayout, "Retry", MessageBoxResult.Retry); CreateButton(buttonsLayout, "Ignore", MessageBoxResult.Ignore); break; case MessageBoxButtons.OK: CreateButton(buttonsLayout, "Ok", MessageBoxResult.Ok); break; case MessageBoxButtons.OKCancel: CreateButton(buttonsLayout, "Ok", MessageBoxResult.Ok); CreateButton(buttonsLayout, "Cancel", MessageBoxResult.Cancel); break; case MessageBoxButtons.RetryCancel: CreateButton(buttonsLayout, "Retry", MessageBoxResult.Retry); CreateButton(buttonsLayout, "Cancel", MessageBoxResult.Cancel); break; case MessageBoxButtons.YesNo: CreateButton(buttonsLayout, "Yes", MessageBoxResult.Yes); CreateButton(buttonsLayout, "No", MessageBoxResult.No); break; case MessageBoxButtons.YesNoCancel: CreateButton(buttonsLayout, "Yes", MessageBoxResult.Yes); CreateButton(buttonsLayout, "No", MessageBoxResult.No); CreateButton(buttonsLayout, "Cancel", MessageBoxResult.Cancel); break; } }
private void OpenWindowWithMenuAndStatusBar(ControlBase control, EventArgs args) { Control.Window window = new Control.Window(this); window.Title = String.Format("Window ({0})", ++m_WindowCount); window.Size = new Size(m_Rand.Next(200, 400), m_Rand.Next(200, 400)); window.Left = m_Rand.Next(700); window.Top = m_Rand.Next(400); window.Padding = new Padding(1, 0, 1, 1); Control.Layout.DockLayout layout = new Control.Layout.DockLayout(window); Control.MenuStrip menuStrip = new Control.MenuStrip(layout); menuStrip.Dock = Dock.Top; /* File */ { Control.MenuItem root = menuStrip.AddItem("File"); root.Menu.AddItem("Load", "test16.png", "Ctrl+L"); root.Menu.AddItem("Save", String.Empty, "Ctrl+S"); root.Menu.AddItem("Save As..", String.Empty, "Ctrl+A"); root.Menu.AddItem("Quit", String.Empty, "Ctrl+Q").SetAction((c, a) => window.Close()); } /* Resizing */ { Control.MenuItem root = menuStrip.AddItem("Resizing"); root.Menu.AddItem("Disabled").SetAction((c, a) => window.Resizing = Resizing.None); root.Menu.AddItem("Width").SetAction((c, a) => window.Resizing = Resizing.Width); root.Menu.AddItem("Height").SetAction((c, a) => window.Resizing = Resizing.Height); root.Menu.AddItem("Both").SetAction((c, a) => window.Resizing = Resizing.Both); } Control.StatusBar statusBar = new Control.StatusBar(layout); statusBar.Dock = Dock.Bottom; statusBar.Text = "Status bar"; { Control.Button br = new Control.Button(statusBar); br.Text = "Right button"; statusBar.AddControl(br, true); } }
public ColorPickers(ControlBase parent) : base(parent) { /* RGB Picker */ { ColorPicker rgbPicker = new ColorPicker(this); rgbPicker.Dock = Dock.Top; rgbPicker.ColorChanged += ColorChanged; } /* HSVColorPicker */ { HSVColorPicker hsvPicker = new HSVColorPicker(this); hsvPicker.Dock = Dock.Fill; hsvPicker.HorizontalAlignment = HorizontalAlignment.Left; hsvPicker.VerticalAlignment = VerticalAlignment.Top; hsvPicker.ColorChanged += ColorChanged; } /* HSVColorPicker in Window */ { Control.Window window = new Control.Window(base.GetCanvas()); window.Size = new Size(300, 200); window.Collapse(); Control.Layout.DockLayout layout = new Control.Layout.DockLayout(window); HSVColorPicker hsvPicker = new HSVColorPicker(layout); hsvPicker.Margin = Margin.Two; hsvPicker.Dock = Dock.Fill; hsvPicker.ColorChanged += ColorChanged; Control.Button OpenWindow = new Control.Button(this); OpenWindow.Dock = Dock.Bottom; OpenWindow.HorizontalAlignment = HorizontalAlignment.Left; OpenWindow.Text = "Open Window"; OpenWindow.Clicked += delegate(ControlBase sender, ClickedEventArgs args) { window.Show(); }; } }
public FlowLayout(ControlBase parent) : base(parent) { ControlBase layout = new Control.Layout.DockLayout(this); Control.Layout.FlowLayout flowLayout = new Control.Layout.FlowLayout(layout); flowLayout.Width = 200; flowLayout.Padding = Padding.Five; flowLayout.Dock = Dock.Fill; flowLayout.DrawDebugOutlines = true; { Control.Button button; int buttonNum = 1; const int buttonCount = 10; for (int n = 0; n < buttonCount; n++) { button = new Control.Button(flowLayout); button.VerticalAlignment = VerticalAlignment.Top; button.HorizontalAlignment = HorizontalAlignment.Left; button.Margin = Margin.Five; button.Padding = Padding.Five; button.ShouldDrawBackground = false; button.Text = String.Format("Button {0}", buttonNum++); button.SetImage("test16.png", ImageAlign.Above); } } Control.HorizontalSlider flowLayoutWidth = new HorizontalSlider(layout); flowLayoutWidth.Margin = Margin.Five; flowLayoutWidth.Width = 500; flowLayoutWidth.Dock = Dock.Top; flowLayoutWidth.Min = 50; flowLayoutWidth.Max = 500; flowLayoutWidth.Value = flowLayout.Width; flowLayoutWidth.ValueChanged += (control, args) => { flowLayout.Width = (int)flowLayoutWidth.Value; }; }
public GroupBox(ControlBase parent) : base(parent) { Control.Layout.GridLayout layout = new Control.Layout.GridLayout(this); layout.ColumnCount = 2; { Control.GroupBox gb = new Control.GroupBox(layout); gb.Size = new Size(200, 100); gb.Text = "Group Box"; } { Control.GroupBox gb = new Control.GroupBox(layout); gb.HorizontalAlignment = HorizontalAlignment.Left; gb.VerticalAlignment = VerticalAlignment.Top; gb.Text = "With Label (autosized)"; Control.Label label = new Control.Label(gb); label.Dock = Dock.Fill; label.Text = "I'm a label"; } { Control.GroupBox gb = new Control.GroupBox(layout); gb.HorizontalAlignment = HorizontalAlignment.Left; gb.VerticalAlignment = VerticalAlignment.Top; gb.Text = "With Label (autosized)"; Control.Label label = new Control.Label(gb); label.Dock = Dock.Fill; label.Text = "I'm a label. I'm a really long label!"; } { Control.GroupBox gb = new Control.GroupBox(layout); gb.HorizontalAlignment = HorizontalAlignment.Left; gb.VerticalAlignment = VerticalAlignment.Top; gb.Text = "Two docked Labels (autosized)"; Control.ControlBase gbl = new Control.Layout.DockLayout(gb); Control.Label label1 = new Control.Label(gbl); label1.Text = "I'm a label"; label1.Dock = Dock.Top; Control.Label label2 = new Control.Label(gbl); label2.Text = "I'm a label. I'm a really long label!"; label2.Dock = Dock.Top; } { Control.GroupBox gb = new Control.GroupBox(layout); gb.HorizontalAlignment = HorizontalAlignment.Left; gb.VerticalAlignment = VerticalAlignment.Top; gb.Text = "Empty (autosized)"; } { Control.GroupBox gb1 = new Control.GroupBox(layout); gb1.HorizontalAlignment = HorizontalAlignment.Left; gb1.VerticalAlignment = VerticalAlignment.Top; gb1.Padding = Padding.Five; gb1.Text = "Yo dawg,"; Control.ControlBase gb1l = new Control.Layout.DockLayout(gb1); Control.GroupBox gb2 = new Control.GroupBox(gb1l); gb2.Text = "I herd"; gb2.Dock = Dock.Left; gb2.Margin = Margin.Three; gb2.Padding = Padding.Five; Control.GroupBox gb3 = new Control.GroupBox(gb1l); gb3.Text = "You like"; gb3.Dock = Dock.Fill; Control.ControlBase gb3l = new Control.Layout.DockLayout(gb3); Control.GroupBox gb4 = new Control.GroupBox(gb3l); gb4.Text = "Group Boxes,"; gb4.Dock = Dock.Top; Control.GroupBox gb5 = new Control.GroupBox(gb3l); gb5.Text = "So I put Group"; gb5.Dock = Dock.Fill; Control.ControlBase gb5l = new Control.Layout.DockLayout(gb5); Control.GroupBox gb6 = new Control.GroupBox(gb5l); gb6.Text = "Boxes in yo"; gb6.Dock = Dock.Left; Control.GroupBox gb7 = new Control.GroupBox(gb5l); gb7.Text = "Boxes so you can"; gb7.Dock = Dock.Top; Control.ControlBase gb7l = new Control.Layout.DockLayout(gb7); Control.GroupBox gb8 = new Control.GroupBox(gb7l); gb8.Text = "Group Box while"; gb8.Dock = Dock.Top; gb8.Margin = Gwen.Margin.Five; Control.GroupBox gb9 = new Control.GroupBox(gb7l); gb9.Text = "u Group Box"; gb9.Dock = Dock.Bottom; gb9.Padding = Gwen.Padding.Five; } }