private void AddFileList() { DropDown = ScrollableContent.AddUIComponent <FileDropDown>(); DropDown.atlas = TextureUtil.InGameAtlas; DropDown.height = 38; DropDown.width = Width - 2 * Padding; DropDown.listBackground = "OptionsDropboxListbox"; DropDown.itemHeight = 24; DropDown.itemHover = "ListItemHover"; DropDown.itemHighlight = "ListItemHighlight"; DropDown.normalBgSprite = "OptionsDropbox"; DropDown.hoveredBgSprite = "OptionsDropboxHovered"; DropDown.focusedBgSprite = "OptionsDropboxFocused"; DropDown.listWidth = (int)DropDown.width; DropDown.listHeight = 200; DropDown.listPosition = UIDropDown.PopupListPosition.Below; DropDown.clampListToScreen = true; DropDown.foregroundSpriteMode = UIForegroundSpriteMode.Stretch; DropDown.popupTextColor = new Color32(170, 170, 170, 255); DropDown.textScale = 1.25f; DropDown.textFieldPadding = new RectOffset(14, 40, 7, 0); DropDown.verticalAlignment = UIVerticalAlignment.Middle; DropDown.horizontalAlignment = UIHorizontalAlignment.Center; DropDown.itemPadding = new RectOffset(14, 14, 0, 0); DropDown.verticalAlignment = UIVerticalAlignment.Middle; DropDown.eventSelectedIndexChanged += DropDownIndexChanged; DropDown.triggerButton = DropDown; AddData(); DropDown.selectedIndex = 0; }
/// <summary> /// Creates a blank panel spacer. /// </summary> /// <param name="height">Spacer height (default 10)</param> public void AddSpacer(float height = 10f) { UILabel spacer = ScrollableContent.AddUIComponent <UILabel>(); spacer.autoSize = false; spacer.height = height; spacer.width = 10f; }
public override void Init(Dictionary <Version, string> messages) { var betaMessage = ScrollableContent.AddUIComponent <UILabel>(); betaMessage.wordWrap = true; betaMessage.autoHeight = true; betaMessage.textColor = Color.red; betaMessage.text = string.Format(NodeMarkup.Localize.Mod_BetaWarningMessage, Mod.StaticName); base.Init(messages); }
/// <summary> /// Add dot pointed list. /// </summary> /// <param name="listItems">Array of messages for display as separte dot points</param> public void AddList(params string[] listItems) { // Iterate through each provided message string and create separate dot point for each item. for (int i = 0; i < listItems.Length; ++i) { ListItem listItem = ScrollableContent.AddUIComponent <ListItem>(); listItem.Text = listItems[i]; } // Add spacer at end of list. AddSpacer(); }
private void AddFileList() { DropDown = ScrollableContent.AddUIComponent <FileDropDown>(); DropDown.SetSettingsStyle(new Vector2(Width - 2 * Padding, 38)); DropDown.listWidth = (int)DropDown.width; DropDown.listHeight = 200; DropDown.itemPadding = new RectOffset(14, 14, 0, 0); DropDown.textScale = 1.25f; DropDown.clampListToScreen = true; DropDown.eventSelectedIndexChanged += DropDownIndexChanged; AddData(); DropDown.selectedIndex = 0; }
public void Init(Dictionary <Version, string> messages) { var first = default(VersionMessage); foreach (var message in messages) { var versionMessage = ScrollableContent.AddUIComponent <VersionMessage>(); versionMessage.width = ScrollableContent.width; versionMessage.Init(message.Key, message.Value); if (first == null) { first = versionMessage; } } first.IsMinimize = false; }
/// <summary> /// Sets the 'what's new' messages to display. /// </summary> /// <param name="lastNotifiedVersion">Last notified version (version messages equal to or earlier than this will be minimized</param> /// <param name="messages">Version update messages to display, in order (newest versions first), with a list of items (as translation keys) for each version</param> public void SetMessages(Version lastNotifiedVersion, WhatsNewMessage[] messages) { // Iterate through each provided version and add it to the messagebox. foreach (WhatsNewMessage message in messages) { VersionMessage versionMessage = ScrollableContent.AddUIComponent <VersionMessage>(); versionMessage.width = ContentWidth; versionMessage.SetText(message); // Add spacer below. AddSpacer(); // Hide version messages that have already been notified (always showing versions with headers). if ((message.version < lastNotifiedVersion) || (message.version == lastNotifiedVersion && message.betaVersion <= ModSettings.whatsNewBetaVersion)) { versionMessage.IsCollapsed = true; } } }
/// <summary> /// Add paragraphs to message box. /// </summary> /// <param name="messages">Text for each paragraph</param> public void AddParas(params string[] messages) { // Iterate through each provided paragraph and create a separate UI label for each item. for (int i = 0; i < messages.Length; ++i) { // Basic setup. UILabel paraMessage = ScrollableContent.AddUIComponent <UILabel>(); paraMessage.wordWrap = true; paraMessage.autoSize = false; paraMessage.autoHeight = true; paraMessage.width = width - ScrollableContent.autoLayoutPadding.left - ScrollableContent.autoLayoutPadding.right; // Set text while we're autosizing. paraMessage.text = messages[i]; // Now that the height is set after autosizing with the final text, fix the height and add a buffer for the next paragraph. paraMessage.autoHeight = false; paraMessage.height += 10f; } }