public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.PasswordEntry Target = new Xwt.PasswordEntry() { PlaceholderText = this.PlaceholderText }; //Binding if (Source != "") { Target.Password = (string)PathBind.GetValue(Source, Parent, ""); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.Password = (string)PathBind.GetValue(Source, Parent, "")); }; Target.Changed += (o, e) => { PathBind.SetValue(Source, Parent, Target.Password); }; } WindowController.TryAttachEvent(Target, "Changed", Parent, Changed); WindowController.TryAttachEvent(Target, "Activated", Parent, Activated); InitWidget(Target, Parent); return Target; }
public override Xwt.MenuItem Makeup(IXwtWrapper Parent) { Xwt.CheckBoxMenuItem Target = new Xwt.CheckBoxMenuItem() { Label = Text, Sensitive = this.Sensitive, Visible = this.Visible, UseMnemonic = this.UseMnemonic, Checked = this.Checked }; Target.Clicked += (o, e) => { }; WindowController.TryAttachEvent(Target, "Clicked", Parent, Activated); if (Subitems != null && Subitems.Count() > 0) { Target.SubMenu = new Xwt.Menu(); foreach (var Subitem in Subitems) Target.SubMenu.Items.Add(Subitem.Makeup(Parent)); } RegisterItem(Parent, Target); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Label Target = new Xwt.Label() { TextAlignment = this.Align, Text = this.Text, Ellipsize = this.Ellipsize, Wrap = this.Wrap }; if (this.Markup != "") Target.Markup = this.Markup; if (this.Color != "") Target.TextColor = Xwt.Drawing.Color.FromName(this.Color); //Binding if (Source != "") { Target.Text = (string)PathBind.GetValue(Source, Parent, ""); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.Text = (string)PathBind.GetValue(Source, Parent, "")); }; } WindowController.TryAttachEvent(Target, "LinkClicked", Parent, LinkClicked); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.SpinButton Target = new Xwt.SpinButton() { ClimbRate = this.ClimbRate, Digits = this.Digits, Wrap = this.Wrap, MinimumValue = this.Min, MaximumValue = this.Max, IncrementValue = this.Step, Value = this.Value }; if (Source != "") { Target.Value = (double)PathBind.GetValue(Source, Parent, 0); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.Value = (double)PathBind.GetValue(Source, Parent, 0)); }; Target.ValueChanged += (o, e) => { PathBind.SetValue(Source, Parent, Target.Value); }; } WindowController.TryAttachEvent(Target, "ValueChanged", Parent, ValueChanged); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.DatePicker Target = new Xwt.DatePicker() { Style = this.Style }; if (this.Value != "") { try { DateTime Val = DateTime.Parse(Value); Target.DateTime = Val; } catch { } } //Binding if (Source != "") { Target.DateTime = (DateTime)PathBind.GetValue(Source, Parent, DateTime.Now); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.DateTime = (DateTime)PathBind.GetValue(Source, Parent, DateTime.Now)); }; Target.ValueChanged += (o, e) => { PathBind.SetValue(Source, Parent, Target.DateTime); }; } WindowController.TryAttachEvent(Target, "ValueChanged", Parent, Changed); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.ColorSelector Target = new Xwt.ColorSelector() { SupportsAlpha = this.SupportsAlpha }; if (this.Value != "") Target.Color = Xwt.Drawing.Color.FromName(this.Value); //Binding if (Source != "") { Target.Color = (Xwt.Drawing.Color)PathBind.GetValue(Source, Parent, Xwt.Drawing.Colors.White); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.Color = (Xwt.Drawing.Color)PathBind.GetValue(Source, Parent, Xwt.Drawing.Colors.White)); }; Target.ColorChanged += (o, e) => { PathBind.SetValue(Source, Parent, Target.Color); }; } WindowController.TryAttachEvent(Target, "ColorChanged", Parent, Changed); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Slider Target; if (Orientation == Orientation.Horizontal) Target = new Xwt.HSlider(); else Target = new Xwt.VSlider(); Target.MinimumValue = Min; Target.MaximumValue = Max; Target.Value = Value; //Target.Step = Step; //Target.ShowLabels = ShowLabels; if (Source != "") { Target.Value = (double)PathBind.GetValue(Source, Parent, 0); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.Value = (double)PathBind.GetValue(Source, Parent, 0)); }; Target.ValueChanged += (o, e) => { PathBind.SetValue(Source, Parent, Target.Value); }; } WindowController.TryAttachEvent(Target, "ValueChanged", Parent, ValueChanged); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.CheckBox Target = new Xwt.CheckBox() { Label = Text, State = State, AllowMixed = AllowMixed, }; //Creating layouts if (Content != null && Content.Count() > 0) Target.Content = Content[0].Makeup(Parent); //Attaching events WindowController.TryAttachEvent(Target, "Toggled", Parent, Toggled); WindowController.TryAttachEvent(Target, "Clicked", Parent, Clicked); //Making binding if (Source != "") { Target.Active = (bool)PathBind.GetValue(Source, Parent, false); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.Active = (bool)PathBind.GetValue(Source, Parent, false)); }; Target.Toggled += (o, e) => { PathBind.SetValue(Source, Parent, Target.Active); }; } InitWidget(Target, Parent); return Target; }
public override Xwt.MenuItem Makeup(IXwtWrapper Parent) { Xwt.RadioButtonMenuItem Target = new Xwt.RadioButtonMenuItem() { Label = Text, Sensitive = this.Sensitive, Visible = this.Visible, UseMnemonic = this.UseMnemonic, Checked = this.Checked }; if (this.Group != "") { if (!WindowController.MenuRadioGroups.ContainsKey(this.Group)) WindowController.MenuRadioGroups.Add(this.Group, new Xwt.RadioButtonMenuItemGroup()); Target.Group = WindowController.MenuRadioGroups[this.Group]; } if (Subitems != null && Subitems.Count() > 0) { Target.SubMenu = new Xwt.Menu(); foreach (var Subitem in Subitems) Target.SubMenu.Items.Add(Subitem.Makeup(Parent)); } RegisterItem(Parent, Target); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.TextEntry Target = new Xwt.TextEntry() { TextAlignment = this.Align, PlaceholderText = this.PlaceholderText, ShowFrame = this.ShowFrame, MultiLine = this.Multiline, }; if (this.Text != "") Target.Text = this.Text; if (this.ReadOnly == true) Target.ReadOnly = true; //Binding WindowController.TryAttachEvent(Target, "Changed", Parent, Changed); WindowController.TryAttachEvent(Target, "Activated", Parent, Activated); if (Source != "") { Target.Text = (string)PathBind.GetValue(Source, Parent, ""); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.Text = (string)PathBind.GetValue(Source, Parent, "")); }; Target.Changed += (o, e) => { PathBind.SetValue(Source, Parent, Target.Text); }; } InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Spinner Target = new Xwt.Spinner() { Animate = this.Animate }; InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Separator Target; if (this.Orientation == Xwt.Backends.Orientation.Horizontal) Target = new Xwt.HSeparator(); else Target = new Xwt.VSeparator(); InitWidget(Target, Parent); return Target; }
protected void RegisterItem(IXwtWrapper Parent, Xwt.MenuItem Widget) { if (this.Name != "") { Parent.Widgets.Add(this.Name, Widget); if (Parent.GetType().GetField(this.Name) != null) Parent.GetType().GetField(this.Name).SetValue(Parent, Widget); WindowController.RegisterWidget(this.Name, Parent, Widget); } }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.ComboBox Target = new Xwt.ComboBox(); if (this.DataSource != "") { Target.ItemsSource = (IListDataSource)Parent.GetType().GetField(this.DataSource).GetValue(Parent); Type BackgroundType = (Target.ItemsSource).GetType().GetGenericArguments()[0]; if (ColumnDefinition != null && ColumnDefinition.Count() > 0) { foreach (XwtColumnDefinitionNode N in ColumnDefinition) { IDataField X = DataField.GenerateDataField(N.Source, BackgroundType); Target.Views.Add(CellViewFactory.Make(X, false)); } } } else { if (Items != null && Items.Count() > 0) { foreach (XwtSimpleBindingNode N in Items) { if (N.Value != "") { object value = Parent.GetType().GetField(N.Value).GetValue(Parent); Target.Items.Add(value, N.Text); } else { Target.Items.Add((object)N.Text, N.Text); } } } } Target.SelectedIndex = this.Selection; if (this.Source != "") { Target.SelectedItem = PathBind.GetValue(Source, Parent, Target.Items[0]); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.SelectedItem = PathBind.GetValue(Source, Parent, Target.Items[0])); }; Target.SelectionChanged += (o, e) => { PathBind.SetValue(Source, Parent, Target.SelectedItem); }; } WindowController.TryAttachEvent(Target, "SelectionChanged", Parent, Changed); InitWidget(Target, Parent); return Target; }
public Xwt.Menu Makeup(IXwtWrapper Parent) { Xwt.Menu Target = new Xwt.Menu(); if (Subitems != null && Subitems.Count() > 0) { foreach (var Subitem in Subitems) Target.Items.Add(Subitem.Makeup(Parent)); } return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Expander Target = new Xwt.Expander() { Label = this.Text, Expanded = this.Expanded }; if (Items != null && Items.Count() > 0) Target.Content = Items[0].Makeup(Parent); WindowController.TryAttachEvent(Target, "ExpandChanged", Parent, Activated); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.ImageView Target = new Xwt.ImageView(); if (Image != "") { Xwt.Drawing.Image img = Xwt.Drawing.Image.FromResource(System.Reflection.Assembly.GetEntryAssembly(), Image); //Target.Image = img; Target.BoundsChanged += (o, e) => { Target.Image = img.WithSize(Target.Size); }; } InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.RadioButton Target = new Xwt.RadioButton(this.Text); if (this.Group != "") { if (!WindowController.RadioGroups.ContainsKey(this.Group)) WindowController.RadioGroups.Add(this.Group, new Xwt.RadioButtonGroup()); Target.Group = WindowController.RadioGroups[this.Group]; } if (Content != null && Content.Count() > 0) Target.Content = Content[0].Makeup(Parent); WindowController.TryAttachEvent(Target, "Clicked", Parent, Clicked); WindowController.TryAttachEvent(Target, "Activated", Parent, Activated); InitWidget(Target, Parent); return Target; }
protected void InitWidget(Xwt.Widget Widget, IXwtWrapper Parent) { Widget.MinHeight = this.MinHeight; Widget.MinWidth = this.MinWidth; Widget.WidthRequest = this.Width; Widget.HeightRequest = this.Height; if (this.BackgroundColor != "") Widget.BackgroundColor = Xwt.Drawing.Color.FromName(this.BackgroundColor); if (this.Font != "") Widget.Font = Xwt.Drawing.Font.FromName(this.Font); Widget.TooltipText = this.TooltipText; Widget.MarginLeft = this.MarginLeft; Widget.MarginRight = this.MarginRight; Widget.MarginTop = this.MarginTop; Widget.MarginBottom = this.MarginBottom; Widget.Sensitive = this.Sensitive; Widget.Visible = this.Visible; Widget.Cursor = this.Cursor; Widget.HorizontalPlacement = this.HAlign; Widget.VerticalPlacement = this.VAlign; if (this.ContextMenu != null) { Widget.ButtonPressed += (o, e) => { if (e.Button == Xwt.PointerButton.Right) { Xwt.Menu M = new Xwt.Menu(); this.ContextMenu.Subitems.ForEach(X => M.Items.Add(X.Makeup(Parent))); M.Popup(); } }; } WindowController.TryAttachEvent(Widget, "MouseEntered", Parent, this.MouseEntered); WindowController.TryAttachEvent(Widget, "MouseExited", Parent, this.MouseExited); WindowController.TryAttachEvent(Widget, "MouseMoved", Parent, this.MouseMoved); WindowController.TryAttachEvent(Widget, "GotFocus", Parent, this.GotFocus); WindowController.TryAttachEvent(Widget, "LostFocus", Parent, this.LostFocus); WindowController.TryAttachEvent(Widget, "ButtonPressed", Parent, this.ButtonPressed); WindowController.TryAttachEvent(Widget, "ButtonReleased", Parent, this.ButtonReleased); if (this.Name != "") { Parent.Widgets.Add(this.Name, Widget); if (Parent.GetType().GetField(this.Name, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic) != null) Parent.GetType().GetField(this.Name, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic).SetValue(Parent, Widget); WindowController.RegisterWidget(this.Name, Parent, Widget); } }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Button Target = new Xwt.Button(this.Text) { Style = this.Style, Type = this.Type, UseMnemonic = this.UseMnemonic }; if (this.Image != "") { Target.Image = Xwt.Drawing.Image.FromFile(this.Image).WithSize(this.ImageWidth, this.ImageHeight); Target.ImagePosition = this.ImagePosition; } WindowController.TryAttachEvent(Target, "Clicked", Parent, Clicked); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.ScrollView Target = new Xwt.ScrollView() { HorizontalScrollPolicy = this.HScrollPolicy, VerticalScrollPolicy = this.VScrollPolicy, BorderVisible = this.BorderVisible }; if (Items != null && Items.Count() > 0) Target.Content = Items[0].Makeup(Parent); WindowController.TryAttachEvent(Target, "VisibleRectChanged", Parent, VisibleRectChanged); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Table Target = new Xwt.Table() { DefaultRowSpacing = RowSpacing, DefaultColumnSpacing = ColSpacing }; InitWidget(Target, Parent); foreach (XwtWidgetNode Node in this.Items) { Target.Attach(Node.Makeup(Parent), Node.Row, Node.Column); } return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.TreeView Target = new Xwt.TreeView() { HeadersVisible = this.HeadersVisible, SelectionMode = this.SelectionMode, VerticalScrollPolicy = this.VScrollPolicy, HorizontalScrollPolicy = this.HScrollPolicy }; if (this.Source != "") { TreeStoreWrapper Source = ((Bindings.TreeStoreWrapper)(Parent.GetType().GetField(this.Source).GetValue(Parent))); Target.DataSource = Source.TreeStore; if (ColumnDefinition != null && ColumnDefinition.Count() > 0) { foreach (XwtColumnDefinitionNode N in ColumnDefinition) { if (Source.Fields.ContainsKey(N.Source)) { IDataField X = Source.Fields[N.Source]; IDataField S = X; if (X.FieldType == typeof(DateTime)) { S = Source.Fields[N.Source + "_sort"]; X = Source.Fields[N.Source + "_text"]; } ListViewColumn C = new ListViewColumn(N.Title, CellViewFactory.Make(X, N.Editable)) { SortDataField = S, SortIndicatorVisible = N.Sortable, CanResize = N.Resizable }; Target.Columns.Add(C); } } } } WindowController.TryAttachEvent(Target, "SelectionChanged", Parent, Changed); WindowController.TryAttachEvent(Target, "RowActivated", Parent, Clicked); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Paned Target; if (Orientation == Xwt.Backends.Orientation.Horizontal) Target = new Xwt.HPaned(); else Target = new Xwt.VPaned(); Target.PositionFraction = this.Position; if (Items != null && Items.Count() > 1) { Target.Panel1.Content = Items[0].Makeup(Parent); Target.Panel2.Content = Items[1].Makeup(Parent); } WindowController.TryAttachEvent(Target, "PositionChanged", Parent, Resized); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Box Target; if (Orientation == Xwt.Backends.Orientation.Horizontal) Target = new Xwt.HBox() { Spacing = this.Spacing }; else Target = new Xwt.VBox() { Spacing = this.Spacing }; InitWidget(Target, Parent); foreach (XwtWidgetNode Node in this.Items) { Target.PackStart(Node.Makeup(Parent), Node.Expand, Node.Fill); } return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.RichTextView Target = new Xwt.RichTextView(); Target.LoadText(this.Text, Xwt.Formats.TextFormat.Markdown); if (Source != "") { Target.LoadText((string)PathBind.GetValue(Source, Parent, ""), Xwt.Formats.TextFormat.Markdown); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.LoadText((string)PathBind.GetValue(Source, Parent, 0), Xwt.Formats.TextFormat.Markdown) ); }; } WindowController.TryAttachEvent(Target, "NavigateToUrl", Parent, Navigated); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.ProgressBar Target = new Xwt.ProgressBar() { Fraction = this.Value, Indeterminate = this.Indeterminate }; //Binding if (Source != "") { Target.Fraction = (double)PathBind.GetValue(Source, Parent, 0); Parent.PropertyChanged += (o, e) => { if (e.PropertyName == this.Source.Split('.')[0]) Xwt.Application.Invoke(() => Target.Fraction = (double)PathBind.GetValue(Source, Parent, 0)); }; } InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Frame Target; Target = new Xwt.Frame() { PaddingLeft = this.PaddingLeft, PaddingRight = this.PaddingRight, PaddingTop = this.PaddingTop, PaddingBottom = this.PaddingBottom, BorderWidth = this.BorderWidth, Label = this.Text }; if (this.BorderColor != "") Target.BorderColor = Xwt.Drawing.Color.FromName(this.BorderColor); if (Items != null && Items.Count() > 0) Target.Content = Items[0].Makeup(Parent); InitWidget(Target, Parent); return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.Notebook Target = new Xwt.Notebook() { TabOrientation = this.Orientation }; InitWidget(Target, Parent); if (this.Tabs != null) foreach (XwtNotebookTabNode Node in this.Tabs) { Xwt.Widget TWidget; if (Node.Items != null && Node.Items.Count() > 0) TWidget = Node.Items[0].Makeup(Parent); else TWidget = new Xwt.VBox(); Target.Add(TWidget, Node.Text); } Target.CurrentTabIndex = this.CurrentTab; return Target; }
public override Xwt.Widget Makeup(IXwtWrapper Parent) { Xwt.ListView Target = new Xwt.ListView() { BorderVisible = this.BorderVisible, HeadersVisible = this.HeadersVisible, SelectionMode = this.SelectionMode, VerticalScrollPolicy = this.VScrollPolicy, HorizontalScrollPolicy = this.HScrollPolicy }; if (this.Source != "") { IListDataSource Source = (IListDataSource)Parent.GetType().GetField(this.Source).GetValue(Parent); Target.DataSource = Source; Type BackgroundType = (Source).GetType().GetGenericArguments()[0]; if (ColumnDefinition != null && ColumnDefinition.Count() > 0) { foreach (XwtColumnDefinitionNode N in ColumnDefinition) { IDataField X = DataField.GenerateDataField(N.Source, BackgroundType); ListViewColumn C = new ListViewColumn(N.Title, CellViewFactory.Make(X, N.Editable)) { SortDataField = X, SortIndicatorVisible = N.Sortable, CanResize = N.Resizable }; Target.Columns.Add(C); } } } if (Target.DataSource != null && Target.DataSource.RowCount > 0) Target.SelectRow(this.Selection); WindowController.TryAttachEvent(Target, "SelectionChanged", Parent, Changed); WindowController.TryAttachEvent(Target, "RowActivated", Parent, Clicked); InitWidget(Target, Parent); return Target; }