public TestCentricMainView() : base("TestCentric")
        {
            InitializeComponent();

            // View Parameters
            FontSelector     = new FontSelector(this);
            SplitterPosition = new SplitterPosition(treeSplitter);

            // UI Elements on main form
            RunButton  = new ButtonElement(runButton);
            StopButton = new ButtonElement(stopButton);
            RunSummary = new ControlElement <ExpandingLabel>(runCount);
            ResultTabs = new TabSelector(resultTabs);

            // Initialize File Menu Commands
            FileMenu           = new PopupMenu(fileMenu);
            OpenCommand        = new MenuCommand(openMenuItem);
            CloseCommand       = new MenuCommand(closeMenuItem);
            AddTestFileCommand = new MenuCommand(addTestFileMenuItem);
            ReloadTestsCommand = new MenuCommand(reloadTestsMenuItem);
            RuntimeMenu        = new PopupMenu(runtimeMenuItem);
            SelectedRuntime    = new CheckedMenuGroup(runtimeMenuItem);
            RecentFilesMenu    = new PopupMenu(recentFilesMenu);
            ExitCommand        = new MenuCommand(exitMenuItem);

            // Initialize View Menu Commands
            DisplayFormat            = new CheckedMenuGroup(fullGuiMenuItem, miniGuiMenuItem);
            IncreaseFontCommand      = new MenuCommand(increaseFontMenuItem);
            DecreaseFontCommand      = new MenuCommand(decreaseFontMenuItem);
            ChangeFontCommand        = new MenuCommand(fontChangeMenuItem);
            RestoreFontCommand       = new MenuCommand(defaultFontMenuItem);
            IncreaseFixedFontCommand = new MenuCommand(increaseFixedFontMenuItem);
            DecreaseFixedFontCommand = new MenuCommand(decreaseFixedFontMenuItem);
            RestoreFixedFontCommand  = new MenuCommand(restoreFixedFontMenuItem);
            StatusBarCommand         = new CheckedMenuItem(statusBarMenuItem);

            // Initialize Test Menu Commands
            RunAllCommand      = new MenuCommand(runAllMenuItem);
            RunSelectedCommand = new MenuCommand(runSelectedMenuItem);
            RunFailedCommand   = new MenuCommand(runFailedMenuItem);
            StopRunCommand     = new MenuCommand(stopRunMenuItem);

            // Initialize Tools Menu Comands
            ToolsMenu            = new PopupMenu(toolsMenu);
            ProjectEditorCommand = new MenuCommand(projectEditorMenuItem);
            SaveResultsCommand   = new MenuCommand(saveResultsMenuItem);
            ExtensionsCommand    = new MenuCommand(extensionsMenuItem);
            SettingsCommand      = new MenuCommand(settingsMenuItem);

            TestCentricHelpCommand = new MenuCommand(testCentricHelpMenuItem);
            NUnitHelpCommand       = new MenuCommand(nunitHelpMenuItem);
            AboutCommand           = new MenuCommand(aboutMenuItem);
        }
        public void Save(TextBlock block)
        {
            block.SetAttribute(nameof(PanelMode), PanelMode.ToString());
            if (ListMode != ContentBrowser.ListModeEnum.List)
            {
                block.SetAttribute(nameof(ListMode), ListMode.ToString());
            }
            if (TileImageSize != TileImageSizeDefault)
            {
                block.SetAttribute(nameof(TileImageSize), TileImageSize.ToString());
            }
            if (ListImageSize != ListImageSizeDefault)
            {
                block.SetAttribute(nameof(ListImageSize), ListImageSize.ToString());
            }
            if (ListColumnWidth != ListColumnWidthDefault)
            {
                block.SetAttribute(nameof(ListColumnWidth), ListColumnWidth.ToString());
            }
            if (!Breadcrumb)
            {
                block.SetAttribute(nameof(Breadcrumb), Breadcrumb.ToString());
            }
            if (DisplayPropertiesSortFilesBy)
            {
                if (SortFilesBy != ContentBrowser.SortByItems.Name)
                {
                    block.SetAttribute(nameof(SortFilesBy), SortFilesBy.ToString());
                }
                if (!SortFilesByAscending)
                {
                    block.SetAttribute(nameof(SortFilesByAscending), SortFilesByAscending.ToString());
                }
            }
            if (owner.Mode == ContentBrowser.ModeEnum.Resources)
            {
                if (!FilteringModeButton)
                {
                    block.SetAttribute(nameof(FilteringModeButton), FilteringModeButton.ToString());
                }
            }
            if (owner.Mode == ContentBrowser.ModeEnum.Objects)
            {
                if (!MembersButton)
                {
                    block.SetAttribute(nameof(MembersButton), MembersButton.ToString());
                }
            }
            if (DisplayPropertiesOpenButton)
            {
                if (!OpenButton)
                {
                    block.SetAttribute(nameof(OpenButton), OpenButton.ToString());
                }
            }
            if (DisplayPropertiesEditorSettingsButtons)
            {
                if (!EditorButton)
                {
                    block.SetAttribute(nameof(EditorButton), EditorButton.ToString());
                }
                if (!SettingsButton)
                {
                    block.SetAttribute(nameof(SettingsButton), SettingsButton.ToString());
                }
            }
            if (!ButtonsForEditing)
            {
                block.SetAttribute(nameof(ButtonsForEditing), ButtonsForEditing.ToString());
            }
            if (owner.Mode == ContentBrowser.ModeEnum.Objects)
            {
                if (!SearchButton)
                {
                    block.SetAttribute(nameof(SearchButton), SearchButton.ToString());
                }
            }

            //!!!!
            if (!SearchBar)
            {
                block.SetAttribute(nameof(SearchBar), SearchBar.ToString());
            }

            block.SetAttribute(nameof(SplitterPosition), SplitterPosition.ToString());
        }