예제 #1
0
        public override void PlaceBounty(EntryModel <FI, DI, FSI> bountyModel)
        {
            if (bountyModel != null && !bountyModel.Equals(CurrentEntryViewModel))
            {
                CurrentEntryViewModel       = Profile.ConstructEntryViewModel(bountyModel);
                SelectedNavigationViewModel =
                    NavigationItemViewModel <FI, DI, FSI> .FromModel(this,
                                                                     CurrentEntryViewModel.EmbeddedModel);

                ProcessHierarchy(SelectedNavigationViewModel);
                DirectoryChanged(this, new DirectoryChangedEventArgs <FI, DI, FSI>(bountyModel));
            }
        }
예제 #2
0
        protected async Task SaveAsync()
        {
            if (original.Equals(Model))
            {
                Log.Debug("Models are equal.");
                return;
            }

            Log.Debug("Saving model.");
            await Api.UpdateEntryAsync(Model);

            UpdateOriginal();
            StateHasChanged();
        }
예제 #3
0
        /// <summary>
        /// Change directory (implemented) or file (not implemented)
        /// </summary>
        /// <param name="newEntryModel"></param>
        protected virtual void ChangeCurrentBrowserViewModel(EntryModel <FI, DI, FSI> newEntryModel)
        {
            if (CurrentEntryViewModel == null ||
                !newEntryModel.Equals(CurrentEntryViewModel.EmbeddedModel))
            {
                _breadcrumbViewModel.IsBreadcrumbEnabled = true;

                if (newEntryModel is DirectoryModel <FI, DI, FSI> )
                {
                    DirectoryModel <FI, DI, FSI> directoryModel =
                        (DirectoryModel <FI, DI, FSI>)newEntryModel;

                    ChangeCurrentBrowserViewModel(
                        new DirectoryViewerViewModel <FI, DI, FSI>(_profile, directoryModel, _viewSize)
                    {
                        ViewMode = _viewMode, ViewSize = _viewSize
                    }
                        );
                }
                else
                {
                    FileModel <FI, DI, FSI> fileModel =
                        (FileModel <FI, DI, FSI>)newEntryModel;
                    DirectoryModel <FI, DI, FSI> parentModel =
                        _profile.ConstructDirectoryModel(fileModel.Parent);

                    //_breadcrumbViewModel.SelectedModel = fileModel;
                    //_searchViewModel.SelectedModel = parentModel;

                    ChangeCurrentBrowserViewModel(new MediaViewerViewModel <FI, DI, FSI>(_profile, fileModel));

                    //TO-DO: Lookup parentModel from navigator, use that one instead.

                    //if (newEntryModel is FileModel<FI, DI, FSI>)
                    //    CurrentBrowserViewModel =
                    //    new FileViewerViewModel<FI, DI, FSI>(_profile, fileModel);

                    //_navigationViewModel.SelectedModel = parentModel;
                    //_breadcrumbViewModel.SelectedModel = fileModel;
                    //_searchViewModel.SelectedModel = parentModel;
                }
            }
        }