Esempio n. 1
0
        public PanelView(IPanelPresenter presenter, IAddonManager addonManager, IPanelItemFactoryManager factoryManager)
        {
            InitializeComponent();
            // init presenters
            m_Presenter      = presenter;
            m_Presenter.View = this;

            m_AddonManager   = addonManager;
            m_FactoryManager = factoryManager;


            // setup items cache
            var cache = new ListViewItemCache(this);

            //LV.CacheVirtualItems += m_Cache.CacheVirtualItems;
            LV.RetrieveVirtualItem += cache.RetrieveVirtualItem;
            // set dropdown direction for sub-menus (actual for dual-monitor system)
            //mComp.DropDownDirection = ToolStripDropDownDirection.AboveLeft;
            //mSendToNewTab.DropDownDirection = ToolStripDropDownDirection.AboveLeft;
            // focus listview when panel got focus
            GotFocus += (sender, args) => ActiveControl = LV;
            // set filter's presenter
            pFilter.Presenter      = App.Resolve <IFilterPresenter>();
            pFilter.Presenter.View = pFilter;
        }
Esempio n. 2
0
        public void Model_AfterAppendTab(object sender, PanelModelEventArgs e)
        {
            // create panel
            var panelView = View.CreatePanelView(e.Info);
            // set update event
            IPanelPresenter presenter = panelView.Presenter;

            presenter.Objects = e.Info;
            //m_View.SelectedIndex = m_View.TabPagesCount - 1;
            e.Info.Changed        += (o, args) => presenter.UpdateItemsAndStatus();
            e.Info.TabNameUpdated += InfoOnTabNameUpdated;
            e.Info.OnTabNameUpdated();
            //e.Info.SubscriptionChanged += Item_SubscriptionChanged;
            // update items
            //e.Info.DataChanged(null, ConcreteSubject.s_UserItems);
            panelView.Presenter.ResetSortOrder();
            e.Info.AsyncRetrieveData(false);
        }
Esempio n. 3
0
 internal void AddPanelPresenter(IPanelPresenter panelPresenter)
 {
     this.AddPresenter(GlobalPresenter.PanelPresenterKey, panelPresenter);
 }