mirror of
https://mirror.ghproxy.com/https://github.com/dexyfex/CodeWalker
synced 2024-11-22 06:52:55 +08:00
Added GTA V folder check to main entry point in Program.cs, improved folder selection dialog
- Added bool app setting for remember GTA folder (vs. prompt every start) - Added checkbox to folder selection dialog for remember GTA folder - Changed folder selection dialog to fixed dialog window border - Set default Enter/Esc buttons on folder selection dialog
This commit is contained in:
parent
9f91e34b5a
commit
d7938dd1d8
@ -193,6 +193,9 @@
|
|||||||
<setting name="MouseInvert" serializeAs="String">
|
<setting name="MouseInvert" serializeAs="String">
|
||||||
<value>False</value>
|
<value>False</value>
|
||||||
</setting>
|
</setting>
|
||||||
|
<setting name="RememberGTAFolder" serializeAs="String">
|
||||||
|
<value>True</value>
|
||||||
|
</setting>
|
||||||
</CodeWalker.Properties.Settings>
|
</CodeWalker.Properties.Settings>
|
||||||
</userSettings>
|
</userSettings>
|
||||||
</configuration>
|
</configuration>
|
@ -59,7 +59,9 @@ namespace CodeWalker
|
|||||||
|
|
||||||
InitFileTypes();
|
InitFileTypes();
|
||||||
|
|
||||||
/*if (!EnsureGTAFolder())*/
|
// This is probably not necessary now that the GTA folder is checked
|
||||||
|
// in the Program.cs when the game is initiated, but we will leave it
|
||||||
|
// here for now to make sure
|
||||||
if(!GTAFolder.UpdateGTAFolder(true))
|
if(!GTAFolder.UpdateGTAFolder(true))
|
||||||
{
|
{
|
||||||
Close();
|
Close();
|
||||||
|
@ -14,6 +14,12 @@ namespace CodeWalker
|
|||||||
[STAThread]
|
[STAThread]
|
||||||
static void Main(string[] args)
|
static void Main(string[] args)
|
||||||
{
|
{
|
||||||
|
// Always check the GTA folder first thing
|
||||||
|
if(!GTAFolder.UpdateGTAFolder(Properties.Settings.Default.RememberGTAFolder))
|
||||||
|
{
|
||||||
|
MessageBox.Show("Could not load CodeWalker because no GTA 5 folder was selected. CodeWalker will now exit.", "GTA 5 Folder Not Found", MessageBoxButtons.OK, MessageBoxIcon.Stop);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
bool menumode = false;
|
bool menumode = false;
|
||||||
bool explorermode = false;
|
bool explorermode = false;
|
||||||
|
14
Properties/Settings.Designer.cs
generated
14
Properties/Settings.Designer.cs
generated
@ -12,7 +12,7 @@ namespace CodeWalker.Properties {
|
|||||||
|
|
||||||
|
|
||||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.1.0.0")]
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.3.0.0")]
|
||||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||||
|
|
||||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||||
@ -698,5 +698,17 @@ namespace CodeWalker.Properties {
|
|||||||
this["MouseInvert"] = value;
|
this["MouseInvert"] = value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Configuration.DefaultSettingValueAttribute("True")]
|
||||||
|
public bool RememberGTAFolder {
|
||||||
|
get {
|
||||||
|
return ((bool)(this["RememberGTAFolder"]));
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
this["RememberGTAFolder"] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -183,5 +183,8 @@
|
|||||||
<Setting Name="MouseInvert" Type="System.Boolean" Scope="User">
|
<Setting Name="MouseInvert" Type="System.Boolean" Scope="User">
|
||||||
<Value Profile="(Default)">False</Value>
|
<Value Profile="(Default)">False</Value>
|
||||||
</Setting>
|
</Setting>
|
||||||
|
<Setting Name="RememberGTAFolder" Type="System.Boolean" Scope="User">
|
||||||
|
<Value Profile="(Default)">True</Value>
|
||||||
|
</Setting>
|
||||||
</Settings>
|
</Settings>
|
||||||
</SettingsFile>
|
</SettingsFile>
|
19
SelectFolderForm.Designer.cs
generated
19
SelectFolderForm.Designer.cs
generated
@ -35,6 +35,7 @@
|
|||||||
this.FolderTextBox = new System.Windows.Forms.TextBox();
|
this.FolderTextBox = new System.Windows.Forms.TextBox();
|
||||||
this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
|
this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
|
||||||
this.CancelButt = new System.Windows.Forms.Button();
|
this.CancelButt = new System.Windows.Forms.Button();
|
||||||
|
this.RememberFolderCheckbox = new System.Windows.Forms.CheckBox();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
//
|
//
|
||||||
// OkButton
|
// OkButton
|
||||||
@ -81,6 +82,7 @@
|
|||||||
// CancelButt
|
// CancelButt
|
||||||
//
|
//
|
||||||
this.CancelButt.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
this.CancelButt.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.CancelButt.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||||
this.CancelButt.Location = new System.Drawing.Point(238, 78);
|
this.CancelButt.Location = new System.Drawing.Point(238, 78);
|
||||||
this.CancelButt.Name = "CancelButt";
|
this.CancelButt.Name = "CancelButt";
|
||||||
this.CancelButt.Size = new System.Drawing.Size(75, 23);
|
this.CancelButt.Size = new System.Drawing.Size(75, 23);
|
||||||
@ -89,17 +91,33 @@
|
|||||||
this.CancelButt.UseVisualStyleBackColor = true;
|
this.CancelButt.UseVisualStyleBackColor = true;
|
||||||
this.CancelButt.Click += new System.EventHandler(this.CancelButton_Click);
|
this.CancelButt.Click += new System.EventHandler(this.CancelButton_Click);
|
||||||
//
|
//
|
||||||
|
// RememberFolderCheckbox
|
||||||
|
//
|
||||||
|
this.RememberFolderCheckbox.AutoSize = true;
|
||||||
|
this.RememberFolderCheckbox.Location = new System.Drawing.Point(12, 82);
|
||||||
|
this.RememberFolderCheckbox.Name = "RememberFolderCheckbox";
|
||||||
|
this.RememberFolderCheckbox.Size = new System.Drawing.Size(134, 17);
|
||||||
|
this.RememberFolderCheckbox.TabIndex = 66;
|
||||||
|
this.RememberFolderCheckbox.Text = "Remember GTA Folder";
|
||||||
|
this.RememberFolderCheckbox.UseVisualStyleBackColor = true;
|
||||||
|
this.RememberFolderCheckbox.CheckedChanged += new System.EventHandler(this.RememberFolderCheckbox_CheckedChanged);
|
||||||
|
//
|
||||||
// SelectFolderForm
|
// SelectFolderForm
|
||||||
//
|
//
|
||||||
|
this.AcceptButton = this.OkButton;
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.CancelButton = this.CancelButt;
|
||||||
this.ClientSize = new System.Drawing.Size(406, 113);
|
this.ClientSize = new System.Drawing.Size(406, 113);
|
||||||
|
this.Controls.Add(this.RememberFolderCheckbox);
|
||||||
this.Controls.Add(this.CancelButt);
|
this.Controls.Add(this.CancelButt);
|
||||||
this.Controls.Add(this.OkButton);
|
this.Controls.Add(this.OkButton);
|
||||||
this.Controls.Add(this.label1);
|
this.Controls.Add(this.label1);
|
||||||
this.Controls.Add(this.FolderBrowseButton);
|
this.Controls.Add(this.FolderBrowseButton);
|
||||||
this.Controls.Add(this.FolderTextBox);
|
this.Controls.Add(this.FolderTextBox);
|
||||||
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
|
this.MaximizeBox = false;
|
||||||
this.MinimumSize = new System.Drawing.Size(422, 152);
|
this.MinimumSize = new System.Drawing.Size(422, 152);
|
||||||
this.Name = "SelectFolderForm";
|
this.Name = "SelectFolderForm";
|
||||||
this.Text = "Select GTAV folder - CodeWalker by dexyfex";
|
this.Text = "Select GTAV folder - CodeWalker by dexyfex";
|
||||||
@ -117,5 +135,6 @@
|
|||||||
private System.Windows.Forms.TextBox FolderTextBox;
|
private System.Windows.Forms.TextBox FolderTextBox;
|
||||||
private System.Windows.Forms.FolderBrowserDialog FolderBrowserDialog;
|
private System.Windows.Forms.FolderBrowserDialog FolderBrowserDialog;
|
||||||
private System.Windows.Forms.Button CancelButt;
|
private System.Windows.Forms.Button CancelButt;
|
||||||
|
private System.Windows.Forms.CheckBox RememberFolderCheckbox;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -26,6 +26,7 @@ namespace CodeWalker
|
|||||||
private void SelectFolderForm_Load(object sender, EventArgs e)
|
private void SelectFolderForm_Load(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
FolderTextBox.Text = Settings.Default.GTAFolder;
|
FolderTextBox.Text = Settings.Default.GTAFolder;
|
||||||
|
RememberFolderCheckbox.Checked = Settings.Default.RememberGTAFolder;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void FolderBrowseButton_Click(object sender, EventArgs e)
|
private void FolderBrowseButton_Click(object sender, EventArgs e)
|
||||||
@ -63,5 +64,10 @@ namespace CodeWalker
|
|||||||
Result = DialogResult.OK;
|
Result = DialogResult.OK;
|
||||||
Close();
|
Close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void RememberFolderCheckbox_CheckedChanged(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Settings.Default.RememberGTAFolder = RememberFolderCheckbox.Checked;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -65,7 +65,7 @@ namespace CodeWalker
|
|||||||
return true;
|
return true;
|
||||||
} else
|
} else
|
||||||
{
|
{
|
||||||
var tryAgain = MessageBox.Show($"Folder \"{folder}\" is not a valid GTA folder:\n{failReason}\n\nDo you want to try choosing a different folder?", "Unable to set GTA Folder", MessageBoxButtons.RetryCancel, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
|
var tryAgain = MessageBox.Show($"Folder \"{folder}\" is not a valid GTA folder:\n\n{failReason}\n\nDo you want to try choosing a different folder?", "Unable to set GTA Folder", MessageBoxButtons.RetryCancel, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
|
||||||
if(tryAgain == DialogResult.Retry)
|
if(tryAgain == DialogResult.Retry)
|
||||||
{
|
{
|
||||||
return UpdateGTAFolder(false);
|
return UpdateGTAFolder(false);
|
||||||
|
31
WorldForm.cs
31
WorldForm.cs
@ -226,38 +226,11 @@ namespace CodeWalker
|
|||||||
|
|
||||||
MouseWheel += WorldForm_MouseWheel;
|
MouseWheel += WorldForm_MouseWheel;
|
||||||
|
|
||||||
string fldr = Settings.Default.GTAFolder;
|
if (!GTAFolder.UpdateGTAFolder(true))
|
||||||
if (string.IsNullOrEmpty(fldr) || !Directory.Exists(fldr))
|
|
||||||
{
|
{
|
||||||
SelectFolderForm f = new SelectFolderForm();
|
|
||||||
f.ShowDialog();
|
|
||||||
if (f.Result == DialogResult.OK)
|
|
||||||
{
|
|
||||||
fldr = f.SelectedFolder;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
//MessageBox.Show("No GTAV folder was chosen. CodeWalker will now exit.");
|
|
||||||
Close();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!Directory.Exists(fldr))
|
|
||||||
{
|
|
||||||
MessageBox.Show("The specified folder does not exist:\n" + fldr);
|
|
||||||
Close();
|
Close();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!File.Exists(fldr + "\\gta5.exe"))
|
|
||||||
{
|
|
||||||
MessageBox.Show("GTA5.exe not found in folder:\n" + fldr);
|
|
||||||
Close();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
Settings.Default.GTAFolder = fldr; //seems ok, save it for later
|
|
||||||
|
|
||||||
|
|
||||||
Widget.Position = new Vector3(1.0f, 10.0f, 100.0f);
|
Widget.Position = new Vector3(1.0f, 10.0f, 100.0f);
|
||||||
Widget.Rotation = Quaternion.Identity;
|
Widget.Rotation = Quaternion.Identity;
|
||||||
@ -3889,7 +3862,7 @@ namespace CodeWalker
|
|||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
GTA5Keys.LoadFromPath(Settings.Default.GTAFolder); //now loads from magic
|
GTA5Keys.LoadFromPath(GTAFolder.CurrentGTAFolder); //now loads from magic
|
||||||
}
|
}
|
||||||
catch
|
catch
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user