/// <summary> /// 注册截屏插件 /// </summary> /// <param name="timeHandler"></param> public static void OrcRegister(OcrTimerHandler timeHandler, ScreenConfig config = null) { _screenTimerPlugins = new ScreenTimerPlugins(config); _screenTimerPlugins.OnTimerHandler += timeHandler; _screenTimerPlugins.Start(); }
public static ScreenConfig GetConfigForAspectRatio(Config config, Size gameWindowSize) { double aspectRatio = gameWindowSize.Width / (double)gameWindowSize.Height; ScreenConfig result = config.aspectRatios[0]; foreach (ScreenConfig conf in config.aspectRatios) { string[] dimensionsString = conf.aspectRatio.Split(':'); if (!int.TryParse(dimensionsString[0], out int aspectRatioWidth)) //Inline variable declaration { new ErrorMessage("Failure while parsing aspect ratio width from config!", null); } if (!int.TryParse(dimensionsString[1], out int aspectRatioHeight)) //Inline variable declaration { new ErrorMessage("Failure while parsing aspect ratio height from config!", null); } double confRatio = aspectRatioWidth / (double)aspectRatioHeight; if (aspectRatio == confRatio) { result = conf; break; } } return(result); }
public void SeveImageControl(ScreenConfig mainScreen, List <ScreenConfig> listControls) { TransactionOptions tranOpt = new TransactionOptions() { IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted }; using (var trans = new TransactionScope(TransactionScopeOption.Required, tranOpt)) { List <ScreenConfig> saveControlImage = new List <ScreenConfig>(); if (listControls != null) { saveControlImage = listControls; } saveControlImage.Add(mainScreen); foreach (ScreenConfig itemImage in saveControlImage) { if (itemImage.image != null && itemImage.image.Length > 0) { ScreenImage scImage = new ScreenImage(); scImage.control_id = itemImage.control_id; scImage.image = itemImage.image; scImage.sc_screen_image_id = this.Insert <long>(scImage, ValidationRuleset.Insert); ScreenConfig UpdateitemImage = ServiceProvider.ScreenConfigService.FindByKeys(itemImage, true); UpdateitemImage.sc_screen_image_id = scImage.sc_screen_image_id; ServiceProvider.ScreenConfigService.Update(UpdateitemImage, ValidationRuleset.Update); } } trans.Complete(); } }
public void Attach(IntPtr windowHandle) { if (windowHandle.Equals(IntPtr.Zero)) { //_logger.Error("Make sure BDO isn't initially minimized and this application is running as admin."); //Debug.WriteLine("could not pinvoke!"); MessageBox.Show("Make sure BDO isn't initially minimized and this application is running as admin.", "Could not attach to BDO", MessageBoxButton.OK, MessageBoxImage.Error); MyApp.exit(); } else { WindowHandle = windowHandle; var r = GetWindowArea(); Size = new Size { Width = r.Width, Height = r.Height }; Config = ScreenConfig.LoadFromFile($"{Size.Width}x{Size.Height}"); _overlay = new Overlay(_notifier, _container); _windowEventHook = new WindowObserver(windowHandle, ObservedWindowEvent); User32.SetForegroundWindow(windowHandle); _overlay.Update(r); _overlay.Topmost = true; } }
private void timer1_Tick(object sender, EventArgs e) { foreach (System.Windows.Forms.Control item in pnlTableView.Controls) { if (item.GetType() == typeof(Control.BasePanel)) { BasePanel bp = item as BasePanel; ScreenConfig scConfig = bp.DataObject as ScreenConfig; if (scConfig.control_type == ControlType.Table) { string TableCode = scConfig.control_command; SOTable selectTable = ServiceProvider.SOTableService.GetTaleByCode(TableCode); if (selectTable != null) { item.Visible = selectTable.active; if (!selectTable.IsAvailable) { bp.BackColor = Color.Green; } else { bp.BackColor = Color.Transparent; } } else { item.Visible = false; } } } } }
// <?xml version = "1.0" encoding="utf-8"?> //<root> // <screen> // <code>1-1</code> // <galleryName>TV1</galleryName> // <galleryCode>TV1</galleryCode> // <type>1</type> // </screen> // <screen> // <code>1-2</code> // <galleryName>TV2</galleryName> // <galleryCode>TV2</galleryCode> // <type>1</type> // </screen> //</root> #endregion /// <summary> /// 加载解析xml文件 /// </summary> /// <param name="xml"></param> /// <returns></returns> public List <ScreenConfig> GetScreenListFromXML(string xml) { try { List <ScreenConfig> list = new List <ScreenConfig>(); if (!string.IsNullOrEmpty(xml)) { ScreenConfig screen = null; XmlDocument myXmlDoc = new XmlDocument(); myXmlDoc.LoadXml(xml); for (int i = 0; i < myXmlDoc.SelectNodes("root/screen").Count; i++) { screen = new ScreenConfig(); screen.galleryCode = myXmlDoc.SelectNodes("root/screen")[i].SelectSingleNode("galleryCode").InnerText; screen.galleryName = myXmlDoc.SelectNodes("root/screen")[i].SelectSingleNode("galleryName").InnerText; screen.screenCode = myXmlDoc.SelectNodes("root/screen")[i].SelectSingleNode("code").InnerText; screen.galleryType = int.Parse(myXmlDoc.SelectNodes("root/screen")[i].SelectSingleNode("type").InnerText); list.Add(screen); } } return(list); } catch (Exception ex) { throw ex; } }
public MainForm(ScreenConfig scnConfig = null) { //InitializeComponent(); //Load += FormForm_Load; _screenConfig = scnConfig; ViewModel = new MainViewModels(); }
static void Main(string[] args) { var screen = new ScreenConfig(8, 8); var debug = new DebugConfig(updateTime: 0.15f, maxLogSize: 20); var config = ConfigurationLoader.Load(ArgumentSet.Parse(args)); var root = new CompositionRoot( screen, debug, config, () => new ReadConsoleReadInputSystem(), new Func <ISystem>[] { () => new ConsoleTriggerSystem(debug), () => new ConsoleClearSystem(), () => new ConsoleRenderSystem(screen), () => new ConsoleLogSystem() }, () => new FinishFrameRealTimeSystem(), () => new DeviceRenderSystem(screen, new DeviceRenderConfig(172))); var(entities, systems) = root.Create(); systems.Init(entities); systems.UpdateLoop(entities); Console.WriteLine($"Your score is: {entities.GetFirstComponent<ScoreState>()?.TotalScore}"); Console.WriteLine($"Time: {entities.GetFirstComponent<TimeState>().UnscaledTotalTime:0.00}"); if (config.IsReplayRecord) { var replay = entities.GetFirstComponent <InputRecordState>(); replay.Save(config.NewReplayPath); } }
public GSTightenController(ScreenConfig config, Logging logger, MainViewModels viewModel) { _logger = logger; tdConfig = config; view = viewModel; TightenDatas = new TightenDataCaChe(tdConfig.Tighten.BoltCount); }
public ScreenConfigForm(ScreenConfig screen) : this() { Screen = screen; this.SuspendLayout(); this.StartPosition = FormStartPosition.Manual; this.Bounds = Screen.Bounds; this.CancelButton = CancelBtn; this.KeyPreview = true; this.KeyDown += (sender, args) => { if (args.KeyCode == Keys.Escape) { CancelBtn.PerformClick(); } }; Panel.SuspendLayout(); SetupButtons(); SetupBars(); SetupInfos(); Panel.ResumeLayout(false); this.ResumeLayout(false); }
void Create() { InputRecordConfig replayRecord = null; if (ReplayShow) { var replayAsset = Resources.Load <TextAsset>(ReplayPath); var lines = replayAsset.text.Split('\n').Where(l => !string.IsNullOrWhiteSpace(l)).ToArray(); replayRecord = new InputRecordConfig(lines); } var screen = new ScreenConfig(8, 8); var config = new Configuration(ReplayRecord, replayRecord, null, RandomSeed, FixedFrameTime); var root = new CompositionRoot( screen, null, config, () => new ReadUnityInputSystem(new Dictionary <UnityEngine.KeyCode, KeyCode> { { UnityEngine.KeyCode.LeftArrow, KeyCode.LeftArrow }, { UnityEngine.KeyCode.RightArrow, KeyCode.RightArrow }, { UnityEngine.KeyCode.Space, KeyCode.Spacebar } }), new Func <ISystem> [0], () => new ReadUnityRealTimeSystem(), () => new UnityRenderSystem(screen, Renderer)); (_entities, _systems) = root.Create(); }
static ConfigManage() { if (Data == null) { if (!LoadData()) { InitData(); } } if (!Directory.Exists(Data.Base.CachePath)) { Directory.CreateDirectory(Data.Base.CachePath); } if (!Directory.Exists(Data.Base.DownPath)) { Directory.CreateDirectory(Data.Base.DownPath); } if (string.IsNullOrEmpty(Data.Base.TypeJson)) { Data.Base.TypeJson = Const.DefaultTypeJson; } Base = Data.Base; Screen = Data.Screen; Wallpaper = Data.Wallpaper; }
public void Stop() { // TODO : if (!Hook.Enabled) return; if (Config == null) { return; } Hook.MouseMove -= _handler; if (Config.AdjustPointer) { ZoneChanged -= AdjustPointer; } if (Config.AdjustSpeed) { ZoneChanged -= AdjustSpeed; } if (Config.HomeCinema) { ZoneChanged -= HomeCinema; } Hook.UnHook(); if (Config == null) { return; } if (Config.AdjustSpeed) { LbmMouse.MouseSpeed = _initMouseSpeed; using (var key = ScreenConfig.OpenRootRegKey(true)) { key.DeleteValue("InitialMouseSpeed"); } } if (Config.AdjustPointer) { using (var key = ScreenConfig.OpenRootRegKey()) { using (RegistryKey savekey = key.OpenSubKey("InitialCursor")) { if (savekey != null) { LbmMouse.RestoreCursor(savekey); } } key.DeleteSubKey("InitialCursor"); } } Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.Normal; }
public void Start() { Stop(); LoadConfig(); if (Config == null || !Config.Enabled) { return; } using (RegistryKey key = ScreenConfig.OpenRootRegKey(true)) { string ms = key.GetValue("InitialMouseSpeed", string.Empty).ToString(); if (string.IsNullOrEmpty(ms)) { _initMouseSpeed = LbmMouse.MouseSpeed; key.SetValue("InitialMouseSpeed", _initMouseSpeed.ToString(CultureInfo.InvariantCulture), RegistryValueKind.String); } else { double.TryParse(ms, out _initMouseSpeed); } using (RegistryKey savekey = key.CreateSubKey("InitialCursor")) { if (savekey?.ValueCount == 0) { LbmMouse.SaveCursor(savekey); } } } Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.RealTime; _handler = OnMouseMoveExtFirst; Hook.MouseMoveExt += _handler; if (Config.AdjustPointer) { ZoneChanged += AdjustPointer; } if (Config.AdjustSpeed) { ZoneChanged += AdjustSpeed; } if (Config.HomeCinema) { ZoneChanged += HomeCinema; } Hook.Enabled = true; }
/// <summary> /// 修改大屏配置 /// </summary> /// <param name="configId"></param> /// <param name="column"></param> /// <param name="row"></param> /// <param name="width"></param> /// <param name="height"></param> /// <param name="code"></param> /// <param name="galleryCode"></param> /// <param name="galleryName"></param> /// <param name="type"></param> /// <returns></returns> public bool UpdateGalleryConfig(int configId, int regionId, int column, int row, int width, int height, string code, string galleryCode, string galleryName, string type) { try { BaseRegionExtendConfigModel model = new BaseRegionExtendConfigModel(); List <ScreenConfig> screenConfigList = new List <ScreenConfig>(); ScreenConfig screen = null; //判断是否是单一屏配置 if (code.Contains(',')) { string[] codeArr = code.Split(','); string[] galleryCodeArr = galleryCode.Split(','); string[] galleryNameArr = galleryName.Split(','); string[] typeArr = type.Split(','); for (int i = 0; i < codeArr.Length; i++) { screen = new ScreenConfig(); screen.galleryCode = galleryCodeArr[i]; // screen.galleryName = galleryNameArr[i]; screen.galleryName = galleryNameArr[i] == "无绑定" ? "" : galleryNameArr[i]; screen.galleryType = int.Parse(typeArr[i]); screen.screenCode = codeArr[i]; screenConfigList.Add(screen); } } else { screen = new ScreenConfig(); screen.galleryCode = galleryCode; // screen.galleryName = galleryName; screen.galleryName = galleryName == "无绑定" ? "" : galleryName; screen.galleryType = int.Parse(type); screen.screenCode = code; screenConfigList.Add(screen); } string xml = GetConfigXmlByScreenList(screenConfigList); //将大屏配置转成xml文件 model.id = configId; model.region_id = regionId; model.config_type = (int)EnumClass.RegionExtendConfigType.大屏; model.ext1 = column.ToString(); model.ext2 = row.ToString(); model.ext3 = width.ToString(); model.ext4 = height.ToString(); model.ext20 = xml; if (regionExtendConfigDal.UpdateEntity(model) > 0) //修改并获得返回值 { return(true); } else { return(false); } } catch (Exception ex) { throw ex; } }
static void Main() { var entities = new EntitySet(); var screen = new ScreenConfig(32, 32); var systems = new SystemSet(); systems.Add(new DirectRenderSystem()); systems.Add(new RenderToFileSystem(screen, new RenderToFileConfig("frame_{0}.png"))); systems.UpdateOnce(entities); }
/// <summary> /// 获取Ocr 内容 /// </summary> /// <param name="config"></param> /// <returns></returns> public static decimal GetOcrMoney(ScreenConfig config, out Bitmap bitmap) { if (_screenTimerPlugins == null) { _screenTimerPlugins = new ScreenTimerPlugins(config); } _screenTimerPlugins.InitConifg(config); return(_screenTimerPlugins.GetOcrMoney(config, out bitmap)); }
public LittleBigMouseDaemon(IList <string> args) { NotifyHelper.EventHandlerService = new EventHandlerServiceWpf(); ShutdownMode = ShutdownMode.OnExplicitShutdown; Startup += OnStartup; Exit += OnExit; Deactivated += OnDeactivated; _args = args; _monitorsService = new MonitorsService(); _screenConfig = new ScreenConfig(_monitorsService); }
public void UpdateConfig() { _notify.RemoveMenu("config"); foreach (string configName in ScreenConfig.ConfigsList) { bool chk = configName == _engine.Config?.Id; if (ScreenConfig.IsDoableConfig(configName)) { _notify.AddMenu(0, configName, MatchConfig, "config", chk); } } }
//==================================================================== #region :: Custom Events :: protected void btn_TableClick(object sender, EventArgs e) { if (TableClickEvent != null) { Label labTable = sender as Label; PictureBox pb = ((PictureBox)labTable.Parent); if (pb != null) { BasePanel panel = ((BasePanel)pb.Parent); ScreenConfig panelConfig = panel.DataObject as ScreenConfig; TableClickEvent(panelConfig.control_command); } } }
public override void Register() { var viewModel = D.MainViewModel; var config = new ScreenConfig(); viewModel.Config = config; viewModel.Presenter = new MultiScreensViewModel { Config = config }; var view = (Window)MvvmService.D.MainViewModeContext.GetView <ViewModeDefault>(viewModel, typeof(IViewClassDefault)); view.Show(); }
public void Start() { if (Hook.Enabled) { return; } if (Config == null) { LoadConfig(); } if (Config == null || !Config.Enabled) { return; } SystemEvents.DisplaySettingsChanged += OnDisplaySettingsChanged; using (RegistryKey key = ScreenConfig.OpenRootRegKey(true)) { string ms = key.GetValue("InitialMouseSpeed", string.Empty).ToString(); if (string.IsNullOrEmpty(ms)) { _initMouseSpeed = LbmMouse.MouseSpeed; key.SetValue("InitialMouseSpeed", _initMouseSpeed.ToString(CultureInfo.InvariantCulture), RegistryValueKind.String); } else { double.TryParse(ms, out _initMouseSpeed); } using (RegistryKey savekey = key.CreateSubKey("InitialCursor")) { if (savekey?.ValueCount == 0) { LbmMouse.SaveCursor(savekey); } } } Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.RealTime; Hook.MouseMoveExt += OnMouseMoveExt; Hook.Enabled = true; // LittleBigMouseDaemon.Callback?.OnStateChange(); }
void ConfigureObjectsForResolution(ResolutionAdjustObjects objs, ScreenConfig config) { objs.mainCamera.orthographicSize = config.mainCameraSize; objs.mainCamera.transform.localPosition = config.mainCameraLocation; var fxCamLoc = new Vector3(config.mainCameraLocation.x, config.mainCameraLocation.y, config.mainCameraLocation.z); fxCamLoc.z -= 400; objs.fxCamera.orthographicSize = config.mainCameraSize; objs.fxCamera.transform.localPosition = fxCamLoc; UpdateY(objs.topBar.transform, config.topBarY); UpdateY(objs.topShade.transform, config.topShadeY); UpdateY(objs.sky.transform, config.skyBgY); UpdateY(objs.creditsBG.transform, config.xpBGY); UpdateY(objs.creditsLabel.transform, config.xpLabelY); UpdateY(objs.col1.transform, config.columnY); UpdateY(objs.col2.transform, config.columnY); UpdateY(objs.col3.transform, config.columnY); UpdateY(objs.col4.transform, config.columnY); UpdateX(objs.col1.transform, config.col0x); UpdateX(objs.col2.transform, config.col1x); UpdateX(objs.col3.transform, config.col2x); UpdateX(objs.col4.transform, config.col3x); UpdateHeight(objs.col1.transform, config.columnHeight); UpdateHeight(objs.col2.transform, config.columnHeight); UpdateHeight(objs.col3.transform, config.columnHeight); UpdateHeight(objs.col4.transform, config.columnHeight); if(objs.bankrollButton != null) { UpdateY (objs.bankrollButton.transform, config.xpBGY); } if(objs.leftBar != null) { UpdateX(objs.leftBar.transform, config.leftBarX); UpdateHeight(objs.leftBar.transform, config.leftBarHeight); UpdateWidth(objs.leftBar.transform, config.leftBarWidth); } if(objs.rightBar != null) { UpdateX(objs.rightBar.transform, config.rightBarX); UpdateHeight(objs.rightBar.transform, config.rightBarHeight); UpdateWidth(objs.rightBar.transform, config.rightBarWidth); } }
/// <summary> /// スクリーンごとの設定をロードする /// (設定がないindexは前のindexと同一の設定になる) /// </summary> /// <param name="count">ロードする数</param> /// <returns>設定リスト</returns> static IList <ScreenConfig> LoadScreenConfigs(int count) { var screenConfigs = new List <ScreenConfig>(); var previousScreenConfig = new ScreenConfig(); for (var index = 0; index < count; ++index) { var screenConfig = ScreenConfig.Load(index); if (screenConfig == null) { screenConfigs.Add(previousScreenConfig); continue; } previousScreenConfig = screenConfig; screenConfigs.Add(screenConfig); } return(screenConfigs); }
public MainForm(ScreenConfig config, MainViewModels viewModel, IAdamController iAdam, IOpcController iopc, ICardController iCard) { try { _screenConfig = config; ViewModel = viewModel ?? new MainViewModels(); adam = iAdam; opc = iopc; mwCard = iCard; InitializeComponent(); Load += FormForm_Load; adam.OnSensorTrigger += Adam_OnSensorTrigger;//开关\按钮信息 mwCard.SwipedEvent += MwCard_SwipedEvent; if (_screenConfig != null) { lblAppName.Text = _screenConfig.Title; if (_screenConfig.Part.Available) { panelPart.Visible = true; } if (config.Id != 0) { btClose.Visible = false; } theTitle = config.Title; } { var dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Window; dataGridViewCellStyle1.Font = new System.Drawing.Font("宋体", 36F); dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.ControlText; dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight; dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText; dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.False; this.dataViewTd.DefaultCellStyle = dataGridViewCellStyle1; } } catch (Exception ex) { MessageBox.Show("Form:" + ex.Message); } }
public void Stop() { SystemEvents.DisplaySettingsChanged -= OnDisplaySettingsChanged; if (!Hook.Enabled) { return; } Hook.MouseMoveExt -= OnMouseMoveExt; Hook.Enabled = false; // LittleBigMouseDaemon.Callback?.OnStateChange(); if (Config == null) { return; } if (Config.AdjustSpeed) { LbmMouse.MouseSpeed = _initMouseSpeed; using (var key = ScreenConfig.OpenRootRegKey(true)) { key.DeleteValue("InitialMouseSpeed"); } } if (Config.AdjustPointer) { using (var key = ScreenConfig.OpenRootRegKey()) { using (RegistryKey savekey = key.OpenSubKey("InitialCursor")) { if (savekey != null) { LbmMouse.RestoreCursor(savekey); } } key.DeleteSubKey("InitialCursor"); } } Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.Normal; }
/// <summary> /// 根据坐标来截图 /// </summary> /// <param name="config"></param> /// <returns></returns> public static Bitmap GetBitmapFromPoint(ScreenConfig config) { var width = config.RightTopCoordinate.Width - config.LeftTopCoordinate.Width; var height = config.RightBottomCoordinate.Height - config.RightTopCoordinate.Height; if (width <= 0 || height <= 0) { return(null); } Bitmap image = new Bitmap(width, height); using (Graphics graphics = Graphics.FromImage(image)) { //设置截屏区域 graphics.CopyFromScreen(config.LeftTopCoordinate.Width, config.LeftTopCoordinate.Height, 0, 0, new System.Drawing.Size(width, height)); return(image); } }
public CompositionRoot( ScreenConfig screen, DebugConfig debug, Configuration config, Func <BaseReadInputSystem> inputSystem, Func <ISystem>[] preRenderSystems, Func <BaseFinishFrameRealTimeSystem> realTimeSystem, Func <BaseRenderSystem> renderSystem) { _screen = screen; _debug = debug; _config = config; _inputSystem = inputSystem; _preRenderSystems = preRenderSystems; _realTimeSystem = realTimeSystem; _renderSystem = renderSystem; _systems = new SystemSet(); }
public static void InitSettings(DebugOption options) { //app相关参数设置 Application.targetFrameRate = options.fullFrameRate ? -1 : 30; Time.maximumDeltaTime = 0.25f; Screen.sleepTimeout = SleepTimeout.NeverSleep; ScreenConfig.init(); //开发期相关参数设置 showFPSMeter = options.showFPSMeter; readPackedCode = options.readPackedCode; readPackedData = options.readPackedData; readPackedView = options.readPackedView; readAssetBundle = options.readAssetBundle; fullFrameRate = options.fullFrameRate; skipProgramUpdate = options.skipProgramUpdate; skipResouceUpdate = options.skipResouceUpdate; streamingAssetsPath = Application.streamingAssetsPath; externalPath = string.IsNullOrEmpty(options.externalPath) ? Application.persistentDataPath : options.externalPath; }
/// <summary> /// 分屏启动界面 /// </summary> private void RunForms() { try { Screen[] scs = Screen.AllScreens; int left = 0; for (int i = 0; i < scs.Length; i++) { if (appConfig.Screenlist.Length > i) { ScreenConfig fConfig = appConfig.Screenlist[i]; MainViewModels viewmodel = new MainViewModels(); MainForm f = new MainForm(fConfig, viewmodel, adam, opc, mwCard) { StartPosition = FormStartPosition.Manual, Location = new System.Drawing.Point(left + 10, scs[i].Bounds.Top) }; left += scs[i].Bounds.Right; f.Show(); forms.Add(f); ViewModels.Add(viewmodel); if (i == 0) { MainForm = f; } viewmodel.OnWorkCompate = WorkComplate; Log.Information("启动窗体:{Title}", appConfig.Screenlist[i].Title); } } Log.Information("窗口加载完成"); } catch (Exception ex) { Log.Error(ex, "启动界面报错"); } }
public UnityRenderSystem(ScreenConfig screen, UnityRenderer renderer) { _screen = screen; _renderer = renderer; }
public static bool LoadLayoutSettings(string nextScreen, out ScreenConfig screenConfig) { ViewSettings viewSettings = ServiceRegistration.Get<ISettingsManager>().Load<ViewSettings>(); return viewSettings.ScreenConfigs.TryGetValue(nextScreen, out screenConfig); }