Example #1
0
        private void listView_AfterLabelEdit(object sender, LabelEditEventArgs e)
        {
            MFSFile file = (MFSFile)listView.Items[e.Item].Tag;

            if (e.Label != null)
            {
                string _ext = Path.GetExtension(e.Label);
                if (_ext.StartsWith("."))
                {
                    _ext = _ext.Substring(1);
                }

                if (file.Ext != _ext)
                {
                    if (MessageBox.Show("Are you sure to change the extension of the file? It may not work as intended.", "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
                    {
                        return;
                    }
                }

                file.Ext  = _ext;
                file.Name = Path.GetFileNameWithoutExtension(e.Label);
            }
            UpdateTreeView(current_dir);
        }
Example #2
0
        public static bool SaveFile(MFSFile file, string filepath)
        {
            if (disk == null || disk.Format == MFS.DiskFormat.Invalid)
            {
                return(false);
            }

            byte[]     filedata = MFSRAMUtil.ReadFile(disk, file);
            FileStream fileout  = new FileStream(filepath, FileMode.Create);

            fileout.Write(filedata, 0, filedata.Length);
            fileout.Close();

            return(true);
        }
Example #3
0
 private void extractToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (listView.SelectedItems.Count > 1)
     {
         //More than one file
         FolderSelectDialog fsd = new FolderSelectDialog();
         fsd.Title = "Export Files...";
         if (fsd.ShowDialog())
         {
             List <MFSFile> files = new List <MFSFile>();
             foreach (ListViewItem item in listView.SelectedItems)
             {
                 files.Add((MFSFile)item.Tag);
             }
             if (Program.SaveFiles(files.ToArray(), fsd.FileName))
             {
                 MessageBox.Show("Files are extracted successfully.", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
     }
     else if (listView.SelectedItems.Count == 1)
     {
         //Only one file
         MFSFile        file = (MFSFile)listView.SelectedItems[0].Tag;
         SaveFileDialog sfd  = new SaveFileDialog();
         sfd.Title    = "Export File...";
         sfd.FileName = file.Name + (file.Ext != "" ? "." + file.Ext : "");
         if (sfd.ShowDialog() == DialogResult.OK)
         {
             if (Program.SaveFile(file, sfd.FileName))
             {
                 MessageBox.Show("File is extracted successfully.", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
     }
 }
Example #4
0
 public static byte[] LoadFileData(MFSFile file)
 {
     return(MFSRAMUtil.ReadFile(disk, file));
 }