private void ApplyToIconPanel(UIPanel groupPanel, IconPanelModifier modifier, bool verticalScroll)
 {
     if (groupPanel == null)
     {
         return;
     }
     if (modifier == null)
     {
         return;
     }
     try{                                                      //seperator panels do not have UIScrollablePanels nor UIScrollbars
         UITabContainer tabContainer = groupPanel.GetComponentInChildren <UITabContainer>();
         foreach (UIComponent comp in tabContainer.components) //for each displayable panel of icons
         {
             if (comp is UIPanel)
             {
                 UIPanel           panel = comp as UIPanel;
                 UIScrollablePanel sp    = panel.GetComponentInChildren <UIScrollablePanel>();
                 UIScrollbar       sb    = panel.GetComponentInChildren <UIScrollbar>();
                 modifier.Invoke(panel, sp, sb, verticalScroll);
                 panel.Invalidate();
                 sp.Invalidate();
                 sb.Invalidate();
             }
         }
         tabContainer.Invalidate();
     }catch (Exception e) {
         //Debug.Print(groupPanel,e);
     }
 }
Example #2
0
        private void OnNameSort()
        {
            if (mainPanel.components.Count == 0)
            {
                return;
            }

            Quicksort(mainPanel.components, new Comparison <UIComponent>(CompareNames), m_reverseOrder);
            m_lastSortCriterionLines = LineSortCriterion.NAME;
            mainPanel.Invalidate();
        }
Example #3
0
 private void Sort(SortCriterion criterion, Comparison <UIComponent> compare)
 {
     if (m_CurSortCriterion == criterion)
     {
         m_InverseSort = !m_InverseSort;
     }
     else
     {
         m_InverseSort = false;
     }
     if (m_ScrollablePanel.components.Count > 0)
     {
         OverviewPanelBase.Quicksort(m_ScrollablePanel.components, compare);
         m_CurSortCriterion = criterion;
         m_ScrollablePanel.Invalidate();
     }
 }
Example #4
0
        private UIScrollablePanel CreateScrollablePanel(UIPanel panel) {
            panel.autoLayout = true;
            panel.autoLayoutDirection = LayoutDirection.Horizontal;

            UIScrollablePanel scrollablePanel = panel.AddUIComponent<UIScrollablePanel>();
            scrollablePanel.autoLayout = true;
            scrollablePanel.autoLayoutPadding = new RectOffset(10, 10, 0, 16);
            scrollablePanel.autoLayoutStart = LayoutStart.TopLeft;
            scrollablePanel.wrapLayout = true;
            scrollablePanel.size = new Vector2(panel.size.x - V_SCROLLBAR_WIDTH, panel.size.y);
            scrollablePanel.autoLayoutDirection = LayoutDirection.Horizontal; //Vertical does not work but why?

            UIScrollbar verticalScrollbar = CreateVerticalScrollbar(panel, scrollablePanel);
            verticalScrollbar.Show();
            verticalScrollbar.Invalidate();
            scrollablePanel.Invalidate();

            return scrollablePanel;
        }
Example #5
0
 private void ReSort()
 {
     SortingUtils.Quicksort(mainPanel.components, getSortingMethod(m_LastSortCriterionLines), reverseOrder);
     mainPanel.Invalidate();
 }