Example #1
0
        private void BuildUI()
        {
            _desktop = new Desktop();

            _desktop.ContextMenuClosed += _desktop_ContextMenuClosed;
            _desktop.KeyDownHandler     = key =>
            {
                if (_autoCompleteMenu != null &&
                    (key == Keys.Up || key == Keys.Down || key == Keys.Enter))
                {
                    _autoCompleteMenu.OnKeyDown(key);
                }
                else
                {
                    _desktop.OnKeyDown(key);
                }
            };

            _ui = new StudioWidget();

            _ui._menuFileNew.Selected              += NewItemOnClicked;
            _ui._menuFileOpen.Selected             += OpenItemOnClicked;
            _ui._menuFileReload.Selected           += OnMenuFileReloadSelected;
            _ui._menuFileSave.Selected             += SaveItemOnClicked;
            _ui._menuFileSaveAs.Selected           += SaveAsItemOnClicked;
            _ui._menuFileExportToCS.Selected       += ExportCsItemOnSelected;
            _ui._menuFileLoadStylesheet.Selected   += OnMenuFileLoadStylesheet;
            _ui._menuFileReloadStylesheet.Selected += OnMenuFileReloadStylesheet;
            _ui._menuFileResetStylesheet.Selected  += OnMenuFileResetStylesheetSelected;
            _ui._menuFileDebugOptions.Selected     += DebugOptionsItemOnSelected;
            _ui._menuFileQuit.Selected             += QuitItemOnDown;

            _ui._menuEditFormatSource.Selected += _menuEditUpdateSource_Selected;

            _ui._menuHelpAbout.Selected += AboutItemOnClicked;

            _ui._textSource.CursorPositionChanged += _textSource_CursorPositionChanged;
            _ui._textSource.TextChanged           += _textSource_TextChanged;
            _ui._textSource.KeyDown += _textSource_KeyDown;
            _ui._textSource.Char    += _textSource_Char;

            _ui._textStatus.Text   = string.Empty;
            _ui._textLocation.Text = "Line: 0, Column: 0, Indent: 0";

            _propertyGrid = new PropertyGrid
            {
                IgnoreCollections = true
            };
            _propertyGrid.PropertyChanged += PropertyGridOnPropertyChanged;

            _ui._propertyGridPane.Content = _propertyGrid;

            _ui._topSplitPane.SetSplitterPosition(0, _state != null ? _state.TopSplitterPosition : 0.75f);
            _ui._leftSplitPane.SetSplitterPosition(0, _state != null ? _state.LeftSplitterPosition : 0.5f);

            _desktop.Widgets.Add(_ui);

            UpdateMenuFile();
        }
Example #2
0
        private void BuildUI()
        {
            _desktop = new Desktop();

            _desktop.ContextMenuClosed += _desktop_ContextMenuClosed;
            _desktop.KeyDownHandler     = key =>
            {
                if (_autoCompleteMenu != null &&
                    (key == Keys.Up || key == Keys.Down || key == Keys.Enter))
                {
                    _autoCompleteMenu.OnKeyDown(key);
                }
                else
                {
                    _desktop.OnKeyDown(key);
                }
            };

            _desktop.KeyDown += (s, a) =>
            {
                if (_desktop.HasModalWindow || _ui._mainMenu.IsOpen)
                {
                    return;
                }

                if (_desktop.DownKeys.Contains(Keys.LeftControl) || _desktop.DownKeys.Contains(Keys.RightControl))
                {
                    if (_desktop.DownKeys.Contains(Keys.N))
                    {
                        NewItemOnClicked(this, EventArgs.Empty);
                    }
                    else if (_desktop.DownKeys.Contains(Keys.O))
                    {
                        OpenItemOnClicked(this, EventArgs.Empty);
                    }
                    else if (_desktop.DownKeys.Contains(Keys.R))
                    {
                        OnMenuFileReloadSelected(this, EventArgs.Empty);
                    }
                    else if (_desktop.DownKeys.Contains(Keys.S))
                    {
                        SaveItemOnClicked(this, EventArgs.Empty);
                    }
                    else if (_desktop.DownKeys.Contains(Keys.E))
                    {
                        ExportCsItemOnSelected(this, EventArgs.Empty);
                    }
                    else if (_desktop.DownKeys.Contains(Keys.T))
                    {
                        OnMenuFileReloadStylesheet(this, EventArgs.Empty);
                    }
                    else if (_desktop.DownKeys.Contains(Keys.Q))
                    {
                        Exit();
                    }
                    else if (_desktop.DownKeys.Contains(Keys.F))
                    {
                        _menuEditUpdateSource_Selected(this, EventArgs.Empty);
                    }
                }
            };

            _ui = new StudioWidget();

            _ui._menuFileNew.Selected              += NewItemOnClicked;
            _ui._menuFileOpen.Selected             += OpenItemOnClicked;
            _ui._menuFileReload.Selected           += OnMenuFileReloadSelected;
            _ui._menuFileSave.Selected             += SaveItemOnClicked;
            _ui._menuFileSaveAs.Selected           += SaveAsItemOnClicked;
            _ui._menuFileExportToCS.Selected       += ExportCsItemOnSelected;
            _ui._menuFileLoadStylesheet.Selected   += OnMenuFileLoadStylesheet;
            _ui._menuFileReloadStylesheet.Selected += OnMenuFileReloadStylesheet;
            _ui._menuFileResetStylesheet.Selected  += OnMenuFileResetStylesheetSelected;
            _ui._menuFileDebugOptions.Selected     += DebugOptionsItemOnSelected;
            _ui._menuFileQuit.Selected             += QuitItemOnDown;

            _ui._menuEditFormatSource.Selected += _menuEditUpdateSource_Selected;

            _ui._menuHelpAbout.Selected += AboutItemOnClicked;

            _ui._textSource.CursorPositionChanged += _textSource_CursorPositionChanged;
            _ui._textSource.TextChanged           += _textSource_TextChanged;
            _ui._textSource.KeyDown += _textSource_KeyDown;
            _ui._textSource.Char    += _textSource_Char;

            _ui._textStatus.Text   = string.Empty;
            _ui._textLocation.Text = "Line: 0, Column: 0, Indent: 0";

            _propertyGrid = new PropertyGrid
            {
                IgnoreCollections = true
            };
            _propertyGrid.PropertyChanged     += PropertyGridOnPropertyChanged;
            _propertyGrid.CustomValuesProvider = RecordValuesProvider;
            _propertyGrid.CustomSetter         = RecordSetter;

            _ui._propertyGridPane.Content = _propertyGrid;

            _ui._topSplitPane.SetSplitterPosition(0, _state != null ? _state.TopSplitterPosition : 0.75f);
            _ui._leftSplitPane.SetSplitterPosition(0, _state != null ? _state.LeftSplitterPosition : 0.5f);

            _desktop.Widgets.Add(_ui);

            UpdateMenuFile();
        }
Example #3
0
        private void BuildUI()
        {
            _desktop = new Desktop();

            _ui = new StudioWidget();

            _ui._menuFileNew.Selected              += NewItemOnClicked;
            _ui._menuFileOpen.Selected             += OpenItemOnClicked;
            _ui._menuFileReload.Selected           += OnMenuFileReloadSelected;
            _ui._menuFileSave.Selected             += SaveItemOnClicked;
            _ui._menuFileSaveAs.Selected           += SaveAsItemOnClicked;
            _ui._menuFileExportToCS.Selected       += ExportCsItemOnSelected;
            _ui._menuFileLoadStylesheet.Selected   += OnMenuFileLoadStylesheet;
            _ui._menuFileReloadStylesheet.Selected += OnMenuFileReloadStylesheet;
            _ui._menuFileResetStylesheet.Selected  += OnMenuFileResetStylesheet;
            _ui._menuFileDebugOptions.Selected     += DebugOptionsItemOnSelected;
            _ui._menuFileQuit.Selected             += QuitItemOnDown;

            _ui._menuControlsAddButton.Selected += (s, a) =>
            {
                AddStandardControl <ImageTextButton>();
            };
            _ui._menuControlsAddCheckBox.Selected += (s, a) =>
            {
                AddStandardControl <CheckBox>();
            };
            _ui._menuControlsAddRadioButton.Selected += (s, a) =>
            {
                AddStandardControl <RadioButton>();
            };
            _ui._menuControlsAddImageButton.Selected += (s, a) =>
            {
                AddStandardControl <ImageButton>();
            };
            _ui._menuControlsAddTextButton.Selected += (s, a) =>
            {
                AddStandardControl <TextButton>();
            };
            _ui._menuControlsAddHorizontalSlider.Selected += (s, a) =>
            {
                AddStandardControl <HorizontalSlider>();
            };
            _ui._menuControlsAddVerticalSlider.Selected += (s, a) =>
            {
                AddStandardControl <VerticalSlider>();
            };
            _ui._menuControlsAddHorizontalProgressBar.Selected += (s, a) =>
            {
                AddStandardControl <HorizontalProgressBar>();
            };
            _ui._menuControlsAddVerticalProgressBar.Selected += (s, a) =>
            {
                AddStandardControl <VerticalProgressBar>();
            };
            _ui._menuControlsAddHorizontalSeparator.Selected += (s, a) =>
            {
                AddStandardControl <HorizontalSeparator>();
            };
            _ui._menuControlsAddVerticalSeparator.Selected += (s, a) =>
            {
                AddStandardControl <VerticalSeparator>();
            };
            _ui._menuControlsAddComboBox.Selected += (s, a) =>
            {
                AddStandardControl <ComboBox>();
            };
            _ui._menuControlsAddListBox.Selected += (s, a) =>
            {
                AddStandardControl <ListBox>();
            };
            _ui._menuControlsAddTabControl.Selected += (s, a) =>
            {
                AddStandardControl <TabControl>();
            };
            _ui._menuControlsAddPanel.Selected += (s, a) =>
            {
                AddStandardControl <Panel>();
            };
            _ui._menuControlsAddGrid.Selected += (s, a) =>
            {
                AddStandardControl <Grid>();
            };
            _ui._menuControlsAddImage.Selected += (s, a) =>
            {
                AddStandardControl <Image>();
            };
            _ui._menuControlsAddHorizontalMenu.Selected += (s, a) =>
            {
                AddStandardControl(new HorizontalMenu());
            };
            _ui._menuControlsAddVerticalMenu.Selected += (s, a) =>
            {
                AddStandardControl(new VerticalMenu());
            };
            _ui._menuControlsAddScrollPane.Selected += (s, a) =>
            {
                AddStandardControl <ScrollPane>();
            };
            _ui._menuControlsAddHorizontalSplitPane.Selected += (s, a) =>
            {
                AddStandardControl(new HorizontalSplitPane());
            };
            _ui._menuControlsAddVerticalSplitPane.Selected += (s, a) =>
            {
                AddStandardControl(new VerticalSplitPane());
            };
            _ui._menuControlsAddTextBlock.Selected += (s, a) =>
            {
                AddStandardControl <TextBlock>();
            };
            _ui._menuControlsAddTextField.Selected += (s, a) =>
            {
                AddStandardControl <TextField>();
            };
            _ui._menuControlsAddSpinButton.Selected += (s, a) =>
            {
                AddStandardControl <SpinButton>();
            };
            _ui._menuControlsAddMenuItem.Selected += (s, a) =>
            {
                AddMenuItem(new MenuItem());
            };
            _ui._menuControlsAddDialog.Selected += (s, a) =>
            {
                AddStandardControl <Dialog>();
            }; _ui._menuControlsAddWindow.Selected += (s, a) =>
            {
                AddStandardControl <Window>();
            };
            _ui._menuControlsAddMenuSeparator.Selected += (s, a) =>
            {
                AddMenuItem(new MenuSeparator());
            };

            if (_customWidgetTypes != null && _customWidgetTypes.Length > 0)
            {
                _ui._menuControls.Items.Add(new MenuSeparator());

                var customMenuWidgets = new List <MenuItem>();
                foreach (var type in _customWidgetTypes)
                {
                    var item = new MenuItem
                    {
                        Text = "Add " + type.Name
                    };

                    item.Selected += (s, a) =>
                    {
                        AddStandardControl(type);
                    };

                    _ui._menuControls.Items.Add(item);

                    customMenuWidgets.Add(item);
                }

                _customWidgetMenuItems = customMenuWidgets.ToArray();
            }

            _ui._menuControls.Items.Add(new MenuSeparator());

            _deleteItem = new MenuItem
            {
                Text = "Delete"
            };
            _deleteItem.Selected += DeleteItemOnSelected;

            _ui._menuControls.Items.Add(_deleteItem);

            _ui._menuHelpAbout.Selected += AboutItemOnClicked;

            _explorer = new Explorer();
            _explorer.Tree.SelectionChanged += WidgetOnSelectionChanged;
            _ui._explorerHolder.Widgets.Add(_explorer);

            _propertyGrid = new PropertyGrid();
            _propertyGrid.PropertyChanged += PropertyGridOnPropertyChanged;

            _ui._propertyGridPane.Content = _propertyGrid;

            _ui._topSplitPane.SetSplitterPosition(0, _state != null ? _state.TopSplitterPosition : 0.75f);
            _ui._rightSplitPane.SetSplitterPosition(0, _state != null ? _state.RightSplitterPosition : 0.5f);

            _desktop.Widgets.Add(_ui);

            _statisticsGrid = new Grid
            {
                Visible = false
            };

            _statisticsGrid.RowsProportions.Add(new Grid.Proportion());
            _statisticsGrid.RowsProportions.Add(new Grid.Proportion());
            _statisticsGrid.RowsProportions.Add(new Grid.Proportion());

            _gcMemoryLabel = new TextBlock
            {
                Text = "GC Memory: ",
                Font = DefaultAssets.FontSmall
            };
            _statisticsGrid.Widgets.Add(_gcMemoryLabel);

            _fpsLabel = new TextBlock
            {
                Text    = "FPS: ",
                Font    = DefaultAssets.FontSmall,
                GridRow = 1
            };

            _statisticsGrid.Widgets.Add(_fpsLabel);

            _widgetsCountLabel = new TextBlock
            {
                Text    = "Total Widgets: ",
                Font    = DefaultAssets.FontSmall,
                GridRow = 2
            };

            _statisticsGrid.Widgets.Add(_widgetsCountLabel);

            _drawCallsLabel = new TextBlock
            {
                Text    = "Draw Calls: ",
                Font    = DefaultAssets.FontSmall,
                GridRow = 3
            };

            _statisticsGrid.Widgets.Add(_drawCallsLabel);

            _statisticsGrid.HorizontalAlignment = HorizontalAlignment.Left;
            _statisticsGrid.VerticalAlignment   = VerticalAlignment.Bottom;
            _statisticsGrid.Left = 10;
            _statisticsGrid.Top  = -10;
            _desktop.Widgets.Add(_statisticsGrid);

            UpdateMenuFile();
            UpdateMenuControls();
        }
Example #4
0
        private void BuildUI()
        {
#if DEBUG
#endif

            _desktop = new Desktop();

            _ui = new StudioWidget();

            _ui._menuFileNew.Selected          += NewItemOnClicked;
            _ui._menuFileOpen.Selected         += OpenProjectItemOnClicked;
            _ui._menuFileSave.Selected         += SaveItemOnClicked;
            _ui._menuFileDebugOptions.Selected += DebugOptionsItemOnSelected;
            _ui._quitMenuItem.Selected         += QuitItemOnDown;

            _ui._aboutMenuItem.Selected += AboutItemOnClicked;

            _desktop.Widgets.Add(_ui);

            _ui._topSplitPane.SetSplitterPosition(0, _state != null ? _state.TopSplitterPosition : 0.75f);

            _explorer = new Explorer();
            _explorer.Tree.SelectionChanged += OnExplorerSelectionChanged;
            _ui._explorerContainer.Widgets.Add(_explorer);

            _propertyGrid = new PropertyGrid();
            _propertyGrid.PropertyChanged += OnPropertyChanged;
            _ui._rightSplitPane.Widgets.Add(_propertyGrid);

            _mapEditor = new MapEditor();
            _ui._leftContainer.Widgets.Add(_mapEditor);

            _statisticsGrid = new Grid
            {
                Visible = false
            };

            _statisticsGrid.RowsProportions.Add(new Grid.Proportion());
            _statisticsGrid.RowsProportions.Add(new Grid.Proportion());
            _statisticsGrid.RowsProportions.Add(new Grid.Proportion());

            _gcMemoryLabel = new TextBlock
            {
                Text = "GC Memory: ",
                Font = DefaultAssets.FontSmall
            };
            _statisticsGrid.Widgets.Add(_gcMemoryLabel);

            _fpsLabel = new TextBlock
            {
                Text          = "FPS: ",
                Font          = DefaultAssets.FontSmall,
                GridPositionY = 1
            };
            _statisticsGrid.Widgets.Add(_fpsLabel);

            _widgetsCountLabel = new TextBlock
            {
                Text          = "Total Widgets: ",
                Font          = DefaultAssets.FontSmall,
                GridPositionY = 2
            };
            _statisticsGrid.Widgets.Add(_widgetsCountLabel);

            _statisticsGrid.HorizontalAlignment = HorizontalAlignment.Left;
            _statisticsGrid.VerticalAlignment   = VerticalAlignment.Bottom;
            _statisticsGrid.XHint = 10;
            _statisticsGrid.YHint = -10;
            _desktop.Widgets.Add(_statisticsGrid);
        }
Example #5
0
        private void BuildUI()
        {
            _desktop          = new Desktop();
            _desktop.KeyDown += (s, a) =>
            {
                if (_desktop.HasModalWidget || UI._mainMenu.IsOpen)
                {
                    return;
                }

                if (_desktop.IsKeyDown(Keys.LeftControl) || _desktop.IsKeyDown(Keys.RightControl))
                {
                    if (_desktop.IsKeyDown(Keys.O))
                    {
                        OpenProjectItemOnClicked(this, EventArgs.Empty);
                    }
                    else if (_desktop.IsKeyDown(Keys.W))
                    {
                        OnSwitchMapMenuItemSelected(this, EventArgs.Empty);
                    }
                    else if (_desktop.IsKeyDown(Keys.N))
                    {
                        OnNewMapSelected(this, EventArgs.Empty);
                    }
                    else if (_desktop.IsKeyDown(Keys.S))
                    {
                        SaveMapSelected(this, EventArgs.Empty);
                    }
                    else if (_desktop.IsKeyDown(Keys.Q))
                    {
                        Exit();
                    }
                }
            };

            UI = new StudioWidget();

            UI._openModuleMenuItem.Selected += OpenProjectItemOnClicked;

            UI._switchMapMenuItem.Selected += OnSwitchMapMenuItemSelected;
            UI._newMapMenuItem.Selected    += OnNewMapSelected;
            UI._resizeMapMenuItem.Selected += OnResizeMapSelected;
            UI._saveMapMenuItem.Selected   += SaveMapSelected;
            UI._saveMapAsMenuItem.Selected += SaveMapAsSelected;

            UI._debugOptionsMenuItem.Selected += DebugOptionsItemOnSelected;
            UI._quitMenuItem.Selected         += QuitItemOnDown;

            UI._aboutMenuItem.Selected += AboutItemOnClicked;

            UI._comboItemTypes.SelectedIndex         = 0;
            UI._comboItemTypes.SelectedIndexChanged += OnComboTypesIndexChanged;
            UI._mapEditor.MarkPositionChanged       += (s, a) =>
            {
                var pos = UI._mapEditor.MarkPosition;
                UI._textPosition.Text = pos == null ? string.Empty : string.Format("X = {0}, Y = {1}", pos.Value.X, pos.Value.Y);
            };

            _desktop.Widgets.Add(UI);

            UI._topSplitPane.SetSplitterPosition(0, _state != null ? _state.TopSplitterPosition : 0.75f);

            _statisticsGrid = new Grid
            {
                Visible = false
            };

            _statisticsGrid.RowsProportions.Add(new Proportion());
            _statisticsGrid.RowsProportions.Add(new Proportion());
            _statisticsGrid.RowsProportions.Add(new Proportion());

            _gcMemoryLabel = new Label
            {
                Text = "GC Memory: ",
                Font = UIUtility.DefaultFont
            };
            _statisticsGrid.Widgets.Add(_gcMemoryLabel);

            _fpsLabel = new Label
            {
                Text    = "FPS: ",
                Font    = UIUtility.DefaultFont,
                GridRow = 1
            };
            _statisticsGrid.Widgets.Add(_fpsLabel);

            _widgetsCountLabel = new Label
            {
                Text    = "Total Widgets: ",
                Font    = UIUtility.DefaultFont,
                GridRow = 2
            };
            _statisticsGrid.Widgets.Add(_widgetsCountLabel);

            _statisticsGrid.HorizontalAlignment = HorizontalAlignment.Left;
            _statisticsGrid.VerticalAlignment   = VerticalAlignment.Bottom;
            _statisticsGrid.Left = 10;
            _statisticsGrid.Top  = -10;
            _desktop.Widgets.Add(_statisticsGrid);

            UpdateMenuFile();
        }
Example #6
0
        private void BuildUI()
        {
            _desktop = new Desktop();

            _desktop.ContextMenuClosed += _desktop_ContextMenuClosed;
            _desktop.KeyDownHandler     = key =>
            {
                if (_autoCompleteMenu != null &&
                    (key == Keys.Up || key == Keys.Down || key == Keys.Enter))
                {
                    _autoCompleteMenu.OnKeyDown(key);
                }
                else
                {
                    _desktop.OnKeyDown(key);
                }
            };

            _ui = new StudioWidget();

            _ui._menuFileNew.Selected              += NewItemOnClicked;
            _ui._menuFileOpen.Selected             += OpenItemOnClicked;
            _ui._menuFileReload.Selected           += OnMenuFileReloadSelected;
            _ui._menuFileSave.Selected             += SaveItemOnClicked;
            _ui._menuFileSaveAs.Selected           += SaveAsItemOnClicked;
            _ui._menuFileExportToCS.Selected       += ExportCsItemOnSelected;
            _ui._menuFileReloadStylesheet.Selected += OnMenuFileReloadStylesheet;
            _ui._menuFileReloadStylesheet.Enabled   = false;
            _ui._menuFileDebugOptions.Selected     += DebugOptionsItemOnSelected;
            _ui._menuFileQuit.Selected             += QuitItemOnDown;

            _ui._menuEditFormatSource.Selected += _menuEditFormatSource_Selected;

            _ui._menuHelpAbout.Selected += AboutItemOnClicked;

            _ui._textSource.CursorPositionChanged += _textSource_CursorPositionChanged;
            _ui._textSource.TextChanged           += _textSource_TextChanged;
            _ui._textSource.KeyDown += _textSource_KeyDown;
            _ui._textSource.Char    += _textSource_Char;

            _ui._textStatus.Text   = string.Empty;
            _ui._textLocation.Text = "Line: 0, Column: 0, Indent: 0";

            _propertyGrid = new PropertyGrid
            {
                IgnoreCollections = true
            };
            _propertyGrid.PropertyChanged += PropertyGridOnPropertyChanged;

            _ui._propertyGridPane.Content = _propertyGrid;

            _ui._topSplitPane.SetSplitterPosition(0, _state != null ? _state.TopSplitterPosition : 0.75f);
            _ui._leftSplitPane.SetSplitterPosition(0, _state != null ? _state.LeftSplitterPosition : 0.5f);

            _desktop.Widgets.Add(_ui);

            _statisticsGrid = new Grid
            {
                Visible = false
            };

            _statisticsGrid.RowsProportions.Add(new Grid.Proportion());
            _statisticsGrid.RowsProportions.Add(new Grid.Proportion());
            _statisticsGrid.RowsProportions.Add(new Grid.Proportion());

            _gcMemoryLabel = new TextBlock
            {
                Text = "GC Memory: ",
                Font = DefaultAssets.FontSmall
            };
            _statisticsGrid.Widgets.Add(_gcMemoryLabel);

            _fpsLabel = new TextBlock
            {
                Text    = "FPS: ",
                Font    = DefaultAssets.FontSmall,
                GridRow = 1
            };

            _statisticsGrid.Widgets.Add(_fpsLabel);

            _widgetsCountLabel = new TextBlock
            {
                Text    = "Total Widgets: ",
                Font    = DefaultAssets.FontSmall,
                GridRow = 2
            };

            _statisticsGrid.Widgets.Add(_widgetsCountLabel);

            _drawCallsLabel = new TextBlock
            {
                Text    = "Draw Calls: ",
                Font    = DefaultAssets.FontSmall,
                GridRow = 3
            };

            _statisticsGrid.Widgets.Add(_drawCallsLabel);

            _statisticsGrid.HorizontalAlignment = HorizontalAlignment.Left;
            _statisticsGrid.VerticalAlignment   = VerticalAlignment.Bottom;
            _statisticsGrid.Left = 10;
            _statisticsGrid.Top  = -10;
            _desktop.Widgets.Add(_statisticsGrid);

            UpdateMenuFile();
        }