Esempio n. 1
0
        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;
        }
Esempio n. 3
0
 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;
 }
Esempio n. 4
0
        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;
        }
Esempio n. 5
0
        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;
        }
Esempio n. 6
0
        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;
        }
Esempio n. 7
0
        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;
        }
Esempio n. 8
0
 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;
        }
Esempio n. 10
0
        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;
        }
Esempio n. 11
0
 public override Xwt.Widget Makeup(IXwtWrapper Parent)
 {
     Xwt.Spinner Target = new Xwt.Spinner() {
         Animate = this.Animate
     };
     InitWidget(Target, Parent);
     return Target;
 }
Esempio n. 12
0
 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;
 }
Esempio n. 13
0
 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);
     }
 }
Esempio n. 14
0
        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;
        }
Esempio n. 15
0
        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;
        }
Esempio n. 16
0
        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;
        }
Esempio n. 17
0
 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;
 }
Esempio n. 18
0
 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;
 }
Esempio n. 19
0
 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);
     }
 }
Esempio n. 20
0
 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;
 }
Esempio n. 21
0
        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;
        }
Esempio n. 22
0
        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;
        }
Esempio n. 23
0
 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;
 }
Esempio n. 24
0
        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;
        }
Esempio n. 25
0
        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;
        }
Esempio n. 26
0
        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;
        }
Esempio n. 27
0
        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;
        }
Esempio n. 28
0
        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;
        }
Esempio n. 29
0
        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;
        }
Esempio n. 30
0
 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;
 }