public override void OnInitialize() { var px = master.RelativeCenter.X - DIAMETER / 2; var py = master.RelativeCenter.Y + SettingsButton.DIAMETER / 2 - DIAMETER; py += MARGIN_Y; RelativePosition = new FPoint(px, py); var bounds = FontRenderHelper.MeasureStringCached(Textures.HUDFontRegular, ButtonText); var scale = FontRenderHelper.GetFontScale(Textures.HUDFontRegular, SIZE_ICON); Slave.Size = bounds * scale; Owner.AddElement(Slave); }
public override void OnInitialize() { if (orientation == SSBOrientation.V) { var px = master.RelativeCenter.X - DIAMETER / 2; var py = master.RelativeCenter.Y + SettingsButton.DIAMETER / 2 - DIAMETER; py += MARGIN_FIRST; RelativePosition = new FPoint(px, py); var bounds = FontRenderHelper.MeasureStringCached(Textures.HUDFontRegular, ButtonText); var scale = FontRenderHelper.GetFontScale(Textures.HUDFontRegular, SIZE_ICON); Slave.Size = bounds * scale; Owner.AddElement(Slave); Slave.IsEnabled = !string.IsNullOrWhiteSpace(ButtonText); } else if (orientation == SSBOrientation.H) { var px = master.RelativeCenter.X - DIAMETER / 2; var py = master.RelativeCenter.Y - DIAMETER / 2; py += MARGIN_FIRST; RelativePosition = new FPoint(px, py); var bounds = FontRenderHelper.MeasureStringCached(Textures.HUDFontRegular, ButtonText); bounds = bounds.Rotate90(); var scale = FontRenderHelper.GetFontScale(Textures.HUDFontRegular, SIZE_ICON); Slave.Size = bounds * scale; Owner.AddElement(Slave); Slave.IsEnabled = !string.IsNullOrWhiteSpace(ButtonText); } }