コード例 #1
0
 public TagPanelViewModel(ILibraryExplorerViewModel commonVM)
 {
     SelectedTags = new ObservableCollection <Tag>();
     SelectedTags.CollectionChanged += OnSelectedTagsChanged;
     CommonViewModel = commonVM;
     CommonViewModel.PropertyChanged += OnCurrentlyOpenedElementChanged;
 }
コード例 #2
0
        public override IEnumerable <BasicMenuItem> GetContextMenuItems(ILibraryExplorerViewModel libraryExplorerViewModel, IAdviseGroupHelper adviseGroupHelper)
        {
            if (IsDeleted)
            {
                yield break;
            }

            yield return(new ExpandableMenuItem
            {
                Header = "Set Advise Group",
                IconKind = PackIconKind.FolderStar,
                Items = GetAdviseGroupMenuItems(new FolderAdviseGroupHolder(Folder), libraryExplorerViewModel, adviseGroupHelper),
            });

            yield return(new CommandMenuItem(() => libraryExplorerViewModel.RenameFolder(Folder), keepTargetAlive: true)
            {
                Header = "Rename Folder",
                IconKind = PackIconKind.Pencil,
            });

            yield return(new CommandMenuItem(() => libraryExplorerViewModel.DeleteFolder(Folder, CancellationToken.None))
            {
                Header = "Delete Folder",
                IconKind = PackIconKind.DeleteForever,
            });
        }
コード例 #3
0
        public LibraryExplorerToolboxViewModel(ILibraryExplorerViewModel commonVM, ICommandFactory commandFactory, IClipboardService clipboard)
        {
            RemoveCommand  = commandFactory.GetRemoveCommand(this);
            RenameCommand  = commandFactory.GetRenameCommand(this);
            RefreshCommand = commandFactory.GetRefreshCommand(this);

            Clipboard       = clipboard;
            CommonViewModel = commonVM;
        }
コード例 #4
0
 public DialogViewModelFactory(ILibraryExplorerViewModel commonVM, IConnectedServicesInfoProviderService connectedServices,
                               IImageProviderService imageProviderService, ICommandFactory commandFactory, IRepository <Library> libraryRepository)
 {
     CommonViewModel      = commonVM;
     ConnectedServices    = connectedServices;
     ImageProviderService = imageProviderService;
     CommandFactory       = commandFactory;
     LibraryRepository    = libraryRepository;
 }
コード例 #5
0
 public LibraryViewViewModel(ILibraryExplorerViewModel commonVM)
 {
     CommonViewModel = commonVM;
 }
コード例 #6
0
        protected static IReadOnlyCollection <BasicMenuItem> GetAdviseGroupMenuItems(BasicAdviseGroupHolder adviseGroupHolder, ILibraryExplorerViewModel libraryExplorerViewModel, IAdviseGroupHelper adviseGroupHelper)
        {
            var menuItems = new List <BasicMenuItem>
            {
                new CommandMenuItem(() => libraryExplorerViewModel.CreateAdviseGroup(adviseGroupHolder, CancellationToken.None))
                {
                    Header   = "New Advise Group ...",
                    IconKind = PackIconKind.FolderPlus,
                },
            };

            var currentAdviseGroup = adviseGroupHolder.CurrentAdviseGroup;

            if (currentAdviseGroup != null)
            {
                var reverseFavoriteMenuItem = new CommandMenuItem(() => adviseGroupHelper.ReverseFavoriteStatus(currentAdviseGroup, CancellationToken.None))
                {
                    Header   = $"{(currentAdviseGroup.IsFavorite ? "Unmark" : "Mark")} '{currentAdviseGroup.Name}' as favorite",
                    IconKind = currentAdviseGroup.IsFavorite ? PackIconKind.HeartBroken : PackIconKind.Heart,
                };

                menuItems.Add(reverseFavoriteMenuItem);
            }

            var adviseGroups = adviseGroupHelper.AdviseGroups;

            if (adviseGroups.Any())
            {
                menuItems.Add(new SeparatorMenuItem());

                menuItems.AddRange(adviseGroups.Select(x => CreateSetAdviseGroupMenuItem(adviseGroupHolder, adviseGroupHelper, x)));
            }

            return(menuItems);
        }
コード例 #7
0
 public abstract IEnumerable <BasicMenuItem> GetContextMenuItems(ILibraryExplorerViewModel libraryExplorerViewModel, IAdviseGroupHelper adviseGroupHelper);
コード例 #8
0
 public LibraryExplorerViewModelFactory(ILibraryExplorerViewModel commonVM, IRepository <Library> libraryRepository, ICommandFactory commandFactory)
 {
     CommonViewModel   = commonVM;
     LibraryRepository = libraryRepository;
     CommandFactory    = commandFactory;
 }
コード例 #9
0
 public override IEnumerable <BasicMenuItem> GetContextMenuItems(ILibraryExplorerViewModel libraryExplorerViewModel, IAdviseGroupHelper adviseGroupHelper)
 {
     return(Enumerable.Empty <BasicMenuItem>());
 }
コード例 #10
0
 public static IReadOnlyCollection <BasicMenuItem> InvokeGetAdviseGroupMenuItems(
     BasicAdviseGroupHolder adviseGroupHolder, ILibraryExplorerViewModel libraryExplorerViewModel, IAdviseGroupHelper adviseGroupHelper)
 {
     return(GetAdviseGroupMenuItems(adviseGroupHolder, libraryExplorerViewModel, adviseGroupHelper));
 }