コード例 #1
0
        public dynamic GetLayout()
        {
            dynamic instanceLayout = new DynamicWrapper();

            DesignerExtensions.SetSimplePropertiesToInstance(_simpleProperties, instanceLayout);
            return(instanceLayout);
        }
コード例 #2
0
        public dynamic GetLayout()
        {
            dynamic instanceLayout = new DynamicWrapper();

            DesignerExtensions.SetSimplePropertiesToInstance(_properties, instanceLayout);


            instanceLayout.Pages = new List <dynamic>();
            for (var i = 0; i < _collectionProperties["Pages"].Items.Count; i++)
            {
                dynamic instancePage = _collectionProperties["Pages"].Items[i];
                //DesignerExtensions.SetSimplePropertiesToInstance(_collectionProperties["Pages"].Items[i],instancePage);


                var layoutPanel = TabControl.TabPages[i].Controls.OfType <CompositPanel>().FirstOrDefault();
                if (layoutPanel != null)
                {
                    IEnumerable <dynamic> layout = layoutPanel.GetLayout();
                    instancePage.LayoutPanel = layout.FirstOrDefault() ?? new DynamicWrapper();
                }
                instanceLayout.Pages.Add(instancePage);
            }

            return(instanceLayout);
        }
コード例 #3
0
        private void CreateToolbarButtons(IEnumerable <dynamic> items, BarSubItem parentItem)
        {
            var beginGroup = false;

            Bar.BeginUpdate();

            foreach (var item in items)
            {
                if (!DesignerExtensions.IsEmpty(item.ToolBarButton))
                {
                    AddBarButton(item.ToolBarButton, parentItem, beginGroup);
                    beginGroup = false;
                }
                else if (!DesignerExtensions.IsEmpty(item.ToolBarPopupButton))
                {
                    var barSubItem = AddBarPopupButton(item.ToolBarPopupButton, parentItem, beginGroup);
                    IEnumerable <dynamic> innerItems =
                        DesignerExtensions.GetCollection(item.ToolBarPopupButton, "Items").ToList();
                    CreateToolbarButtons(innerItems, barSubItem);
                    beginGroup = false;
                }
                else if (!DesignerExtensions.IsEmpty(item.ToolBarSeparator))
                {
                    beginGroup = true;
                }
            }
            Bar.EndUpdate();
        }
コード例 #4
0
        public dynamic GetLayout()
        {
            dynamic instanceLayout = new DynamicWrapper();

            DesignerExtensions.SetSimplePropertiesToInstance(this, instanceLayout);
            instanceLayout.LayoutPanel = _compositPanel.GetLayout().FirstOrDefault();
            return(instanceLayout);
        }
コード例 #5
0
        public dynamic GetLayout()
        {
            dynamic instance = new DynamicWrapper();

            DesignerExtensions.SetSimplePropertiesToInstance(this, instance);
            instance.Columns = _columnsItems;

            return(instance);
        }
コード例 #6
0
        public void LoadProperties(dynamic value)
        {
            DesignerExtensions.SetSimplePropertiesFromInstance(_simpleProperties, value);
            var items = (value.Items as IEnumerable);

            if (items != null)
            {
                _collectionProperties["Items"].Items = items.OfType <dynamic>().ToList();
            }
        }
コード例 #7
0
        public dynamic GetLayout()
        {
            dynamic instanceLayout = new DynamicWrapper();

            DesignerExtensions.SetSimplePropertiesToInstance(_simpleProperties, instanceLayout);

            CheckOperators(_generalProperties.Items);
            CheckOperators(_additionalProperties.Items);

            instanceLayout.GeneralProperties    = _generalProperties.Items;
            instanceLayout.AdditionalProperties = _additionalProperties.Items;
            return(instanceLayout);
        }
コード例 #8
0
        public dynamic GetLayout()
        {
            dynamic instanceLayout = new DynamicWrapper();

            DesignerExtensions.SetSimplePropertiesToInstance(this, instanceLayout);

            instanceLayout.Items = new List <dynamic>();
            foreach (var layoutProvider in _compositPanel.GetLayoutControls())
            {
                dynamic instanceItem = new DynamicWrapper();
                instanceLayout.Items.Add(instanceItem);
                instanceItem[layoutProvider.GetPropertyName()] = layoutProvider.GetLayout();
            }
            return(instanceLayout);
        }
コード例 #9
0
        private void ProcessRows(dynamic[] rows)
        {
            var cells    = new List <GridPanelCellMap>();
            var rowIndex = 0;

            for (rowIndex = 0; rowIndex < rows.Count(); rowIndex++)
            {
                dynamic[] rowCells = DesignerExtensions.GetCollection(rows[rowIndex], "Cells").ToArray();
                for (var columnIndex = 0; columnIndex < rowCells.Count(); columnIndex++)
                {
                    cells.Add(new GridPanelCellMap(rowIndex, columnIndex, rowCells[columnIndex],
                                                   Convert.ToInt32(rowCells[columnIndex].ColumnSpan)));
                }
            }


            rowIndex = 0;
            if (rows.Any())
            {
                while (true)
                {
                    var colSpanSum = 0;
                    var rowCells   = cells.TakeWhile(s =>
                    {
                        colSpanSum += Convert.ToInt32(s.ColumnSpan);
                        return(colSpanSum <= 12);
                    }).ToArray();

                    for (var columnIndex = 0; columnIndex < rowCells.Count(); columnIndex++)
                    {
                        var cellMap = rowCells[columnIndex];
                        cellMap.InnerRowIndex    = rowIndex;
                        cellMap.InnerColumnIndex = columnIndex;
                    }

                    _rows.Add(rowCells);

                    cells = cells.Except(rowCells).ToList();
                    if (!cells.Any())
                    {
                        break;
                    }
                    rowIndex++;
                }
            }
        }
コード例 #10
0
        public void LoadProperties(dynamic value)
        {
            DesignerExtensions.SetSimplePropertiesFromInstance(_simpleProperties, value);

            var generalProperties = (value.GeneralProperties as IEnumerable);

            if (generalProperties != null)
            {
                _collectionProperties["GeneralProperties"].Items = generalProperties.OfType <dynamic>().ToList();
            }

            var additionalProperties = (value.AdditionalProperties as IEnumerable);

            if (additionalProperties != null)
            {
                _collectionProperties["AdditionalProperties"].Items = additionalProperties.OfType <dynamic>().ToList();
            }
        }
コード例 #11
0
        public dynamic GetLayout()
        {
            var instanceLayout = new DynamicWrapper();

            this.SetSimplePropertiesToInstance(instanceLayout);

            var rowIndex = 0;

            var rows          = _collectionProperties["Rows"].Items.ToArray();
            var rowsContainer = new GridPanelRowConstructor(rows);

            foreach (var row in _collectionProperties["Rows"].Items)
            {
                row.Cells = DesignerExtensions.GetCollection(row, "Cells");

                var cellsList = new List <dynamic>();
                for (var i = 0; i < row.Cells.Count(); i++)
                {
                    var gridCellMap = rowsContainer.GetCellMap(rowIndex, i);

                    var controlName =
                        Panels[gridCellMap.InnerRowIndex].GetCell(gridCellMap.InnerColumnIndex).GetPropertyName();
                    var controlLayout =
                        Panels[gridCellMap.InnerRowIndex].GetCell(gridCellMap.InnerColumnIndex).GetLayout();

                    if (!String.IsNullOrEmpty(controlName) && controlLayout != null)
                    {
                        var cell = row.Cells[i];
                        cell.ColumnSpan   = Convert.ToInt32(cell.ColumnSpan);
                        cell[controlName] = controlLayout;
                        cellsList.Add(cell);
                    }
                }
                row.Cells = cellsList;
                rowIndex++;
            }

            instanceLayout["Rows"] = _collectionProperties["Rows"].Items;

            return(instanceLayout);
        }
コード例 #12
0
        private void CreatePopupMenuItems()
        {
            popupMenu.ItemLinks.Clear();
            barManager1.Items.Clear();
            var collection = _collectionProperties["Items"].Items;

            foreach (var o in collection)
            {
                BarButtonItem barButtonItem = null;
                if (!DesignerExtensions.IsEmpty(o.Button))
                {
                    barButtonItem = new BarButtonItem(barManager1, o.Button.Text);
                }
                else if (!DesignerExtensions.IsEmpty(o.PopupButton))
                {
                    barButtonItem = new BarButtonItem(barManager1, o.PopupButton.Text);
                }

                if (barButtonItem != null)
                {
                    popupMenu.ItemLinks.Add(barButtonItem);
                }
            }
        }
コード例 #13
0
 public void LoadProperties(dynamic value)
 {
     DesignerExtensions.SetSimplePropertiesFromInstance(_simpleProperties, value);
 }