public UISignsEOD(UIEODController controller) : base(controller) { var script = this.RenderScript("signseod.uis"); OwnerWriteTextSubpanel = script.Create<UIImage>("OwnerWriteTextSubpanel"); AddAt(0, OwnerWriteTextSubpanel); WriteTextSubpanel = script.Create<UIImage>("WriteTextSubpanel"); AddAt(0, WriteTextSubpanel); ReadTextSubpanel = script.Create<UIImage>("ReadTextSubpanel"); AddAt(0, ReadTextSubpanel); OwnerPermissionsSubpanel = script.Create<UIImage>("OwnerPermissionsSubpanel"); AddAt(0, OwnerPermissionsSubpanel); PlaintextHandlers["signs_init"] = P_Init; BinaryHandlers["signs_show"] = B_Show; OwnerPermissionsButton.OnButtonClick += OwnerPermissionsButton_OnButtonClick; OwnerWriteTextButton.OnButtonClick += OwnerWriteTextButton_OnButtonClick; RoommateReadCheckButton.OnButtonClick += TogglePermission; FriendReadCheckButton.OnButtonClick += TogglePermission; VisitorReadCheckButton.OnButtonClick += TogglePermission; RoommateWriteCheckButton.OnButtonClick += TogglePermission; FriendWriteCheckButton.OnButtonClick += TogglePermission; VisitorWriteCheckButton.OnButtonClick += TogglePermission; WriteTextSubpanel.Position = ReadTextSubpanel.Position; //it's wrong normally? WriteTextBox.Position = ReadTextBox.Position; OwnerWriteTextBox.InitDefaultSlider(); WriteTextBox.InitDefaultSlider(); ReadTextBox.InitDefaultSlider(); }
public UIDialog(UIDialogStyle style, bool draggable) { switch (style) { case UIDialogStyle.Standard: var tx = GetTexture((ulong)FileIDs.UIFileIDs.dialog_backgroundtemplate); Background = new UIImage(tx) .With9Slice(41, 41, 60, 40); break; case UIDialogStyle.StandardTall: Background = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.dialog_backgroundtemplatetall)) .With9Slice(41, 41, 66, 40); break; } Background.ID = "Background"; /** Drag area **/ if (draggable) { Background.ListenForMouse(new UIMouseEvent(DragMouseEvents)); } this.Add(Background); }
public UIPropertyLog() : base(UIDialogStyle.Standard | UIDialogStyle.Close, true) { //todo: this dialog is resizable. The elements use offests from each side to size and position themselves. //right now we're just using positions. History = new List<VMChatEvent>(); this.RenderScript("chatdialog.uis"); this.SetSize(400, 255); this.Caption = "Property Log"; ChatHistoryBackground = new UIImage(GetTexture((ulong)0x7A400000001)).With9Slice(13, 13, 13, 13); ChatHistoryBackground.Position = new Vector2(19, 39); ChatHistoryBackground.SetSize(341, 166+30); AddAt(3, ChatHistoryBackground); ChatHistorySlider.AttachButtons(ChatHistoryScrollUpButton, ChatHistoryScrollDownButton, 1); ChatHistorySlider.SetSize(ChatHistorySlider.Size.X, 138 + 30); ChatHistoryScrollDownButton.Position += new Vector2(0, 30); ChatHistoryText.AttachSlider(ChatHistorySlider); ChatHistoryText.Position = new Vector2(29, 47); var histStyle = ChatHistoryText.TextStyle.Clone(); histStyle.Size = 8; ChatHistoryText.Size = new Vector2(322, 150+30); ChatHistoryText.MaxLines = 13; ChatHistoryText.TextStyle = histStyle; Remove(ChatEntryTextEdit); CloseButton.OnButtonClick += CloseButton_OnButtonClick; }
public UIInbox() { var script = this.RenderScript("messageinbox.uis"); Background = new UIImage(backgroundImage); this.AddAt(0, Background); CloseButton.OnButtonClick += new ButtonClickDelegate(Close); UIUtils.MakeDraggable(Background, this); MessageButton.OnButtonClick += new ButtonClickDelegate(MessageButton_OnButtonClick); var msgStyleCSR = script.Create<UIListBoxTextStyle>("CSRMessageColors", InboxListBox.FontStyle); var msgStyleServer = script.Create<UIListBoxTextStyle>("ServerMessageColors", InboxListBox.FontStyle); var msgStyleGame = script.Create<UIListBoxTextStyle>("GameMessageColors", InboxListBox.FontStyle); var msgStyleSim = script.Create<UIListBoxTextStyle>("SimMessageColors", InboxListBox.FontStyle); var msgStyleClub = script.Create<UIListBoxTextStyle>("ClubMessageColors", InboxListBox.FontStyle); var msgStyleProperty = script.Create<UIListBoxTextStyle>("PropertyMessageColors", InboxListBox.FontStyle); var msgStyleNeighborhood = script.Create<UIListBoxTextStyle>("NeighborhoodMessageColors", InboxListBox.FontStyle); var item = new UIListBoxItem("idk", "!", "", "||", "", "21:21 - 4/2/2014", "", "The Sims Online", "", "Please stop remaking our game"); item.CustomStyle = msgStyleSim; InboxListBox.Items.Add(item); Dropdown = new UIInboxDropdown(); Dropdown.X = 162; Dropdown.Y = 13; this.Add(Dropdown); }
private UISelectHouseView SelWallsPanel; //select view panel that is created when clicking the current walls mode #endregion Fields #region Constructors public UIUCP(UIScreen owner) { this.RenderScript("ucp.uis"); Game = (CoreGameScreen)owner; Background = new UIImage(BackgroundGameImage); this.AddAt(0, Background); Background.BlockInput(); BackgroundMatchmaker = new UIImage(BackgroundMatchmakerImage); BackgroundMatchmaker.Y = 81; this.AddAt(0, BackgroundMatchmaker); BackgroundMatchmaker.BlockInput(); TimeText.Caption = "12:00 am"; TimeText.CaptionStyle = TimeText.CaptionStyle.Clone(); TimeText.CaptionStyle.Shadow = true; MoneyText.Caption = "§0"; MoneyText.CaptionStyle = TimeText.CaptionStyle.Clone(); MoneyText.CaptionStyle.Shadow = true; CurrentPanel = -1; OptionsModeButton.OnButtonClick += new ButtonClickDelegate(OptionsModeButton_OnButtonClick); LiveModeButton.OnButtonClick += new ButtonClickDelegate(LiveModeButton_OnButtonClick); BuyModeButton.OnButtonClick += new ButtonClickDelegate(BuyModeButton_OnButtonClick); BuildModeButton.OnButtonClick += BuildModeButton_OnButtonClick; ZoomOutButton.OnButtonClick += new ButtonClickDelegate(ZoomControl); ZoomInButton.OnButtonClick += new ButtonClickDelegate(ZoomControl); PhoneButton.OnButtonClick += new ButtonClickDelegate(PhoneButton_OnButtonClick); CloseZoomButton.OnButtonClick += new ButtonClickDelegate(SetCityZoom); MediumZoomButton.OnButtonClick += new ButtonClickDelegate(SetCityZoom); FarZoomButton.OnButtonClick += new ButtonClickDelegate(SetCityZoom); NeighborhoodButton.OnButtonClick += new ButtonClickDelegate(SetCityZoom); WorldButton.OnButtonClick += new ButtonClickDelegate(SetCityZoom); HouseViewSelectButton.OnButtonClick += new ButtonClickDelegate(WallsViewPopup); WallsDownButton.OnButtonClick += new ButtonClickDelegate(WallsViewPopup); WallsUpButton.OnButtonClick += new ButtonClickDelegate(WallsViewPopup); WallsCutawayButton.OnButtonClick += new ButtonClickDelegate(WallsViewPopup); RoofButton.OnButtonClick += new ButtonClickDelegate(WallsViewPopup); RotateClockwiseButton.OnButtonClick += new ButtonClickDelegate(RotateClockwise); RotateCounterClockwiseButton.OnButtonClick += new ButtonClickDelegate(RotateCounterClockwise); FirstFloorButton.OnButtonClick += FirstFloor; SecondFloorButton.OnButtonClick += SecondFloor; SecondFloorButton.Selected = (Game.Level == Game.Stories); FirstFloorButton.Selected = (Game.Level == 1); SetInLot(false); SetMode(UCPMode.CityMode); }
public UIAlert(UIAlertOptions options) : base(UIDialogStyle.Standard, true) { this.m_Options = options; this.Caption = options.Title; this.Opacity = 0.9f; m_TextStyle = TextStyle.DefaultLabel.Clone(); m_TextStyle.Size = options.TextSize; Icon = new UIImage(); Icon.Position = new Vector2(32, 32); Icon.SetSize(0, 0); Add(Icon); /** Determine the size **/ ComputeText(); /** Add buttons **/ Buttons = new List<UIButton>(); foreach (var button in options.Buttons) { string buttonText = ""; if (button.Text != null) buttonText = button.Text; else { switch (button.Type) { case UIAlertButtonType.OK: buttonText = GameFacade.Strings.GetString("142", "ok button"); break; case UIAlertButtonType.Yes: buttonText = GameFacade.Strings.GetString("142", "yes button"); break; case UIAlertButtonType.No: buttonText = GameFacade.Strings.GetString("142", "no button"); break; case UIAlertButtonType.Cancel: buttonText = GameFacade.Strings.GetString("142", "cancel button"); break; } } var btnElem = AddButton(buttonText, button.Type, button.Handler == null); Buttons.Add(btnElem); if (button.Handler != null) btnElem.OnButtonClick += button.Handler; } if (options.TextEntry) { TextBox = new UITextBox(); this.Add(TextBox); } /** Position buttons **/ RefreshSize(); }
public UISelectHouseView() { var script = this.RenderScript("selecthouseview.uis"); Background = new UIImage(BackgroundImage); this.AddAt(0, Background); WallsDownButton.OnButtonClick += new ButtonClickDelegate(WallsDownClick); WallsUpButton.OnButtonClick += new ButtonClickDelegate(WallsUpClick); WallsCutawayButton.OnButtonClick += new ButtonClickDelegate(WallsCutClick); RoofButton.OnButtonClick += new ButtonClickDelegate(RoofClick); }
public LoginScreen() { PlayBackgroundMusic(new string[] { "none" }); /** * Scale the whole screen to 1024 */ BackgroundCtnr = new UIContainer(); BackgroundCtnr.ScaleX = BackgroundCtnr.ScaleY = ScreenWidth / 800.0f; /** Background image **/ Background = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.setup)); Background.ID = "Background"; BackgroundCtnr.Add(Background); /** Client version **/ var lbl = new UILabel(); lbl.Caption = "Version " + GlobalSettings.Default.ClientVersion; lbl.X = 20; lbl.Y = 558; BackgroundCtnr.Add(lbl); this.Add(BackgroundCtnr); /** Progress bar **/ LoginProgress = new UILoginProgress(); LoginProgress.X = (ScreenWidth - (LoginProgress.Width + 20)); LoginProgress.Y = (ScreenHeight - (LoginProgress.Height + 20)); LoginProgress.Opacity = 0.9f; this.Add(LoginProgress); /** Login dialog **/ LoginDialog = new UILoginDialog(this); LoginDialog.Opacity = 0.9f; //Center LoginDialog.X = (ScreenWidth - LoginDialog.Width) / 2; LoginDialog.Y = (ScreenHeight - LoginDialog.Height) / 2; this.Add(LoginDialog); NetworkFacade.Controller.OnNetworkError += new NetworkErrorDelegate(Controller_OnNetworkError); NetworkFacade.Controller.OnLoginProgress += new OnProgressDelegate(Controller_OnLoginProgress); NetworkFacade.Controller.OnLoginStatus += new OnLoginStatusDelegate(Controller_OnLoginStatus); var gameplayButton = new UIButton() { Caption = "Simantics & Lot Debug", Y = 10, Width = 200, X = 10 }; this.Add(gameplayButton); gameplayButton.OnButtonClick += new ButtonClickDelegate(gameplayButton_OnButtonClick); }
public UIPizzaMakerEOD(UIEODController controller) : base(controller) { var script = this.RenderScript("pizzamakereod.uis"); Script = script; background = script.Create<UIImage>("background"); AddAt(0, background); btnIngredient1.ButtonFrames = 3; btnIngredient2.ButtonFrames = 3; btnIngredient3.ButtonFrames = 3; btnIngredient1.Visible = false; btnIngredient2.Visible = false; btnIngredient3.Visible = false; btnIngredient1.OnButtonClick += (UIElement btn) => { SubmitIngredient(0); }; btnIngredient2.OnButtonClick += (UIElement btn) => { SubmitIngredient(1); }; btnIngredient3.OnButtonClick += (UIElement btn) => { SubmitIngredient(2); }; PlaintextHandlers["pizza_show"] = P_Show; PlaintextHandlers["pizza_state"] = P_State; PlaintextHandlers["pizza_time"] = P_Time; PlaintextHandlers["pizza_result"] = P_Result; PlaintextHandlers["pizza_contrib"] = P_Contrib; PlaintextHandlers["pizza_hand"] = P_Hand; PlaintextHandlers["pizza_players"] = P_Players; PersonBG1 = script.Create<UIImage>("playerPos1"); PersonBG2 = script.Create<UIImage>("playerPos2"); PersonBG3 = script.Create<UIImage>("playerPos3"); PersonBG4 = script.Create<UIImage>("playerPos4"); PersonBG1.Texture = imagePlayer; PersonBG2.Texture = imagePlayer; PersonBG3.Texture = imagePlayer; PersonBG4.Texture = imagePlayer; Add(PersonBG1); Add(PersonBG2); Add(PersonBG3); Add(PersonBG4); labelStation1.Alignment = TextAlignment.Left; labelStation2.Alignment = TextAlignment.Left; labelStation3.Alignment = TextAlignment.Left; labelStation4.Alignment = TextAlignment.Left; EnterState(VMEODPizzaState.Lobby); }
public UIGameTitle() { Background = new UIImage(GetTexture((ulong)0x000001A700000002)); Background.With9Slice(40, 40, 0, 0); this.AddAt(0, Background); Background.BlockInput(); Label = new UILabel(); Label.CaptionStyle = TextStyle.DefaultLabel.Clone(); Label.CaptionStyle.Size = 11; Label.Alignment = TextAlignment.Middle; this.Add(Label); SetTitle("Not Blazing Falls"); }
public UIGridViewerRender(UIGridViewer owner) { this.owner = owner; button = new UIButton(owner.ThumbButtonImage); button.Size = owner.ThumbSize; button.OnButtonClick += new ButtonClickDelegate(button_OnButtonClick); this.Add(button); image = new UIImage(); //image.ScaleX = owner.ThumbImageSize.X / (owner.ThumbSize.X - (owner.ThumbImageOffsets.X * 2)); image.SetSize(owner.ThumbSize.X - (owner.ThumbImageOffsets.X * 2), owner.ThumbSize.Y - (owner.ThumbImageOffsets.Y * 2)); image.Position = owner.ThumbImageOffsets; this.Add(image); }
public UILoginProgress() : base(UIDialogStyle.Standard, false) { this.SetSize(400, 180); this.Caption = GameFacade.Strings.GetString("210", "1"); /** * Label background */ var bgImg = new UIImage(UITextBox.StandardBackground) { X = 20, Y = 120 }; bgImg.SetSize(360, 27); this.Add(bgImg); m_ProgressBar = new UIProgressBar() { X = 20, Y = 66, Value = 0 }; m_ProgressBar.SetSize(360, 27); this.Add(m_ProgressBar); this.Add(new UILabel { Caption = GameFacade.Strings.GetString("210", "2"), X = 20, Y = 44 }); this.Add(new UILabel { Caption = GameFacade.Strings.GetString("210", "3"), X = 20, Y = 97 }); m_ProgressLabel = new UILabel{ Caption = GameFacade.Strings.GetString("210", "4"), X = 31, Y = 122 }; this.Add(m_ProgressLabel); }
public UIChatDialog() : base(UIDialogStyle.Standard | UIDialogStyle.OK | UIDialogStyle.Close, true) { //todo: this dialog is resizable. The elements use offests from each side to size and position themselves. //right now we're just using positions. History = new List<VMChatEvent>(); this.RenderScript("chatdialog.uis"); this.SetSize(400, 255); this.Caption = "Property Chat (?) - ???"; ChatEntryBackground = new UIImage(GetTexture((ulong)0x7A400000001)).With9Slice(13, 13, 13, 13); ChatEntryBackground.Position = new Vector2(25, 211); ChatEntryBackground.SetSize(323, 26); AddAt(5, ChatEntryBackground); ChatHistoryBackground = new UIImage(GetTexture((ulong)0x7A400000001)).With9Slice(13, 13, 13, 13); ChatHistoryBackground.Position = new Vector2(19, 39); ChatHistoryBackground.SetSize(341, 166); AddAt(5, ChatHistoryBackground); ChatHistorySlider.AttachButtons(ChatHistoryScrollUpButton, ChatHistoryScrollDownButton, 1); ChatHistoryText.AttachSlider(ChatHistorySlider); ChatEntryTextEdit.OnEnterPress += SendMessageEnter; ChatHistoryText.Position = new Vector2(29, 47); var histStyle = ChatHistoryText.TextStyle.Clone(); histStyle.Size = 8; ChatHistoryText.Size = new Vector2(322, 150); ChatHistoryText.MaxLines = 10; ChatHistoryText.TextStyle = histStyle; ChatEntryTextEdit.OnChange += ChatEntryTextEdit_OnChange; ChatEntryTextEdit.Position = new Vector2(38, 216); ChatEntryTextEdit.Size = new Vector2(295, 17); OKButton.Disabled = true; OKButton.OnButtonClick += SendMessage; CloseButton.OnButtonClick += CloseButton_OnButtonClick; }
public MaxisLogo() : base() { /** * Scale the whole screen to 1024 */ BackgroundCtnr = new UIContainer(); BackgroundCtnr.ScaleX = BackgroundCtnr.ScaleY = GlobalSettings.Default.GraphicsWidth / 640.0f; /** Background image **/ m_MaxisLogo = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.maxislogo)); BackgroundCtnr.Add(m_MaxisLogo); this.Add(BackgroundCtnr); m_CheckProgressTimer = new Timer(); m_CheckProgressTimer.Interval = 5000; m_CheckProgressTimer.Elapsed += new ElapsedEventHandler(m_CheckProgressTimer_Elapsed); m_CheckProgressTimer.Start(); }
public UICitySelector() : base(UIDialogStyle.Standard, true) { this.Opacity = 0.9f; CityListBoxBackground = new UIImage(UITextBox.StandardBackground); this.Add(CityListBoxBackground); CityDescriptionBackground = new UIImage(UITextBox.StandardBackground); this.Add(CityDescriptionBackground); var script = this.RenderScript("cityselector.uis"); this.DialogSize = (Point)script.GetControlProperty("DialogSize"); var cityThumbBG = new UIImage(thumbnailBackgroundImage); cityThumbBG.Position = (Vector2)script.GetControlProperty("CityThumbnailBackgroundPosition"); this.Add(cityThumbBG); CityThumb = new UIImage(); CityThumb.Position = (Vector2)script.GetControlProperty("CityThumbnailPosition"); this.Add(CityThumb); CityDescriptionSlider.AttachButtons(CityDescriptionScrollUpButton, CityDescriptionDownButton, 1); DescriptionText.AttachSlider(CityDescriptionSlider); OkButton.Disabled = true; OkButton.OnButtonClick += new ButtonClickDelegate(OkButton_OnButtonClick); CancelButton.OnButtonClick += new ButtonClickDelegate(CancelButton_OnButtonClick); this.Caption = (string)script["TitleString"]; /** Parse the list styles **/ listStyleNormal = script.Create<UIListBoxTextStyle>("CityListBoxColors", CityListBox.FontStyle); listStyleBusy = script.Create<UIListBoxTextStyle>("CityListBoxColorsBusy", CityListBox.FontStyle); listStyleFull = script.Create<UIListBoxTextStyle>("CityListBoxColorsFull", CityListBox.FontStyle); listStyleReserved = script.Create<UIListBoxTextStyle>("CityListBoxColorsReserved", CityListBox.FontStyle); UpdateItems(); CityListBox.OnChange += new ChangeDelegate(CityListBox_OnChange); NetworkFacade.Controller.OnNewCityServer += new OnNewCityServerDelegate(Controller_OnNewCityServer); NetworkFacade.Controller.OnCityServerOffline += new OnCityServerOfflineDelegate(Controller_OnCityServerOffline); }
public EALogo() : base() { PlayBackgroundMusic(new string[] { GameFacade.GameFilePath("music\\stations\\latin\\latin3_7df26b84.mp3") }); /** * Scale the whole screen to 1024 */ BackgroundCtnr = new UIContainer(); BackgroundCtnr.ScaleX = BackgroundCtnr.ScaleY = GlobalSettings.Default.GraphicsWidth / 800.0f; /** Background image **/ m_EALogo = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.eagames)); BackgroundCtnr.Add(m_EALogo); this.Add(BackgroundCtnr); m_CheckProgressTimer = new Timer(); m_CheckProgressTimer.Interval = 5000; m_CheckProgressTimer.Elapsed += new ElapsedEventHandler(m_CheckProgressTimer_Elapsed); m_CheckProgressTimer.Start(); }
public EALogo() : base() { //HITVM.Get().PlaySoundEvent(UIMusic.LoadLoop); /** * Scale the whole screen to 1024 */ BackgroundCtnr = new UIContainer(); BackgroundCtnr.ScaleX = BackgroundCtnr.ScaleY = GlobalSettings.Default.GraphicsWidth / 800.0f; /** Background image **/ m_EALogo = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.eagames)); BackgroundCtnr.Add(m_EALogo); this.Add(BackgroundCtnr); m_CheckProgressTimer = new Timer(); m_CheckProgressTimer.Interval = 5000; m_CheckProgressTimer.Elapsed += new ElapsedEventHandler(m_CheckProgressTimer_Elapsed); m_CheckProgressTimer.Start(); }
public UILiveMode(UILotControl lotController) { var script = this.RenderScript("livepanel"+((GlobalSettings.Default.GraphicsWidth < 1024)?"":"1024")+".uis"); LotController = lotController; Background = new UIImage(GetTexture((GlobalSettings.Default.GraphicsWidth < 1024) ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002)); Background.Y = 33; this.AddAt(0, Background); var PeopleListBg = new UIImage(PeopleListBackgroundImg); PeopleListBg.Position = new Microsoft.Xna.Framework.Vector2(375, 38); this.AddAt(1, PeopleListBg); Divider = new UIImage(DividerImg); Divider.Position = new Microsoft.Xna.Framework.Vector2(140, 49); this.AddAt(1, Divider); MoodPanelButton = new UIButton(); MoodPanelButton.Texture = GetTexture((ulong)GameContent.FileIDs.UIFileIDs.lpanel_moodpanelbtn); MoodPanelButton.ImageStates = 4; MoodPanelButton.Position = new Vector2(31, 63); this.Add(MoodPanelButton); Thumbnail = new UIImage(); Thumbnail.Size = new Point(32, 32); Thumbnail.Position = new Vector2(65, 74); this.Add(Thumbnail); MotiveDisplay = new UIMotiveDisplay(); MotiveDisplay.Position = new Vector2(165, 59); this.Add(MotiveDisplay); EODHelpButton.Visible = false; EODCloseButton.Visible = false; EODExpandButton.Visible = false; EODContractButton.Visible = false; }
public UIDanceFloorEOD(UIEODController controller) : base(controller) { var script = this.RenderScript("danceflooreod.uis"); UIBackground = script.Create<UIImage>("UIBackground"); AddAt(0, UIBackground); Dance001Button.OnButtonClick += (UIElement e) => { Dance(1); }; Dance002Button.OnButtonClick += (UIElement e) => { Dance(2); }; Dance003Button.OnButtonClick += (UIElement e) => { Dance(3); }; Dance004Button.OnButtonClick += (UIElement e) => { Dance(4); }; Dance005Button.OnButtonClick += (UIElement e) => { Dance(5); }; Dance006Button.OnButtonClick += (UIElement e) => { Dance(6); }; Dance007Button.OnButtonClick += (UIElement e) => { Dance(7); }; Dance008Button.OnButtonClick += (UIElement e) => { Dance(8); }; Dance009Button.OnButtonClick += (UIElement e) => { Dance(9); }; Dance010Button.OnButtonClick += (UIElement e) => { Dance(10); }; Dance011Button.OnButtonClick += (UIElement e) => { Dance(11); }; Dance012Button.OnButtonClick += (UIElement e) => { Dance(12); }; Dance013Button.OnButtonClick += (UIElement e) => { Dance(13); }; Dance014Button.OnButtonClick += (UIElement e) => { Dance(14); }; Dance015Button.OnButtonClick += (UIElement e) => { Dance(15); }; Dance016Button.OnButtonClick += (UIElement e) => { Dance(16); }; Dance017Button.OnButtonClick += (UIElement e) => { Dance(17); }; Dance018Button.OnButtonClick += (UIElement e) => { Dance(18); }; Dance019Button.OnButtonClick += (UIElement e) => { Dance(19); }; Dance020Button.OnButtonClick += (UIElement e) => { Dance(20); }; Dance021Button.OnButtonClick += (UIElement e) => { Dance(21); }; Dance022Button.OnButtonClick += (UIElement e) => { Dance(22); }; Dance023Button.OnButtonClick += (UIElement e) => { Dance(23); }; Dance024Button.OnButtonClick += (UIElement e) => { Dance(24); }; DanceToMusicButton.OnButtonClick += (UIElement e) => { Dance(0); }; PlaintextHandlers["dance_show"] = P_Show; }
public UIPieMenu(List<VMPieMenuInteraction> pie, VMEntity obj, VMEntity caller, UILotControl parent) { if (FSOEnvironment.UIZoomFactor>1.33f) ScaleX = ScaleY = FSOEnvironment.UIZoomFactor*0.75f; TrueScale = ScaleX *FSOEnvironment.DPIScaleFactor; m_PieButtons = new List<UIButton>(); this.m_Obj = obj; this.m_Caller = caller; this.m_Parent = parent; this.ButtonStyle = new TextStyle { Font = GameFacade.MainFont, Size = 12, Color = new Color(0xA5, 0xC3, 0xD6), SelectedColor = new Color(0x00, 0xFF, 0xFF), CursorColor = new Color(255, 255, 255) }; m_Bg = new UIImage(TextureGenerator.GetPieBG(GameFacade.GraphicsDevice)); m_Bg.SetSize(0, 0); //is scaled up later this.AddAt(0, m_Bg); m_PieTree = new UIPieMenuItem() { Category = true }; for (int i = 0; i < pie.Count; i++) { string[] depth = (pie[i].Name == null)?new string[] { "???" } :pie[i].Name.Split('/'); var category = m_PieTree; //set category to root for (int j = 0; j < depth.Length-1; j++) //iterate through categories { if (category.Children.ContainsKey(depth[j])) { category = category.Children[depth[j]]; } else { var newCat = new UIPieMenuItem() { Category = true, Name = depth[j], Parent = category }; category.Children.Add(depth[j], newCat); category = newCat; } } //we are in the category, put the interaction in here; var item = new UIPieMenuItem() { Category = false, Name = depth[depth.Length - 1], ID = pie[i].ID, Param0 = pie[i].Param0 }; if (!category.Children.ContainsKey(item.Name)) category.Children.Add(item.Name, item); } m_CurrentItem = m_PieTree; m_PieButtons = new List<UIButton>(); RenderMenu(); VMAvatar Avatar = (VMAvatar)caller; m_Head = new SimAvatar(Avatar.Avatar); //talk about confusing... m_Head.StripAllButHead(); initSimHead(); }
/// <summary> /// Creates a new UIMessage instance. /// </summary> /// <param name="type">The type of message (IM, compose or read).</param> /// <param name="author">Author if type is read or IM, recipient if type is compose.</param> public UIMessage(UIMessageType type, MessageAuthor author) { var script = this.RenderScript("message.uis"); Messages = new List<IMEntry>(); BtnBackground = new UIImage(backgroundBtnImage); BtnBackground.X = 313; BtnBackground.Y = 216; this.AddAt(0, BtnBackground); TypeBackground = new UIImage(backgroundMessageImage); TypeBackground.X = 10; TypeBackground.Y = 12; this.AddAt(0, TypeBackground); Background = new UIImage(backgroundImage); this.AddAt(0, Background); UIUtils.MakeDraggable(Background, this); UIUtils.MakeDraggable(TypeBackground, this); LetterSubjectTextEdit.MaxLines = 1; LetterSubjectTextEdit.TextMargin = new Microsoft.Xna.Framework.Rectangle(2, 2, 2, 2); MessageSlider.AttachButtons(MessageScrollUpButton, MessageScrollDownButton, 1); MessageTextEdit.AttachSlider(MessageSlider); MessageTextEdit.OnChange += new ChangeDelegate(MessageTextEdit_OnChange); SendMessageButton.OnButtonClick += new ButtonClickDelegate(SendMessage); MessageTextEdit.OnEnterPress += new KeyPressDelegate(SendMessageEnter); SendMessageButton.Disabled = true; LetterSlider.AttachButtons(LetterScrollUpButton, LetterScrollDownButton, 1); LetterTextEdit.AttachSlider(LetterSlider); RespondLetterButton.OnButtonClick += new ButtonClickDelegate(RespondLetterButton_OnButtonClick); SendLetterButton.OnButtonClick += new ButtonClickDelegate(SendLetter); HistorySlider.AttachButtons(HistoryScrollUpButton, HistoryScrollDownButton, 1); HistoryTextEdit.AttachSlider(HistorySlider); HistoryTextEdit.TextStyle = HistoryTextEdit.TextStyle.Clone(); HistoryTextEdit.TextStyle.Size = 8; HistoryTextEdit.TextMargin = new Microsoft.Xna.Framework.Rectangle(3, 3, 3, 3); HistoryTextEdit.SetSize(333, 100); CloseButton.OnButtonClick += new ButtonClickDelegate(CloseButton_OnButtonClick); SetType(type); SetMessageAuthor(author); }
/// <summary> /// Creates a new CityTransitionScreen. /// </summary> /// <param name="SelectedCity">The city being transitioned to.</param> /// <param name="CharacterCreated">If transitioning from CreateASim, this should be true. /// A CharacterCreateCity packet will be sent to the CityServer. Otherwise, this should be false. /// A CityToken packet will be sent to the CityServer.</param> public CityTransitionScreen(CityInfo SelectedCity, bool CharacterCreated) { m_SelectedCity = SelectedCity; m_CharacterCreated = CharacterCreated; /** * Scale the whole screen to 1024 */ m_BackgroundCtnr = new UIContainer(); m_BackgroundCtnr.ScaleX = m_BackgroundCtnr.ScaleY = ScreenWidth / 800.0f; /** Background image **/ m_Background = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.setup)); m_Background.ID = "Background"; m_BackgroundCtnr.Add(m_Background); var lbl = new UILabel(); lbl.Caption = "Version " + GlobalSettings.Default.ClientVersion; lbl.X = 20; lbl.Y = 558; m_BackgroundCtnr.Add(lbl); this.Add(m_BackgroundCtnr); m_LoginProgress = new UILoginProgress(); m_LoginProgress.X = (ScreenWidth - (m_LoginProgress.Width + 20)); m_LoginProgress.Y = (ScreenHeight - (m_LoginProgress.Height + 20)); m_LoginProgress.Opacity = 0.9f; this.Add(m_LoginProgress); /*lock(NetworkFacade.Controller) NetworkFacade.Controller.OnNetworkError += new NetworkErrorDelegate(Controller_OnNetworkError);*/ lock (NetworkFacade.Client) { lock (NetworkFacade.Client.ClientEncryptor) { LoginArgsContainer LoginArgs = new LoginArgsContainer(); LoginArgs.Username = NetworkFacade.Client.ClientEncryptor.Username; LoginArgs.Password = Convert.ToBase64String(PlayerAccount.Hash); LoginArgs.Enc = NetworkFacade.Client.ClientEncryptor; NetworkFacade.Client = new NetworkClient(SelectedCity.IP, SelectedCity.Port, GonzoNet.Encryption.EncryptionMode.AESCrypto, true); //This might not fix decryption of cityserver's packets, but it shouldn't make things worse... NetworkFacade.Client.ClientEncryptor = LoginArgs.Enc; //THIS IS IMPORTANT - THIS NEEDS TO BE COPIED AFTER IT HAS BEEN RECREATED FOR //THE RECONNECTION TO WORK! LoginArgs.Client = NetworkFacade.Client; NetworkFacade.Client.OnConnected += new OnConnectedDelegate(Client_OnConnected); NetworkFacade.Controller.Reconnect(ref NetworkFacade.Client, SelectedCity, LoginArgs); } } lock (NetworkFacade.Controller) { NetworkFacade.Controller.OnCharacterCreationStatus += new OnCharacterCreationStatusDelegate(Controller_OnCharacterCreationStatus); NetworkFacade.Controller.OnCityTransferProgress += new OnCityTransferProgressDelegate(Controller_OnCityTransfer); NetworkFacade.Controller.OnLoginNotifyCity += new OnLoginNotifyCityDelegate(Controller_OnLoginNotifyCity); NetworkFacade.Controller.OnLoginSuccessCity += new OnLoginSuccessCityDelegate(Controller_OnLoginSuccessCity); NetworkFacade.Controller.OnLoginFailureCity += new OnLoginFailureCityDelegate(Controller_OnLoginFailureCity); NetworkFacade.Controller.OnNetworkError += new NetworkErrorDelegate(Controller_OnNetworkError); } }
public PersonSelectionEdit() { /** * Data */ MaleHeads = new Collection(ContentManager.GetResourceFromLongID((ulong)FileIDs.CollectionsFileIDs.ea_male_heads)); MaleOutfits = new Collection(ContentManager.GetResourceFromLongID((ulong)FileIDs.CollectionsFileIDs.ea_male)); FemaleHeads = new Collection(ContentManager.GetResourceFromLongID((ulong)FileIDs.CollectionsFileIDs.ea_female_heads)); FemaleOutfits = new Collection(ContentManager.GetResourceFromLongID((ulong)FileIDs.CollectionsFileIDs.ea_female)); /** * UI */ UIScript ui = null; if (GlobalSettings.Default.ScaleUI) { ui = this.RenderScript("personselectionedit.uis"); this.Scale800x600 = true; } else { ui = this.RenderScript("personselectionedit" + (ScreenWidth == 1024 ? "1024" : "") + ".uis"); } m_ExitButton = (UIButton)ui["ExitButton"]; m_ExitButton.OnButtonClick += new ButtonClickDelegate(m_ExitButton_OnButtonClick); CancelButton = (UIButton)ui["CancelButton"]; CancelButton.OnButtonClick += new ButtonClickDelegate(CancelButton_OnButtonClick); CancelButton.Disabled = true; DescriptionTextEdit.CurrentText = ui.GetString("DefaultAvatarDescription"); DescriptionSlider.AttachButtons(DescriptionScrollUpButton, DescriptionScrollDownButton, 1); DescriptionTextEdit.AttachSlider(DescriptionSlider); NameTextEdit.OnChange += new ChangeDelegate(NameTextEdit_OnChange); NameTextEdit.CurrentText = GlobalSettings.Default.LastUser; AcceptButton.Disabled = NameTextEdit.CurrentText.Length == 0; AcceptButton.OnButtonClick += new ButtonClickDelegate(AcceptButton_OnButtonClick); /** Appearance **/ SkinLightButton.OnButtonClick += new ButtonClickDelegate(SkinButton_OnButtonClick); SkinMediumButton.OnButtonClick += new ButtonClickDelegate(SkinButton_OnButtonClick); SkinDarkButton.OnButtonClick += new ButtonClickDelegate(SkinButton_OnButtonClick); SelectedAppearanceButton = SkinLightButton; m_HeadSkinBrowser = ui.Create<UICollectionViewer>("HeadSkinBrowser"); m_HeadSkinBrowser.OnChange += new ChangeDelegate(HeadSkinBrowser_OnChange); m_HeadSkinBrowser.Init(); this.Add(m_HeadSkinBrowser); m_BodySkinBrowser = ui.Create<UICollectionViewer>("BodySkinBrowser"); m_BodySkinBrowser.OnChange += new ChangeDelegate(BodySkinBrowser_OnChange); m_BodySkinBrowser.Init(); this.Add(m_BodySkinBrowser); FemaleButton.OnButtonClick += new ButtonClickDelegate(GenderButton_OnButtonClick); MaleButton.OnButtonClick += new ButtonClickDelegate(GenderButton_OnButtonClick); /** Backgrounds **/ var bg = new UIImage(BackgroundImage); this.AddAt(0, bg); var offset = new Vector2(0, 0); if (BackgroundImageDialog != null) { offset = new Vector2(112, 84); this.AddAt(1, new UIImage(BackgroundImageDialog) { X = 112, Y = 84 }); } /** * Music */ PlayBackgroundMusic( new string[] { GlobalSettings.Default.StartupPath + "\\music\\modes\\create\\tsocas1_v2.mp3" } ); SimBox = new UISim(Guid.NewGuid().ToString()); if (GlobalSettings.Default.ScaleUI) { SimBox.SimScale = 0.8f; SimBox.Position = new Microsoft.Xna.Framework.Vector2(offset.X + 140, offset.Y + 130); } else { SimBox.SimScale = 0.5f; SimBox.Position = new Microsoft.Xna.Framework.Vector2(offset.X + 140, offset.Y + 260); } SimBox.AutoRotate = true; this.Add(SimBox); /** * Init state */ if (GlobalSettings.Default.DebugGender) { Gender = Gender.Male; MaleButton.Selected = true; FemaleButton.Selected = false; } else { Gender = Gender.Female; MaleButton.Selected = false; FemaleButton.Selected = true; } AppearanceType = (AppearanceType)GlobalSettings.Default.DebugSkin; SkinLightButton.Selected = false; SkinMediumButton.Selected = false; SkinDarkButton.Selected = false; switch (AppearanceType) { case AppearanceType.Light: SkinLightButton.Selected = true; break; case AppearanceType.Medium: SkinMediumButton.Selected = true; break; case AppearanceType.Dark: SkinDarkButton.Selected = true; break; } RefreshCollections(); SearchCollectionForInitID(GlobalSettings.Default.DebugHead, GlobalSettings.Default.DebugBody); NetworkFacade.Controller.OnCharacterCreationProgress += new OnCharacterCreationProgressDelegate(Controller_OnCharacterCreationStatus); }
public UIGizmo() { var ui = this.RenderScript("gizmo.uis"); BackgroundImageGizmo = ui.Create<UIImage>("BackgroundImageGizmo"); this.AddAt(0, BackgroundImageGizmo); BackgroundImageGizmoPanel = ui.Create<UIImage>("BackgroundImageGizmoPanel"); this.AddAt(0, BackgroundImageGizmoPanel); BackgroundImagePanel = ui.Create<UIImage>("BackgroundImagePanel"); this.AddAt(0, BackgroundImagePanel); UIUtils.MakeDraggable(BackgroundImageGizmo, this); UIUtils.MakeDraggable(BackgroundImageGizmoPanel, this); UIUtils.MakeDraggable(BackgroundImagePanel, this); ButtonContainer = new UIContainer(); this.Remove(ExpandButton); ButtonContainer.Add(ExpandButton); this.Remove(ContractButton); ButtonContainer.Add(ContractButton); this.Remove(FiltersButton); ButtonContainer.Add(FiltersButton); this.Remove(SearchButton); ButtonContainer.Add(SearchButton); this.Remove(Top100ListsButton); ButtonContainer.Add(Top100ListsButton); this.Add(ButtonContainer); FiltersProperty = new UIGizmoPropertyFilters(ui, this); FiltersProperty.Visible = false; this.Add(FiltersProperty); Search = new UIGizmoSearch(ui, this); Search.Visible = false; this.Add(Search); Top100 = new UIGizmoTop100(ui, this); Top100.Visible = false; Top100.Background.Visible = false; this.Add(Top100); ExpandButton.OnButtonClick += new ButtonClickDelegate(ExpandButton_OnButtonClick); ContractButton.OnButtonClick += new ButtonClickDelegate(ContractButton_OnButtonClick); PeopleTabButton.OnButtonClick += new ButtonClickDelegate(PeopleTabButton_OnButtonClick); HousesTabButton.OnButtonClick += new ButtonClickDelegate(HousesTabButton_OnButtonClick); FiltersButton.OnButtonClick += new ButtonClickDelegate(FiltersButton_OnButtonClick); SearchButton.OnButtonClick += new ButtonClickDelegate(SearchButton_OnButtonClick); Top100ListsButton.OnButtonClick += new ButtonClickDelegate(Top100ListsButton_OnButtonClick); if (PlayerAccount.CurrentlyActiveSim != null) SimBox = new UISim(PlayerAccount.CurrentlyActiveSim.GUID.ToString()); else SimBox = new UISim(""); //var sim = new Sim(Guid.NewGuid().ToString()); //var maleHeads = new Collection(ContentManager.GetResourceFromLongID((ulong)FileIDs.CollectionsFileIDs.ea_male_heads)); //SimCatalog.LoadSim3D(sim, maleHeads.First().PurchasableObject.Outfit, AppearanceType.Light); // //sim.HeadOutfitID = 4853313044493; //sim.AppearanceType = AppearanceType.Light; //sim.BodyOutfitID = 5394478923789; //SimCatalog.LoadSim3D(sim); //SimCatalog.LoadSim3D(sim, SimCatalog.GetOutfit(4462471020557), AppearanceType.Light); //SimBox.Sim = sim; //SimBox.SimScale = 0.4f; //SimBox.Position = new Microsoft.Xna.Framework.Vector2(60, 60); //this.Add(SimBox); View = UIGizmoView.Top100; SetOpen(true); }
public UIGizmoTop100(UIScript script, UIGizmo parent) { Background = script.Create<UIImage>("BackgroundImageTop100Lists"); this.Add(Background); script.LinkMembers(this, true); Top100Slider.AttachButtons(Top100ListScrollUpButton, Top100ListScrollDownButton, 1); Top100ResultList.AttachSlider(Top100Slider); populateWithXMLHouses(); Top100ResultList.OnDoubleClick += Top100ItemSelect; UpdateCooldown = 100; }
public UIGizmoSearch(UIScript script, UIGizmo parent) { Background = script.Create<UIImage>("BackgroundImageSearch"); this.Add(Background); script.LinkMembers(this, true); SearchText.CurrentText = "127.0.0.1"; NarrowSearchButton.OnButtonClick += JoinServerLot; }
public UIGizmoPropertyFilters(UIScript script, UIGizmo parent) { Background = script.Create<UIImage>("BackgroundImageFilters"); this.Add(Background); var filterChildren = parent.GetChildren().Where(x => x.ID != null && x.ID.StartsWith("PropertyFilterButton_")).ToList(); foreach (var child in filterChildren) { child.Parent.Remove(child); this.Add(child); } }
public UIOptions() { var script = this.RenderScript("optionspanel.uis"); Background = new UIImage(GetTexture((FSOEnvironment.UIZoomFactor>1f || GlobalSettings.Default.GraphicsWidth < 1024) ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002)); this.AddAt(0, Background); Background.BlockInput(); Divider = new UIImage(DividerImage); Divider.X = 227; Divider.Y = 17; this.Add(Divider); ExitButton.OnButtonClick += new ButtonClickDelegate(ExitButton_OnButtonClick); SelectSimButton.OnButtonClick += new ButtonClickDelegate(SelectSimButton_OnButtonClick); GraphicsButton.OnButtonClick += new ButtonClickDelegate(GraphicsButton_OnButtonClick); ProfanityButton.OnButtonClick += new ButtonClickDelegate(ProfanityButton_OnButtonClick); SoundButton.OnButtonClick += new ButtonClickDelegate(SoundButton_OnButtonClick); CurrentPanel = -1; }
public LoadingScreen() { /** * Scale the whole screen to 1024 */ BackgroundCtnr = new UIContainer(); BackgroundCtnr.ScaleX = BackgroundCtnr.ScaleY = ScreenWidth / 800.0f; /** Background image **/ Background = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.setup)); BackgroundCtnr.Add(Background); //TODO: Letter spacing is a bit wrong on this label var lbl = new UILabel(); lbl.Caption = GameFacade.Strings.GetString("154", "5"); lbl.X = 0; lbl.Size = new Microsoft.Xna.Framework.Vector2(800, 100); lbl.Y = 508; var style = lbl.CaptionStyle.Clone(); style.Size = 17; lbl.CaptionStyle = style; BackgroundCtnr.Add(lbl); this.Add(BackgroundCtnr); ProgressLabel1 = new UILabel { X = 0, Y = 550, Size = new Microsoft.Xna.Framework.Vector2(800, 100), CaptionStyle = style }; ProgressLabel2 = new UILabel { X = 0, Y = 550, Size = new Microsoft.Xna.Framework.Vector2(800, 100), CaptionStyle = style }; BackgroundCtnr.Add(ProgressLabel1); BackgroundCtnr.Add(ProgressLabel2); PreloadLabels = new string[]{ GameFacade.Strings.GetString("155", "6"), GameFacade.Strings.GetString("155", "7"), GameFacade.Strings.GetString("155", "8"), GameFacade.Strings.GetString("155", "9") }; CurrentPreloadLabel = 0; AnimateLabel("", PreloadLabels[0]); CheckProgressTimer = new Timer(); CheckProgressTimer.Interval = 5; CheckProgressTimer.Elapsed += new ElapsedEventHandler(CheckProgressTimer_Elapsed); CheckProgressTimer.Start(); //GameFacade.Screens.Tween.To(rect, 10.0f, new Dictionary<string, float>() { // {"X", 500.0f} //}, TweenQuad.EaseInOut); }
public UILiveMode(UILotControl lotController) { var small800 = (GlobalSettings.Default.GraphicsWidth < 1024) || FSOEnvironment.UIZoomFactor > 1f; var script = this.RenderScript("livepanel"+(small800?"":"1024")+".uis"); Script = script; LotController = lotController; DefaultBGImage = GetTexture(small800 ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002); Background = new UIImage(DefaultBGImage); Background.Y = 35; this.AddAt(0, Background); EODCloseButton.OnButtonClick += EODCloseButton_OnButtonClick; MotivesLabel.CaptionStyle = MotivesLabel.CaptionStyle.Clone(); MotivesLabel.CaptionStyle.Shadow = true; MotivesLabel.Alignment = TextAlignment.Left; MotivesLabel.Position -= new Vector2(0, 5); PeopleListBg = new UIImage(PeopleListBackgroundImg); PeopleListBg.Position = new Microsoft.Xna.Framework.Vector2(375, 38); this.AddAt(1, PeopleListBg); Divider = new UIImage(DividerImg); Divider.Position = new Microsoft.Xna.Framework.Vector2(140, 49); this.AddAt(1, Divider); MoodPanelButton = new UIButton(); MoodPanelButton.Texture = GetTexture((ulong)GameContent.FileIDs.UIFileIDs.lpanel_moodpanelbtn); MoodPanelButton.ImageStates = 4; MoodPanelButton.Position = new Vector2(31, 63); this.Add(MoodPanelButton); MotiveDisplay = new UIMotiveDisplay(); MotiveDisplay.Position = new Vector2(165, 56); this.Add(MotiveDisplay); PersonGrid = new UIPersonGrid(LotController.vm); Add(PersonGrid); PersonGrid.Position = new Vector2(409, 51); if (small800) { PersonGrid.Columns = 4; PersonGrid.DrawPage(); } EODPanel = new UIImage(EODPanelImg); EODPanel.Y = 20; EODPanelTall = new UIImage(EODPanelTallImg); //EODDoublePanelTall = new UIImage(EODDoublePanelTallImg); AddAt(0, EODPanel); AddAt(0, EODPanelTall); //Add(EODDoublePanelTall); EODButtonLayoutNone = script.Create<UIImage>("EODButtonLayoutNone"); EODButtonLayoutNoneTall = script.Create<UIImage>("EODButtonLayoutNoneTall"); EODButtonLayoutOne = script.Create<UIImage>("EODButtonLayoutOne"); EODButtonLayoutOneTall = script.Create<UIImage>("EODButtonLayoutOneTall"); EODButtonLayoutTwo = script.Create<UIImage>("EODButtonLayoutTwo"); EODButtonLayoutTwoTall = script.Create<UIImage>("EODButtonLayoutTwoTall"); EODSubFullLength = script.Create<UIImage>("EODSubFullLength"); EODSubFullLengthTall = script.Create<UIImage>("EODSubFullLengthTall"); EODSubMediumLength = script.Create<UIImage>("EODSubMediumLength"); EODSubMediumLengthTall = script.Create<UIImage>("EODSubMediumLengthTall"); EODSubShortLength = script.Create<UIImage>("EODSubShortLength"); EODSubShortLengthTall = script.Create<UIImage>("EODSubShortLengthTall"); Add(EODButtonLayoutNone); Add(EODButtonLayoutNoneTall); Add(EODButtonLayoutOne); Add(EODButtonLayoutOneTall); Add(EODButtonLayoutTwo); Add(EODButtonLayoutTwoTall); Add(EODSubFullLength); Add(EODSubFullLengthTall); Add(EODSubMediumLength); Add(EODSubMediumLengthTall); Add(EODSubShortLength); Add(EODSubShortLengthTall); EODMsgWinLong = script.Create<UIImage>("EODMsgWinLong"); EODMsgWinShort = script.Create<UIImage>("EODMsgWinShort"); EODTimer = script.Create<UIImage>("EODTimer"); AddAt(0, EODTimer); AddAt(0, EODMsgWinLong); AddAt(0, EODMsgWinShort); EODButton = new UIButton(EODButtonImg); Add(EODButton); EODButton.OnButtonClick += EODToggle; EODImage = script.Create<UIImage>("EODButtonImageSize"); Add(EODImage); NextPageButton.OnButtonClick += (UIElement btn) => { PersonGrid.NextPage(); }; DefaultNextPagePos = NextPageButton.Position; PreviousPageButton.OnButtonClick += (UIElement btn) => { PersonGrid.PreviousPage(); }; MsgWinTextEntry.Items.Add(new UIListBoxItem("", "")); EODCloseBase = EODCloseButton.Position; EODHelpBase = EODHelpButton.Position; SetInEOD(null, null); }
public UIAlert(UIAlertOptions options) : base(UIDialogStyle.Standard, true) { this.m_Options = options; this.Caption = options.Title; this.Opacity = 0.9f; m_TextStyle = TextStyle.DefaultLabel.Clone(); m_TextStyle.Size = options.TextSize; Icon = new UIImage(); Icon.Position = new Vector2(32, 32); Icon.SetSize(0, 0); Add(Icon); /** Determine the size **/ ComputeText(); if (options.ProgressBar) { _ProgressBar = new UIProgressBar(); _ProgressBar.Mode = ProgressBarMode.Animated; _ProgressBar.Position = new Microsoft.Xna.Framework.Vector2(32, 0); _ProgressBar.SetSize(options.Width - 64, 26); this.Add(_ProgressBar); } /** Add buttons **/ Buttons = new List <UIButton>(); foreach (var button in options.Buttons) { string buttonText = ""; if (button.Text != null) { buttonText = button.Text; } else { switch (button.Type) { case UIAlertButtonType.OK: buttonText = GameFacade.Strings.GetString("142", "ok button"); break; case UIAlertButtonType.Yes: buttonText = GameFacade.Strings.GetString("142", "yes button"); break; case UIAlertButtonType.No: buttonText = GameFacade.Strings.GetString("142", "no button"); break; case UIAlertButtonType.Cancel: buttonText = GameFacade.Strings.GetString("142", "cancel button"); break; } } var btnElem = AddButton(buttonText, button.Type, button.Handler == null); Buttons.Add(btnElem); if (button.Handler != null) { btnElem.OnButtonClick += button.Handler; } } if (options.TextEntry) { TextBox = new UITextBox(); TextBox.MaxChars = options.MaxChars; this.Add(TextBox); } if (options.Color) { ColorEntry = new UIColorPicker(); Add(ColorEntry); } /** Position buttons **/ RefreshSize(); }