Init commit

This commit is contained in:
Jeddunk 2021-01-08 18:36:57 +01:00
commit 0c711f7da6
26 changed files with 1733 additions and 0 deletions

9
GoldbergGUI.WPF/App.xaml Normal file
View file

@ -0,0 +1,9 @@
<views:MvxApplication x:Class="GoldbergGUI.WPF.App"
xmlns:views="clr-namespace:MvvmCross.Platforms.Wpf.Views;assembly=MvvmCross.Platforms.Wpf"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml">
<Application.Resources>
</Application.Resources>
</views:MvxApplication>

View file

@ -0,0 +1,17 @@
using MvvmCross.Core;
using MvvmCross.Platforms.Wpf.Core;
using MvvmCross.Platforms.Wpf.Views;
namespace GoldbergGUI.WPF
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : MvxApplication
{
public App()
{
this.RegisterSetupType<MvxWpfSetup<Core.App>>();
}
}
}

View file

@ -0,0 +1,10 @@
using System.Windows;
[assembly: ThemeInfo(
ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
//(used if a resource is not found in the page,
// or application resource dictionaries)
ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
//(used if a resource is not found in the page,
// app, or any theme specific resource dictionaries)
)]

View file

@ -0,0 +1,17 @@
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<UseWPF>true</UseWPF>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="MvvmCross.Platforms.Wpf" Version="7.1.2" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\GoldbergGUI.Core\GoldbergGUI.Core.csproj" />
</ItemGroup>
</Project>

View file

@ -0,0 +1,10 @@
<views:MvxWindow x:Class="GoldbergGUI.WPF.MainWindow"
xmlns:views="clr-namespace:MvvmCross.Platforms.Wpf.Views;assembly=MvvmCross.Platforms.Wpf"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
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">
<Grid />
</views:MvxWindow>

View file

@ -0,0 +1,15 @@
using MvvmCross.Platforms.Wpf.Views;
namespace GoldbergGUI.WPF
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : MvxWindow
{
public MainWindow()
{
InitializeComponent();
}
}
}

View file

@ -0,0 +1,90 @@
<views:MvxWpfView x:Class="GoldbergGUI.WPF.Views.MainView"
xmlns:views="clr-namespace:MvvmCross.Platforms.Wpf.Views;assembly=MvvmCross.Platforms.Wpf"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:viewmodel="clr-namespace:GoldbergGUI.Core.ViewModels;assembly=GoldbergGUI.Core"
mc:Ignorable="d"
d:DesignHeight="500" d:DesignWidth="400" d:DataContext="{d:DesignInstance Type=viewmodel:MainViewModel }">
<Grid Margin="5,5,5,5" IsEnabled="{Binding MainWindowEnabled}">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<TabControl Margin="5,5,5,5">
<!-- General -->
<TabItem Header="General">
<Grid Margin="10,20,10,10">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBox Text="{Binding DllPath, Mode=OneWay}" TextWrapping="Wrap" Margin="0,0,85,5" VerticalAlignment="Center" Padding="1,0,0,0" Height="20" IsEnabled="False"/>
<Button Content="Select..." Command="{Binding OpenFileCommand}" HorizontalAlignment="Right" Width="80" Height="20" Grid.Row="0" Margin="0,0,0,5"/>
<Button Content="Generate steam_interfaces.txt" Command="{Binding GenerateSteamInterfacesCommand}" Height="20" Grid.Row="1" Margin="0,5,0,5" />
<TextBox Text="{Binding GameName, Mode=TwoWay}" TextWrapping="Wrap" VerticalAlignment="Center" Padding="1,0,0,0" Grid.Row="2" Margin="0,5,215,5" Height="20"/>
<Button Content="Find ID..." Command="{Binding FindIdCommand}" Width="80" Grid.Row="2" Margin="0,5,130,5" HorizontalAlignment="Right" Height="20"/>
<TextBox Text="{Binding AppId, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" TextWrapping="Wrap" HorizontalAlignment="Right" VerticalAlignment="Center" Padding="1,0,0,0" Grid.Row="2" Width="125" Margin="0,5,0,5" Height="20"/>
<GroupBox Header="DLC" Grid.Row="3" Padding="0,0,0,0" Margin="0,5,0,0">
<Grid Margin="10,10,10,10">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<DataGrid Margin="0,0,0,5" ItemsSource="{Binding DLCs, Mode=OneWay}" IsReadOnly="True" SelectionMode="Single" SelectionUnit="FullRow" HeadersVisibility="Column"/>
<Button Content="Get list of DLCs..." Command="{Binding GetListOfDlcCommand}" Grid.Row="1" Width="120" HorizontalAlignment="Right" Margin="0,5,125,0" Height="20"/>
<Button Content="Advanced Settings..." Grid.Row="1" Width="120" HorizontalAlignment="Right" Margin="0,5,0,0" Height="20" IsEnabled="False" ToolTip="Work in progress..."/>
</Grid>
</GroupBox>
</Grid>
</TabItem>
<!-- Advanced -->
<TabItem Header="Advanced">
<Grid HorizontalAlignment="Left" Margin="10,20,10,10" >
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Grid.Row="0">
<StackPanel Margin="0,0,5,0">
<Button Content="Subscribed Groups" Width="120" Height="20" Margin="0,0,0,5"/>
<Button Content="Mods" Width="120" Height="20" Margin="0,5,0,5"/>
<Button Content="Items, Inventory" Width="120" Height="20" Margin="0,5,0,5"/>
</StackPanel>
<StackPanel Margin="5,0,0,0">
<Button Content="Achievements" Width="120" Height="20" Margin="0,0,0,5"/>
<Button Content="Stats, Leaderboards" Width="120" Height="20" Margin="0,5,0,5"/>
<Button Content="Controller" Width="120" Height="20" Margin="0,5,0,5"/>
</StackPanel>
</StackPanel>
</Grid>
</TabItem>
<!-- Settings -->
<TabItem Header="Settings">
<StackPanel Margin="10,20,10,10">
<Grid Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBox Text="{Binding AccountName, Mode=TwoWay}" Margin="0,0,2.5,0" Height="20"/>
<TextBox Text="{Binding SteamId, Mode=TwoWay}" Grid.Column="1" Margin="2.5,0,0,0" Height="20"/>
</Grid>
<CheckBox Content="Offline" IsChecked="{Binding Offline, Mode=TwoWay}" Margin="0,5,0,5" Height="20" VerticalAlignment="Stretch" VerticalContentAlignment="Center"/>
<CheckBox Content="Disable Networking" IsChecked="{Binding DisableNetworking, Mode=TwoWay}" Margin="0,5,0,5" Height="20" VerticalContentAlignment="Center"/>
<CheckBox Content="Disable Overlay" IsChecked="{Binding DisableOverlay, Mode=TwoWay}" Margin="0,5,0,5" Height="20" VerticalContentAlignment="Center"/>
</StackPanel>
</TabItem>
</TabControl>
<!-- Bottom Row -->
<Grid Grid.Row="1" Margin="5,5,5,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="Save" Command="{Binding SaveConfigCommand}" Width="80" Grid.Column="1" Height="20" Margin="0,0,5,0"/>
<Button Content="Reset" Command="{Binding ResetConfigCommand}" Width="80" Grid.Column="2" Height="20"/>
</Grid>
<!-- Status Bar -->
</Grid>
</views:MvxWpfView>

View file

@ -0,0 +1,17 @@
using MvvmCross.Platforms.Wpf.Presenters.Attributes;
using MvvmCross.Platforms.Wpf.Views;
namespace GoldbergGUI.WPF.Views
{
/// <summary>
/// Interaction logic for MainView.xaml
/// </summary>
[MvxContentPresentation(WindowIdentifier = nameof(MainWindow))]
public partial class MainView : MvxWpfView
{
public MainView()
{
InitializeComponent();
}
}
}