示例#1
0
        private void TabControlParent_MouseClick(object sender, MouseEventArgs e)
        {
            lastClickedPoint = e.Location;
            if (e.Button == MouseButtons.Right)
            {
                for (int ix = 0; ix < TabControlParent.TabCount; ++ix)
                {
                    if (TabControlParent.GetTabRect(ix).Contains(e.Location))
                    {
                        TabContextMenuStrip.Show(this, e.Location);

                        TabControlParent.SelectedTab = TabControlParent.TabPages[ix];
                        TabViewChange(TabControlParent.TabPages[ix] as Classes.LogTabPage);
                    }
                }
            }
            else if (e.Button == MouseButtons.Left)
            {
                for (int ix = 0; ix < TabControlParent.TabCount; ++ix)
                {
                    if (TabControlParent.GetTabRect(ix).Contains(e.Location))
                    {
                        if (TabControlParent.TabPages[ix].Tag.ToString() == "Folder")
                        {
                            //SelectedFolder = TabControlParent.TabPages[ix] as Classes.LogTabPage;
                            // TabViewChange(TabControlParent.TabPages[ix] as Classes.LogTabPage);
                        }
                    }
                }
            }
        }
示例#2
0
        /// <summary>
        /// This is the method that responds to the KeyDown event.
        /// </summary>
        /// <param name="e">
        /// A <see cref="T:System.Windows.Input.KeyEventArgs" /> that contains
        /// the event data.
        /// </param>
        protected override void OnKeyDown(KeyEventArgs e)
        {
            base.OnKeyDown(e);
            if (e.Handled)
            {
                return;
            }

            // Some keys (e.g. Left/Right) need to be translated in RightToLeft mode
            Key invariantKey = InteractionHelper.GetLogicalKey(FlowDirection, e.Key);

            TabItem nextTabItem = null;

            int direction  = 0;
            int startIndex = TabControlParent.Items.IndexOf(this);

            switch (invariantKey)
            {
            case Key.Right:
            case Key.Down:
                direction = 1;
                break;

            case Key.Left:
            case Key.Up:
                direction = -1;
                break;

            default:
                return;
            }

            nextTabItem = TabControlParent.FindNextTabItem(startIndex, direction);

            if (nextTabItem != null && nextTabItem != TabControlParent.SelectedItem)
            {
                e.Handled = true;
                TabControlParent.SelectedItem = nextTabItem;
                nextTabItem.Focus();
            }
        }
示例#3
0
文件: TabItem.cs 项目: ya1gaurav/moon
        /// <summary>
        /// This is the method that responds to the KeyDown event.
        /// </summary>
        /// <param name="e"></param>
        protected override void OnKeyDown(KeyEventArgs e)
        {
            base.OnKeyDown(e);
            if (e.Handled)
            {
                return;
            }

            TabItem nextTabItem = null;

            int direction  = 0;
            int startIndex = TabControlParent.Items.IndexOf(this);

            switch (e.Key)
            {
            case Key.Right:
            case Key.Up:
                direction = 1;
                break;

            case Key.Left:
            case Key.Down:
                direction = -1;
                break;

            default:
                return;
            }

            nextTabItem = TabControlParent.FindNextTabItem(startIndex, direction);

            if (nextTabItem != null && nextTabItem != TabControlParent.SelectedItem)
            {
                e.Handled = true;
                TabControlParent.SelectedItem = nextTabItem;
                nextTabItem.Focus();
            }
        }
示例#4
0
        /******************************
        * Section that allows for Tab renaming
        ******************************/
        private void renameTabToolStripMenuItem_Click(object sender, EventArgs e)
        {
            RenameForm rename = new RenameForm();

            rename.ShowDialog(this);
            Classes.LogTabPage SelectedFolder  = GetSelectedFolder();
            Classes.LogTabPage SelectedTabPage = GetSelectedTabPage();

            if (SelectedFolder != null)
            {
                if (TabControlParent.GetTabRect(TabControlParent.SelectedIndex).Contains(lastClickedPoint))
                {
                    SelectedTabPage = SelectedFolder;
                }
            }
            if (rename.DialogResult == DialogResult.OK)
            {
                if (SelectedTabPage.Tag.ToString() == "Folder" && !CheckForExistingTabName(rename.RenameTextBox.Text))
                {
                    SelectedTabPage.Name = rename.RenameTextBox.Text;
                }
                else if (SelectedTabPage.Tag.ToString() == "Folder" && CheckForExistingTabName(rename.RenameTextBox.Text))
                {
                    MessageBox.Show("Folder Name Already Exists.");
                    rename.Hide();
                    return;
                }

                SelectedTabPage.Text = rename.RenameTextBox.Text;
                SelectedTabPage.Update();
            }
            else
            {
                rename.Hide();
            }
        }
示例#5
0
        /*************************
         * Handles the Tab menu item selections
         ***************************/
        private void TabContextMenuStrip_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            Classes.LogTabPage SelectedFolder  = GetSelectedFolder();
            Classes.LogTabPage SelectedTabPage = GetSelectedTabPage();

            if (SelectedFolder != null)
            {
                if (TabControlParent.GetTabRect(TabControlParent.SelectedIndex).Contains(lastClickedPoint))
                {
                    SelectedTabPage = SelectedFolder;
                }
            }

            ToolStripItem clickedItem = e.ClickedItem;

            if (e.ClickedItem.Name == "TabToolStripMenuItem")
            {
                RenameForm rename = new RenameForm();
                rename.ShowDialog(this);

                if (rename.DialogResult == DialogResult.OK)
                {
                    SelectedTabPage.Text = rename.RenameTextBox.Text;
                    SelectedTabPage.Update();
                }
                else
                {
                    rename.Hide();
                }
            }
            else if (e.ClickedItem.Name == "moveToFolderToolStripMenuItem")
            {
                MoveToFolderForm MoveToForm = new MoveToFolderForm();

                string parentFolderName = SelectedTabPage.Parent.Name;
                for (int ix = 0; ix < TabControlParent.TabCount; ++ix)
                {
                    if (TabControlParent.TabPages[ix].Tag.ToString() == "Folder")
                    {
                        MoveToForm.FolderListBox.Items.Add(Text = TabControlParent.TabPages[ix].Text);
                    }
                }
                MoveToForm.ShowDialog(this);
                if (MoveToForm.DialogResult == DialogResult.OK)
                {
                    try
                    {
                        string selection = MoveToForm.FolderListBox.SelectedItem.ToString();
                        if (selection.ToString() == "No Folder")
                        {
                            TabControlParent.TabPages.Add(SelectedTabPage);
                        }
                        TabPage    folder            = GetFolderByName(selection);
                        TabControl subTabPageControl = folder.Controls.Find("SubTabControl", true).FirstOrDefault() as TabControl;
                        subTabPageControl.TabPages.Add(SelectedTabPage);
                    }
                    catch (NullReferenceException) { } //No folder selected do nothing
                }
            }
            else if (e.ClickedItem.Name == "deleteToolStripMenuItem")
            {
                /*if (SelectedTabPage.IsFolder)
                 * {
                 *
                 *  TabControl subTabPageControl = SelectedTabPage.Controls.Find("SubTabControl", true).FirstOrDefault() as TabControl;
                 *
                 * }*/
                Console.WriteLine(SelectedTabPage.Name);
                TabControl tabControl = SelectedTabPage.Parent as TabControl;
                tabControl.TabPages.Remove(SelectedTabPage);
            }
        }