Example #1
0
 public void HideTab(string key)
 {
     if (TabPages.ContainsKey(key))
     {
         HideTab(TabPages[key]);
     }
 }
Example #2
0
        public void HideTabPageByName(string tabPageName)
        {
            // The first time the Hide method is called, save the original order of the TabPages
            if (tabPagesOrder == null)
            {
                tabPagesOrder = new List <string>();
                foreach (System.Windows.Forms.TabPage tabPageCurrent in TabPages)
                {
                    tabPagesOrder.Add(tabPageCurrent.Name);
                }
            }

            if (TabPages.ContainsKey(tabPageName))
            {
                System.Windows.Forms.TabPage tabPageToHide;

                // Get the TabPage object
                tabPageToHide = TabPages[tabPageName];

                // Add the TabPage to the internal List
                tabPagesHidden.Add(tabPageName, tabPageToHide);

                // Remove the TabPage from the TabPages collection of the TabControl
                TabPages.Remove(tabPageToHide);
            }
        }
        public void AddTab(string filename = "")
        {
            if (TabPages.ContainsKey(filename))
            {
                return;
            }

            var tabPage = new TabPage();

            if (string.IsNullOrEmpty(filename))
            {
                tabPage.Text       = Strings.DocumentsTabControl_AddTab_NewFile + id;
                tabPage.ImageIndex = 1;
                tabPage.Name       = Strings.DocumentsTabControl_AddTab_NewFile + id;
            }
            else
            {
                tabPage.Text       = filename;
                tabPage.ImageIndex = 0;
                tabPage.Name       = filename;
            }
            TabPages.Insert(TabPages.Count - 1, tabPage);
            SelectedIndex = TabPages.IndexOf(tabPage);
            id++;
        }
Example #4
0
        // WORKAROUND: Selected is never raised if the first tab is selected. (which is annoying if you want to initialize it)
        public void SelectTab(string tabPageName, bool forceSelection)
        {
            if (!forceSelection)
            {
                base.SelectTab(tabPageName);
            }
            else
            {
                if (!TabPages.ContainsKey(tabPageName))
                {
                    return;
                }

                TabPage targetTab = First(x => x.Name.Equals(tabPageName));

                if (TabPages.IndexOfKey(tabPageName) == 0)
                {
                    OnSelected(new TabControlEventArgs(targetTab, 0, TabControlAction.Selected));
                }
                else
                {
                    base.SelectTab(tabPageName);
                }
            }
        }
Example #5
0
 public virtual void FocusPage(Panel p)
 {
     if (TabPages.ContainsKey(p))
     {
         p.BringToFront();
     }
 }
 private void xtraTabControl1_CloseButtonClick(object sender, EventArgs e)
 {
     if (TabPages.ContainsKey(((XtraTabControl)sender).SelectedTabPage.Name))
     {
         TabPages.Remove(((XtraTabControl)sender).SelectedTabPage.Name);
     }
     xtraTabControl1.TabPages.Remove(((XtraTabControl)sender).SelectedTabPage);
 }
 private void CloseTab_BarButtonItem_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
 {
     if (TabPages.ContainsKey(xtraTabControl1.SelectedTabPage.Name))
     {
         TabPages.Remove(xtraTabControl1.SelectedTabPage.Name);
     }
     xtraTabControl1.TabPages.Remove(xtraTabControl1.SelectedTabPage);
 }
 private void CloseAllTabs_BarButtonItem_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
 {
     foreach (XtraTabPage tabPage in xtraTabControl1.TabPages)
     {
         if (TabPages.ContainsKey(tabPage.Name))
         {
             TabPages.Remove(tabPage.Name);
         }
     }
     xtraTabControl1.TabPages.Clear();
 }
Example #9
0
 protected override void OnControlAdded(Miyagi.Common.Events.ValueEventArgs <Control> e)
 {
     if (e.Data is Panel && TabPages.ContainsKey((Panel)e.Data))
     {
         base.OnControlAdded(e);
         AddButtonForTabPage((Panel)e.Data);
         this.PerformLayout();
     }
     else if (e.Data is Button && TabButtons.ContainsValue((Button)e.Data))
     {
         base.OnControlAdded(e);
     }
     else
     {
         throw new InvalidOperationException("Only panels may be added to tab panels!");
     }
 }
        /// <summary>
        /// Creates tabs from a list of property sets.
        /// </summary>
        /// <param name="propertySets">Property sets to base tabs off of.</param>
        public void ApplyGamepieces(Exporter.Gamepiece[] gamepieces)
        {
            var tmp = Handle; // Forces creation of window handle so that tabs will appear

            foreach (Exporter.Gamepiece g in gamepieces)
            {
                if (TabPages.ContainsKey(g.id))
                {
                    TabPage p = TabPages[g.id];

                    if (p is ComponentPropertiesTabPage page)
                    {
                        page.ChildForm.Gamepiece = g;
                    }
                }
            }

            SelectedTab = TabPages[0];
        }
Example #11
0
 /// <summary>
 /// 将需要显示的Tip文字添加到容器以显示
 /// </summary>
 /// <param name="tabPageName"></param>
 /// <param name="text"></param>
 public void TipTextAdd(string tabPageName, string text)
 {
     if (SelectedTab != null)
     {
         if (SelectedTab.Name == tabPageName)    //不对当前标签添加Tip文字
         {
             return;
         }
     }
     if (TabPages.ContainsKey(tabPageName))
     {
         if (!TipTextDictionary.ContainsKey(tabPageName))
         {
             TipTextDictionary.Add(tabPageName, text);
         }
         else
         {
             TipTextDictionary[tabPageName] = text;
         }
     }
 }
Example #12
0
 /// <summary>
 /// 将tabpage加入呼吸灯显示容器,使标签具有呼吸灯效果
 /// </summary>
 /// <param name="tabPageName"></param>
 public void tabFlickerAdd(string tabPageName)
 {
     if (SelectedTab != null)
     {
         if (SelectedTab.Name == tabPageName)    //不对当前标签添加呼吸灯效果
         {
             return;
         }
     }
     if (TabPages.ContainsKey(tabPageName))
     {
         if (!tabFlickerDictionary.ContainsKey(tabPageName))
         {
             tabFlickerDictionary.Add(tabPageName, false);
             if (!flashTime.Enabled)
             {
                 flashTime.Enabled = true;
             }
         }
     }
 }
        private void CloseOtherTabs_BarButtonItem_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            XtraTabPage leavePage = null;

            foreach (XtraTabPage tabPage in xtraTabControl1.TabPages)
            {
                if (TabPages.ContainsKey(tabPage.Name) && xtraTabControl1.SelectedTabPage != tabPage)
                {
                    TabPages.Remove(tabPage.Name);
                }
                else
                {
                    leavePage = tabPage;
                }
            }
            xtraTabControl1.TabPages.Clear();
            if (leavePage != null)
            {
                xtraTabControl1.TabPages.Add(leavePage);
            }
        }
Example #14
0
        /// <summary>
        /// Adds a ComponentPropertiesTab if the EnterNameDialog returns OK and the name isn't already taken.
        /// </summary>
        /// <returns>true if OK is pressed</returns>
        public bool AddComponentPropertiesTab()
        {
            EnterNameDialog nameDialog = new EnterNameDialog();

            if (nameDialog.ShowDialog(this).Equals(DialogResult.OK))
            {
                if (TabPages.ContainsKey(nameDialog.nameTextBox.Text))
                {
                    MessageBox.Show("Name is already taken.", "Invalid name.");
                    return(false);
                }
                else
                {
                    ComponentPropertiesTabPage page = new ComponentPropertiesTabPage(this, nameDialog.nameTextBox.Text);
                    TabPages.Insert(TabPages.Count - 1, page);
                    SelectedTab = page;
                    return(true);
                }
            }
            else
            {
                return(false);
            }
        }
Example #15
0
        public async Task AddViewTab(string Name, string EntryPoint, bool ShowView = true)
        {
            var view = ViewSet.ViewsList[Name];

            _lastEntryPoint = EntryPoint;

            if ((await view.IsEnabledAsync()) == false)
            {
                return;
            }

            // Tab is already opened
            if (TabPages.ContainsKey(Name))
            {
                if (SelectedTab.Name == view.Name)
                {
                    await CallShowView(SelectedTab);

                    return;
                }

                // Select the tab
                _targetingPage = TabPages[view.Name];
                SelectTab(view.Name);
                return;
            }

            UserControl uc = view.ViewControl;

            if (uc == null)
            {
                await view.ViewlessCallAsync(view.EntryPoint);

                return;
            }

            // Wrapper for the view control
            Panel viewPanel = new Panel();

            // Set the size and the color
            viewPanel.BackColor         = uc.BackColor;
            viewPanel.AutoScrollMinSize = uc.Size;
            viewPanel.AutoScroll        = true;

            // Add the new control
            viewPanel.Controls.Add(uc);

            // Fill the whole area
            viewPanel.Dock = DockStyle.Fill;
            uc.Dock        = DockStyle.Fill;

            // Adding a new tab
            TabPages.Add(view.Name, view.Title);

            // Displaying the new tab
            TabPages[view.Name].Show();

            TabPages[view.Name].BackColor = viewPanel.BackColor;

            if (view.Icon != null)
            {
                TabPages[view.Name].ImageKey = view.Name;
            }
            else
            {
                TabPages[view.Name].ImageKey = "noIcon";
            }

            TabPages[view.Name].Controls.Add(viewPanel);

            if (ShowView)
            {
                if (TabPages.Count > 1)
                {
                    _targetingPage = TabPages[view.Name];
                    SelectTab(view.Name);
                }
                else
                {
                    if (await ShowViewAsync(TabPages[view.Name]) == false)
                    {
                        TabPages.Remove(TabPages[view.Name]);
                    }
                }
            }
        }