Compare commits
3 Commits
508d23da5f
...
950844a14b
Author | SHA1 | Date | |
---|---|---|---|
950844a14b | |||
1602937be3 | |||
76f2d45f45 |
@ -24,7 +24,7 @@ namespace GoldbergGUI.Core.Models
|
||||
set
|
||||
{
|
||||
_name = value;
|
||||
_comparableName = Regex.Replace(value, Misc.SpecialCharsRegex, "").ToLower();
|
||||
_comparableName = Regex.Replace(value, Misc.AlphaNumOnlyRegex, "").ToLower();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -177,7 +177,7 @@ namespace GoldbergGUI.Core.Services
|
||||
public SteamApp GetAppByName(string name)
|
||||
{
|
||||
_log.Info($"Trying to get app {name}");
|
||||
var comparableName = Regex.Replace(name, Misc.SpecialCharsRegex, "").ToLower();
|
||||
var comparableName = Regex.Replace(name, Misc.AlphaNumOnlyRegex, "").ToLower();
|
||||
var app = _caches[AppType.Game].Cache.FirstOrDefault(x => x.CompareName(comparableName));
|
||||
if (app != null) _log.Info($"Successfully got app {app}");
|
||||
return app;
|
||||
|
@ -1,42 +1,25 @@
|
||||
using System.Collections.ObjectModel;
|
||||
|
||||
namespace GoldbergGUI.Core.Utils
|
||||
{
|
||||
public class Misc
|
||||
public static class Misc
|
||||
{
|
||||
public const string SpecialCharsRegex = "[^0-9a-zA-Z]+";
|
||||
public const string DefaultLanguageSelection = "english";
|
||||
public static readonly ObservableCollection<string> DefaultLanguages = new ObservableCollection<string>(new[]
|
||||
{
|
||||
"arabic",
|
||||
"bulgarian",
|
||||
"schinese",
|
||||
"tchinese",
|
||||
"czech",
|
||||
"danish",
|
||||
"dutch",
|
||||
"english",
|
||||
"finnish",
|
||||
"french",
|
||||
"german",
|
||||
"greek",
|
||||
"hungarian",
|
||||
"italian",
|
||||
"japanese",
|
||||
"koreana",
|
||||
"norwegian",
|
||||
"polish",
|
||||
"portuguese",
|
||||
"brazilian",
|
||||
"romanian",
|
||||
"russian",
|
||||
"spanish",
|
||||
"latam",
|
||||
"swedish",
|
||||
"thai",
|
||||
"turkish",
|
||||
"ukrainian",
|
||||
"vietnamese"
|
||||
});
|
||||
public const string AlphaNumOnlyRegex = "[^0-9a-zA-Z]+";
|
||||
}
|
||||
|
||||
public class GlobalHelp
|
||||
{
|
||||
public static string Header =>
|
||||
"Information\n";
|
||||
|
||||
public static string TextPreLink =>
|
||||
"Usually these settings are saved under";
|
||||
|
||||
public static string Link => "%APPDATA%\\Goldberg SteamEmu Saves\\settings";
|
||||
|
||||
public static string TextPostLink =>
|
||||
", which makes these " +
|
||||
"available for every game that uses the Goldberg Emulator. However, if you want to set specific settings " +
|
||||
"for certain games (e.g. different language), you can remove the \"Global\" checkmark next to the option " +
|
||||
"and then change it. If you want to remove that setting, just empty the field while \"Global\" is " +
|
||||
"unchecked. (Not implemented yet!)";
|
||||
}
|
||||
}
|
@ -11,6 +11,7 @@ using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using GoldbergGUI.Core.Models;
|
||||
using GoldbergGUI.Core.Services;
|
||||
using GoldbergGUI.Core.Utils;
|
||||
using Microsoft.Win32;
|
||||
using MvvmCross.Commands;
|
||||
using MvvmCross.Logging;
|
||||
@ -251,9 +252,6 @@ namespace GoldbergGUI.Core.ViewModels
|
||||
}
|
||||
}
|
||||
|
||||
public string AboutVersionText =>
|
||||
FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileVersion;
|
||||
|
||||
public string StatusText
|
||||
{
|
||||
get => _statusText;
|
||||
@ -264,6 +262,11 @@ namespace GoldbergGUI.Core.ViewModels
|
||||
}
|
||||
}
|
||||
|
||||
public static string AboutVersionText =>
|
||||
FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileVersion;
|
||||
|
||||
public static GlobalHelp G => new GlobalHelp();
|
||||
|
||||
// COMMANDS //
|
||||
|
||||
public IMvxCommand OpenFileCommand => new MvxAsyncCommand(OpenFile);
|
||||
@ -289,6 +292,7 @@ namespace GoldbergGUI.Core.ViewModels
|
||||
|
||||
DllPath = dialog.FileName;
|
||||
await ReadConfig().ConfigureAwait(false);
|
||||
if (!GoldbergApplied) await GetListOfDlc().ConfigureAwait(false);
|
||||
MainWindowEnabled = true;
|
||||
StatusText = "Ready.";
|
||||
}
|
||||
@ -345,7 +349,7 @@ namespace GoldbergGUI.Core.ViewModels
|
||||
await FindIdInList(steamApps).ConfigureAwait(false);
|
||||
}
|
||||
}
|
||||
|
||||
await GetListOfDlc().ConfigureAwait(false);
|
||||
MainWindowEnabled = true;
|
||||
StatusText = "Ready.";
|
||||
}
|
||||
@ -503,6 +507,22 @@ namespace GoldbergGUI.Core.ViewModels
|
||||
}
|
||||
});
|
||||
|
||||
public IMvxCommand OpenGlobalSettingsFolderCommand => new MvxCommand(OpenGlobalSettingsFolder);
|
||||
|
||||
private void OpenGlobalSettingsFolder()
|
||||
{
|
||||
if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
|
||||
{
|
||||
StatusText = "Can't open folder (Windows only)! Ready.";
|
||||
return;
|
||||
}
|
||||
|
||||
var path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData),
|
||||
"Goldberg SteamEmu Saves", "settings");
|
||||
var start = Process.Start("explorer.exe", path);
|
||||
start?.Dispose();
|
||||
}
|
||||
|
||||
// OTHER METHODS //
|
||||
|
||||
private void ResetForm()
|
||||
|
@ -20,4 +20,20 @@
|
||||
<ProjectReference Include="..\GoldbergGUI.Core\GoldbergGUI.Core.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Remove="publish\**" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Remove="publish\**" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Remove="publish\**" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Page Remove="publish\**" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
@ -5,6 +5,6 @@
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
mc:Ignorable="d"
|
||||
Title="GoldbergGUI" MinHeight="500" MinWidth="600" Background="#FFF0F0F0">
|
||||
Title="GoldbergGUI" MinHeight="600" MinWidth="800" Background="#FFF0F0F0">
|
||||
<Grid />
|
||||
</views:MvxWindow>
|
@ -96,26 +96,54 @@
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
</Grid.RowDefinitions>
|
||||
<Label Content="Account name" HorizontalAlignment="Left" Margin="0,0,10,0" />
|
||||
<TextBox Text="{Binding AccountName, Mode=TwoWay}" Height="20" Grid.Row="0" Grid.Column="1"/>
|
||||
<CheckBox Content="Global" Grid.Row="0" Grid.Column="2" HorizontalAlignment="Right"
|
||||
Margin="10,0,0,0" VerticalAlignment="Center" IsChecked="True"
|
||||
IsEnabled="False"/>
|
||||
<!--
|
||||
IsEnabled="{Binding DllSelected, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
-->
|
||||
<Label Content="Steam64ID" HorizontalAlignment="Left" Grid.Row="1"
|
||||
Grid.Column="0" Margin="0,0,10,0" />
|
||||
<TextBox Text="{Binding SteamId, Mode=TwoWay}" Grid.Column="1" Height="20" Grid.Row="1"/>
|
||||
<CheckBox Content="Global" Grid.Row="1" Grid.Column="2" HorizontalAlignment="Right"
|
||||
Margin="10,0,0,0" VerticalAlignment="Center" IsChecked="True"
|
||||
IsEnabled="False"/>
|
||||
<!--
|
||||
IsEnabled="{Binding DllSelected, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
-->
|
||||
<Label Content="Language" HorizontalAlignment="Left" Grid.Row="2"
|
||||
Grid.Column="0" Margin="0,0,10,0" />
|
||||
<ComboBox Grid.Row="2" Grid.Column="1" ItemsSource="{Binding SteamLanguages}" SelectedItem="{Binding SelectedLanguage}"/>
|
||||
<ComboBox Grid.Row="2" Grid.Column="1" ItemsSource="{Binding SteamLanguages}" SelectedItem="{Binding SelectedLanguage}" VerticalAlignment="Center"/>
|
||||
<CheckBox Content="Global" Grid.Row="2" Grid.Column="2" HorizontalAlignment="Right"
|
||||
Margin="10,0,0,0" VerticalAlignment="Center" IsChecked="True"
|
||||
IsEnabled="False"/>
|
||||
<!--
|
||||
IsEnabled="{Binding DllSelected, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
-->
|
||||
<TextBlock TextWrapping="Wrap" Grid.ColumnSpan="3" Grid.Column="0" Grid.Row="3" Margin="5,10,5,5">
|
||||
<Run Text="{Binding G.Header, Mode=OneTime}" FontWeight="Bold"/><!--
|
||||
--><Run Text="{Binding G.TextPreLink, Mode=OneTime}"/>
|
||||
<Hyperlink Command="{Binding OpenGlobalSettingsFolderCommand}"><Run
|
||||
Text="{Binding G.Link, Mode=OneTime}"/></Hyperlink><!--
|
||||
--><Run Text="{Binding G.TextPostLink, Mode=OneTime}"/>
|
||||
</TextBlock>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
</TabItem>
|
||||
<TabItem Header="About" HorizontalAlignment="Center" Height="20" VerticalAlignment="Center" Width="54">
|
||||
<StackPanel Margin="10,20,10,10">
|
||||
<Label VerticalAlignment="Stretch" Content="{Binding AboutVersionText}">
|
||||
<Label VerticalAlignment="Stretch" Content="{Binding AboutVersionText, Mode=OneTime}">
|
||||
<Label.ContentTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel>
|
||||
|
@ -1,6 +1,6 @@
|
||||
using MvvmCross.Platforms.Wpf.Presenters.Attributes;
|
||||
using MvvmCross.Platforms.Wpf.Views;
|
||||
|
||||
// ReSharper disable UnusedType.Global
|
||||
namespace GoldbergGUI.WPF.Views
|
||||
{
|
||||
[MvxWindowPresentation(Identifier = nameof(SearchResultView), Modal = false)]
|
||||
|
Loading…
Reference in New Issue
Block a user