public void OnSelectedPathChanged() { var dataUpdateMessage = new DataUpdateMessage("Test", DataUpdateMessage.DataPacketType.Group, SelectedPath); Messenger.Default.Send(dataUpdateMessage); Properties.Settings.Default.Zenfolio7_SelectedPath = SelectedPath; //Since this stores all preferences, it should be put into its own manager class Properties.Settings.Default.Save(); }
private void TreeviewSelectedItemChanged(object obj) { Task.Run(() => { if (obj as ZenfolioTreeViewModel == null) { //error return; } var viewModel = obj as ZenfolioTreeViewModel; var selectedGroupElement = viewModel.GroupElement; if (selectedGroupElement == null) { return; } SelectedGroupElement = selectedGroupElement; var dataUpdateMessage = new DataUpdateMessage("Test", DataUpdateMessage.DataPacketType.Group, SelectedGroupElement); Messenger.Default.Send(dataUpdateMessage); if (selectedGroupElement is Group) { //None of this really does anything Group groupElement = selectedGroupElement as Group; var groupElements = groupElement.Elements; var groups = groupElements.Where(o => o as Group != null).ToList(); var photoSets = groupElements.Where(o => o as PhotoSet != null).ToList(); } else if (selectedGroupElement is PhotoSet) { IsBusy = true; var photoSet = selectedGroupElement as PhotoSet; //Load photo set on demand if (photoSet.Photos == null || photoSet.Photos.Length == 0) { // clear dummy nodes photoSet = Database.Client.LoadPhotoSet(photoSet.Id, InformationLevel.Full, true); ((ZenfolioTreeViewModel)obj).GroupElement = photoSet; ObservableCollection <ZenfolioTreeViewModel> children = new ObservableCollection <ZenfolioTreeViewModel>(); //TODO: This code works now that Fody is all scaffolded in and PropertyChanged BS is taken care of. //It would eliminate the need for the right-side dockpanel item //Hmmm.... // add nodes for each of the loaded photos //foreach (Photo p in photoSet.Photos) //{ // children.Add(new TreeViewModel(p)); //} //((TreeViewModel)obj).Children = children; } SelectedPhotos = new ObservableCollection <Photo>(photoSet.Photos); IsBusy = false; } }); }
private void UpdateData(DataUpdateMessage obj) { if (obj.Packet.GetType() == typeof(string)) { SelectedDirectory = (string)(obj.Packet); } if (obj.Packet.GetType() == typeof(Group)) { SelectedGroupElement = (Group)(obj.Packet); } if (obj.Packet.GetType() == typeof(PhotoSet)) { SelectedGroupElement = (PhotoSet)(obj.Packet); } }