コード例 #1
0
        bool DrawColumn(int sta, int end, BuildReportTool.AssetList.SortType columnType, string columnName, bool allowSort, bool showScrollbar, BuildReportTool.AssetList assetListCollection, BuildReportTool.SizePart[] assetList, ColumnDisplayDelegate dataToDisplay, ref Vector2 scollbarPos)
        {
            bool buttonPressed = false;

            GUILayout.BeginVertical();


            // ----------------------------------------------------------
            // column header
            string sortTypeStyleName = BuildReportTool.Window.Settings.LIST_COLUMN_HEADER_STYLE_NAME;

            if (allowSort && assetListCollection.CurrentSortType == columnType)
            {
                if (assetListCollection.CurrentSortOrder == BuildReportTool.AssetList.SortOrder.Descending)
                {
                    sortTypeStyleName = BuildReportTool.Window.Settings.LIST_COLUMN_HEADER_DESC_STYLE_NAME;
                }
                else
                {
                    sortTypeStyleName = BuildReportTool.Window.Settings.LIST_COLUMN_HEADER_ASC_STYLE_NAME;
                }
            }
            if (GUILayout.Button(columnName, sortTypeStyleName, GUILayout.Height(LIST_HEIGHT)) && allowSort)
            {
                buttonPressed = true;
            }


            // ----------------------------------------------------------
            // scrollbar
            if (showScrollbar)
            {
                scollbarPos = GUILayout.BeginScrollView(scollbarPos,
                                                        BuildReportTool.Window.Settings.HIDDEN_SCROLLBAR_STYLE_NAME, "verticalscrollbar");
            }
            else
            {
                scollbarPos = GUILayout.BeginScrollView(scollbarPos,
                                                        BuildReportTool.Window.Settings.HIDDEN_SCROLLBAR_STYLE_NAME, BuildReportTool.Window.Settings.HIDDEN_SCROLLBAR_STYLE_NAME);
            }


            // ----------------------------------------------------------
            // actual contents
            bool useAlt = false;

            BuildReportTool.SizePart b;
            for (int n = sta; n < end; ++n)
            {
                b = assetList[n];

                string styleToUse = useAlt ? BuildReportTool.Window.Settings.LIST_SMALL_ALT_STYLE_NAME : BuildReportTool.Window.Settings.LIST_SMALL_STYLE_NAME;
                if (assetListCollection.InSumSelection(b))
                {
                    styleToUse = BuildReportTool.Window.Settings.LIST_SMALL_SELECTED_NAME;
                }

                GUILayout.Label(dataToDisplay(b), styleToUse, GUILayout.MinWidth(90), GUILayout.Height(LIST_HEIGHT));

                useAlt = !useAlt;
            }


            GUILayout.EndScrollView();

            GUILayout.EndVertical();

            return(buttonPressed);
        }
コード例 #2
0
        bool DrawColumn(int sta, int end, BuildReportTool.AssetList.SortType columnType, string columnName, bool showScrollbar, BuildReportTool.AssetList assetListCollection, BuildReportTool.SizePart[] assetList, ColumnDisplayDelegate dataToDisplay, ref Vector2 scollbarPos)
        {
            bool buttonPressed = false;
            GUILayout.BeginVertical();

            // ----------------------------------------------------------
            // column header
            string sortTypeStyleName = BuildReportTool.Window.Settings.LIST_COLUMN_HEADER_STYLE_NAME;
            if (assetListCollection.CurrentSortType == columnType)
            {
            if (assetListCollection.CurrentSortOrder == BuildReportTool.AssetList.SortOrder.Descending)
            {
                sortTypeStyleName = BuildReportTool.Window.Settings.LIST_COLUMN_HEADER_DESC_STYLE_NAME;
            }
            else
            {
                sortTypeStyleName = BuildReportTool.Window.Settings.LIST_COLUMN_HEADER_ASC_STYLE_NAME;
            }
            }
            if (GUILayout.Button(columnName, sortTypeStyleName, GUILayout.Height(LIST_HEIGHT)))
            {
            buttonPressed = true;
            }

            // ----------------------------------------------------------
            // scrollbar
            if (showScrollbar)
            {
            scollbarPos = GUILayout.BeginScrollView(scollbarPos,
                BuildReportTool.Window.Settings.HIDDEN_SCROLLBAR_STYLE_NAME, "verticalscrollbar");
            }
            else
            {
            scollbarPos = GUILayout.BeginScrollView(scollbarPos,
                BuildReportTool.Window.Settings.HIDDEN_SCROLLBAR_STYLE_NAME, BuildReportTool.Window.Settings.HIDDEN_SCROLLBAR_STYLE_NAME);
            }

            // ----------------------------------------------------------
            // actual contents
            bool useAlt = false;

            BuildReportTool.SizePart b;
            for (int n = sta; n < end; ++n)
            {
            b = assetList[n];

            string styleToUse = useAlt ? BuildReportTool.Window.Settings.LIST_SMALL_ALT_STYLE_NAME : BuildReportTool.Window.Settings.LIST_SMALL_STYLE_NAME;
            if (assetListCollection.InSumSelection(b))
            {
                styleToUse = BuildReportTool.Window.Settings.LIST_SMALL_SELECTED_NAME;
            }

            GUILayout.Label(dataToDisplay(b), styleToUse, GUILayout.MinWidth(90), GUILayout.Height(LIST_HEIGHT));

            useAlt = !useAlt;
            }

            GUILayout.EndScrollView();

            GUILayout.EndVertical();

            return buttonPressed;
        }