object UnwrapInputVariableFromViewModel() { if (_inputVariable == null) { return(null); } AssemblyViewModel assemblyVM = _inputVariable as AssemblyViewModel; if (assemblyVM != null) { return(assemblyVM.GetAssemblyInternal()); } TypeViewModel typeVM = _inputVariable as TypeViewModel; if (typeVM != null) { return(typeVM.GetTypeInternal()); } ObjectViewModel objectVM = _inputVariable as ObjectViewModel; if (objectVM != null) { return(objectVM.GetInstanceInternal()); } Debug.Fail("Unexpected input variable type: " + _inputVariable.GetType()); return(null); }
public async Task <string> UpdateObjectAsync([FromBody] ObjectViewModel request, int objectId) { //HttpRequest res = null; var response = new ListModelResponse <ObjectViewModel>(); var projectsDataModel = false; try { projectsDataModel = await _objectRepository.UpdateObject(request.ToEntity(), objectId); if (projectsDataModel) { // response.Message = String.Format("Record Updated Successfully"); response.Message = Messages.SuccessMsg; } else { // response.Message = String.Format("Record Updation failed"); response.Message = Messages.FailMsg; } } catch (Exception ex) { response.DidError = true; response.ErrorMessage = ex.Message; } return(response.Message); }
public ActionResult Index() { //Verifico los Permisos if (!PermissionViewModel.TienePermisoAcesso(WindowHelper.GetWindowId(ModuleDescription, WindowDescription))) { return(View("~/Views/Shared/AccessDenied.cshtml")); } ViewBag.AltaModificacion = PermissionViewModel.TienePermisoAlta(WindowHelper.GetWindowId(ModuleDescription, WindowDescription)); ViewBag.Baja = PermissionViewModel.TienePermisoBaja(WindowHelper.GetWindowId(ModuleDescription, WindowDescription)); List <ObjectViewModel> objectView = new List <ObjectViewModel>(); var names = typeof(TransportReportViewModel).GetProperties() .Where(x => x.PropertyType.Name == "String") .Select(property => property.Name) .ToArray(); foreach (var item in names) { ObjectViewModel ob = new ObjectViewModel { Code = "@Model." + item, Name = item }; objectView.Add(ob); } ViewBag.listaAtributos = objectView.OrderBy(x => x.Code).ToList(); return(View(db.NotificationTags.ToList())); }
public async Task <ActionResult> NewTemplateObject(string tabId, int parentId) { var obj = _objectService.NewObjectProperties(parentId, false); var model = ObjectViewModel.Create(obj, tabId, parentId, _objectService); return(await JsonHtml("Properties", model)); }
public async Task BuildAsync_WhenCalled_ReturnsInitializedObjectViewModel() { string identifier = Guid.NewGuid().ToString("D"); DateTime createdTime = DateTime.Now.AddDays(_random.Next(1, 365) * -1).AddMinutes(_random.Next(-120, 120)); string displayNamePrefixed = Guid.NewGuid().ToString("D"); string publicDescriptionAsText = _random.Next(1, 100) > 50 ? Guid.NewGuid().ToString() : null; long subscribers = _random.Next(2500, 5000); Uri url = _random.Next(1, 100) > 50 ? new Uri($"http://locahost/{Guid.NewGuid().ToString("D")}") : null; Uri bannerImageUrl = _random.Next(1, 100) > 50 ? new Uri($"http://locahost/{Guid.NewGuid().ToString("D")}.png") : null; Uri headerImageUrl = _random.Next(1, 100) > 50 ? new Uri($"http://locahost/{Guid.NewGuid().ToString("D")}.png") : null; IRedditSubreddit redditSubreddit = CreateRedditSubreddit(identifier, createdTime, displayNamePrefixed, publicDescriptionAsText, subscribers, url, bannerImageUrl, headerImageUrl); IViewModelBuilder <ObjectViewModel <IRedditSubreddit>, IRedditSubreddit> sut = CreateSut(); ObjectViewModel <IRedditSubreddit> result = await sut.BuildAsync(redditSubreddit); Assert.IsNotNull(result); Assert.IsNotNull(result.ObjectIdentifier); Assert.AreEqual(identifier, result.ObjectIdentifier); Assert.IsNotNull(result.Object); Assert.AreEqual(redditSubreddit, result.Object); Assert.AreEqual(createdTime, result.Timestamp); Assert.IsNotNull(result.Html); Assert.AreEqual(GetExpectedHtml(displayNamePrefixed, publicDescriptionAsText, subscribers, url, bannerImageUrl ?? headerImageUrl), result.Html); }
protected override async Task <IViewModel> WrappModelIntoVM(IWBPosInput model) { return(await Task.Factory.StartNew(() => { if (ObjectViewModel != null) { var disposable = ObjectViewModel as IDisposable; if (disposable != null) { disposable.Dispose(); } ObjectViewModel = null; } ObjectViewModel = (IObjectViewModel <IWBPosInput>)IoC.Instance.Resolve(typeof(IWBPosInputViewModel)); ObjectViewModel.SetSource(model); var md = (IWBPosInputViewModel)ObjectViewModel; md.MandantId = MandantId; md.CanUseBatch = !string.IsNullOrEmpty(BatchcodeWorkflowCode); md.CanChangeOvxSkuHanler = CanChangeOvxSkuCommand; md.OnChangeOvxSkuHanler = OnChangeOvxSkuCommand; return ObjectViewModel; })); }
public async Task BuildAsync_WhenCalled_ReturnsInitializedDashboardViewModel() { List <INews> newsCollection = CreateNewsCollection(_random.Next(50, 75)).ToList(); List <ISystemError> systemErrorCollection = CreateSystemErrorCollection(_random.Next(10, 15)).ToList(); IDashboardSettings dashboardSettings = CreateDashboardSettings(); IRedditAuthenticatedUser redditAuthenticatedUser = CreateRedditAuthenticatedUser(); List <IRedditSubreddit> redditSubredditCollection = CreateRedditSubredditCollection(_random.Next(10, 25)).ToList(); List <IRedditLink> redditLinkCollection = CreateRedditLinkCollection(_random.Next(50, 75)).ToList(); IDashboard dashboard = CreateDashboard(newsCollection: newsCollection, systemErrorCollection: systemErrorCollection, dashboardSettings: dashboardSettings, redditAuthenticatedUser: redditAuthenticatedUser, redditSubredditCollection: redditSubredditCollection, redditLinkCollection: redditLinkCollection); DashboardSettingsViewModel dashboardSettingsViewModel = CreateDashboardSettingsViewModel(); ObjectViewModel <IRedditAuthenticatedUser> objectViewModelForRedditAuthenticatedUser = CreateObjectViewModel <IRedditAuthenticatedUser>(redditAuthenticatedUser, DateTime.Now.AddDays(_random.Next(1, 365) * -1).AddMinutes(_random.Next(-120, 120))); IViewModelBuilder <DashboardViewModel, IDashboard> sut = CreateSut(dashboardSettingsViewModel: dashboardSettingsViewModel, objectViewModelForRedditAuthenticatedUser: objectViewModelForRedditAuthenticatedUser); DashboardViewModel result = await sut.BuildAsync(dashboard); Assert.IsNotNull(result); Assert.IsNotNull(result.Informations); Assert.AreEqual(newsCollection.Count + redditLinkCollection.Count, result.Informations.Count()); Assert.IsNotNull(result.LatestInformationsWithImage); Assert.AreEqual(Math.Min(result.Informations.Count(information => string.IsNullOrWhiteSpace(information.ImageUrl) == false), 7), result.LatestInformationsWithImage.Count()); Assert.IsNotNull(result.SystemErrors); Assert.AreEqual(systemErrorCollection.Count, result.SystemErrors.Count()); Assert.IsNotNull(result.Settings); Assert.AreEqual(dashboardSettingsViewModel, result.Settings); Assert.IsNotNull(result.RedditAuthenticatedUser); Assert.AreEqual(objectViewModelForRedditAuthenticatedUser, result.RedditAuthenticatedUser); Assert.IsNotNull(result.RedditSubreddits); Assert.AreEqual(redditSubredditCollection.Count, result.RedditSubreddits.Count()); }
private byte[] BuildDashboardViewModelAsByteArray() { InformationViewModel informationViewModel = new InformationViewModel { InformationIdentifier = Guid.NewGuid().ToString("D"), Timestamp = DateTime.Now, Header = Guid.NewGuid().ToString("D"), Summary = Guid.NewGuid().ToString("D"), Details = Guid.NewGuid().ToString("D"), ImageUrl = Guid.NewGuid().ToString("D"), Provider = Guid.NewGuid().ToString("D"), Author = Guid.NewGuid().ToString("D"), ExternalUrl = Guid.NewGuid().ToString("D") }; ImageViewModel <InformationViewModel> imageViewModel = new ImageViewModel <InformationViewModel>(informationViewModel, Convert.FromBase64String("R0lGODlhDgAOAKIAAAAAAP///wAAgP//AP8AAMDAwICAgP///yH5BAEAAAcALAAAAAAOAA4AAAM+aLq8YCPIOGV5YdV5IRFgCAbdFlFDNygkWRQGiXHZkj5rXKDWHBUu2A3C2jFkMRolMDyReMiXdCoFWK/YbAIAOw==")); SystemErrorViewModel systemErrorViewModel = new SystemErrorViewModel { SystemErrorIdentifier = Guid.NewGuid().ToString("D"), Timestamp = DateTime.Now, Message = Guid.NewGuid().ToString("D"), Details = Guid.NewGuid().ToString("D"), }; ObjectViewModel <IRedditAuthenticatedUser> redditAuthenticatedUserObjectViewModel = new ObjectViewModel <IRedditAuthenticatedUser> { ObjectIdentifier = Guid.NewGuid().ToString("D"), Object = new RedditAuthenticatedUser(), Timestamp = DateTime.Now, Html = Guid.NewGuid().ToString("D") }; ObjectViewModel <IRedditSubreddit> redditSubredditObjectViewModel = new ObjectViewModel <IRedditSubreddit> { ObjectIdentifier = Guid.NewGuid().ToString("D"), Object = new RedditSubreddit(), Timestamp = DateTime.Now, Html = Guid.NewGuid().ToString("D") }; DashboardViewModel dashboardViewModel = new DashboardViewModel { Informations = new List <InformationViewModel> { informationViewModel }, LatestInformationsWithImage = new List <ImageViewModel <InformationViewModel> > { imageViewModel }, SystemErrors = new List <SystemErrorViewModel> { systemErrorViewModel }, Settings = BuildDashboardSettingsViewModel(), RedditAuthenticatedUser = redditAuthenticatedUserObjectViewModel, RedditSubreddits = new List <ObjectViewModel <IRedditSubreddit> > { redditSubredditObjectViewModel } }; return(new Web.Helpers.ContentHelper(_dataProtectionProviderMock.Object, _httpContextAccessorMock.Object, _urlHelperMock.Object).ToByteArray(dashboardViewModel)); }
public ActionResult NewPageObject(string tabId, int parentId) { var obj = _objectService.NewObjectProperties(parentId, true); var model = ObjectViewModel.Create(obj, tabId, parentId, _objectService); return(JsonHtml("Properties", model)); }
public async Task <string> CreateObjectAsync([FromBody] ObjectViewModel request) { // HttpRequest res = null; var response = new ListModelResponse <ObjectViewModel>(); var objectsDataModel = 0; try { objectsDataModel = await _objectRepository.CreateObject(request.ToEntity()); if (objectsDataModel > 0) { response.Message = Messages.SuccessMsg; } //response.Message = String.Format("Created Project Successfully"); else { // response.Message = String.Format("Create Project failed"); response.Message = Messages.FailMsg; } } catch (Exception ex) { response.DidError = true; response.ErrorMessage = ex.Message; } return(response.Message); }
public async Task <ActionResult> Object(string img) { img = string.IsNullOrWhiteSpace(img) ? "/images/Object/1.jpg" : img; var subscriptionKey = ConfigurationManager.AppSettings["VisionApiKey"]; string imageUrl = $"{_baseUrl}{img}"; // Using the SDK var client = new VisionServiceClient(subscriptionKey); AnalysisResult result = await client.AnalyzeImageAsync(imageUrl, new [] { VisualFeature.Description, VisualFeature.Categories }); // Using the WebApi var queryString = HttpUtility.ParseQueryString(string.Empty); queryString["visualFeatures"] = "Categories,Tags,Description,Faces,ImageType,Color,Adult "; queryString["details"] = "Celebrities"; queryString["language"] = "en"; var url = "https://westus.api.cognitive.microsoft.com/vision/v1.0/analyze?" + queryString; var requestService = new CognitiveServicesRequest(); var response = await requestService.MakeRequest(url, subscriptionKey, requestService.CreateImageRequestObject(imageUrl)); var viewModel = new ObjectViewModel { ImageUrl = imageUrl, JsonResponse = response, SDKResult = result }; return(View(viewModel)); }
public static ObjectViewModel GetObjectVM() { if (objectVM == null) { objectVM = new ObjectViewModel(); } return(objectVM); }
public void ObjectFilter(object sender, FilterEventArgs e) { ObjectViewModel ovm = ObjectViewModelLocator.GetObjectVM(); ObjectModel om = ovm.SelectedItem; if (e.Item != null && om != null) { e.Accepted = (e.Item as ObjectAssociationModel).Object_ID == ObjectViewModelLocator.GetObjectVM().SelectedItem.ID; } }
public ActionResult TemplateObjectProperties(string tabId, int parentId, int id, string successfulActionCode) { var obj = _objectService.ReadObjectProperties(id); ViewData[SpecialKeys.IsEntityReadOnly] = obj.LockedByAnyoneElse; var model = ObjectViewModel.Create(obj, tabId, parentId, _objectService); model.SuccesfulActionCode = successfulActionCode; return(JsonHtml("Properties", model)); }
protected virtual async Task <IViewModel> WrappModelIntoVM(TModel model) { return(await Task.Factory.StartNew(() => { if (ObjectViewModel == null) { throw new DeveloperException("IObjectViewModel is not set"); } ObjectViewModel.SetSource(model); return ObjectViewModel; })); }
private void AcceptFindItem(ObjectViewModel item) { SharpTreeNode parent = item.Parent; while (parent != null) { parent.IsExpanded = true; parent = parent.Parent; } treeView.SelectedItem = item; treeView.FocusNode(item); TaskHelper.Background(() => treeView.ScrollIntoView(item)); }
private bool CanLoadChildrenForSearch(ObjectViewModel item) { if (item == null || //level > 40 || item.IsDefinitionForReference || item.IsHigherElementLevel || item.IsMethod || item.TheObject is Exception || item.TheObject is Mono.Cecil.Cil.Instruction) { return(false); } return(true); }
ObjectViewModel(object obj, PropertyInfo info, ObjectViewModel parent) { _object = obj; _info = info; if (_object != null) { _type = obj.GetType(); if (!IsPrintableType(_type)) { // load the _children object with an empty collection to allow the + expander to be shown _children = new ReadOnlyCollection <ObjectViewModel>(new ObjectViewModel[] { new ObjectViewModel(null) }); } } _parent = parent; }
public async Task BuildAsync_WhenCalledWithRedditAuthenticatedUserWithoutUnreadMail_ReturnsInitializedObjectViewModelWithCorrectHtml() { string userName = Guid.NewGuid().ToString("D"); int commentKarma = GetKarmaValue(); int linkKarma = GetKarmaValue(); const bool hasUnreadMail = false; IRedditAuthenticatedUser redditAuthenticatedUser = CreateRedditAuthenticatedUser(userName: userName, commentKarma: commentKarma, linkKarma: linkKarma, hasUnreadMail: hasUnreadMail); IViewModelBuilder <ObjectViewModel <IRedditAuthenticatedUser>, IRedditAuthenticatedUser> sut = CreateSut(); ObjectViewModel <IRedditAuthenticatedUser> result = await sut.BuildAsync(redditAuthenticatedUser); Assert.IsNotNull(result); Assert.IsNotNull(result.Html); Assert.AreEqual(GetExpectedHtml(userName, commentKarma, linkKarma, hasUnreadMail), result.Html); }
public ActionResult NewPageObject(string tabId, int parentId, FormCollection collection) { var obj = _objectService.NewObjectPropertiesForUpdate(parentId, true); var model = ObjectViewModel.Create(obj, tabId, parentId, _objectService); TryUpdateModel(model); model.Validate(ModelState); if (ModelState.IsValid) { model.Data = _objectService.SaveObjectProperties(model.Data, model.ActiveStatusTypeIds, HttpContext.IsXmlDbUpdateReplayAction()); PersistResultId(model.Data.Id); PersistDefaultFormatId(model.Data.DefaultFormatId); return(Redirect("PageObjectProperties", new { tabId, parentId, id = model.Data.Id, successfulActionCode = ActionCode.SavePageObject })); } return(JsonHtml("Properties", model)); }
public async Task <ActionResult> NewTemplateObject(string tabId, int parentId, IFormCollection collection) { var obj = _objectService.NewObjectPropertiesForUpdate(parentId, false); var model = ObjectViewModel.Create(obj, tabId, parentId, _objectService); await TryUpdateModelAsync(model); if (ModelState.IsValid) { model.Data = _objectService.SaveObjectProperties(model.Data, model.ActiveStatusTypeIds, HttpContext.IsXmlDbUpdateReplayAction()); PersistResultId(model.Data.Id); PersistDefaultFormatId(model.Data.DefaultFormatId); return(Redirect("TemplateObjectProperties", new { tabId, parentId, id = model.Data.Id, successfulActionCode = ActionCode.SaveTemplateObject })); } return(await JsonHtml("Properties", model)); }
private void UpdateIfcClassesTree() { IfcClassesTree.Items.Clear(); var allClasses = new ObjectViewModel() { Header = "All classes", IsChecked = true }; var types = Doc.GetExpressTypes(); foreach (var tp in types) { allClasses.AddChild(new ObjectViewModel() { Header = tp.Type.FullName, Tag = tp, IsChecked = true }); } IfcClassesTree.Items.Add(allClasses); }
private static IEnumerable <Concept> SelectedConcepts(ObjectViewModel item) { if (item.IsChecked.HasValue && item.IsChecked.Value == false) { yield break; } var v = item.Tag as Concept; if (v != null) { yield return(v); } foreach (var childItem in item.Children.SelectMany(SelectedConcepts)) { yield return(childItem); } }
private static IEnumerable <ExpressType> SelectedIfcClasses(ObjectViewModel item) { if (item.IsChecked.HasValue && item.IsChecked.Value == false) { yield break; } var v = item.Tag as ExpressType; if (v != null) { yield return(v); } foreach (var childItem in item.Children.SelectMany(SelectedIfcClasses)) { yield return(childItem); } }
public async Task BuildAsync_WhenCalled_AssertToCookieWasCalledOnCookieHelperWithDashboardViewModel() { List <INews> newsCollection = CreateNewsCollection(_random.Next(50, 75)).ToList(); List <ISystemError> systemErrorCollection = CreateSystemErrorCollection(_random.Next(10, 15)).ToList(); IDashboardSettings dashboardSettings = CreateDashboardSettings(); IRedditAuthenticatedUser redditAuthenticatedUser = CreateRedditAuthenticatedUser(); List <IRedditSubreddit> redditSubredditCollection = CreateRedditSubredditCollection(_random.Next(10, 25)).ToList(); List <IRedditLink> redditLinkCollection = CreateRedditLinkCollection(_random.Next(50, 75)).ToList(); IDashboard dashboard = CreateDashboard(newsCollection: newsCollection, systemErrorCollection: systemErrorCollection, dashboardSettings: dashboardSettings, redditAuthenticatedUser: redditAuthenticatedUser, redditSubredditCollection: redditSubredditCollection, redditLinkCollection: redditLinkCollection); DashboardSettingsViewModel dashboardSettingsViewModel = CreateDashboardSettingsViewModel(); ObjectViewModel <IRedditAuthenticatedUser> objectViewModelForRedditAuthenticatedUser = CreateObjectViewModel <IRedditAuthenticatedUser>(redditAuthenticatedUser, DateTime.Now.AddDays(_random.Next(1, 365) * -1).AddMinutes(_random.Next(-120, 120))); IViewModelBuilder <DashboardViewModel, IDashboard> sut = CreateSut(dashboardSettingsViewModel: dashboardSettingsViewModel, objectViewModelForRedditAuthenticatedUser: objectViewModelForRedditAuthenticatedUser); DashboardViewModel result = await sut.BuildAsync(dashboard); _cookieHelperMock.Verify(m => m.ToCookie(It.Is <DashboardViewModel>(value => value == result)), Times.Once); }
public async Task BuildAsync_WhenCalledWhereRedditSubredditDoesNotHaveBannerImageUrlNorHeaderImageUrl_ReturnsInitializedObjectViewModelWithCorrectHtml() { string displayNamePrefixed = Guid.NewGuid().ToString("D"); string publicDescriptionAsText = _random.Next(1, 100) > 50 ? Guid.NewGuid().ToString() : null; long subscribers = _random.Next(2500, 5000); Uri url = _random.Next(1, 100) > 50 ? new Uri($"http://locahost/{Guid.NewGuid().ToString("D")}") : null; const Uri bannerImageUrl = null; const Uri headerImageUrl = null; IRedditSubreddit redditSubreddit = CreateRedditSubreddit(displayNamePrefixed: displayNamePrefixed, publicDescriptionAsText: publicDescriptionAsText, subscribers: subscribers, url: url, bannerImageUrl: bannerImageUrl, headerImageUrl: headerImageUrl); IViewModelBuilder <ObjectViewModel <IRedditSubreddit>, IRedditSubreddit> sut = CreateSut(); ObjectViewModel <IRedditSubreddit> result = await sut.BuildAsync(redditSubreddit); Assert.IsNotNull(result); Assert.IsNotNull(result.Html); Assert.AreEqual(GetExpectedHtml(displayNamePrefixed, publicDescriptionAsText, subscribers, url, null), result.Html); }
private void UpdateErTree() { ErTree.Items.Clear(); if (Doc == null) { return; } foreach (var view in Doc.Mvd.Views) { var v = new ObjectViewModel { Header = view.name, Tag = new ExchangeRequirementViewExpander(view), IsChecked = true }; ErTree.Items.Add(v); } }
public ActionResult TemplateObjectProperties(string tabId, int parentId, int id, FormCollection collection) { var obj = _objectService.ReadObjectPropertiesForUpdate(id); var model = ObjectViewModel.Create(obj, tabId, parentId, _objectService); TryUpdateModel(model); model.Validate(ModelState); if (ModelState.IsValid) { model.Data.DefaultValues = model.Data.UseDefaultValues ? JsonConvert.DeserializeObject <List <DefaultValue> >(model.AggregationListItemsDataDefaultValues) : Enumerable.Empty <DefaultValue>(); model.Data = _objectService.UpdateObjectProperties(model.Data, model.ActiveStatusTypeIds); return(Redirect("TemplateObjectProperties", new { tabId, parentId, id = model.Data.Id, successfulActionCode = ActionCode.UpdateTemplateObject })); } return(JsonHtml("Properties", model)); }
public async Task BuildAsync_WhenCalled_ReturnsInitializedObjectViewModel() { string identifier = Guid.NewGuid().ToString("D"); DateTime createdTime = DateTime.Now.AddDays(_random.Next(1, 365) * -1).AddMinutes(_random.Next(-120, 120)); string userName = Guid.NewGuid().ToString("D"); int commentKarma = GetKarmaValue(); int linkKarma = GetKarmaValue(); bool hasUnreadMail = _random.Next(1, 100) > 50; IRedditAuthenticatedUser redditAuthenticatedUser = CreateRedditAuthenticatedUser(identifier, createdTime, userName, commentKarma, linkKarma, hasUnreadMail); IViewModelBuilder <ObjectViewModel <IRedditAuthenticatedUser>, IRedditAuthenticatedUser> sut = CreateSut(); ObjectViewModel <IRedditAuthenticatedUser> result = await sut.BuildAsync(redditAuthenticatedUser); Assert.IsNotNull(result); Assert.IsNotNull(result.ObjectIdentifier); Assert.AreEqual(identifier, result.ObjectIdentifier); Assert.IsNotNull(result.Object); Assert.AreEqual(redditAuthenticatedUser, result.Object); Assert.AreEqual(createdTime, result.Timestamp); Assert.IsNotNull(result.Html); Assert.AreEqual(GetExpectedHtml(userName, commentKarma, linkKarma, hasUnreadMail), result.Html); }
void BuildTree() { RootObjects = new ObservableCollection<ObjectViewModel>(); AllObjects = new List<ObjectViewModel>(); var gkViewModel = new ObjectViewModel(JournalSubsystemType.GK); gkViewModel.IsExpanded = true; RootObjects.Add(gkViewModel); var gkDevicesViewModel = new ObjectViewModel(JournalObjectType.GKDevice); AddChild(gkViewModel, gkDevicesViewModel); foreach (var childDevice in GKManager.DeviceConfiguration.RootDevice.Children) { AddGKDeviceInternal(childDevice, gkDevicesViewModel); } var gkZonesViewModel = new ObjectViewModel(JournalObjectType.GKZone); AddChild(gkViewModel, gkZonesViewModel); foreach (var zone in GKManager.Zones) { var objectViewModel = new ObjectViewModel(zone); AddChild(gkZonesViewModel, objectViewModel); } var gkDirectionsViewModel = new ObjectViewModel(JournalObjectType.GKDirection); AddChild(gkViewModel, gkDirectionsViewModel); foreach (var direction in GKManager.Directions) { var objectViewModel = new ObjectViewModel(direction); AddChild(gkDirectionsViewModel, objectViewModel); } var gkMPTsViewModel = new ObjectViewModel(JournalObjectType.GKMPT); AddChild(gkViewModel, gkMPTsViewModel); foreach (var mpt in GKManager.MPTs) { var objectViewModel = new ObjectViewModel(mpt); AddChild(gkMPTsViewModel, objectViewModel); } var gkPumpStationsViewModel = new ObjectViewModel(JournalObjectType.GKPumpStation); AddChild(gkViewModel, gkPumpStationsViewModel); foreach (var pumpStation in GKManager.PumpStations) { var objectViewModel = new ObjectViewModel(pumpStation); AddChild(gkPumpStationsViewModel, objectViewModel); } var gkDelaysViewModel = new ObjectViewModel(JournalObjectType.GKDelay); AddChild(gkViewModel, gkDelaysViewModel); foreach (var delay in GKManager.Delays) { var objectViewModel = new ObjectViewModel(delay); AddChild(gkDelaysViewModel, objectViewModel); } var gkGuardZonesViewModel = new ObjectViewModel(JournalObjectType.GKGuardZone); AddChild(gkViewModel, gkGuardZonesViewModel); foreach (var guardZone in GKManager.GuardZones) { var objectViewModel = new ObjectViewModel(guardZone); AddChild(gkGuardZonesViewModel, objectViewModel); } var gkDoorsViewModel = new ObjectViewModel(JournalObjectType.GKDoor); AddChild(gkViewModel, gkDoorsViewModel); foreach (var door in GKManager.Doors) { var doorViewModel = new ObjectViewModel(door); AddChild(gkDoorsViewModel, doorViewModel); } var gkSKDZonesViewModel = new ObjectViewModel(JournalObjectType.GKSKDZone); AddChild(gkViewModel, gkSKDZonesViewModel); foreach (var skdZone in GKManager.SKDZones) { var filterObjectViewModel = new ObjectViewModel(skdZone); AddChild(gkSKDZonesViewModel, filterObjectViewModel); } var videoViewModel = new ObjectViewModel(JournalSubsystemType.Video); videoViewModel.IsExpanded = true; RootObjects.Add(videoViewModel); var videoDevicesViewModel = new ObjectViewModel(JournalObjectType.Camera); AddChild(videoViewModel, videoDevicesViewModel); foreach (var camera in ClientManager.SystemConfiguration.Cameras) { var objectViewModel = new ObjectViewModel(camera); AddChild(videoDevicesViewModel, objectViewModel); } }
void AddChild(ObjectViewModel parentDeviceViewModel, ObjectViewModel childDeviceViewModel) { parentDeviceViewModel.AddChild(childDeviceViewModel); AllObjects.Add(childDeviceViewModel); }
public ObjectPage() { InitializeComponent(); NavigationPage.SetHasNavigationBar(this, false); BindingContext = new ObjectViewModel(); }
ObjectViewModel AddGKDeviceInternal(GKDevice device, ObjectViewModel parentDeviceViewModel) { var deviceViewModel = new ObjectViewModel(device); if (parentDeviceViewModel != null) AddChild(parentDeviceViewModel, deviceViewModel); foreach (var childDevice in device.Children) { AddGKDeviceInternal(childDevice, deviceViewModel); } return deviceViewModel; }