示例#1
0
文件: LibraryView.cs 项目: ye-man/M3D
        private ButtonWidget AddTabButton(GUIHost host, LibraryViewTab tabFrame, LibraryView.TabButtonStyle style, string text, int ID)
        {
            var buttonWidget = new ButtonWidget(ID, null)
            {
                Text          = text,
                TextColor     = new Color4(0.71f, 0.71f, 0.71f, 1f),
                TextOverColor = new Color4(1f, 1f, 1f, 1f),
                TextDownColor = new Color4(1f, 1f, 1f, 1f),
                Size          = FontSize.Medium
            };

            buttonWidget.SetCallback(new ButtonCallback(TabButtonCallback));
            buttonWidget.DontMove  = true;
            buttonWidget.ClickType = ButtonType.Checkable;
            buttonWidget.GroupID   = 1;
            buttonWidget.Data      = tabFrame;
            switch (style)
            {
            case LibraryView.TabButtonStyle.Left:
                buttonWidget.Init(host, "guicontrols", 513f, 64f, 575f, sbyte.MaxValue, 513f, 128f, 575f, 191f, 513f, 192f, 575f, byte.MaxValue, 513f, 64f, 575f, sbyte.MaxValue);
                break;

            case LibraryView.TabButtonStyle.Middle:
                buttonWidget.Init(host, "guicontrols", 576f, 64f, 639f, sbyte.MaxValue, 576f, 128f, 639f, 191f, 576f, 192f, 639f, byte.MaxValue, 576f, 64f, 639f, sbyte.MaxValue);
                break;

            case LibraryView.TabButtonStyle.Right:
                buttonWidget.Init(host, "guicontrols", 640f, 64f, 703f, sbyte.MaxValue, 640f, 128f, 703f, 191f, 640f, 192f, 703f, byte.MaxValue, 640f, 64f, 703f, sbyte.MaxValue);
                break;
            }
            buttonWidget.SetGrowableWidth(16, 16, 48);
            tabsFrame.AddChildElement(buttonWidget);
            return(buttonWidget);
        }
示例#2
0
文件: LibraryView.cs 项目: ye-man/M3D
        public void TabButtonCallback(ButtonWidget button)
        {
            if (!(button.Data is LibraryViewTab))
            {
                return;
            }

            currentTab = (LibraryViewTab)button.Data;
            ScheduleRefresh();
        }