private void ProcessTabs_TabRemoved(object sender, TabRemovedEventArgs e)
        {
            LOG.DebugFormat("TabRemoved - Tab: {0}", e.Tab);

            this.RemoveProcess(e.Tab.Controller().Process, false);

            CheckIfLastTab();
        }
예제 #2
0
        private void LogTabs_TabRemoved(object?sender, TabRemovedEventArgs e)
        {
            LOG.Debug($"{nameof( LogTabs_TabRemoved )} - Tab: {e.Tab}");

            this.RemoveLogProcess(e.Tab.Controller().Process, false);

            CheckIfLastTab();
        }
예제 #3
0
        /// <summary>
        /// タブを閉じるメソッド
        /// </summary>
        /// <param name="tabData">タブのデータ</param>
        public void CloseTab(TabData tabData)
        {
            var tabRemovedEventArgs = new TabRemovedEventArgs {
                TabId = tabData.TabId
            };

            _eventAggregator.GetEvent <TabRemovedEvent>().Publish(tabRemovedEventArgs);
            TabDatas.Remove(tabData);
        }
예제 #4
0
        // パブリックメソッド

        /// <summary>
        /// クリックでタブを閉じるときに呼ばれるメソッド
        /// </summary>
        public void ClosingTabItemHandlerImpl(ItemActionCallbackArgs <TabablzControl> itemActionCallbackArgs)
        {
            var tabData = (TabData)itemActionCallbackArgs.DragablzItem.DataContext;

            var tabRemovedEventArgs = new TabRemovedEventArgs {
                TabId = tabData.TabId
            };

            _eventAggregator.GetEvent <TabRemovedEvent>().Publish(tabRemovedEventArgs);
        }
예제 #5
0
 /// <summary>
 /// 全てのタブを閉じるメソッド
 /// </summary>
 /// <param name="tabData"></param>
 public void CloseAllTabs()
 {
     foreach (var tabData in TabDatas)
     {
         var tabRemovedEventArgs = new TabRemovedEventArgs {
             TabId = tabData.TabId
         };
         _eventAggregator.GetEvent <TabRemovedEvent>().Publish(tabRemovedEventArgs);
     }
     TabDatas.Clear();
 }
예제 #6
0
        /// <summary>
        /// このタブ以外すべてを閉じるメソッド
        /// </summary>
        /// <param name="thisTabData">残しておくタブ</param>
        public void CloseAllTabsExceptThisTab(TabData thisTabData)
        {
            foreach (var eventTabData in TabDatas.Where(tabData => tabData.TabId != thisTabData.TabId))
            {
                var tabRemovedEventArgs = new TabRemovedEventArgs {
                    TabId = eventTabData.TabId
                };
                _eventAggregator.GetEvent <TabRemovedEvent>().Publish(tabRemovedEventArgs);
            }

            TabDatas.RemoveAll(tabData => tabData.TabId != thisTabData.TabId);
        }