private void OpenDirectoryProperties(DirectoryViewModel directory, FileExplorerViewModel context)
 {
     context.Window.Show <PropertiesViewModel>(null, window =>
     {
         window.Title = Tx.T("FileExplorer:Properties.Title", "name", directory.Name);
     }, viewModel => viewModel.Initialize(directory), out _);
 }
 private void ExecuteFile(FileViewModel file, FileExplorerViewModel context)
 {
     context.Window.ShowDialog <ExecuteFileViewModel>(window => {
         window.Title        = Tx.T("FileExplorer:Execute");
         window.TitleBarIcon = _icons.StartupProject;
     }, viewModel => viewModel.Initialize(file, context.RestClient), out var _);
 }
        private void DownloadFile(FileViewModel file, FileExplorerViewModel context)
        {
            var sfd = new SaveFileDialog();

            var ext = Path.GetExtension(file.Name);

            sfd.Filter = ext != null
                ? $"{Tx.T("FileExplorer:OriginalFileExtension")}|*{ext}|{Tx.T("FileExplorer:AllFilesFilter")}"
                : Tx.T("FileExplorer:AllFilesFilter");
            sfd.OverwritePrompt = true;

            var downloadsDirectory = Path.Combine(Directory.GetCurrentDirectory(), "downloads");

            Directory.CreateDirectory(downloadsDirectory);
            sfd.CustomPlaces.Add(new FileDialogCustomPlace(downloadsDirectory));
            sfd.InitialDirectory = downloadsDirectory;
            sfd.FileName         = file.Name;

            if (context.Window.ShowDialog(sfd) != true)
            {
                return;
            }

            context.FileTransferManagerViewModel.ExecuteTransfer(new FileTransferViewModel(file, sfd.FileName));
        }
        /// <summary>
        /// Save application settings when the application is being closed down
        /// </summary>
        public void SaveConfigOnAppClosed()
        {
            try
            {
                this.mAppCore.CreateAppDataFolder();

                // Save current explorer settings and user profile data
                // Query for an explorer tool window and return it
                // Query for an explorer tool window and return it
                var explorerTW = this.GetToolWindowVM <IExplorer>();

                if (explorerTW != null)
                {
                    FileExplorerViewModel.SaveSettings(this.mSettingsManager, explorerTW);
                }

                // Save program options only if there are un-saved changes that need persistence
                // This can be caused when WPF theme was changed or something else
                // but should normally not occur as often as saving session data
                if (this.mSettingsManager.SettingData.IsDirty == true)
                {
                    this.mSettingsManager.SaveOptions(this.mAppCore.DirFileAppSettingsData, this.mSettingsManager.SettingData);
                }

                // Convert viewmodel data into model for persistance layer...
                var mruVM = ServiceLocator.Current.GetInstance <IMRUListViewModel>();
                MRUEntrySerializer.ConvertToModel(mruVM, this.mSettingsManager.SessionData.MruList);

                this.mSettingsManager.SaveSessionData(this.mAppCore.DirFileAppSessionData, this.mSettingsManager.SessionData);
            }
            catch (Exception exp)
            {
                _MsgBox.Show(exp, "Unhandled Exception", MsgBoxButtons.OK, MsgBoxImage.Error);
            }
        }
 public override void Execute(object parameter)
 {
     if ((parameter as SelectionChangedEventArgs).AddedItems.Count != 0)
     {
         FileExplorerViewModel fileExplorer = (parameter as SelectionChangedEventArgs).AddedItems[0] as FileExplorerViewModel;
         Locator.FileExplorerVM.CurrentStorageVM = fileExplorer;
         Task.Run(() => Locator.FileExplorerVM.CurrentStorageVM.GetFiles());
     }
 }
Beispiel #6
0
        private async Task InitializeSDCard()
        {
            var devices = KnownFolders.RemovableDevices;
            var cards   = await devices.GetFoldersAsync();

            if (cards.Any())
            {
                var external = new FileExplorerViewModel(cards[0]);
                await App.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => StorageVMs.Add(external));
            }
        }
 private void CreateDirectory(FileExplorerViewModel context)
 {
     if (context.Window.ShowDialog <InputTextViewModel>(Tx.T("FileExplorer:CreateNewFolder"), vm => {
         vm.Initialize(Tx.T("FileExplorer:NewFolder"), Tx.T("FileExplorer:FolderName"),
                       Tx.T("Create"));
         vm.Predicate = s => context.FileSystem.IsValidFilename(s);
     }, out var viewModel) == true)
     {
         context.FileSystem.CreateDirectory(Path.Combine(context.CurrentPath, viewModel.Text))
         .DisplayOnStatusBarCatchErrors(context.StatusBar, Tx.T("FileExplorer:CreateNewFolder")).Forget();
     }
 }
 public FileExplorerPage(RootPage root)
 {
     try
     {
         InitializeComponent();
         this._model      = new FileExplorerViewModel();
         this._model.Root = root;
     }
     catch (Exception exception)
     {
         throw new NotImplementedException(exception.Message);
     }
 }
        private async void OpenFileProperties(FileViewModel file, FileExplorerViewModel context)
        {
            var properties = await FileSystemResource.GetFileProperties(file.Source.Path, context.RestClient)
                             .DisplayOnStatusBarCatchErrors(context.StatusBar, Tx.T("FileExplorer:StatusBar.LoadProperties"));

            if (!properties.Failed)
            {
                context.Window.Show <PropertiesViewModel>(null, window =>
                {
                    window.Title       = Tx.T("FileExplorer:Properties.Title", "name", file.Name);
                    window.TaskBarIcon = file.Icon;
                }, viewModel => viewModel.Initialize(file, properties.Result, context.RestClient), out var _);
            }
        }
Beispiel #10
0
        private async void InitializeDLNA()
        {
            try
            {
                var dlnaFolders = await KnownFolders.MediaServerDevices.GetFoldersAsync();

                foreach (var dlnaFolder in dlnaFolders)
                {
                    var folder = new FileExplorerViewModel(dlnaFolder);
                    await App.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => StorageVMs.Add(folder));
                }
            }
            catch
            {
                LogHelper.Log("Failed to Get MediaServerDevices");
            }
        }
Beispiel #11
0
 private async void DeviceRemoved(object sender, string id)
 {
     await DispatchHelper.InvokeAsync(() =>
     {
         FileExplorerViewModel removedViewModel = StorageVMs.FirstOrDefault(vm => vm.Id == id);
         if (removedViewModel != null)
         {
             if (CurrentStorageVM == removedViewModel)
             {
                 CurrentStorageVM.StorageItems.Clear();
                 CurrentStorageVM = null;
             }
             StorageVMs.Remove(removedViewModel);
             GC.Collect();
         }
     });
 }
Beispiel #12
0
 private async Task AddFolder(string newId)
 {
     await DispatchHelper.InvokeAsync(() =>
     {
         try
         {
             if (StorageVMs.All(vm => vm.Id != newId))
             {
                 var external = new FileExplorerViewModel(StorageDevice.FromId(newId), newId);
                 StorageVMs.Add(external);
             }
             if (StorageVMs.Any())
             {
                 CurrentStorageVM = StorageVMs[0];
             }
         }
         catch { }
     });
 }
Beispiel #13
0
        public VLCExplorerViewModel()
        {
            var musicLibrary = new FileExplorerViewModel(KnownFolders.MusicLibrary);

            StorageVMs.Add(musicLibrary);
            var videoLibrary = new FileExplorerViewModel(KnownFolders.VideosLibrary);

            StorageVMs.Add(videoLibrary);
            CurrentStorageVM = StorageVMs[0];
            Task.Run(() => CurrentStorageVM?.GetFiles());
#if WINDOWS_APP
            Task.Run(() => InitializeDLNA());
            _deviceService = App.Container.Resolve <ExternalDeviceService>();
            _deviceService.ExternalDeviceAdded   += DeviceAdded;
            _deviceService.ExternalDeviceRemoved += DeviceRemoved;
#else
            Task.Run(() => InitializeSDCard());
#endif
        }
Beispiel #14
0
        private void RegisterFileExplorerViewModel()
        {
            var FileExplorer = new FileExplorerViewModel(this.mSettingsManager, this.mFileOpenService);

            ExplorerSettingsModel settings = null;

            settings = this.mSettingsManager.SettingData.ExplorerSettings;

            if (settings == null)
            {
                settings = new ExplorerSettingsModel();
            }

            settings.UserProfile = this.mSettingsManager.SessionData.LastActiveExplorer;

            // (re-)configure previous explorer settings and (re-)activate current location
            FileExplorer.Settings.ConfigureExplorerSettings(settings);

            this.mToolRegistry.RegisterTool(FileExplorer);
        }
        //private void DownloadFile(FileExplorerViewModel obj)
        //{
        //    throw new System.NotImplementedException();
        //}

        private void UploadFile(FileExplorerViewModel context)
        {
            var ofd = new VistaOpenFileDialog
            {
                Title           = Tx.T("FileExplorer:SelectFilesToUpload"),
                Filter          = Tx.T("FileExplorer:AllFilesFilter"),
                CheckFileExists = true,
                CheckPathExists = true,
                Multiselect     = true
            };

            if (context.Window.ShowDialog(ofd) == true)
            {
                foreach (var fileInfo in ofd.FileNames.Select(x => new FileInfo(x)))
                {
                    context.FileTransferManagerViewModel.ExecuteTransfer(
                        new FileTransferViewModel(fileInfo, context.CurrentPath));
                }
            }
        }
        public static void DownloadEntries(IEnumerable <EntryViewModel> entries, FileExplorerViewModel context)
        {
            var fbd = new VistaFolderBrowserDialog();

            var downloadsDirectory = Path.Combine(Directory.GetCurrentDirectory(), "downloads");

            Directory.CreateDirectory(downloadsDirectory);

            fbd.SelectedPath = downloadsDirectory;

            if (context.Window.ShowDialog(fbd) != true)
            {
                return;
            }

            foreach (var entryViewModel in entries)
            {
                context.FileTransferManagerViewModel.ExecuteTransfer(new FileTransferViewModel(entryViewModel,
                                                                                               Path.Combine(fbd.SelectedPath, entryViewModel.Label)));
            }
        }
Beispiel #17
0
        private void RegisterFileExplorerViewModel(ISettingsManager programSettings,
                                                   IToolWindowRegistry toolRegistry
                                                   , IFileOpenService fileOpenService)
        {
            var FileExplorer = new FileExplorerViewModel(programSettings, fileOpenService);

            ExplorerSettingsModel settings = null;

            settings = programSettings.SettingData.ExplorerSettings;

            if (settings == null)
            {
                settings = new ExplorerSettingsModel();
            }

            settings.SetUserProfile(programSettings.SessionData.LastActiveExplorer);

            // (re-)configure previous explorer settings and (re-)activate current location
            FileExplorer.ConfigureExplorerSettings(settings);

            toolRegistry.RegisterTool(FileExplorer);
        }
 public static void CopyPath(EntryViewModel viewModel, FileExplorerViewModel context)
 {
     Clipboard.SetText(viewModel.Source.Path);
 }
Beispiel #19
0
 public FileBrowseLink(string path, FileExplorerViewModel fileExplorer)
 {
     _path         = path;
     _fileExplorer = fileExplorer;
 }
Beispiel #20
0
 public ControlViewModel()
 {
     _tempToolTip = "Tooltip Here";
     _tempHeight = 0;
     _tempWidth = 0;
     _tempCursor = "Arrow";
     _tempAngle = 0;
     _tempVisivility = "Visible";
     _tempOpacity = 255;
     _tempBoderOpacity = 0;
     _tempFontSize = 11;
     _containTooltip = "선택된 애니메이션이 없습니다.";
     _rotX = 0;
     _rotY = 0;
     _rotZ = 0;
     _distance = 50;
     _speed = 1.5;
     current_S = "HTML";
     cureent_Js = "JavaScript";
     FileTreeVM = new FileExplorerViewModel(this);
     SrcCodeVM = new SrcCodeViewModel(this);   
 }
 public FileExplorerView()
 {
     InitializeComponent();
     fileExplorerViewModel = new FileExplorerViewModel();
     sentracDataAccess     = new SentracDataAccess();
 }
 public FileExplorerView()
 {
     InitializeComponent();
     ViewModel   = new FileExplorerViewModel();
     DataContext = ViewModel;
 }
 private static void RefreshDirectory(FileExplorerViewModel context) => context.EntriesViewModel.RefreshCommand.Execute();
 public FolderManagerWindow(Window owner = null)
     : base(owner)
 {
     InitializeComponent();
     ViewModel = new FileExplorerViewModel();
 }
 public static void DeleteEntries(IEnumerable <EntryViewModel> entries, FileExplorerViewModel context)
 {
     context.EntriesViewModel.RemoveEntries(entries).Forget();
 }
 public static void CopyPathOnRemoteComputer(EntryViewModel viewModel, FileExplorerViewModel context)
 {
     FileExplorerResource.CopyPathToClipboard(viewModel.Source.Path, context.RestClient)
     .DisplayOnStatusBarCatchErrors(context.StatusBar, Tx.T("FileExplorer:CopyPathOnRemoteComputer"),
                                    StatusBarAnimation.Save, true).Forget();
 }
Beispiel #27
0
 public StockWatchView(FileExplorerViewModel vm)
 {
     InitializeComponent();
     this.DataContext = vm;
 }
 public static void CopyName(EntryViewModel viewModel, FileExplorerViewModel context)
 {
     Clipboard.SetText(viewModel.Name);
 }
 public static void Rename(EntryViewModel viewModel, FileExplorerViewModel context)
 {
     context.EntriesViewModel.EnterNameEditingCommand.Execute(viewModel);
 }
 public static void CopyParentFolderPath(EntryViewModel viewModel, FileExplorerViewModel context)
 {
     Clipboard.SetText(context.CurrentPath);
 }
Beispiel #31
0
 public FileExplorerWindow(PaceServer server, ClientInfo client)
 {
     InitializeComponent();
     DataContext = new FileExplorerViewModel(server, client);
 }