public override void OnInitialize() { uIElement = new UIElement { Width = { Percent = 0.8f }, MaxWidth = UICommon.MaxPanelWidth, Top = { Pixels = 220 }, Height = { Pixels = -220, Percent = 1f }, HAlign = 0.5f }; uIPanel = new UIPanel { Width = { Percent = 1f }, Height = { Pixels = -110, Percent = 1f }, BackgroundColor = UICommon.mainPanelBackground, PaddingTop = 0f }; uIElement.Append(uIPanel); uiLoader = new UILoaderAnimatedImage(0.5f, 0.5f, 1f); modList = new UIList { Width = { Pixels = -25, Percent = 1f }, Height = { Pixels = -50, Percent = 1f }, Top = { Pixels = 50 }, ListPadding = 5f }; uIPanel.Append(modList); var uIScrollbar = new UIScrollbar { Height = { Pixels = -50, Percent = 1f }, Top = { Pixels = 50 }, HAlign = 1f }.WithView(100f, 1000f); uIPanel.Append(uIScrollbar); modList.SetScrollbar(uIScrollbar); var uIHeaderTexTPanel = new UITextPanel <string>(Language.GetTextValue("tModLoader.ModsModsList"), 0.8f, true) { HAlign = 0.5f, Top = { Pixels = -35 }, BackgroundColor = UICommon.defaultUIBlue }.WithPadding(15f); uIElement.Append(uIHeaderTexTPanel); buttonEA = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.ModsEnableAll")) { TextColor = Color.Green, Width = new StyleDimension(-10f, 1f / 3f), Height = { Pixels = 40 }, VAlign = 1f, Top = { Pixels = -65 } }.WithFadedMouseOver(); buttonEA.OnClick += EnableAll; uIElement.Append(buttonEA); // TODO CopyStyle doesn't capture all the duplication here, consider an inner method buttonDA = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.ModsDisableAll")); buttonDA.CopyStyle(buttonEA); buttonDA.TextColor = Color.Red; buttonDA.HAlign = 0.5f; buttonDA.WithFadedMouseOver(); buttonDA.OnClick += DisableAll; uIElement.Append(buttonDA); buttonRM = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.ModsReloadMods")); buttonRM.CopyStyle(buttonEA); buttonRM.HAlign = 1f; buttonDA.WithFadedMouseOver(); buttonRM.OnClick += ReloadMods; uIElement.Append(buttonRM); buttonB = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("UI.Back")); buttonB.CopyStyle(buttonEA); buttonB.Top.Pixels = -20; buttonB.WithFadedMouseOver(); buttonB.OnClick += BackClick; uIElement.Append(buttonB); buttonOMF = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.ModsOpenModsFolder")); buttonOMF.CopyStyle(buttonB); buttonOMF.HAlign = 0.5f; buttonOMF.WithFadedMouseOver(); buttonOMF.OnClick += OpenModsFolder; uIElement.Append(buttonOMF); var texture = Texture2D.FromStream(Main.instance.GraphicsDevice, Assembly.GetExecutingAssembly().GetManifestResourceStream("Terraria.ModLoader.UI.UIModBrowserIcons.png")); var upperMenuContainer = new UIElement { Width = { Percent = 1f }, Height = { Pixels = 32 }, Top = { Pixels = 10 } }; UICycleImage toggleImage; for (int j = 0; j < 3; j++) { if (j == 0) //TODO: ouch, at least there's a loop but these click events look quite similar { toggleImage = new UICycleImage(texture, 3, 32, 32, 34 * 3, 0); toggleImage.setCurrentState((int)sortMode); toggleImage.OnClick += (a, b) => { sortMode = sortMode.NextEnum(); updateNeeded = true; }; toggleImage.OnRightClick += (a, b) => { sortMode = sortMode.PreviousEnum(); updateNeeded = true; }; } else if (j == 1) { toggleImage = new UICycleImage(texture, 3, 32, 32, 34 * 4, 0); toggleImage.setCurrentState((int)enabledFilterMode); toggleImage.OnClick += (a, b) => { enabledFilterMode = enabledFilterMode.NextEnum(); updateNeeded = true; }; toggleImage.OnRightClick += (a, b) => { enabledFilterMode = enabledFilterMode.PreviousEnum(); updateNeeded = true; }; } else { toggleImage = new UICycleImage(texture, 5, 32, 32, 34 * 5, 0); toggleImage.setCurrentState((int)modSideFilterMode); toggleImage.OnClick += (a, b) => { modSideFilterMode = modSideFilterMode.NextEnum(); updateNeeded = true; }; toggleImage.OnRightClick += (a, b) => { modSideFilterMode = modSideFilterMode.PreviousEnum(); updateNeeded = true; }; } toggleImage.Left.Pixels = j * 36 + 8; _categoryButtons.Add(toggleImage); upperMenuContainer.Append(toggleImage); } var filterTextBoxBackground = new UIPanel { Top = { Percent = 0f }, Left = { Pixels = -170, Percent = 1f }, Width = { Pixels = 135 }, Height = { Pixels = 40 } }; filterTextBoxBackground.OnRightClick += (a, b) => filterTextBox.Text = ""; upperMenuContainer.Append(filterTextBoxBackground); filterTextBox = new UIInputTextField(Language.GetTextValue("tModLoader.ModsTypeToSearch")) { Top = { Pixels = 5 }, Left = { Pixels = -160, Percent = 1f }, Width = { Pixels = 120 }, Height = { Pixels = 20 } }; filterTextBox.OnTextChange += (a, b) => updateNeeded = true; upperMenuContainer.Append(filterTextBox); SearchFilterToggle = new UICycleImage(texture, 2, 32, 32, 34 * 2, 0) { Left = { Pixels = 545 } }; SearchFilterToggle.setCurrentState((int)searchFilterMode); SearchFilterToggle.OnClick += (a, b) => { searchFilterMode = searchFilterMode.NextEnum(); updateNeeded = true; }; SearchFilterToggle.OnRightClick += (a, b) => { searchFilterMode = searchFilterMode.PreviousEnum(); updateNeeded = true; }; _categoryButtons.Add(SearchFilterToggle); upperMenuContainer.Append(SearchFilterToggle); buttonMP = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.ModsModPacks")); buttonMP.CopyStyle(buttonOMF); buttonMP.HAlign = 1f; buttonMP.WithFadedMouseOver(); buttonMP.OnClick += GotoModPacksMenu; uIElement.Append(buttonMP); uIPanel.Append(upperMenuContainer); Append(uIElement); }
public override void OnInitialize() { _uIElement = new UIElement { Width = { Percent = 0.8f }, MaxWidth = UICommon.MaxPanelWidth, Top = { Pixels = 220 }, Height = { Pixels = -220, Percent = 1f }, HAlign = 0.5f }; _uIPanel = new UIPanel { Width = { Percent = 1f }, Height = { Pixels = -110, Percent = 1f }, BackgroundColor = UICommon.MainPanelBackground }; _uIElement.Append(_uIPanel); _uiLoader = new UILoaderAnimatedImage(0.5f, 0.5f, 1f); _modList = new UIList { Width = { Pixels = -25, Percent = 1f }, Height = { Percent = 1f }, ListPadding = 5f }; _uIPanel.Append(_modList); var uIScrollbar = new UIScrollbar { Height = { Percent = 1f }, HAlign = 1f }.WithView(100f, 1000f); _uIPanel.Append(uIScrollbar); _modList.SetScrollbar(uIScrollbar); var uIHeaderTextPanel = new UITextPanel <string>(Language.GetTextValue("tModLoader.MenuModSources"), 0.8f, true) { HAlign = 0.5f, Top = { Pixels = -35 }, BackgroundColor = UICommon.DefaultUIBlue }.WithPadding(15f); _uIElement.Append(uIHeaderTextPanel); var buttonBA = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.MSBuildAll")) { Width = { Pixels = -10, Percent = 1f / 3f }, Height = { Pixels = 40 }, VAlign = 1f, Top = { Pixels = -65 } }; buttonBA.WithFadedMouseOver(); buttonBA.OnClick += BuildMods; _uIElement.Append(buttonBA); var buttonBRA = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.MSBuildReloadAll")); buttonBRA.CopyStyle(buttonBA); buttonBRA.HAlign = 0.5f; buttonBRA.WithFadedMouseOver(); buttonBRA.OnClick += BuildAndReload; _uIElement.Append(buttonBRA); var buttonCreateMod = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.MSCreateMod")); buttonCreateMod.CopyStyle(buttonBA); buttonCreateMod.HAlign = 1f; buttonCreateMod.WithFadedMouseOver(); buttonCreateMod.OnClick += ButtonCreateMod_OnClick; _uIElement.Append(buttonCreateMod); var buttonB = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("UI.Back")); buttonB.CopyStyle(buttonBA); //buttonB.Width.Set(-10f, 1f / 3f); buttonB.Top.Pixels = -20; buttonB.WithFadedMouseOver(); buttonB.OnClick += BackClick; _uIElement.Append(buttonB); var buttonOS = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.MSOpenSources")); buttonOS.CopyStyle(buttonB); buttonOS.HAlign = .5f; buttonOS.WithFadedMouseOver(); buttonOS.OnClick += OpenSources; _uIElement.Append(buttonOS); var buttonMP = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.MSManagePublished")); buttonMP.CopyStyle(buttonB); buttonMP.HAlign = 1f; buttonMP.WithFadedMouseOver(); buttonMP.OnClick += ManagePublished; _uIElement.Append(buttonMP); Append(_uIElement); }
public override void OnInitialize() { UIElement uIElement = new UIElement(); uIElement.Width.Set(0f, 0.8f); uIElement.MaxWidth.Set(600f, 0f); uIElement.Top.Set(220f, 0f); uIElement.Height.Set(-220f, 1f); uIElement.HAlign = 0.5f; uiLoader = new UILoaderAnimatedImage(0.5f, 0.5f, 1f); scrollPanel = new UIPanel(); scrollPanel.Width.Set(0f, 1f); scrollPanel.Height.Set(-65f, 1f); scrollPanel.BackgroundColor = new Color(33, 43, 79) * 0.8f; uIElement.Append(scrollPanel); modListList = new UIList(); modListList.Width.Set(-25f, 1f); modListList.Height.Set(0f, 1f); modListList.ListPadding = 5f; scrollPanel.Append(modListList); UIScrollbar uIScrollbar = new UIScrollbar(); uIScrollbar.SetView(100f, 1000f); uIScrollbar.Height.Set(0f, 1f); uIScrollbar.HAlign = 1f; scrollPanel.Append(uIScrollbar); modListList.SetScrollbar(uIScrollbar); UITextPanel <string> titleTextPanel = new UITextPanel <string>(Language.GetTextValue("tModLoader.ModPacksHeader"), 0.8f, true); titleTextPanel.HAlign = 0.5f; titleTextPanel.Top.Set(-35f, 0f); titleTextPanel.SetPadding(15f); titleTextPanel.BackgroundColor = new Color(73, 94, 171); uIElement.Append(titleTextPanel); UIAutoScaleTextTextPanel <string> backButton = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("UI.Back"), 1f, false); backButton.Width.Set(-10f, 1f / 2f); backButton.Height.Set(40f, 0f); backButton.VAlign = 1f; backButton.Top.Set(-20f, 0f); backButton.OnMouseOver += UICommon.FadedMouseOver; backButton.OnMouseOut += UICommon.FadedMouseOut; backButton.OnClick += BackClick; uIElement.Append(backButton); UIAutoScaleTextTextPanel <string> saveNewButton = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.ModPacksSaveEnabledAsNewPack"), 1f, false); saveNewButton.TextColor = Color.Green; saveNewButton.CopyStyle(backButton); saveNewButton.HAlign = 1f; saveNewButton.OnMouseOver += UICommon.FadedMouseOver; saveNewButton.OnMouseOut += UICommon.FadedMouseOut; saveNewButton.OnClick += SaveNewModList; uIElement.Append(saveNewButton); base.Append(uIElement); }
public override void OnInitialize() { uIElement = new UIElement(); uIElement.Width.Set(0f, 0.8f); uIElement.MaxWidth.Set(600f, 0f); uIElement.Top.Set(220f, 0f); uIElement.Height.Set(-220f, 1f); uIElement.HAlign = 0.5f; uIPanel = new UIPanel(); uIPanel.Width.Set(0f, 1f); uIPanel.Height.Set(-110f, 1f); uIPanel.BackgroundColor = new Color(33, 43, 79) * 0.8f; uIPanel.PaddingTop = 0f; uIElement.Append(uIPanel); uILoader = new UILoaderAnimatedImage(0.5f, 0.5f, 1f); modList = new UIList(); modList.Width.Set(-25f, 1f); modList.Height.Set(-50f, 1f); modList.Top.Set(50f, 0f); modList.ListPadding = 5f; uIPanel.Append(modList); UIScrollbar uIScrollbar = new UIScrollbar(); uIScrollbar.SetView(100f, 1000f); uIScrollbar.Height.Set(-50f, 1f); uIScrollbar.Top.Set(50f, 0f); uIScrollbar.HAlign = 1f; uIPanel.Append(uIScrollbar); modList.SetScrollbar(uIScrollbar); uIHeaderTextPanel = new UITextPanel <string>(Language.GetTextValue("tModLoader.MenuModBrowser"), 0.8f, true); uIHeaderTextPanel.HAlign = 0.5f; uIHeaderTextPanel.Top.Set(-35f, 0f); uIHeaderTextPanel.SetPadding(15f); uIHeaderTextPanel.BackgroundColor = new Color(73, 94, 171); uIElement.Append(uIHeaderTextPanel); reloadButton = new UITextPanel <string>(Language.GetTextValue("tModLoader.MBGettingData"), 1f, false); reloadButton.Width.Set(-10f, 0.5f); reloadButton.Height.Set(25f, 0f); reloadButton.VAlign = 1f; reloadButton.Top.Set(-65f, 0f); reloadButton.OnMouseOver += UICommon.FadedMouseOver; reloadButton.OnMouseOut += UICommon.FadedMouseOut; reloadButton.OnClick += ReloadList; uIElement.Append(reloadButton); UITextPanel <string> backButton = new UITextPanel <string>(Language.GetTextValue("UI.Back"), 1f, false); backButton.Width.Set(-10f, 0.5f); backButton.Height.Set(25f, 0f); backButton.VAlign = 1f; backButton.Top.Set(-20f, 0f); backButton.OnMouseOver += UICommon.FadedMouseOver; backButton.OnMouseOut += UICommon.FadedMouseOut; backButton.OnClick += BackClick; uIElement.Append(backButton); clearButton = new UITextPanel <string>(Language.GetTextValue("tModLoader.MBClearSpecialFilter", "??"), 1f, false); clearButton.Width.Set(-10f, 0.5f); clearButton.Height.Set(25f, 0f); clearButton.HAlign = 1f; clearButton.VAlign = 1f; clearButton.Top.Set(-65f, 0f); clearButton.BackgroundColor = Color.Purple * 0.7f; clearButton.OnMouseOver += (s, e) => UICommon.CustomFadedMouseOver(Color.Purple, s, e); clearButton.OnMouseOut += (s, e) => UICommon.CustomFadedMouseOut(Color.Purple * 0.7f, s, e); clearButton.OnClick += (s, e) => { Interface.modBrowser.SpecialModPackFilter = null; Interface.modBrowser.SpecialModPackFilterTitle = null; Interface.modBrowser.updateNeeded = true; Main.PlaySound(SoundID.MenuTick); }; downloadAllButton = new UITextPanel <string>(Language.GetTextValue("tModLoader.MBDownloadAll"), 1f, false); downloadAllButton.Width.Set(-10f, 0.5f); downloadAllButton.Height.Set(25f, 0f); downloadAllButton.HAlign = 1f; downloadAllButton.VAlign = 1f; downloadAllButton.Top.Set(-20f, 0f); downloadAllButton.BackgroundColor = Color.Azure * 0.7f; downloadAllButton.OnMouseOver += (s, e) => UICommon.CustomFadedMouseOver(Color.Azure, s, e); downloadAllButton.OnMouseOut += (s, e) => UICommon.CustomFadedMouseOut(Color.Azure * 0.7f, s, e); downloadAllButton.OnClick += (s, e) => DownloadMods(SpecialModPackFilter, SpecialModPackFilterTitle); updateAllButton = new UITextPanel <string>(Language.GetTextValue("tModLoader.MBUpdateAll"), 1f, false); updateAllButton.Width.Set(-10f, 0.5f); updateAllButton.Height.Set(25f, 0f); updateAllButton.HAlign = 1f; updateAllButton.VAlign = 1f; updateAllButton.Top.Set(-20f, 0f); updateAllButton.BackgroundColor = Color.Orange * 0.7f; updateAllButton.OnMouseOver += UICommon.FadedMouseOver; updateAllButton.OnMouseOut += UICommon.FadedMouseOut; updateAllButton.OnClick += (s, e) => { if (!loading) { var updatableMods = items.Where(x => x.update && !x.updateIsDowngrade).Select(x => x.mod).ToList(); DownloadMods(updatableMods, Language.GetTextValue("tModLoader.MBUpdateAll")); } }; Append(uIElement); UIElement upperMenuContainer = new UIElement(); upperMenuContainer.Width.Set(0f, 1f); upperMenuContainer.Height.Set(32f, 0f); upperMenuContainer.Top.Set(10f, 0f); Texture2D texture = Texture2D.FromStream(Main.instance.GraphicsDevice, Assembly.GetExecutingAssembly().GetManifestResourceStream("Terraria.ModLoader.UI.UIModBrowserIcons.png")); SortModeFilterToggle = new UICycleImage(texture, 6, 32, 32, 0, 0); SortModeFilterToggle.setCurrentState((int)sortMode); SortModeFilterToggle.OnClick += (a, b) => { sortMode = sortMode.NextEnum(); updateNeeded = true; }; SortModeFilterToggle.OnRightClick += (a, b) => { sortMode = sortMode.PreviousEnum(); updateNeeded = true; }; SortModeFilterToggle.Left.Set((float)(0 * 36 + 8), 0f); _categoryButtons.Add(SortModeFilterToggle); upperMenuContainer.Append(SortModeFilterToggle); UpdateFilterToggle = new UICycleImage(texture, 3, 32, 32, 34, 0); UpdateFilterToggle.setCurrentState((int)updateFilterMode); UpdateFilterToggle.OnClick += (a, b) => { updateFilterMode = updateFilterMode.NextEnum(); updateNeeded = true; }; UpdateFilterToggle.OnRightClick += (a, b) => { updateFilterMode = updateFilterMode.PreviousEnum(); updateNeeded = true; }; UpdateFilterToggle.Left.Set((float)(1 * 36 + 8), 0f); _categoryButtons.Add(UpdateFilterToggle); upperMenuContainer.Append(UpdateFilterToggle); ModSideFilterToggle = new UICycleImage(texture, 5, 32, 32, 34 * 5, 0); ModSideFilterToggle.setCurrentState((int)modSideFilterMode); ModSideFilterToggle.OnClick += (a, b) => { modSideFilterMode = modSideFilterMode.NextEnum(); updateNeeded = true; }; ModSideFilterToggle.OnRightClick += (a, b) => { modSideFilterMode = modSideFilterMode.PreviousEnum(); updateNeeded = true; }; ModSideFilterToggle.Left.Set((float)(2 * 36 + 8), 0f); _categoryButtons.Add(ModSideFilterToggle); upperMenuContainer.Append(ModSideFilterToggle); UIPanel filterTextBoxBackground = new UIPanel(); filterTextBoxBackground.Top.Set(0f, 0f); filterTextBoxBackground.Left.Set(-170, 1f); filterTextBoxBackground.Width.Set(135f, 0f); filterTextBoxBackground.Height.Set(40f, 0f); filterTextBoxBackground.OnRightClick += (a, b) => filterTextBox.SetText(""); upperMenuContainer.Append(filterTextBoxBackground); filterTextBox = new UIInputTextField(Language.GetTextValue("tModLoader.ModsTypeToSearch")); filterTextBox.Top.Set(5, 0f); filterTextBox.Left.Set(-160, 1f); filterTextBox.Width.Set(100f, 0f); filterTextBox.Height.Set(10f, 0f); filterTextBox.OnTextChange += (sender, e) => updateNeeded = true; upperMenuContainer.Append(filterTextBox); SearchFilterToggle = new UICycleImage(texture, 2, 32, 32, 34 * 2, 0); SearchFilterToggle.setCurrentState((int)searchFilterMode); SearchFilterToggle.OnClick += (a, b) => { searchFilterMode = searchFilterMode.NextEnum(); updateNeeded = true; }; SearchFilterToggle.OnRightClick += (a, b) => { searchFilterMode = searchFilterMode.PreviousEnum(); updateNeeded = true; }; SearchFilterToggle.Left.Set(545f, 0f); _categoryButtons.Add(SearchFilterToggle); upperMenuContainer.Append(SearchFilterToggle); uIPanel.Append(upperMenuContainer); }
public override void OnInitialize() { _uIElement = new UIElement { Width = { Percent = 0.8f }, MaxWidth = UICommon.MaxPanelWidth, Top = { Pixels = 220 }, Height = { Pixels = -220, Percent = 1f }, HAlign = 0.5f }; _uIPanel = new UIPanel { Width = { Percent = 1f }, Height = { Pixels = -110, Percent = 1f }, BackgroundColor = UICommon.MainPanelBackground, PaddingTop = 0f }; _uIElement.Append(_uIPanel); _uiLoader = new UILoaderAnimatedImage(0.5f, 0.5f, 1f); var upperMenuContainer = new UIElement { Width = { Percent = 1f }, Height = { Pixels = 32 }, Top = { Pixels = 10 } }; var filterTextBoxBackground = new UIPanel { Top = { Percent = 0f }, Left = { Pixels = -135, Percent = 1f }, Width = { Pixels = 135 }, Height = { Pixels = 40 } }; filterTextBoxBackground.OnRightClick += (a, b) => filterTextBox.Text = ""; upperMenuContainer.Append(filterTextBoxBackground); filterTextBox = new UIInputTextField(Language.GetTextValue("tModLoader.ModsTypeToSearch")) { Top = { Pixels = 5 }, Left = { Pixels = -125, Percent = 1f }, Width = { Pixels = 120 }, Height = { Pixels = 20 } }; filterTextBox.OnTextChange += (a, b) => _updateNeeded = true; upperMenuContainer.Append(filterTextBox); _uIPanel.Append(upperMenuContainer); _modList = new UIList { Width = { Pixels = -25, Percent = 1f }, Height = { Pixels = -50, Percent = 1f }, Top = { Pixels = 50 }, ListPadding = 5f }; _uIPanel.Append(_modList); var uIScrollbar = new UIScrollbar { Height = { Pixels = -50, Percent = 1f }, Top = { Pixels = 50 }, HAlign = 1f }.WithView(100f, 1000f); _uIPanel.Append(uIScrollbar); _modList.SetScrollbar(uIScrollbar); var uIHeaderTextPanel = new UITextPanel <string>(Language.GetTextValue("tModLoader.MenuModSources"), 0.8f, true) { HAlign = 0.5f, Top = { Pixels = -35 }, BackgroundColor = UICommon.DefaultUIBlue }.WithPadding(15f); _uIElement.Append(uIHeaderTextPanel); var buttonBA = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.MSBuildAll")) { Width = { Pixels = -10, Percent = 1f / 3f }, Height = { Pixels = 40 }, VAlign = 1f, Top = { Pixels = -65 } }; buttonBA.WithFadedMouseOver(); buttonBA.OnClick += BuildMods; //_uIElement.Append(buttonBA); var buttonBRA = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.MSBuildReloadAll")); buttonBRA.CopyStyle(buttonBA); buttonBRA.HAlign = 0.5f; buttonBRA.WithFadedMouseOver(); buttonBRA.OnClick += BuildAndReload; //_uIElement.Append(buttonBRA); var buttonCreateMod = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.MSCreateMod")); buttonCreateMod.CopyStyle(buttonBA); buttonCreateMod.HAlign = 1f; buttonCreateMod.WithFadedMouseOver(); buttonCreateMod.OnClick += ButtonCreateMod_OnClick; _uIElement.Append(buttonCreateMod); var buttonB = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("UI.Back")); buttonB.CopyStyle(buttonBA); //buttonB.Width.Set(-10f, 1f / 3f); buttonB.Top.Pixels = -20; buttonB.WithFadedMouseOver(); buttonB.OnClick += BackClick; _uIElement.Append(buttonB); var buttonOS = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.MSOpenSources")); buttonOS.CopyStyle(buttonB); buttonOS.HAlign = .5f; buttonOS.WithFadedMouseOver(); buttonOS.OnClick += OpenSources; _uIElement.Append(buttonOS); var buttonMP = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.MSManagePublished")); buttonMP.CopyStyle(buttonB); buttonMP.HAlign = 1f; buttonMP.WithFadedMouseOver(); buttonMP.OnClick += ManagePublished; _uIElement.Append(buttonMP); Append(_uIElement); }
public override void OnInitialize() { var uIElement = new UIElement { Width = { Percent = 0.8f }, MaxWidth = UICommon.MaxPanelWidth, Top = { Pixels = 220 }, Height = { Pixels = -220, Percent = 1f }, HAlign = 0.5f }; uiLoader = new UILoaderAnimatedImage(0.5f, 0.5f, 1f); scrollPanel = new UIPanel { Width = { Percent = 1f }, Height = { Pixels = -65, Percent = 1f }, BackgroundColor = UICommon.mainPanelBackground }; uIElement.Append(scrollPanel); modPacks = new UIList { Width = { Pixels = -25, Percent = 1f }, Height = { Percent = 1f }, ListPadding = 5f }; scrollPanel.Append(modPacks); var uIScrollbar = new UIScrollbar { Height = { Percent = 1f }, HAlign = 1f }.WithView(100f, 1000f); scrollPanel.Append(uIScrollbar); modPacks.SetScrollbar(uIScrollbar); var titleTextPanel = new UITextPanel <string>(Language.GetTextValue("tModLoader.ModPacksHeader"), 0.8f, true) { HAlign = 0.5f, Top = { Pixels = -35 }, BackgroundColor = UICommon.defaultUIBlue }.WithPadding(15f); uIElement.Append(titleTextPanel); var backButton = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("UI.Back")) { Width = new StyleDimension(-10f, 1f / 2f), Height = { Pixels = 40 }, VAlign = 1f, Top = { Pixels = -20 } }.WithFadedMouseOver(); backButton.OnClick += BackClick; uIElement.Append(backButton); var saveNewButton = new UIAutoScaleTextTextPanel <string>(Language.GetTextValue("tModLoader.ModPacksSaveEnabledAsNewPack")); saveNewButton.CopyStyle(backButton); saveNewButton.TextColor = Color.Green; saveNewButton.HAlign = 1f; saveNewButton.WithFadedMouseOver(); saveNewButton.OnClick += SaveNewModList; uIElement.Append(saveNewButton); Append(uIElement); }
public override void OnInitialize() { uIElement = new UIElement(); uIElement.Width.Set(0f, 0.8f); uIElement.MaxWidth.Set(600f, 0f); uIElement.Top.Set(220f, 0f); uIElement.Height.Set(-220f, 1f); uIElement.HAlign = 0.5f; uIPanel = new UIPanel(); uIPanel.Width.Set(0f, 1f); uIPanel.Height.Set(-110f, 1f); uIPanel.BackgroundColor = new Color(33, 43, 79) * 0.8f; uIPanel.PaddingTop = 0f; uIElement.Append(uIPanel); uILoader = new UILoaderAnimatedImage(0.5f, 0.5f, 1f); modList = new UIList(); modList.Width.Set(-25f, 1f); modList.Height.Set(-50f, 1f); modList.Top.Set(50f, 0f); modList.ListPadding = 5f; uIPanel.Append(modList); UIScrollbar uIScrollbar = new UIScrollbar(); uIScrollbar.SetView(100f, 1000f); uIScrollbar.Height.Set(-50f, 1f); uIScrollbar.Top.Set(50f, 0f); uIScrollbar.HAlign = 1f; uIPanel.Append(uIScrollbar); modList.SetScrollbar(uIScrollbar); uIHeaderTextPanel = new UITextPanel <string>("Mod Browser", 0.8f, true); uIHeaderTextPanel.HAlign = 0.5f; uIHeaderTextPanel.Top.Set(-35f, 0f); uIHeaderTextPanel.SetPadding(15f); uIHeaderTextPanel.BackgroundColor = new Color(73, 94, 171); uIElement.Append(uIHeaderTextPanel); reloadButton = new UITextPanel <string>("Getting data...", 1f, false); reloadButton.Width.Set(-10f, 0.5f); reloadButton.Height.Set(25f, 0f); reloadButton.VAlign = 1f; reloadButton.Top.Set(-65f, 0f); reloadButton.OnMouseOver += UICommon.FadedMouseOver; reloadButton.OnMouseOut += UICommon.FadedMouseOut; reloadButton.OnClick += ReloadList; uIElement.Append(reloadButton); UITextPanel <string> backButton = new UITextPanel <string>("Back", 1f, false); backButton.Width.Set(-10f, 0.5f); backButton.Height.Set(25f, 0f); backButton.VAlign = 1f; backButton.Top.Set(-20f, 0f); backButton.OnMouseOver += UICommon.FadedMouseOver; backButton.OnMouseOut += UICommon.FadedMouseOut; backButton.OnClick += BackClick; uIElement.Append(backButton); clearButton = new UITextPanel <string>("Clear Special Filter: ??", 1f, false); clearButton.Width.Set(-10f, 0.5f); clearButton.Height.Set(25f, 0f); clearButton.HAlign = 1f; clearButton.VAlign = 1f; clearButton.Top.Set(-65f, 0f); clearButton.BackgroundColor = Color.Purple * 0.7f; clearButton.OnMouseOver += (s, e) => UICommon.CustomFadedMouseOver(Color.Purple, s, e); clearButton.OnMouseOut += (s, e) => UICommon.CustomFadedMouseOut(Color.Purple * 0.7f, s, e); clearButton.OnClick += (s, e) => { Interface.modBrowser.SpecialModPackFilter = null; Interface.modBrowser.SpecialModPackFilterTitle = null; Interface.modBrowser.updateNeeded = true; Main.PlaySound(SoundID.MenuTick); }; Append(uIElement); UIElement upperMenuContainer = new UIElement(); upperMenuContainer.Width.Set(0f, 1f); upperMenuContainer.Height.Set(32f, 0f); upperMenuContainer.Top.Set(10f, 0f); Texture2D texture = Texture2D.FromStream(Main.instance.GraphicsDevice, Assembly.GetExecutingAssembly().GetManifestResourceStream("Terraria.ModLoader.UI.UIModBrowserIcons.png")); for (int j = 0; j < 2; j++) { if (j == 0) { uIToggleImage = new UICycleImage(texture, 6, 32, 32, 0, 0); uIToggleImage.setCurrentState((int)sortMode); uIToggleImage.OnClick += (a, b) => { sortMode = sortMode.NextEnum(); updateNeeded = true; }; uIToggleImage.OnRightClick += (a, b) => { sortMode = sortMode.PreviousEnum(); updateNeeded = true; }; } else { uIToggleImage = new UICycleImage(texture, 3, 32, 32, 34, 0); uIToggleImage.setCurrentState((int)updateFilterMode); uIToggleImage.OnClick += (a, b) => { updateFilterMode = updateFilterMode.NextEnum(); updateNeeded = true; }; uIToggleImage.OnRightClick += (a, b) => { updateFilterMode = updateFilterMode.PreviousEnum(); updateNeeded = true; }; } uIToggleImage.Left.Set((float)(j * 36 + 8), 0f); _categoryButtons.Add(uIToggleImage); upperMenuContainer.Append(uIToggleImage); } UIPanel filterTextBoxBackground = new UIPanel(); filterTextBoxBackground.Top.Set(0f, 0f); filterTextBoxBackground.Left.Set(-170, 1f); filterTextBoxBackground.Width.Set(135f, 0f); filterTextBoxBackground.Height.Set(40f, 0f); upperMenuContainer.Append(filterTextBoxBackground); filterTextBox = new UIInputTextField("Type to search"); filterTextBox.Top.Set(5, 0f); filterTextBox.Left.Set(-160, 1f); filterTextBox.OnTextChange += (sender, e) => updateNeeded = true; upperMenuContainer.Append(filterTextBox); SearchFilterToggle = new UICycleImage(texture, 2, 32, 32, 68, 0); SearchFilterToggle.setCurrentState((int)searchFilterMode); SearchFilterToggle.OnClick += (a, b) => { searchFilterMode = searchFilterMode.NextEnum(); updateNeeded = true; }; SearchFilterToggle.OnRightClick += (a, b) => { searchFilterMode = searchFilterMode.PreviousEnum(); updateNeeded = true; }; SearchFilterToggle.Left.Set(545f, 0f); _categoryButtons.Add(SearchFilterToggle); upperMenuContainer.Append(SearchFilterToggle); uIPanel.Append(upperMenuContainer); }
public override void OnInitialize() { uIElement = new UIElement(); uIElement.Width.Set(0f, 0.8f); uIElement.MaxWidth.Set(600f, 0f); uIElement.Top.Set(220f, 0f); uIElement.Height.Set(-220f, 1f); uIElement.HAlign = 0.5f; uIPanel = new UIPanel(); uIPanel.Width.Set(0f, 1f); uIPanel.Height.Set(-110f, 1f); uIPanel.BackgroundColor = new Color(33, 43, 79) * 0.8f; uIElement.Append(uIPanel); uiLoader = new UILoaderAnimatedImage(0.5f, 0.5f, 1f); modList = new UIList(); modList.Width.Set(-25f, 1f); modList.Height.Set(0f, 1f); modList.ListPadding = 5f; uIPanel.Append(modList); UIScrollbar uIScrollbar = new UIScrollbar(); uIScrollbar.SetView(100f, 1000f); uIScrollbar.Height.Set(0f, 1f); uIScrollbar.HAlign = 1f; uIPanel.Append(uIScrollbar); modList.SetScrollbar(uIScrollbar); UITextPanel <string> uIHeaderTextPanel = new UITextPanel <string>(Language.GetTextValue("tModLoader.MenuModSources"), 0.8f, true); uIHeaderTextPanel.HAlign = 0.5f; uIHeaderTextPanel.Top.Set(-35f, 0f); uIHeaderTextPanel.SetPadding(15f); uIHeaderTextPanel.BackgroundColor = new Color(73, 94, 171); uIElement.Append(uIHeaderTextPanel); UITextPanel <string> buttonBA = new UITextPanel <string>(Language.GetTextValue("tModLoader.MSBuildAll"), 1f, false); buttonBA.Width.Set(-10f, 0.5f); buttonBA.Height.Set(25f, 0f); buttonBA.VAlign = 1f; buttonBA.Top.Set(-65f, 0f); buttonBA.OnMouseOver += UICommon.FadedMouseOver; buttonBA.OnMouseOut += UICommon.FadedMouseOut; buttonBA.OnClick += BuildMods; uIElement.Append(buttonBA); UITextPanel <string> buttonBRA = new UITextPanel <string>(Language.GetTextValue("tModLoader.MSBuildReloadAll"), 1f, false); buttonBRA.CopyStyle(buttonBA); buttonBRA.HAlign = 1f; buttonBRA.OnMouseOver += UICommon.FadedMouseOver; buttonBRA.OnMouseOut += UICommon.FadedMouseOut; buttonBRA.OnClick += BuildAndReload; uIElement.Append(buttonBRA); UITextPanel <string> buttonB = new UITextPanel <string>(Language.GetTextValue("UI.Back"), 1f, false); buttonB.CopyStyle(buttonBA); buttonB.Width.Set(-10f, 1f / 3f); buttonB.Top.Set(-20f, 0f); buttonB.OnMouseOver += UICommon.FadedMouseOver; buttonB.OnMouseOut += UICommon.FadedMouseOut; buttonB.OnClick += BackClick; uIElement.Append(buttonB); UITextPanel <string> buttonOS = new UITextPanel <string>(Language.GetTextValue("tModLoader.MSOpenSources"), 1f, false); buttonOS.CopyStyle(buttonB); buttonOS.HAlign = .5f; buttonOS.OnMouseOver += UICommon.FadedMouseOver; buttonOS.OnMouseOut += UICommon.FadedMouseOut; buttonOS.OnClick += OpenSources; uIElement.Append(buttonOS); UITextPanel <string> buttonMP = new UITextPanel <string>(Language.GetTextValue("tModLoader.MSManagePublished"), 1f, false); buttonMP.CopyStyle(buttonB); buttonMP.HAlign = 1f; buttonMP.OnMouseOver += UICommon.FadedMouseOver; buttonMP.OnMouseOut += UICommon.FadedMouseOut; buttonMP.OnClick += ManagePublished; uIElement.Append(buttonMP); base.Append(uIElement); }
public override void OnInitialize() { uIElement = new UIElement(); uIElement.Width.Set(0f, 0.8f); uIElement.MaxWidth.Set(600f, 0f); uIElement.Top.Set(220f, 0f); uIElement.Height.Set(-220f, 1f); uIElement.HAlign = 0.5f; uIPanel = new UIPanel(); uIPanel.Width.Set(0f, 1f); uIPanel.Height.Set(-110f, 1f); uIPanel.BackgroundColor = new Color(33, 43, 79) * 0.8f; uIPanel.PaddingTop = 0f; uIElement.Append(uIPanel); uiLoader = new UILoaderAnimatedImage(0.5f, 0.5f, 1f); modListAll = new List <UIModItem>(); modList = new UIList(); modList.Width.Set(-25f, 1f); modList.Height.Set(-50f, 1f); modList.Top.Set(50f, 0f); modList.ListPadding = 5f; uIPanel.Append(modList); UIScrollbar uIScrollbar = new UIScrollbar(); uIScrollbar.SetView(100f, 1000f); uIScrollbar.Height.Set(-50f, 1f); uIScrollbar.Top.Set(50f, 0f); uIScrollbar.HAlign = 1f; uIPanel.Append(uIScrollbar); modList.SetScrollbar(uIScrollbar); UITextPanel <string> uIHeaderTexTPanel = new UITextPanel <string>("Mods List", 0.8f, true); uIHeaderTexTPanel.HAlign = 0.5f; uIHeaderTexTPanel.Top.Set(-35f, 0f); uIHeaderTexTPanel.SetPadding(15f); uIHeaderTexTPanel.BackgroundColor = new Color(73, 94, 171); uIElement.Append(uIHeaderTexTPanel); buttonEA = new UIColorTextPanel("Enable All", Color.Green, 1f, false); buttonEA.Width.Set(-10f, 1f / 3f); buttonEA.Height.Set(25f, 0f); buttonEA.VAlign = 1f; buttonEA.Top.Set(-65f, 0f); buttonEA.OnMouseOver += UICommon.FadedMouseOver; buttonEA.OnMouseOut += UICommon.FadedMouseOut; buttonEA.OnClick += this.EnableAll; uIElement.Append(buttonEA); buttonDA = new UIColorTextPanel("Disable All", Color.Red, 1f, false); buttonDA.CopyStyle(buttonEA); buttonDA.HAlign = 0.5f; buttonDA.OnMouseOver += UICommon.FadedMouseOver; buttonDA.OnMouseOut += UICommon.FadedMouseOut; buttonDA.OnClick += this.DisableAll; uIElement.Append(buttonDA); buttonRM = new UITextPanel <string>("Reload Mods", 1f, false); buttonRM.CopyStyle(buttonEA); buttonRM.HAlign = 1f; buttonRM.OnMouseOver += UICommon.FadedMouseOver; buttonRM.OnMouseOut += UICommon.FadedMouseOut; buttonRM.OnClick += ReloadMods; uIElement.Append(buttonRM); buttonB = new UITextPanel <string>("Back", 1f, false); buttonB.CopyStyle(buttonEA); buttonB.Top.Set(-20f, 0f); buttonB.OnMouseOver += UICommon.FadedMouseOver; buttonB.OnMouseOut += UICommon.FadedMouseOut; buttonB.OnClick += BackClick; uIElement.Append(buttonB); buttonOMF = new UITextPanel <string>("Open Mods Folder", 1f, false); buttonOMF.CopyStyle(buttonB); buttonOMF.HAlign = 0.5f; buttonOMF.OnMouseOver += UICommon.FadedMouseOver; buttonOMF.OnMouseOut += UICommon.FadedMouseOut; buttonOMF.OnClick += OpenModsFolder; uIElement.Append(buttonOMF); Texture2D texture = Texture2D.FromStream(Main.instance.GraphicsDevice, Assembly.GetExecutingAssembly().GetManifestResourceStream("Terraria.ModLoader.UI.UIModBrowserIcons.png")); UIElement upperMenuContainer = new UIElement(); upperMenuContainer.Width.Set(0f, 1f); upperMenuContainer.Height.Set(32f, 0f); upperMenuContainer.Top.Set(10f, 0f); UICycleImage toggleImage; for (int j = 0; j < 2; j++) { if (j == 0) { toggleImage = new UICycleImage(texture, 3, 32, 32, 34 * 3, 0); toggleImage.setCurrentState((int)sortMode); toggleImage.OnClick += (a, b) => { sortMode = sortMode.NextEnum(); updateNeeded = true; }; toggleImage.OnRightClick += (a, b) => { sortMode = sortMode.PreviousEnum(); updateNeeded = true; }; } else { toggleImage = new UICycleImage(texture, 3, 32, 32, 34 * 4, 0); toggleImage.setCurrentState((int)enabledFilterMode); toggleImage.OnClick += (a, b) => { enabledFilterMode = enabledFilterMode.NextEnum(); updateNeeded = true; }; toggleImage.OnRightClick += (a, b) => { enabledFilterMode = enabledFilterMode.PreviousEnum(); updateNeeded = true; }; } toggleImage.Left.Set((float)(j * 36 + 8), 0f); _categoryButtons.Add(toggleImage); upperMenuContainer.Append(toggleImage); } UIPanel filterTextBoxBackground = new UIPanel(); filterTextBoxBackground.Top.Set(0f, 0f); filterTextBoxBackground.Left.Set(-170f, 1f); filterTextBoxBackground.Width.Set(135f, 0f); filterTextBoxBackground.Height.Set(40f, 0f); upperMenuContainer.Append(filterTextBoxBackground); filterTextBox = new UIInputTextField("Type to search"); filterTextBox.Top.Set(5f, 0f); filterTextBox.Left.Set(-160f, 1f); filterTextBox.OnTextChange += (a, b) => { updateNeeded = true; }; upperMenuContainer.Append(filterTextBox); SearchFilterToggle = new UICycleImage(texture, 2, 32, 32, 34 * 2, 0); SearchFilterToggle.setCurrentState((int)searchFilterMode); SearchFilterToggle.OnClick += (a, b) => { searchFilterMode = searchFilterMode.NextEnum(); updateNeeded = true; }; SearchFilterToggle.OnRightClick += (a, b) => { searchFilterMode = searchFilterMode.PreviousEnum(); updateNeeded = true; }; SearchFilterToggle.Left.Set(545f, 0f); _categoryButtons.Add(SearchFilterToggle); upperMenuContainer.Append(SearchFilterToggle); buttonMP = new UITextPanel <string>("Mod Packs", 1f, false); buttonMP.CopyStyle(buttonOMF); buttonMP.HAlign = 1f; buttonMP.OnMouseOver += UICommon.FadedMouseOver; buttonMP.OnMouseOut += UICommon.FadedMouseOut; buttonMP.OnClick += GotoModPacksMenu; uIElement.Append(buttonMP); uIPanel.Append(upperMenuContainer); Append(uIElement); }
public override void OnInitialize() { uIElement = new UIElement(); uIElement.Width.Set(0f, 0.8f); uIElement.MaxWidth.Set(600f, 0f); uIElement.Top.Set(220f, 0f); uIElement.Height.Set(-220f, 1f); uIElement.HAlign = 0.5f; uIPanel = new UIPanel(); uIPanel.Width.Set(0f, 1f); uIPanel.Height.Set(-110f, 1f); uIPanel.BackgroundColor = new Color(33, 43, 79) * 0.8f; uIElement.Append(uIPanel); uiLoader = new UILoaderAnimatedImage(0.5f, 0.5f, 1f); modListAll = new UIList(); modList = new UIList(); modList.Width.Set(-25f, 1f); modList.Height.Set(0f, 1f); modList.ListPadding = 5f; uIPanel.Append(modList); UIScrollbar uIScrollbar = new UIScrollbar(); uIScrollbar.SetView(100f, 1000f); uIScrollbar.Height.Set(0f, 1f); uIScrollbar.HAlign = 1f; uIPanel.Append(uIScrollbar); modList.SetScrollbar(uIScrollbar); UITextPanel <string> uIHeaderTexTPanel = new UITextPanel <string>("Mods List", 0.8f, true); uIHeaderTexTPanel.HAlign = 0.5f; uIHeaderTexTPanel.Top.Set(-35f, 0f); uIHeaderTexTPanel.SetPadding(15f); uIHeaderTexTPanel.BackgroundColor = new Color(73, 94, 171); uIElement.Append(uIHeaderTexTPanel); buttonEA = new UIColorTextPanel("Enable All", Color.Green, 1f, false); buttonEA.Width.Set(-10f, 1f / 3f); buttonEA.Height.Set(25f, 0f); buttonEA.VAlign = 1f; buttonEA.Top.Set(-65f, 0f); buttonEA.OnMouseOver += UICommon.FadedMouseOver; buttonEA.OnMouseOut += UICommon.FadedMouseOut; buttonEA.OnClick += this.EnableAll; uIElement.Append(buttonEA); buttonDA = new UIColorTextPanel("Disable All", Color.Red, 1f, false); buttonDA.CopyStyle(buttonEA); buttonDA.HAlign = 0.5f; buttonDA.OnMouseOver += UICommon.FadedMouseOver; buttonDA.OnMouseOut += UICommon.FadedMouseOut; buttonDA.OnClick += this.DisableAll; uIElement.Append(buttonDA); buttonRM = new UITextPanel <string>("Reload Mods", 1f, false); buttonRM.CopyStyle(buttonEA); buttonRM.HAlign = 1f; buttonRM.OnMouseOver += UICommon.FadedMouseOver; buttonRM.OnMouseOut += UICommon.FadedMouseOut; buttonRM.OnClick += ReloadMods; uIElement.Append(buttonRM); buttonB = new UITextPanel <string>("Back", 1f, false); buttonB.CopyStyle(buttonEA); buttonB.Top.Set(-20f, 0f); buttonB.OnMouseOver += UICommon.FadedMouseOver; buttonB.OnMouseOut += UICommon.FadedMouseOut; buttonB.OnClick += BackClick; uIElement.Append(buttonB); buttonOMF = new UITextPanel <string>("Open Mods Folder", 1f, false); buttonOMF.CopyStyle(buttonB); buttonOMF.HAlign = 0.5f; buttonOMF.OnMouseOver += UICommon.FadedMouseOver; buttonOMF.OnMouseOut += UICommon.FadedMouseOut; buttonOMF.OnClick += OpenModsFolder; uIElement.Append(buttonOMF); UIPanel panel = new UIPanel(); panel.Top.Set(-40f, 0f); panel.Left.Set(-200f, 1f); panel.Width.Set(200f, 0f); panel.Height.Set(40f, 0f); uIPanel.BackgroundColor = new Color(33, 43, 79) * 0.8f; uIElement.Append(panel); filterTextBox = new UIInputTextField("Type to search"); filterTextBox.Top.Set(-30f, 0f); filterTextBox.Left.Set(-180f, 1f); filterTextBox.OnTextChange += new UIInputTextField.EventHandler(FilterList); uIElement.Append(filterTextBox); buttonMP = new UITextPanel <string>("Mod Packs", 1f, false); buttonMP.CopyStyle(buttonOMF); buttonMP.HAlign = 1f; buttonMP.OnMouseOver += UICommon.FadedMouseOver; buttonMP.OnMouseOut += UICommon.FadedMouseOut; buttonMP.OnClick += GotoModPacksMenu; uIElement.Append(buttonMP); Append(uIElement); }