Ejemplo n.º 1
0
 private byte[] UnconvertData(BARViewModel.FileViewModel file, byte[] tmpdata)
 {
     return file.Owner.UnConvertData(file, tmpdata);
 }
Ejemplo n.º 2
0
 private string AskForPathForItems(BARViewModel.NamedItem[] item, bool doConversion)
 {
     if (item.Length == 0) return null;
     if (item.Length > 1 || item[0] is BARViewModel.FolderViewModel) {
         var folderBrowser = new Forms.FolderBrowserDialog();
         if (folderBrowser.ShowDialog() != Forms.DialogResult.OK) return null;
         return folderBrowser.SelectedPath + Path.DirectorySeparatorChar;
     } else if (item[0] is BARViewModel.FileViewModel) {
         var file = item[0] as BARViewModel.FileViewModel;
         string[] exts = new[] { file.Extension };
         if (doConversion) exts = BARViewModel.GetConversionExtensions(file);
         string prefferedOutName = Path.GetFileNameWithoutExtension(file.Name) + exts[0];
         var folderBrowser = new Forms.SaveFileDialog() {
             FileName = prefferedOutName,
             DefaultExt = exts[0],
             Filter = BARViewModel.CreateFilter(exts),
         };
         if (folderBrowser.ShowDialog() != Forms.DialogResult.OK) return null;
         return folderBrowser.FileName;
     }
     return null;
 }
Ejemplo n.º 3
0
 private string EnsureFilename(string path, BARViewModel.FileViewModel file, string newExt)
 {
     var lastC = path.LastOrDefault();
     if (lastC == Path.DirectorySeparatorChar || lastC == Path.AltDirectorySeparatorChar) {
         if (newExt == null) {
             path += file.Name;
         } else {
             path += Path.GetFileNameWithoutExtension(file.Name) + newExt;
         }
     }
     return path;
 }
Ejemplo n.º 4
0
 private string SaveItem(BARViewModel.FileViewModel file, string path)
 {
     path = EnsureFilename(path, file, null);
     return file.Owner.SaveFileTo(file, path);
 }
Ejemplo n.º 5
0
 private string ConvertItem(BARViewModel.FileViewModel file, string path)
 {
     var conversions = BARViewModel.GetConversionExtensions(file);
     if (conversions == null) return null;
     path = EnsureFilename(path, file, conversions[0]);
     return file.Owner.ConvertFileTo(file, path);
 }
Ejemplo n.º 6
0
 private void DoAction(Func<BARViewModel.FileViewModel, string, string> with, BARViewModel.NamedItem[] items, string path)
 {
     for (int i = 0; i < items.Length; ++i) {
         var item = items[i];
         if (item is BARViewModel.FolderViewModel) {
             var folder = item as BARViewModel.FolderViewModel;
             if (path != null) folder.Owner.ProcessFolderTo(with, folder, path);
         } else if (item is BARViewModel.FileViewModel) {
             var file = item as BARViewModel.FileViewModel;
             if (path != null) with(file, path);
         }
     }
 }
Ejemplo n.º 7
0
 public NamedItem(BARViewModel owner)
 {
     Owner = owner;
 }
Ejemplo n.º 8
0
 private string AttemptConvertOrSave(BARViewModel.FileViewModel file, out bool wasConverted)
 {
     wasConverted = true;
     string tmpFile = ConvertItem(file, Path.GetTempPath());
     if (tmpFile == null) {
         tmpFile = SaveItem(file, Path.GetTempPath());
         wasConverted = false;
     }
     return tmpFile;
 }
Ejemplo n.º 9
0
 public FolderViewModel(string name, BARViewModel owner)
     : base(owner)
 {
     Name = name;
     Folders = new ObservableCollection<FolderViewModel>();
     Files = new ObservableCollection<FileViewModel>();
 }
Ejemplo n.º 10
0
 public FileViewModel(BARFile.Entry entry, BARViewModel owner)
     : base(owner)
 {
     Entry = entry;
     Name = Path.GetFileName(Entry.Name);
 }
Ejemplo n.º 11
0
 public NamedItem(BARViewModel owner)
 {
     Owner = owner;
 }
Ejemplo n.º 12
0
 public FolderViewModel(string name, BARViewModel owner) : base(owner)
 {
     Name    = name;
     Folders = new ObservableCollection <FolderViewModel>();
     Files   = new ObservableCollection <FileViewModel>();
 }
Ejemplo n.º 13
0
 public FileViewModel(BARFile.Entry entry, BARViewModel owner) : base(owner)
 {
     Entry = entry;
     Name  = Path.GetFileName(Entry.Name);
 }