diff options
author | Alexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com> | 2018-02-16 04:00:53 +0300 |
---|---|---|
committer | Alexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com> | 2018-02-16 04:00:53 +0300 |
commit | 8d31e86bdd82aa5f46bd24b3a6b5665e1b2796d8 (patch) | |
tree | 38910c317ae50640e0ff055c20cfc3aeea5a45a5 | |
parent | 3a26887d4a225169121de7d2ec2c17684eb983ee (diff) |
New config options, again. Also some fixes.
-rw-r--r-- | ConfigIni.cs | 5 | ||||
-rw-r--r-- | MainForm.Designer.cs | 45 | ||||
-rw-r--r-- | MainForm.cs | 27 | ||||
-rw-r--r-- | MainForm.resx | 39 | ||||
-rw-r--r-- | Properties/AssemblyInfo.cs | 4 | ||||
-rw-r--r-- | Properties/Resources.resx | 12 | ||||
-rw-r--r-- | WorkerForm.cs | 47 | ||||
-rw-r--r-- | hakchi_gui.csproj | 4 |
8 files changed, 134 insertions, 49 deletions
diff --git a/ConfigIni.cs b/ConfigIni.cs index 62f7bcbe..5b95fc8a 100644 --- a/ConfigIni.cs +++ b/ConfigIni.cs @@ -53,6 +53,7 @@ namespace com.clusterrr.hakchi_gui public static bool UsbHostFamicom = false;
public static bool UsbHostSnes = false;
public static bool UsbHostSuperFamicom = false;
+ public static bool AlwaysWriteToUSB = false;
public static bool CustomFlashed
{
@@ -600,6 +601,9 @@ namespace com.clusterrr.hakchi_gui case "usbhostsuperfamicom":
UsbHostSuperFamicom = !value.ToLower().Equals("false");
break;
+ case "alwayswritetousb":
+ AlwaysWriteToUSB = !value.ToLower().Equals("false");
+ break;
}
break;
case "presets":
@@ -658,6 +662,7 @@ namespace com.clusterrr.hakchi_gui configLines.Add(string.Format("FtpServer={0}", FtpServer));
configLines.Add(string.Format("TelnetServer={0}", TelnetServer));
configLines.Add(string.Format("RunCount={0}", RunCount));
+ configLines.Add(string.Format("AlwaysWriteToUSB={0}", AlwaysWriteToUSB));
configLines.Add("");
configLines.Add("[Presets]");
diff --git a/MainForm.Designer.cs b/MainForm.Designer.cs index c652e1ba..7401aa38 100644 --- a/MainForm.Designer.cs +++ b/MainForm.Designer.cs @@ -80,6 +80,7 @@ this.maximumGamesPerFolderToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripSeparator();
this.customToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.toolStripMenuItem13 = new System.Windows.Forms.ToolStripSeparator();
this.cloverconHackToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.resetUsingCombinationOfButtonsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.selectButtonCombinationToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -89,10 +90,11 @@ this.compressGamesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.useExtendedFontToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.epilepsyProtectionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.enableUSBHostToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripMenuItem5 = new System.Windows.Forms.ToolStripSeparator();
+ this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveSettingsToNESMiniNowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.toolStripMenuItem5 = new System.Windows.Forms.ToolStripSeparator();
+ this.alwaysWriteGamesToUSBDriveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveStateManagerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem6 = new System.Windows.Forms.ToolStripSeparator();
@@ -371,14 +373,16 @@ this.languageToolStripMenuItem,
this.consoleTypeToolStripMenuItem,
this.pagesfoldersTypeToolStripMenuItem,
+ this.toolStripMenuItem13,
this.cloverconHackToolStripMenuItem,
this.compressGamesToolStripMenuItem,
this.useExtendedFontToolStripMenuItem,
this.epilepsyProtectionToolStripMenuItem,
this.enableUSBHostToolStripMenuItem,
this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem,
+ this.saveSettingsToNESMiniNowToolStripMenuItem,
this.toolStripMenuItem5,
- this.saveSettingsToNESMiniNowToolStripMenuItem});
+ this.alwaysWriteGamesToUSBDriveToolStripMenuItem});
this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem";
resources.ApplyResources(this.settingsToolStripMenuItem, "settingsToolStripMenuItem");
//
@@ -529,6 +533,11 @@ this.customToolStripMenuItem.Tag = "99";
this.customToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
//
+ // toolStripMenuItem13
+ //
+ this.toolStripMenuItem13.Name = "toolStripMenuItem13";
+ resources.ApplyResources(this.toolStripMenuItem13, "toolStripMenuItem13");
+ //
// cloverconHackToolStripMenuItem
//
this.cloverconHackToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -601,12 +610,6 @@ resources.ApplyResources(this.epilepsyProtectionToolStripMenuItem, "epilepsyProtectionToolStripMenuItem");
this.epilepsyProtectionToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItemArmet_Click);
//
- // globalCommandLineArgumentsexpertsOnluToolStripMenuItem
- //
- this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Name = "globalCommandLineArgumentsexpertsOnluToolStripMenuItem";
- resources.ApplyResources(this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem, "globalCommandLineArgumentsexpertsOnluToolStripMenuItem");
- this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Click += new System.EventHandler(this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem_Click);
- //
// enableUSBHostToolStripMenuItem
//
this.enableUSBHostToolStripMenuItem.CheckOnClick = true;
@@ -614,10 +617,11 @@ resources.ApplyResources(this.enableUSBHostToolStripMenuItem, "enableUSBHostToolStripMenuItem");
this.enableUSBHostToolStripMenuItem.Click += new System.EventHandler(this.enableUSBHostToolStripMenuItem_Click);
//
- // toolStripMenuItem5
+ // globalCommandLineArgumentsexpertsOnluToolStripMenuItem
//
- this.toolStripMenuItem5.Name = "toolStripMenuItem5";
- resources.ApplyResources(this.toolStripMenuItem5, "toolStripMenuItem5");
+ this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Name = "globalCommandLineArgumentsexpertsOnluToolStripMenuItem";
+ resources.ApplyResources(this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem, "globalCommandLineArgumentsexpertsOnluToolStripMenuItem");
+ this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Click += new System.EventHandler(this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem_Click);
//
// saveSettingsToNESMiniNowToolStripMenuItem
//
@@ -625,6 +629,18 @@ this.saveSettingsToNESMiniNowToolStripMenuItem.Name = "saveSettingsToNESMiniNowToolStripMenuItem";
this.saveSettingsToNESMiniNowToolStripMenuItem.Click += new System.EventHandler(this.saveSettingsToNESMiniNowToolStripMenuItem_Click);
//
+ // toolStripMenuItem5
+ //
+ this.toolStripMenuItem5.Name = "toolStripMenuItem5";
+ resources.ApplyResources(this.toolStripMenuItem5, "toolStripMenuItem5");
+ //
+ // alwaysWriteGamesToUSBDriveToolStripMenuItem
+ //
+ this.alwaysWriteGamesToUSBDriveToolStripMenuItem.CheckOnClick = true;
+ this.alwaysWriteGamesToUSBDriveToolStripMenuItem.Name = "alwaysWriteGamesToUSBDriveToolStripMenuItem";
+ resources.ApplyResources(this.alwaysWriteGamesToUSBDriveToolStripMenuItem, "alwaysWriteGamesToUSBDriveToolStripMenuItem");
+ this.alwaysWriteGamesToUSBDriveToolStripMenuItem.Click += new System.EventHandler(this.alwaysWriteGamesToUSBDriveToolStripMenuItem_Click);
+ //
// toolsToolStripMenuItem
//
this.toolsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -1094,12 +1110,14 @@ this.KeyPreview = true;
this.MaximizeBox = false;
this.Name = "MainForm";
+ this.Activated += new System.EventHandler(this.MainForm_Activated);
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing);
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.MainForm_FormClosed);
this.Shown += new System.EventHandler(this.MainForm_Shown);
this.DragDrop += new System.Windows.Forms.DragEventHandler(this.dragDrop);
this.DragEnter += new System.Windows.Forms.DragEventHandler(this.dragEnter);
this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.MainForm_KeyDown);
+ this.KeyUp += new System.Windows.Forms.KeyEventHandler(this.MainForm_KeyUp);
this.menuStrip.ResumeLayout(false);
this.menuStrip.PerformLayout();
this.groupBoxOptions.ResumeLayout(false);
@@ -1111,7 +1129,6 @@ this.groupBoxDefaultGames.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
-
}
#endregion
@@ -1244,6 +1261,8 @@ private System.Windows.Forms.ToolStripMenuItem createCustomCommandToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem openSelectedGamesFolderInExplorerToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem enableUSBHostToolStripMenuItem;
+ private System.Windows.Forms.ToolStripSeparator toolStripMenuItem13;
+ private System.Windows.Forms.ToolStripMenuItem alwaysWriteGamesToUSBDriveToolStripMenuItem;
}
}
diff --git a/MainForm.cs b/MainForm.cs index 888b9304..3c72f0a3 100644 --- a/MainForm.cs +++ b/MainForm.cs @@ -173,6 +173,8 @@ namespace com.clusterrr.hakchi_gui FTPToolStripMenuItem_Click(null, null);
if (ConfigIni.TelnetServer)
Clovershell.ShellEnabled = shellToolStripMenuItem.Checked = true;
+ alwaysWriteGamesToUSBDriveToolStripMenuItem.Checked = ConfigIni.AlwaysWriteToUSB;
+ buttonStart.Text = (Control.ModifierKeys == Keys.Shift) ^ ConfigIni.AlwaysWriteToUSB ? Resources.SyncronizeUSB : Resources.Syncronize;
}
void FormInitialize()
@@ -805,7 +807,7 @@ namespace com.clusterrr.hakchi_gui private void buttonStart_Click(object sender, EventArgs e)
{
- bool exportGames = (Control.ModifierKeys == Keys.Shift);
+ bool exportGames = (Control.ModifierKeys == Keys.Shift) ^ ConfigIni.AlwaysWriteToUSB;
SaveConfig();
var stats = RecalculateSelectedGames();
@@ -1245,6 +1247,12 @@ namespace com.clusterrr.hakchi_gui ConfigIni.UsbHost = enableUSBHostToolStripMenuItem.Checked;
}
+ private void alwaysWriteGamesToUSBDriveToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ ConfigIni.AlwaysWriteToUSB = alwaysWriteGamesToUSBDriveToolStripMenuItem.Checked;
+ buttonStart.Text = (Control.ModifierKeys == Keys.Shift) ^ ConfigIni.AlwaysWriteToUSB ? Resources.SyncronizeUSB : Resources.Syncronize;
+ }
+
private void selectButtonCombinationToolStripMenuItem_Click(object sender, EventArgs e)
{
switch (ConfigIni.ConsoleType)
@@ -1585,8 +1593,8 @@ namespace com.clusterrr.hakchi_gui WorkerForm.SyncConfig(out customFirmware, out realConsoleType, true);
if (!customFirmware)
MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information);
- else // TODO: Add translation
- MessageBox.Show(string.Format("Config saved. Please note that configuration for real console ({0}) was used, not for selected console ({1}).",
+ else
+ MessageBox.Show(string.Format(Resources.ConfigSavedNote,
GetConsoleName(realConsoleType), GetConsoleName(ConfigIni.ConsoleType)),
Resources.Done, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
@@ -1893,6 +1901,8 @@ namespace com.clusterrr.hakchi_gui private void MainForm_KeyDown(object sender, KeyEventArgs e)
{
+ if (e.KeyCode == Keys.ShiftKey)
+ buttonStart.Text = !ConfigIni.AlwaysWriteToUSB ? Resources.SyncronizeUSB : Resources.Syncronize;
if (listViewGames.SelectedItems.Count != 1) return;
var selected = listViewGames.SelectedItems[0].Tag;
if ((e.KeyCode == Keys.E) && (e.Modifiers == (Keys.Alt | Keys.Control)) && (selected is SnesGame))
@@ -1902,6 +1912,17 @@ namespace com.clusterrr.hakchi_gui }
}
+ private void MainForm_KeyUp(object sender, KeyEventArgs e)
+ {
+ if (e.KeyCode == Keys.ShiftKey)
+ buttonStart.Text = ConfigIni.AlwaysWriteToUSB ? Resources.SyncronizeUSB : Resources.Syncronize;
+ }
+
+ private void MainForm_Activated(object sender, EventArgs e)
+ {
+ buttonStart.Text = (Control.ModifierKeys == Keys.Shift) ^ ConfigIni.AlwaysWriteToUSB ? Resources.SyncronizeUSB : Resources.Syncronize;
+ }
+
private void createCustomCommandToolStripMenuItem_Click(object sender, EventArgs e)
{
try
diff --git a/MainForm.resx b/MainForm.resx index 7751ace0..7bce0460 100644 --- a/MainForm.resx +++ b/MainForm.resx @@ -428,6 +428,9 @@ <data name="pagesfoldersTypeToolStripMenuItem.Text" xml:space="preserve">
<value>Pages/folders structure</value>
</data>
+ <data name="toolStripMenuItem13.Size" type="System.Drawing.Size, System.Drawing">
+ <value>324, 6</value>
+ </data>
<data name="resetUsingCombinationOfButtonsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>308, 22</value>
</data>
@@ -494,9 +497,6 @@ <data name="globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Text" xml:space="preserve">
<value>Global command-line arguments (experts only!)</value>
</data>
- <data name="toolStripMenuItem5.Size" type="System.Drawing.Size, System.Drawing">
- <value>324, 6</value>
- </data>
<data name="saveSettingsToNESMiniNowToolStripMenuItem.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt, style=Bold</value>
</data>
@@ -506,6 +506,15 @@ <data name="saveSettingsToNESMiniNowToolStripMenuItem.Text" xml:space="preserve">
<value>Save settings to NES/SNES Mini now</value>
</data>
+ <data name="toolStripMenuItem5.Size" type="System.Drawing.Size, System.Drawing">
+ <value>324, 6</value>
+ </data>
+ <data name="alwaysWriteGamesToUSBDriveToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
+ <value>327, 22</value>
+ </data>
+ <data name="alwaysWriteGamesToUSBDriveToolStripMenuItem.Text" xml:space="preserve">
+ <value>Always write games to USB drive</value>
+ </data>
<data name="settingsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>61, 20</value>
</data>
@@ -2970,6 +2979,12 @@ <data name=">>customToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
+ <data name=">>toolStripMenuItem13.Name" xml:space="preserve">
+ <value>toolStripMenuItem13</value>
+ </data>
+ <data name=">>toolStripMenuItem13.Type" xml:space="preserve">
+ <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </data>
<data name=">>cloverconHackToolStripMenuItem.Name" xml:space="preserve">
<value>cloverconHackToolStripMenuItem</value>
</data>
@@ -3024,16 +3039,22 @@ <data name=">>epilepsyProtectionToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
+ <data name=">>enableUSBHostToolStripMenuItem.Name" xml:space="preserve">
+ <value>enableUSBHostToolStripMenuItem</value>
+ </data>
+ <data name=">>enableUSBHostToolStripMenuItem.Type" xml:space="preserve">
+ <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </data>
<data name=">>globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Name" xml:space="preserve">
<value>globalCommandLineArgumentsexpertsOnluToolStripMenuItem</value>
</data>
<data name=">>globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
- <data name=">>enableUSBHostToolStripMenuItem.Name" xml:space="preserve">
- <value>enableUSBHostToolStripMenuItem</value>
+ <data name=">>saveSettingsToNESMiniNowToolStripMenuItem.Name" xml:space="preserve">
+ <value>saveSettingsToNESMiniNowToolStripMenuItem</value>
</data>
- <data name=">>enableUSBHostToolStripMenuItem.Type" xml:space="preserve">
+ <data name=">>saveSettingsToNESMiniNowToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name=">>toolStripMenuItem5.Name" xml:space="preserve">
@@ -3042,10 +3063,10 @@ <data name=">>toolStripMenuItem5.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
- <data name=">>saveSettingsToNESMiniNowToolStripMenuItem.Name" xml:space="preserve">
- <value>saveSettingsToNESMiniNowToolStripMenuItem</value>
+ <data name=">>alwaysWriteGamesToUSBDriveToolStripMenuItem.Name" xml:space="preserve">
+ <value>alwaysWriteGamesToUSBDriveToolStripMenuItem</value>
</data>
- <data name=">>saveSettingsToNESMiniNowToolStripMenuItem.Type" xml:space="preserve">
+ <data name=">>alwaysWriteGamesToUSBDriveToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name=">>toolsToolStripMenuItem.Name" xml:space="preserve">
diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs index 1b2b155a..07de4be1 100644 --- a/Properties/AssemblyInfo.cs +++ b/Properties/AssemblyInfo.cs @@ -33,6 +33,6 @@ using System.Resources; // You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("2.0.21.72")]
-[assembly: AssemblyFileVersion("2.0.21.72")]
+[assembly: AssemblyVersion("2.0.30.1")]
+[assembly: AssemblyFileVersion("2.0.30.1")]
[assembly: NeutralResourcesLanguageAttribute("en-US")]
diff --git a/Properties/Resources.resx b/Properties/Resources.resx index b08d2863..d0affad5 100644 --- a/Properties/Resources.resx +++ b/Properties/Resources.resx @@ -724,4 +724,16 @@ <data name="gitCommit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\commit.txt;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
</data>
+ <data name="ConfigSavedNote" xml:space="preserve">
+ <value>Config saved. Please note that configuration for the real console ({0}) was used, not for selected console ({1}).</value>
+ </data>
+ <data name="Syncronize" xml:space="preserve">
+ <value>Synchronize selected games with NES/SNES Mini</value>
+ </data>
+ <data name="SyncronizeUSB" xml:space="preserve">
+ <value>Synchronize selected games with USB drive</value>
+ </data>
+ <data name="WritingUSB" xml:space="preserve">
+ <value>Writing games to the USB drive...</value>
+ </data>
</root>
\ No newline at end of file diff --git a/WorkerForm.cs b/WorkerForm.cs index b10de693..815b3396 100644 --- a/WorkerForm.cs +++ b/WorkerForm.cs @@ -1,5 +1,4 @@ -using com.clusterrr.Famicom;
-using com.clusterrr.FelLib;
+using com.clusterrr.FelLib;
using com.clusterrr.hakchi_gui.Properties;
using com.clusterrr.util;
using SevenZip;
@@ -11,7 +10,6 @@ using System.Drawing.Imaging; using System.Globalization;
using System.IO;
using System.Linq;
-using System.Reflection;
using System.Text;
using System.Threading;
using System.Windows.Forms;
@@ -944,7 +942,7 @@ namespace com.clusterrr.hakchi_gui }
else // exportGames = true
{
- SetStatus("Writing games to USB drive..."); // TODO: Add translation
+ SetStatus(Resources.WritingUSB);
maxProgress = (int)(stats.TotalSize / 1024 / 1024 + 20);
SetProgress(progress, maxProgress);
Directory.CreateDirectory(exportDirectory);
@@ -955,7 +953,7 @@ namespace com.clusterrr.hakchi_gui {
if (line.EndsWith("/"))
{
- SetStatus("Writing games to USB drive... " + line.Replace("/", "\\")); // TODO: Add translation
+ SetStatus(Resources.WritingUSB + " " + line.Replace("/", "\\"));
if (!line.StartsWith("deleting"))
{
if (lastDirectory != null && !line.StartsWith(lastDirectory)) // Previous directory transfered
@@ -1470,30 +1468,39 @@ namespace com.clusterrr.hakchi_gui if (onLineOutput != null)
{
var line = new StringBuilder();
- while (!process.StandardOutput.EndOfStream)
+ while (!process.HasExited || !process.StandardOutput.EndOfStream || !process.StandardError.EndOfStream)
{
- var b = process.StandardOutput.Read();
- if (b >= 0)
+ while (!process.StandardOutput.EndOfStream)
{
- if ((char)b != '\n' && (char)b != '\r')
+ var b = process.StandardOutput.Read();
+ if (b >= 0)
{
- line.Append((char)b);
- }
- else
- {
- if (line.Length > 0)
- onLineOutput(line.ToString());
- line.Length = 0;
+ if ((char)b != '\n' && (char)b != '\r')
+ {
+ line.Append((char)b);
+ }
+ else
+ {
+ if (line.Length > 0)
+ onLineOutput(line.ToString());
+ line.Length = 0;
+ }
+ outputStr.Append((char)b);
}
- outputStr.Append((char)b);
}
+ if (!process.StandardError.EndOfStream)
+ errorStr.Append(process.StandardError.ReadToEnd());
+ Thread.Sleep(100);
}
if (line.Length > 0)
onLineOutput(line.ToString());
}
- process.WaitForExit();
- outputStr.Append(process.StandardOutput.ReadToEnd());
- errorStr.Append(process.StandardError.ReadToEnd());
+ else
+ {
+ process.WaitForExit();
+ outputStr.Append(process.StandardOutput.ReadToEnd());
+ errorStr.Append(process.StandardError.ReadToEnd());
+ }
output = Encoding.GetEncoding(866).GetBytes(outputStr.ToString());
Debug.WriteLineIf(outputStr.Length > 0 && outputStr.Length < 300, "Output:\r\n" + outputStr);
diff --git a/hakchi_gui.csproj b/hakchi_gui.csproj index 4f35cb00..e29e219a 100644 --- a/hakchi_gui.csproj +++ b/hakchi_gui.csproj @@ -31,8 +31,8 @@ <PublisherName>Alexey %27Cluster%27 Avdyukhin</PublisherName>
<CreateWebPageOnPublish>true</CreateWebPageOnPublish>
<WebPage>index.html</WebPage>
- <ApplicationRevision>72</ApplicationRevision>
- <ApplicationVersion>2.0.21.72</ApplicationVersion>
+ <ApplicationRevision>1</ApplicationRevision>
+ <ApplicationVersion>2.0.30.1</ApplicationVersion>
<UseApplicationTrust>false</UseApplicationTrust>
<CreateDesktopShortcut>true</CreateDesktopShortcut>
<PublishWizardCompleted>true</PublishWizardCompleted>
|