Esempio n. 1
0
        private void tabStripElement_ItemsChanged(object sender, RadPageViewItemsChangedEventArgs e)
        {
            if (this.Disposing || this.IsDisposed || !this.IsHandleCreated)
            {
                return;
            }

            if (this.suspendStripItemsChanged > 0)
            {
                return;
            }

            this.SuspendStripNotifications(true, true);

            //we need to sync item and panel indexes
            switch (e.Operation)
            {
            case ItemsChangeOperation.Inserted:
            case ItemsChangeOperation.Set:
                TabStripItem item = e.ChangedItem as TabStripItem;
                if (item != null)
                {
                    int index = this.tabStripElement.Items.IndexOf(item);
                    this.Controls.SetChildIndex(item.TabPanel, index);
                    this.selectedIndex = index;
                    this.UpdateTabSelection(true);
                }
                break;
            }

            this.ResumeStripNotifications(true, true);
        }
Esempio n. 2
0
 public void Free()
 {
     if (tabItem != null)
     {
         (tabItem as IGeoDoFree).Free();
         tabItem = null;
     }
 }
Esempio n. 3
0
 private void SelectTabItem(TabStripItem tabStripItem)
 {
     if (this.pageViewUpdate)
     {
         return;
     }
     this.TabStripElement.SelectedItem = (RadPageViewItem)tabStripItem;
     if (this.TabStripElement.SelectedItem == null || this.TabStripElement.SelectedItem.Owner != this.TabStripElement)
     {
         return;
     }
     this.TabStripElement.EnsureItemVisible(this.TabStripElement.SelectedItem);
 }
Esempio n. 4
0
        private void SelectTabItem(TabStripItem tabStripItem)
        {
            if (pageViewUpdate)
            {
                return;
            }

            this.TabStripElement.SelectedItem = tabStripItem;
            if (this.TabStripElement.SelectedItem != null)
            {
                this.TabStripElement.EnsureItemVisible(this.TabStripElement.SelectedItem);
            }
        }
Esempio n. 5
0
 private void OnPinButtonClick(object sender, EventArgs e)
 {
     if (this.tabPanel == null || this.tabPanel.Site != null)
     {
         return;
     }
     if (this.IsPreview)
     {
         this.owner.PreviewItem = (RadPageViewItem)null;
     }
     else
     {
         TabStripItem tabStripItem = this;
         tabStripItem.IsPinned = !tabStripItem.IsPinned;
     }
 }
Esempio n. 6
0
            public override void SetChildIndex(Control child, int newIndex)
            {
                if (this.owner.lockChildIndexSet)
                {
                    return;
                }

                base.SetChildIndex(child, newIndex);

                if (this.owner.suspendStripItemsChanged > 0)
                {
                    return;
                }

                this.owner.SuspendStripNotifications(true, true);

                for (int i = 0; i < this.owner.TabStripElement.Items.Count; i++)
                {
                    TabStripItem tabItem = this.owner.TabStripElement.Items[i] as TabStripItem;
                    if (tabItem != null)
                    {
                        if (tabItem.TabPanel == child)
                        {
                            this.owner.TabStripElement.RemoveItem(tabItem);
                            if (newIndex >= 0)
                            {
                                this.owner.TabStripElement.InsertItem(newIndex, tabItem);
                            }
                            else
                            {
                                this.owner.TabStripElement.AddItem(tabItem);
                            }

                            this.owner.selectedIndex = newIndex;
                            this.owner.UpdateTabSelection(true);
                            break;
                        }
                    }
                }

                this.owner.ResumeStripNotifications(true, true);
            }
Esempio n. 7
0
        private void SyncTabElements()
        {
            if (this.tabPanels.Count != this.tabStripElement.Items.Count)
            {
                this.SuspendStripNotifications(true, true);

                while (this.tabStripElement.Items.Count > 0)
                {
                    this.tabStripElement.RemoveItem(this.tabStripElement.Items[0]);
                }
                for (int i = 0; i < this.tabPanels.Count; i++)
                {
                    TabStripItem item = new TabStripItem(this.tabPanels[i]);
                    item.ShowCloseButton = this.showItemCloseButton;
                    this.tabStripElement.AddItem(item);
                }

                this.ResumeStripNotifications(true, true);
            }
        }
Esempio n. 8
0
        private void tabStripElement_ItemSelecting(object sender, RadPageViewItemSelectingEventArgs e)
        {
            if (this.suspendStripSelecting > 0)
            {
                return;
            }
            TabStripItem nextItem = e.NextItem as TabStripItem;

            if (nextItem != null)
            {
                this.pageViewUpdate = true;
                if (!this.SelectTab(nextItem.TabPanel))
                {
                    e.Cancel = true;
                }
                this.pageViewUpdate = false;
            }
            else
            {
                e.Cancel = true;
            }
        }
Esempio n. 9
0
 private void tabStripElement_ItemsChanged(object sender, RadPageViewItemsChangedEventArgs e)
 {
     if (this.Disposing || this.IsDisposed || (!this.IsHandleCreated || this.suspendStripItemsChanged > 0))
     {
         return;
     }
     this.SuspendStripNotifications(true, true);
     switch (e.Operation)
     {
     case ItemsChangeOperation.Inserted:
     case ItemsChangeOperation.Set:
         TabStripItem changedItem = e.ChangedItem as TabStripItem;
         if (changedItem != null)
         {
             int newIndex = this.tabStripElement.Items.IndexOf((RadPageViewItem)changedItem);
             this.Controls.SetChildIndex((Control)changedItem.TabPanel, newIndex);
             this.selectedIndex = newIndex;
             this.UpdateTabSelection(true);
             break;
         }
         break;
     }
     this.ResumeStripNotifications(true, true);
 }
Esempio n. 10
0
 protected internal virtual void OnTabCloseButtonClicked(TabStripItem item)
 {
     this.tabPanels.Remove(item.TabPanel);
 }