public FileListCommandManager(IFileListViewModel flvm, IWindowManager windowManager, IEventAggregator events, params IExportCommandBindings[] additionalBindingExportSource) : base(additionalBindingExportSource) { _flvm = flvm; IEntryModel _currentDirectoryModel = null; InitCommandManager(); ToolbarCommands = new ToolbarCommandsHelper(events, ParameterDicConverter, message => { _currentDirectoryModel = message.NewModel; return(new IEntryModel[] { _currentDirectoryModel }); }, message => message.SelectedModels.Count() == 0 && _currentDirectoryModel != null ? new IEntryModel[] { _currentDirectoryModel } : message.SelectedModels.ToArray()) { ExtraCommandProviders = new[] { new StaticCommandProvider(new SelectGroupCommand(flvm), new ViewModeCommand(flvm), new SeparatorCommandModel(), new CommandModel(ExplorerCommands.NewFolder) { IsVisibleOnToolbar = true, HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE188) }, new DirectoryCommandModel( new CommandModel(ExplorerCommands.NewFolder) { Header = Strings.strFolder, IsVisibleOnMenu = true }) { IsVisibleOnMenu = true, Header = Strings.strNew, IsEnabled = true }, new ToggleVisibilityCommand(flvm.Sidebar, ExplorerCommands.TogglePreviewer) ) } }; }
/// <summary> /// /// </summary> /// <param name="rootModelFunc">Root directory used when saving.</param> public GoogleExportCommandModel(Func <IEntryModel[]> rootModelFunc) { _rootModelFunc = rootModelFunc; this.HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE118); this.Header = "Export"; this.IsEnabled = false; }
//private Func<IEntryModel, string> _destPathFunc; public SzsCommandModel(IExplorerInitializer initializer) : base(ResultCommand.NoError) { _initializer = initializer; HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE188); IsHeaderVisible = true; Header = "Compress"; //Func<IEntryModel, string> destPathFunc, //_destPathFunc = destPathFunc; IsVisibleOnMenu = true; }
public DirectoryTreeCommandManager(IDirectoryTreeViewModel dlvm, IWindowManager windowManager, IEventAggregator events, params IExportCommandBindings[] additionalBindingExportSource) : base(additionalBindingExportSource) { _dlvm = dlvm; InitCommandManager(); ToolbarCommands = new ToolbarCommandsHelper(events, ParameterDicConverter, message => new[] { message.NewModel }, null) { ExtraCommandProviders = new[] { new StaticCommandProvider( new CommandModel(ApplicationCommands.New) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.Refresh) { IsVisibleOnMenu = true }, new CommandModel(ApplicationCommands.Delete) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.Rename) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.Map) { HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE17B), //Symbol = Convert.ToChar(0xE17B), IsEnabled = true, IsHeaderVisible = false, IsVisibleOnToolbar = true }, new CommandModel(ExplorerCommands.Unmap) { HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE17A), IsVisibleOnToolbar = true, IsVisibleOnMenu = true } ) } }; }
public SelectGroupCommand(IFileListViewModel flvm) : base(ApplicationCommands.SelectAll, new CommandModel(ApplicationCommands.SelectAll) { //Symbol = Convert.ToChar(0xE14E), HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE14E), IsVisibleOnMenu = true, IsVisibleOnToolbar = true }, new CommandModel(ExplorerCommands.ToggleCheckBox) { //Symbol = Convert.ToChar(0xe1ef), HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE1EF), IsVisibleOnMenu = true, IsVisibleOnToolbar = true }) { IsVisibleOnMenu = true; IsVisibleOnToolbar = true; //Symbol = Convert.ToChar(0xE10B); HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE10B); Header = Strings.txtSelection; }
public ToggleVisibilityCommand(IToggleableVisibility vm, RoutedUICommand routedCommand) : base(routedCommand) { //Symbol = Convert.ToChar(0xE239); HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE239); IsVisibleOnToolbar = true; Header = ""; IsHeaderAlignRight = true; vm.PropertyChanged += (PropertyChangedEventHandler)((o, e) => { switch (e.PropertyName) { case "IsVisible": HeaderIconExtractor = vm.IsVisible ? ResourceIconExtractor <ICommandModel> .ForSymbol(0xE23A) : ResourceIconExtractor <ICommandModel> .ForSymbol(0xE239); //Symbol = vm.IsVisible ? Convert.ToChar(0xE23a) : Convert.ToChar(0xE239); break; } }); }
public override IScriptCommand Execute(ParameterDic pm) { IWindowManager windowManager = pm.GetValue <IWindowManager>(WindowManagerKey) ?? new WindowManager(); return(UIScriptCommands.ExplorerDo(ExplorerKey, explorerModel => { #region FileList explorerModel.FileList.Commands.ToolbarCommands.ExtraCommandProviders = new[] { new StaticCommandProvider( new SeparatorCommandModel(), new SelectGroupCommand(explorerModel.FileList), new ViewModeCommand(explorerModel.FileList), new SeparatorCommandModel(), new CommandModel(ExplorerCommands.NewFolder) { IsVisibleOnToolbar = true, HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE188) //Symbol = Convert.ToChar(0xE188) }, new DirectoryCommandModel( new CommandModel(ExplorerCommands.NewFolder) { Header = Strings.strFolder, IsVisibleOnMenu = true } ) { IsVisibleOnMenu = true, Header = Strings.strNew, IsEnabled = true }, new ToggleVisibilityCommand(explorerModel.FileList.Sidebar, ExplorerCommands.TogglePreviewer) //new CommandModel(ExplorerCommands.TogglePreviewer) { IsVisibleOnMenu = false, Header = "", IsHeaderAlignRight = true, Symbol = Convert.ToChar(0xE239) } ) }; #endregion #region DirectoryTree explorerModel.DirectoryTree.Commands.ToolbarCommands.ExtraCommandProviders = new[] { new StaticCommandProvider( new DirectoryCommandModel( new CommandModel(ExplorerCommands.NewWindow) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.OpenTab) { IsVisibleOnMenu = true }) { Header = "Open", IsVisibleOnMenu = true, IsEnabled = true }, //new CommandModel(ApplicationCommands.New) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.Refresh) { IsVisibleOnMenu = true }, new CommandModel(ApplicationCommands.Delete) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.Rename) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.Map) { //Symbol = Convert.ToChar(0xE17B), HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE17B), IsEnabled = true, IsHeaderVisible = false, IsVisibleOnToolbar = true }, new CommandModel(ExplorerCommands.Unmap) { HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE17A), IsVisibleOnMenu = true, IsVisibleOnToolbar = true } ) }; #endregion } , NextCommand)); }
public static void InitializeToolbarCommands(IExplorerViewModel explorerModel, IWindowManager windowManager) { explorerModel.Sidebar.Metadata.ExtraMetadataProviders = new[] { new DummyMetadataProvider() }; explorerModel.FileList.Commands.ToolbarCommands.ExtraCommandProviders = new[] { new StaticCommandProvider( //new CommandModel(ExplorerCommands.CloseTab) { IsEnabled = true, Header="CloseTab", IsVisibleOnToolbar = true }, new FileExplorer.Models.SevenZipSharp.SzsCommandModel(explorerModel.Initializer), new SeparatorCommandModel(), new SelectGroupCommand(explorerModel.FileList), new ViewModeCommand(explorerModel.FileList), new GoogleExportCommandModel(() => explorerModel.RootModels) { IsVisibleOnMenu = true, WindowManager = windowManager }, new SeparatorCommandModel(), new CommandModel(ExplorerCommands.NewFolder) { IsVisibleOnToolbar = true, HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE188) //Symbol = Convert.ToChar(0xE188) }, new DirectoryCommandModel( new CommandModel(ExplorerCommands.NewFolder) { Header = Strings.strFolder, IsVisibleOnMenu = true }, new CommandModel(FileExplorer.Models.SevenZipSharp.SzsCommandProvider.NewZip) { Header = "Zip", IsVisibleOnMenu = true }, new CommandModel(FileExplorer.Models.SevenZipSharp.SzsCommandProvider.New7z) { Header = "7z", IsVisibleOnMenu = true } ) { IsVisibleOnMenu = true, Header = Strings.strNew, IsEnabled = true }, new ToggleVisibilityCommand(explorerModel.FileList.Sidebar, ExplorerCommands.TogglePreviewer) //new CommandModel(ExplorerCommands.TogglePreviewer) { IsVisibleOnMenu = false, Header = "", IsHeaderAlignRight = true, Symbol = Convert.ToChar(0xE239) } ) }; explorerModel.DirectoryTree.Commands.ToolbarCommands.ExtraCommandProviders = new[] { new StaticCommandProvider( new CommandModel(ExplorerCommands.NewWindow) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.OpenTab) { IsVisibleOnMenu = true }, //new CommandModel(ApplicationCommands.New) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.Refresh) { IsVisibleOnMenu = true }, new CommandModel(ApplicationCommands.Delete) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.Rename) { IsVisibleOnMenu = true }, new CommandModel(ExplorerCommands.Map) { //Symbol = Convert.ToChar(0xE17B), HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE17B), IsEnabled = true, IsHeaderVisible = false, IsVisibleOnToolbar = true }, new CommandModel(ExplorerCommands.Unmap) { HeaderIconExtractor = ResourceIconExtractor <ICommandModel> .ForSymbol(0xE17A), IsVisibleOnMenu = true, IsVisibleOnToolbar = true } ) }; }