private async Task <SceneObjectModel> CreateObjectModel <T>() where T : SceneElement, new() { try { var model = new SceneObjectModel(new T()); await ModelRHubClientProxy.GetInstance().CreateSceneObject(model); _objects.Add(model); if (_objects.Count == 1) { SelectedObject = model; } return(model); } catch (UserNotAuthorizedException exception) { var info = string.Format(CultureInfo.CurrentUICulture, "The user '{0}' is not authorized to create scene objects.", exception.UserName); Messenger.Default.Send <NotAuthorizedForOperationMessage>(new NotAuthorizedForOperationMessage(info)); } return(null); }
private async Task LoadUsersAsync() { var users = await ModelRHubClientProxy.GetInstance().GetUsers(); var userModels = from user in users select new UserModel(user.UserName, user.Image); UserModels = new ObservableCollection <UserModel>(userModels); }
private async Task LoadSceneObjectsAsync() { var sceneObjects = await ModelRHubClientProxy.GetInstance().GetSceneObjects(ViewModelLocator.Logon.SelectedScene.Id); foreach (var objectInfoModel in sceneObjects.AsParallel()) { OnSceneObjectCreated(objectInfoModel); } }
private static async Task ProcessScriptResult(SceneModel sceneModel, ScriptState <object> state) { foreach (var variable in state.Variables) { if (variable.Value is SceneObjectModel) { var model = variable.Value as SceneObjectModel; sceneModel.SceneObjectModels.Add(model); sceneModel.SelectedObject = model; await ModelRHubClientProxy.GetInstance().CreateSceneObject(model); } } }
private void OnApplicationExit(object sender, ExitEventArgs e) { // [RS] Finally logoff and dispose the proxy, if it has not been done yet. var proxy = ModelRHubClientProxy.GetInstance(string.Empty, false); if (proxy != null) { proxy.Logoff(); proxy.Dispose(); proxy = null; } }