Exemplo n.º 1
0
        private void ui_listview_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (ui_listview.SelectedItem is null)
            {
                return;
            }

            BigArchiveEntry entry     = ui_listview.SelectedItem as BigArchiveEntry;
            string          extension = Path.GetExtension(entry.FullName);

            if (extension == ".tga" || extension == ".jpg" || extension == ".png" || extension == ".dds")
            {
                SetImage();
            }
            else if (extension == ".wav" || extension == ".mp3")
            {
                SetAudio();
            }
            else
            {
                SetText();
            }

            CollectionView view = (CollectionView)CollectionViewSource.GetDefaultView(ui_listview.ItemsSource);

            view.Filter = UserFilter;
        }
Exemplo n.º 2
0
        static void AddFileToArchive(BigArchive archive, string filepath, bool update = false)
        {
            BigArchiveEntry entry = null;

            if (!update)
            {
                Console.WriteLine("adding: {0}", filepath);
                entry = archive.CreateEntry(filepath);
            }
            else
            {
                try
                {
                    entry = archive.Entries.First(x => x.FullName == filepath);
                    Console.WriteLine("updating: {0}", filepath);
                }
                catch (InvalidOperationException e)
                {
                    entry = archive.CreateEntry(filepath);
                    Console.WriteLine("adding: {0}", filepath);
                }
            }

            using (var entryStream = entry.Open())
            {
                using (var fileStream = File.OpenRead(filepath))
                {
                    fileStream.CopyTo(entryStream);
                }
            }
        }
Exemplo n.º 3
0
        private void SetAudio()
        {
            ui_content.Children.Clear();
            BigArchiveEntry entry = ui_listview.SelectedItem as BigArchiveEntry;

            m_audio = new SoundPlayer(entry.Open());
            m_audio.Play();
        }
Exemplo n.º 4
0
 private FileSystemEntry CreateFileSystemEntry(BigArchiveEntry entry)
 {
     return(new FileSystemEntry(
                this,
                NormalizeFilePath(entry.FullName),
                entry.Length,
                entry.Open));
 }
Exemplo n.º 5
0
 private void ExportFile(BigArchiveEntry entry, string filePath)
 {
     using (var entryStream = entry.Open())
     {
         using (var fileStream = File.OpenWrite(filePath))
         {
             entryStream.CopyTo(fileStream);
         }
     }
 }
Exemplo n.º 6
0
        private void SetText()
        {
            ui_content.Children.Clear();
            BigArchiveEntry entry = ui_listview.SelectedItem as BigArchiveEntry;
            StreamReader    sr    = new StreamReader(entry.Open());
            ScrollViewer    sv    = new ScrollViewer();
            TextBox         tb    = new TextBox();

            tb.VerticalScrollBarVisibility = ScrollBarVisibility.Auto;
            tb.Text = sr.ReadToEnd();
            ui_content.Children.Add(tb);
        }
Exemplo n.º 7
0
        private void ExportFile(BigArchiveEntry entry, DialogResult result)
        {
            if (!result.Success)
            {
                return;
            }

            using (var entryStream = entry.Open())
            {
                using (var fileStream = File.OpenWrite(result.FileName))
                {
                    entryStream.CopyTo(fileStream);
                }
            }
        }
Exemplo n.º 8
0
        private void SetImage()
        {
            ui_content.Children.Clear();
            BigArchiveEntry entry = ui_listview.SelectedItem as BigArchiveEntry;
            Image           img   = new Image();

            try
            {
                img.Source = BitmapFrame.Create(entry.Open(),
                                                BitmapCreateOptions.None,
                                                BitmapCacheOption.OnLoad);
            }
            catch
            {
            }

            ui_content.Children.Add(img);
        }