public static UICheckboxDropDown CreateCheckboxDropDown(UIComponent parent) { UICheckboxDropDown dropDown = parent.AddUIComponent <UICheckboxDropDown>(); dropDown.atlas = GetAtlas("Ingame"); dropDown.size = new Vector2(120f, 30f); dropDown.listBackground = "GenericPanelLight"; dropDown.itemHeight = 30; dropDown.itemHover = "ListItemHover"; dropDown.itemHighlight = "ListItemHighlight"; dropDown.normalBgSprite = "ButtonMenu"; dropDown.disabledBgSprite = "ButtonMenuDisabled"; dropDown.hoveredBgSprite = "ButtonMenuHovered"; dropDown.focusedBgSprite = "ButtonMenu"; dropDown.listWidth = 120; dropDown.listHeight = 350; dropDown.foregroundSpriteMode = UIForegroundSpriteMode.Stretch; dropDown.popupColor = new Color32(45, 52, 61, 255); dropDown.popupTextColor = new Color32(170, 170, 170, 255); dropDown.zOrder = 1; dropDown.textScale = 0.8f; dropDown.verticalAlignment = UIVerticalAlignment.Middle; dropDown.horizontalAlignment = UIHorizontalAlignment.Left; dropDown.textFieldPadding = new RectOffset(8, 0, 8, 0); dropDown.itemPadding = new RectOffset(14, 0, 8, 0); dropDown.uncheckedSprite = "check-unchecked"; dropDown.checkedSprite = "check-checked"; UIButton button = dropDown.AddUIComponent <UIButton>(); dropDown.triggerButton = button; button.atlas = GetAtlas("Ingame"); button.text = ""; button.size = dropDown.size; button.relativePosition = new Vector3(0f, 0f); button.textVerticalAlignment = UIVerticalAlignment.Middle; button.textHorizontalAlignment = UIHorizontalAlignment.Left; button.normalFgSprite = "IconDownArrow"; button.hoveredFgSprite = "IconDownArrowHovered"; button.pressedFgSprite = "IconDownArrowPressed"; button.focusedFgSprite = "IconDownArrowFocused"; button.disabledFgSprite = "IconDownArrowDisabled"; button.foregroundSpriteMode = UIForegroundSpriteMode.Fill; button.horizontalAlignment = UIHorizontalAlignment.Right; button.verticalAlignment = UIVerticalAlignment.Middle; button.zOrder = 0; button.textScale = 0.8f; dropDown.eventSizeChanged += new PropertyChangedEventHandler <Vector2>((c, t) => { button.size = t; dropDown.listWidth = (int)t.x; }); return(dropDown); }
internal static void Init(UICheckboxDropDown dd) { try { LogCalled(); dd.size = new Vector2(370, 22); dd.verticalAlignment = UIVerticalAlignment.Middle; dd.horizontalAlignment = UIHorizontalAlignment.Center; dd.builtinKeyNavigation = true; dd.atlas = TextureUtil.InMapEditor; dd.normalBgSprite = "TextFieldPanel"; dd.uncheckedSprite = "check-unchecked"; dd.checkedSprite = "check-checked"; dd.listBackground = "GenericPanelWhite"; dd.listWidth = 188; dd.listHeight = 900; dd.clampListToScreen = true; dd.listPosition = UICheckboxDropDown.PopupListPosition.Automatic; dd.itemHeight = 25; dd.itemHover = "ListItemHover"; dd.itemHighlight = "ListItemHighlight"; dd.popupColor = Color.black; dd.popupTextColor = Color.white; dd.triggerButton = dd.AddUIComponent <UIButton>(); UIButton triggerBtn = dd.triggerButton as UIButton; triggerBtn.size = dd.size; triggerBtn.textVerticalAlignment = UIVerticalAlignment.Middle; triggerBtn.textHorizontalAlignment = UIHorizontalAlignment.Left; triggerBtn.atlas = TextureUtil.Ingame; triggerBtn.normalFgSprite = "IconDownArrow"; triggerBtn.hoveredFgSprite = "IconDownArrowHovered"; triggerBtn.pressedFgSprite = "IconDownArrowPressed"; triggerBtn.normalBgSprite = "TextFieldPanel"; triggerBtn.foregroundSpriteMode = UIForegroundSpriteMode.Scale; triggerBtn.horizontalAlignment = UIHorizontalAlignment.Right; triggerBtn.verticalAlignment = UIVerticalAlignment.Middle; triggerBtn.relativePosition = new Vector3(0, 0); // Scrollbar dd.listScrollbar = dd.AddUIComponent <UIScrollbar>(); dd.listScrollbar.width = 12f; dd.listScrollbar.height = dd.listHeight; dd.listScrollbar.orientation = UIOrientation.Vertical; dd.listScrollbar.pivot = UIPivotPoint.TopRight; dd.listScrollbar.thumbPadding = new RectOffset(0, 0, 5, 5); dd.listScrollbar.minValue = 0; dd.listScrollbar.value = 0; dd.listScrollbar.incrementAmount = dd.listHeight / 10; dd.listScrollbar.AlignTo(dd, UIAlignAnchor.TopRight); dd.listScrollbar.autoHide = true; // false ? dd.listScrollbar.isVisible = false; UISlicedSprite tracSprite = dd.listScrollbar.AddUIComponent <UISlicedSprite>(); tracSprite.relativePosition = Vector2.zero; tracSprite.autoSize = true; tracSprite.size = tracSprite.parent.size; tracSprite.fillDirection = UIFillDirection.Vertical; tracSprite.spriteName = "ScrollbarTrack"; dd.listScrollbar.trackObject = tracSprite; UISlicedSprite thumbSprite = tracSprite.AddUIComponent <UISlicedSprite>(); thumbSprite.relativePosition = Vector2.zero; thumbSprite.fillDirection = UIFillDirection.Vertical; thumbSprite.autoSize = true; thumbSprite.width = thumbSprite.parent.width - 8; thumbSprite.spriteName = "ScrollbarThumb"; dd.listScrollbar.thumbObject = thumbSprite; dd.eventDropdownOpen += OnDropDownOpen; triggerBtn.buttonsMask |= UIMouseButton.Right; dd.eventMouseDown += (_, p) => HandleMouseDown(dd, p); } catch (Exception ex) { Log.Exception(ex); } }