Esempio n. 1
0
        /// <summary>
        /// Close the specified view
        /// </summary>
        /// <param name="view"></param>

        internal void CloseView(ResultsViewProps view)
        {
            int vi = ResultsPage.Views.IndexOf(view);

            if (vi < 0)
            {
                return;
            }

            UIMisc.EnteringSetup();

            ResultsPage.Views.RemoveAt(vi);             // get rid of the view

            DockPanel dp = GetContainingDockPanel(view.RenderingControl);

            if (dp != null)                  // if in a dock panel
            {
                DockManager.RemovePanel(dp); // render the corresponding panel
            }
            else
            {
                RenderViews();              // just a single view, render empty page
            }
            if (ResultsPage.ActiveViewIndex >= ResultsPage.Views.Count)
            {
                ResultsPage.ActiveViewIndex--;                 // normally go to next view but keep index within range
            }
            SaveLayout();

            UIMisc.LeavingSetup();

            return;
        }
Esempio n. 2
0
        /// <summary>
        /// Layout and render the page in the specified layout format
        /// </summary>
        /// <param name="layout"></param>

        internal void CreateStandardLayoutAndRenderViews(
            ViewLayout layout)
        {
            XtraPanel viewPanel;             // panel that contains current view control and is contained in a docking panel or directly in the views panel if single view on page

            ResultsPage page = ResultsPage;

            if (page == null)
            {
                return;
            }

            List <ResultsViewProps> views = page.Views;

            if (views.Count == 0)             // just have a single blank panel if no views
            {
                RenderEmptyPage();
                return;
            }

            UIMisc.EnteringSetup();

            //Visible = false;
            SuspendLayout();             // suspend layout while building

            if (layout == ViewLayout.RowsAndCols)
            {
                CreateRowsAndColsLayoutAndRenderViews();
            }

            else             // other common type view
            {
                CreateCommonLayoutAndRenderViews(layout);
            }

            DockPanel dp = DockManager.ActivePanel;             // get the active dock panel associated with current view

            RenderViews();

            ResumeLayout();
            //Visible = true;

            SaveLayout();

            FocusActiveView();

            QueryResultsControl qrc = QueryResultsControl.GetQrcThatContainsControl(this);

            if (qrc != null)
            {
                qrc.SetCurrentPageTabTitleAndImage();                          // update the page tab
            }
            UIMisc.LeavingSetup();

            return;
        }
Esempio n. 3
0
        /// <summary>
        /// SetFiltersPanelVisibility
        /// </summary>

        internal void RenderFilterPanel()
        {
            if (ResultsPage == null)
            {
                return;
            }

            if (ActiveView == null || ActiveView.Qm == null || ActiveView.Qm.Query == null)
            {
                return;
            }

            UIMisc.EnteringSetup();

            QueryManager qm = ActiveView.Qm;
            Query        q  = qm.Query;

            if (FilterPanel.Qm != qm)             // setup filter panel for current QueryManager if not done yet
            {
                FilterPanel.Qm = qm;
            }

            if (ResultsPage.ShowFilterPanel)
            {
                FilterPanel.Clear();
                FiltersDockPanel.Visibility = DockVisibility.Visible;
                FilterPanel.Render();
            }

            else
            {
                FiltersDockPanel.Visibility = DockVisibility.Hidden;
            }

            UIMisc.LeavingSetup();
            return;
        }