Ejemplo n.º 1
0
        /// <summary>
        /// Default constructor
        /// </summary>
        /// <param name="fileData">The file data</param>
        /// <param name="archive">The archive the file belongs to</param>
        public ArchiveFileViewModel(IArchiveFileData fileData, ArchiveViewModel archive)
        {
            // Set properties
            FileData = fileData;
            Archive  = archive;
            FileName = FileData.FileName;

            // Create commands
            ExportCommand        = new AsyncRelayCommand(async() => await ExportFileAsync(false));
            ExportMipmapsCommand = new AsyncRelayCommand(async() => await ExportFileAsync(true));
            ImportCommand        = new AsyncRelayCommand(ImportFileAsync);
        }
        /// <summary>
        /// Creates a directory item view model with the parent and directory name
        /// </summary>
        /// <param name="parent">The parent directory</param>
        /// <param name="dirName">The directory name</param>
        /// <param name="archive">The archive the directory belongs to</param>
        protected ArchiveDirectoryViewModel(ArchiveDirectoryViewModel parent, string dirName, ArchiveViewModel archive) : base(parent, dirName)
        {
            // Set properties
            Archive = archive;

            // Create the file collection
            Files = new ObservableCollection <ArchiveFileViewModel>();

            // Create commands
            ExportCommand  = new AsyncRelayCommand(async() => await ExportAsync(false));
            ExtractCommand = new AsyncRelayCommand(async() => await ExportAsync(true));
            ImportCommand  = new AsyncRelayCommand(ImportAsync);
        }