Finished designing LibraryManager.
|
Before Width: | Height: | Size: 264 KiB After Width: | Height: | Size: 264 KiB |
@@ -54,6 +54,8 @@ Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "DummyInstaller", "Windows\I
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SetupBA", "Windows\Installer\SetupBA\SetupBA.csproj", "{33C378F9-36C5-4C2C-8350-FD1C8DD5AB66}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OrbisLibraryManager", "OrbisLibraryManager\OrbisLibraryManager.csproj", "{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
@@ -226,6 +228,22 @@ Global
|
||||
{33C378F9-36C5-4C2C-8350-FD1C8DD5AB66}.Release|x64.Build.0 = Release|Any CPU
|
||||
{33C378F9-36C5-4C2C-8350-FD1C8DD5AB66}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{33C378F9-36C5-4C2C-8350-FD1C8DD5AB66}.Release|x86.Build.0 = Release|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Debug|Win32.ActiveCfg = Debug|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Debug|Win32.Build.0 = Debug|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Release|Win32.ActiveCfg = Release|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Release|Win32.Build.0 = Release|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Release|x64.Build.0 = Release|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC}.Release|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@@ -244,6 +262,7 @@ Global
|
||||
{0978D0B2-FFA5-42B2-81AC-0CFD85DE9184} = {6046C772-BE17-4BC8-A362-AD8C77F9178E}
|
||||
{A37095E9-80BD-4A6B-AF8B-33D278CF92F3} = {6046C772-BE17-4BC8-A362-AD8C77F9178E}
|
||||
{33C378F9-36C5-4C2C-8350-FD1C8DD5AB66} = {6046C772-BE17-4BC8-A362-AD8C77F9178E}
|
||||
{4CF615D4-CEA0-42B4-BAF8-0B9B487D48BC} = {8F0E1457-FB1E-47A4-9DA8-74A6B757CAA4}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {4B6EE1D0-5ADF-44A2-B6EE-E5C8E110EE47}
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<Application x:Class="OrbisLibraryManager.App"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:local="clr-namespace:OrbisLibraryManager"
|
||||
StartupUri="OrbisLibraryManager.xaml"
|
||||
xmlns:skins="clr-namespace:SimpleUI.Skins;assembly=SimpleUI">
|
||||
<Application.Resources>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<!-- SimpleUI -->
|
||||
<skins:SkinResourceDictionary/>
|
||||
<ResourceDictionary Source="/SimpleUI;component/Styles/CustomStyles.xaml"/>
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
</ResourceDictionary>
|
||||
</Application.Resources>
|
||||
</Application>
|
||||
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
|
||||
namespace OrbisLibraryManager
|
||||
{
|
||||
/// <summary>
|
||||
/// Interaction logic for App.xaml
|
||||
/// </summary>
|
||||
public partial class App : Application
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -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)
|
||||
)]
|
||||
@@ -0,0 +1,83 @@
|
||||
<UserControl x:Class="OrbisLibraryManager.Controls.CurrentTargetDisplay"
|
||||
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:local="clr-namespace:OrbisLibraryManager.Controls"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="70" d:DesignWidth="240">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="70"/>
|
||||
<ColumnDefinition/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="70"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<!-- Current Title Image -->
|
||||
<Border Grid.Column="0" Grid.Row="1"
|
||||
BorderThickness="1"
|
||||
BorderBrush="#333333"
|
||||
Margin="8">
|
||||
|
||||
<Image Name="CurrentTargetTitleImage"
|
||||
Source="/OrbisLibraryManager;component/Images/DefaultTitleIcon.png"
|
||||
RenderOptions.BitmapScalingMode="Fant"
|
||||
RenderOptions.EdgeMode="Aliased"
|
||||
MouseDown="CurrentTargetTitleImage_MouseDown"/>
|
||||
</Border>
|
||||
|
||||
<StackPanel Grid.Column="1" Grid.Row="1"
|
||||
Orientation="Vertical"
|
||||
VerticalAlignment="Center">
|
||||
|
||||
<!-- Target Name -->
|
||||
<StackPanel Grid.ColumnSpan="2" Grid.Row="0"
|
||||
Orientation="Horizontal">
|
||||
|
||||
<!-- Target State -->
|
||||
<Ellipse Grid.ColumnSpan="2" Grid.Row="0"
|
||||
Name="CurrentTargetState"
|
||||
Fill="Red"
|
||||
Width="12"
|
||||
Height="12"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Center"
|
||||
Margin="5 0 5 0"
|
||||
ToolTip="Online & API Available"/>
|
||||
|
||||
<!-- Current Target Name -->
|
||||
<TextBlock Grid.ColumnSpan="2" Grid.Row="0"
|
||||
Name="CurrentTargetName"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0 0 0 0"
|
||||
Text="-"
|
||||
FontSize="13"
|
||||
Foreground="{DynamicResource Text}"/>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
<!-- Title Name -->
|
||||
<TextBlock Name="CurrentTargetTitleName"
|
||||
HorizontalAlignment="Left"
|
||||
Margin="5 0 0 0"
|
||||
Text="-"
|
||||
Foreground="{DynamicResource Text}"
|
||||
FontSize="10"/>
|
||||
|
||||
<!-- TitleId -->
|
||||
<TextBlock Name="CurrentTargetTitleId"
|
||||
HorizontalAlignment="Left"
|
||||
Margin="5 0 0 0"
|
||||
Text="-"
|
||||
Foreground="{DynamicResource Text}"
|
||||
FontSize="10"/>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
</UserControl>
|
||||
@@ -0,0 +1,112 @@
|
||||
using OrbisSuite;
|
||||
using OrbisSuite.Common.Database;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
|
||||
namespace OrbisLibraryManager.Controls
|
||||
{
|
||||
/// <summary>
|
||||
/// Interaction logic for CurrentTargetDisplay.xaml
|
||||
/// </summary>
|
||||
public partial class CurrentTargetDisplay : UserControl
|
||||
{
|
||||
public CurrentTargetDisplay()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
OrbisLib.Instance.Events.DBTouched += Events_DBTouched;
|
||||
OrbisLib.Instance.Events.TargetStateChanged += Events_TargetStateChanged;
|
||||
RefreshTarget();
|
||||
}
|
||||
|
||||
private void Events_TargetStateChanged(object? sender, TargetStateChangedEvent e)
|
||||
{
|
||||
Dispatcher.Invoke(() => { RefreshTarget(); });
|
||||
}
|
||||
|
||||
private void Events_DBTouched(object? sender, DBTouchedEvent e)
|
||||
{
|
||||
Dispatcher.Invoke(() => { RefreshTarget(); });
|
||||
}
|
||||
|
||||
private void RefreshTarget()
|
||||
{
|
||||
var CurrentTarget = OrbisLib.Instance.SelectedTarget.Info;
|
||||
|
||||
if (CurrentTarget != null)
|
||||
{
|
||||
switch (CurrentTarget.Status)
|
||||
{
|
||||
case TargetStatusType.Offline:
|
||||
CurrentTargetState.Fill = new SolidColorBrush(Color.FromRgb(255, 0, 0));
|
||||
CurrentTargetState.ToolTip = "Offline";
|
||||
break;
|
||||
|
||||
case TargetStatusType.Online:
|
||||
CurrentTargetState.Fill = new SolidColorBrush(Color.FromRgb(255, 140, 0));
|
||||
CurrentTargetState.ToolTip = "Online";
|
||||
break;
|
||||
|
||||
case TargetStatusType.APIAvailable:
|
||||
CurrentTargetState.Fill = new SolidColorBrush(Color.FromRgb(0, 128, 0));
|
||||
CurrentTargetState.ToolTip = "Online & API Available";
|
||||
break;
|
||||
|
||||
default:
|
||||
CurrentTargetState.Fill = new SolidColorBrush(Color.FromRgb(255, 0, 0));
|
||||
CurrentTargetState.ToolTip = "Unknown";
|
||||
break;
|
||||
}
|
||||
|
||||
CurrentTargetName.Text = CurrentTarget.IsDefault ? $"★{CurrentTarget.Name}" : CurrentTarget.Name;
|
||||
|
||||
if (CurrentTarget.CurrentTitleID == null || !Regex.IsMatch(CurrentTarget.CurrentTitleID, @"CUSA\d{5}"))
|
||||
{
|
||||
CurrentTargetTitleName.Text = "Unknown Title";
|
||||
CurrentTargetTitleId.Text = "-";
|
||||
CurrentTargetTitleImage.Source = new BitmapImage(new Uri("pack://application:,,,/OrbisLibraryManager;component/Images/DefaultTitleIcon.png"));
|
||||
}
|
||||
else
|
||||
{
|
||||
var Title = new TMDB(CurrentTarget.CurrentTitleID);
|
||||
Regex rgx = new Regex(@"[^0-9a-zA-Z +.:']");
|
||||
CurrentTargetTitleName.Text = Title.Names.First();
|
||||
CurrentTargetTitleId.Text = Title.NPTitleID;
|
||||
var test = Title.BGM;
|
||||
CurrentTargetTitleImage.Source = new BitmapImage(new Uri(Title.Icons.First()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void CurrentTargetTitleImage_MouseDown(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
var CurrentTarget = OrbisLib.Instance.SelectedTarget.Info;
|
||||
|
||||
if (CurrentTarget != null && CurrentTarget.CurrentTitleID != null && Regex.IsMatch(CurrentTarget.CurrentTitleID, @"CUSA\d{5}"))
|
||||
{
|
||||
var Title = new TMDB(CurrentTarget.CurrentTitleID);
|
||||
var url = $"https://store.playstation.com/product/{Title.ContentID}/";
|
||||
|
||||
System.Diagnostics.Process.Start(new ProcessStartInfo
|
||||
{
|
||||
FileName = url,
|
||||
UseShellExecute = true
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
<UserControl x:Class="OrbisLibraryManager.Controls.ImageButton"
|
||||
x:Name="ImageButtonElement"
|
||||
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:local="clr-namespace:OrbisLibraryManager.Controls"
|
||||
xmlns:simpleControls="clr-namespace:SimpleUI.Controls;assembly=SimpleUI"
|
||||
mc:Ignorable="d"
|
||||
IsEnabledChanged="ImageButtonElement_IsEnabledChanged"
|
||||
d:DesignHeight="35" d:DesignWidth="35">
|
||||
<Grid>
|
||||
<simpleControls:SimpleButton Content="" Click="SimpleButton_Click"/>
|
||||
|
||||
<Image Source="{Binding ElementName=ImageButtonElement, Path=ImageSource}"
|
||||
Margin="{Binding ElementName=ImageButtonElement, Path=ImageMargin}"
|
||||
RenderOptions.BitmapScalingMode="Fant"
|
||||
RenderOptions.EdgeMode="Aliased"
|
||||
Name="ButtonImage"
|
||||
IsHitTestVisible="False"/>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
@@ -0,0 +1,66 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
|
||||
namespace OrbisLibraryManager.Controls
|
||||
{
|
||||
/// <summary>
|
||||
/// Interaction logic for ImageButton.xaml
|
||||
/// </summary>
|
||||
public partial class ImageButton : UserControl
|
||||
{
|
||||
public event EventHandler<RoutedEventArgs>? Click;
|
||||
|
||||
public ImageButton()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public string ImageSource
|
||||
{
|
||||
get { return (string)GetValue(ImageSourceProperty); }
|
||||
set { SetValue(ImageSourceProperty, value); }
|
||||
}
|
||||
|
||||
public static readonly DependencyProperty ImageSourceProperty =
|
||||
DependencyProperty.Register("ImageSource", typeof(string), typeof(ImageButton), new PropertyMetadata(string.Empty, ImageSource_Changed));
|
||||
|
||||
private static void ImageSource_Changed(DependencyObject d, DependencyPropertyChangedEventArgs e)
|
||||
{
|
||||
var currentControl = (ImageButton)d;
|
||||
currentControl.ButtonImage.Source = new BitmapImage(new Uri($"pack://application:,,,{(string)e.NewValue}"));
|
||||
currentControl.ButtonImage.Opacity = currentControl.IsEnabled ? 1 : 0.5;
|
||||
}
|
||||
|
||||
public int ImageMargin
|
||||
{
|
||||
get { return (int)GetValue(ImageMarginProperty); }
|
||||
set { SetValue(ImageMarginProperty, value); }
|
||||
}
|
||||
|
||||
public static readonly DependencyProperty ImageMarginProperty =
|
||||
DependencyProperty.Register("ImageMargin", typeof(int), typeof(ImageButton), new PropertyMetadata(0));
|
||||
|
||||
private void ImageButtonElement_IsEnabledChanged(object sender, DependencyPropertyChangedEventArgs e)
|
||||
{
|
||||
ButtonImage.Source = new BitmapImage(new Uri($"pack://application:,,,{ImageSource}"));
|
||||
ButtonImage.Opacity = IsEnabled ? 1 : 0.5;
|
||||
}
|
||||
|
||||
private void SimpleButton_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Click?.Invoke(sender, e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 2.8 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 363 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 842 B |
|
After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
@@ -0,0 +1,95 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<TargetFramework>net6.0-windows</TargetFramework>
|
||||
<Nullable>enable</Nullable>
|
||||
<UseWPF>true</UseWPF>
|
||||
<ApplicationIcon>OrbisLibraryManager.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Remove="Images\Attached.png" />
|
||||
<None Remove="Images\DefaultTitleIcon.png" />
|
||||
<None Remove="Images\Detached.png" />
|
||||
<None Remove="Images\KillProcess.png" />
|
||||
<None Remove="Images\Restart.png" />
|
||||
<None Remove="Images\RestMode.png" />
|
||||
<None Remove="Images\Send.png" />
|
||||
<None Remove="Images\Shutdown.png" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Content Include="OrbisLibraryManager.ico" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Resource Include="Images\Attached.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<Resource Include="Images\Detached.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Windows\Libraries\OrbisLib\OrbisLib.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Expression.Drawing">
|
||||
<HintPath>..\External\SimpleUI\SimpleUI\bin\Debug\net6.0-windows\Microsoft.Expression.Drawing.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SimpleUI">
|
||||
<HintPath>..\External\SimpleUI\SimpleUI\bin\Debug\net6.0-windows\SimpleUI.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="Core\" />
|
||||
<Folder Include="MVVM\ViewModel\" />
|
||||
<Folder Include="MVVM\View\" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Resource Include="Images\DefaultTitleIcon.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<Resource Include="Images\KillProcess.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<Resource Include="Images\Restart.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<Resource Include="Images\RestMode.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<Resource Include="Images\Send.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<Resource Include="Images\Shutdown.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Update="Controls\CurrentTargetDisplay.xaml.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Update="Controls\ImageButton.xaml.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Page Update="Controls\CurrentTargetDisplay.xaml">
|
||||
<XamlRuntime>$(DefaultXamlRuntime)</XamlRuntime>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Update="Controls\ImageButton.xaml">
|
||||
<XamlRuntime>$(DefaultXamlRuntime)</XamlRuntime>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
After Width: | Height: | Size: 264 KiB |
@@ -0,0 +1,184 @@
|
||||
<simpleControls:SimpleWindow x:Class="OrbisLibraryManager.MainWindow"
|
||||
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"
|
||||
xmlns:local="clr-namespace:OrbisLibraryManager"
|
||||
xmlns:simpleControls="clr-namespace:SimpleUI.Controls;assembly=SimpleUI"
|
||||
xmlns:controls="clr-namespace:OrbisLibraryManager.Controls"
|
||||
mc:Ignorable="d"
|
||||
Title="LibraryManager" Height="640" Width="960"
|
||||
MinHeight="640" MinWidth="960"
|
||||
MaxHeight="640" MaxWidth="960"
|
||||
ResizeMode="CanMinimize">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="80"/>
|
||||
<RowDefinition/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<!-- Menu BG -->
|
||||
<Rectangle Grid.Column="0" Grid.Row="0"
|
||||
Fill="{DynamicResource WindowBar}"/>
|
||||
|
||||
<!-- Separation bar -->
|
||||
<Rectangle Grid.Column="0" Grid.Row="0"
|
||||
Height="0.5" VerticalAlignment="Top"
|
||||
Fill="{DynamicResource WindowBackground}"/>
|
||||
|
||||
<!-- Current Target -->
|
||||
<controls:CurrentTargetDisplay VerticalAlignment="Center"
|
||||
HorizontalAlignment="Stretch"/>
|
||||
|
||||
<StackPanel Orientation="Horizontal"
|
||||
HorizontalAlignment="Right">
|
||||
|
||||
<!-- SPRX Loader -->
|
||||
<StackPanel HorizontalAlignment="Right"
|
||||
Margin="6">
|
||||
|
||||
<simpleControls:SimpleTextField FieldName="SPRX Path"
|
||||
FieldText="/data/something.sprx"
|
||||
VerticalContentAlignment="Center"
|
||||
Width="180"/>
|
||||
|
||||
<Grid Margin="0 6 0 0">
|
||||
<Grid.ColumnDefinitions>
|
||||
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<simpleControls:SimpleButton Grid.Column="0"
|
||||
Content="Load"
|
||||
Width="56"
|
||||
Height="25"/>
|
||||
|
||||
<simpleControls:SimpleButton Grid.Column="2"
|
||||
Content="Unload"
|
||||
Width="56"
|
||||
Height="25"/>
|
||||
|
||||
<simpleControls:SimpleButton Grid.Column="4"
|
||||
Content="Reload"
|
||||
Width="56"
|
||||
Height="25"/>
|
||||
</Grid>
|
||||
|
||||
|
||||
</StackPanel>
|
||||
|
||||
<!-- Current Debugging Process -->
|
||||
<StackPanel HorizontalAlignment="Right"
|
||||
Margin="0 6 6 6">
|
||||
|
||||
<simpleControls:SimpleTextField FieldName="Currently Debugging"
|
||||
FieldText="SceShellUI.ELF (75)"
|
||||
VerticalContentAlignment="Center"
|
||||
Width="180"/>
|
||||
|
||||
<Grid Margin="0 6 0 0">
|
||||
<Grid.ColumnDefinitions>
|
||||
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<controls:ImageButton x:Name="AttachProcess"
|
||||
Grid.Column="0"
|
||||
Width="25"
|
||||
Height="25"
|
||||
ToolTip="Attach to new process"
|
||||
ImageSource="/OrbisLibraryManager;component/Images/Attached.png"
|
||||
ImageMargin="1"/>
|
||||
|
||||
<controls:ImageButton x:Name="DetachProcess"
|
||||
Grid.Column="2"
|
||||
Width="25"
|
||||
Height="25"
|
||||
ToolTip="Detach the current attached process"
|
||||
ImageSource="/OrbisLibraryManager;component/Images/Detached.png"
|
||||
ImageMargin="2"/>
|
||||
|
||||
<controls:ImageButton x:Name="Send"
|
||||
Grid.Column="4"
|
||||
Width="25"
|
||||
Height="25"
|
||||
ToolTip="Browse for something to load from local machine"
|
||||
ImageSource="/OrbisLibraryManager;component/Images/Send.png"
|
||||
ImageMargin="5"/>
|
||||
|
||||
<controls:ImageButton x:Name="KillProcess"
|
||||
Grid.Column="6"
|
||||
Width="25"
|
||||
Height="25"
|
||||
ToolTip="Kills the currently attached process"
|
||||
ImageSource="/OrbisLibraryManager;component/Images/KillProcess.png"
|
||||
ImageMargin="1"/>
|
||||
|
||||
<controls:ImageButton x:Name="RestartTarget"
|
||||
Grid.Column="8"
|
||||
Width="25"
|
||||
Height="25"
|
||||
ToolTip="Restart the Target"
|
||||
ImageSource="/OrbisLibraryManager;component/Images/Restart.png"
|
||||
ImageMargin="0"/>
|
||||
|
||||
<controls:ImageButton x:Name="ShutdownTarget"
|
||||
Grid.Column="10"
|
||||
Width="25"
|
||||
Height="25"
|
||||
ToolTip="Shutdown the Target"
|
||||
ImageSource="/OrbisLibraryManager;component/Images/Shutdown.png"
|
||||
ImageMargin="0"/>
|
||||
|
||||
</Grid>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
<!-- Library List -->
|
||||
<ListView Grid.Row="1"
|
||||
Height="507"
|
||||
Width="934"
|
||||
MaxWidth="934"
|
||||
VerticalAlignment="Top"
|
||||
Background="{DynamicResource WindowBackground}"
|
||||
BorderBrush="Transparent"
|
||||
BorderThickness="0"
|
||||
Name="LibraryList"
|
||||
AlternationCount="2">
|
||||
|
||||
<ListView.View>
|
||||
<GridView>
|
||||
<GridViewColumn Header="Handle" Width="60" DisplayMemberBinding="{Binding [0]}"/>
|
||||
<GridViewColumn Header="Name" Width="180" DisplayMemberBinding="{Binding [1]}"/>
|
||||
<GridViewColumn Header="Segments" Width="Auto" DisplayMemberBinding="{Binding [2]}"/>
|
||||
</GridView>
|
||||
</ListView.View>
|
||||
|
||||
</ListView>
|
||||
|
||||
</Grid>
|
||||
|
||||
</simpleControls:SimpleWindow>
|
||||
@@ -0,0 +1,29 @@
|
||||
using SimpleUI.Controls;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
|
||||
namespace OrbisLibraryManager
|
||||
{
|
||||
/// <summary>
|
||||
/// Interaction logic for MainWindow.xaml
|
||||
/// </summary>
|
||||
public partial class MainWindow : SimpleWindow
|
||||
{
|
||||
public MainWindow()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8,5 +8,7 @@ public:
|
||||
void HandleAPI(OrbisNetId Sock, APIPacket* Packet);
|
||||
|
||||
private:
|
||||
bool IsDebugging;
|
||||
int CurrentPID;
|
||||
|
||||
};
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
#pragma once
|
||||
#define ORBIS_TOOLBOX_MAJOR 2
|
||||
#define ORBIS_TOOLBOX_MINOR 0
|
||||
#define ORBIS_TOOLBOX_BUILDVERSION 196
|
||||
#define stringify(a) stringify_(a)
|
||||
#define stringify_(a) #a
|
||||
#if defined(ORBIS_TOOLBOX_DEBUG)
|
||||
#define ORBIS_TOOLBOX_BUILDSTRING ("[Orbis Toolbox " stringify(ORBIS_TOOLBOX_MAJOR) "." stringify(ORBIS_TOOLBOX_MINOR) "] Dev Build " stringify(ORBIS_TOOLBOX_BUILDVERSION) " " __DATE__ " " __TIME__)
|
||||
#else
|
||||
#define ORBIS_TOOLBOX_BUILDSTRING ("[Orbis Toolbox " stringify(ORBIS_TOOLBOX_MAJOR) "." stringify(ORBIS_TOOLBOX_MINOR) "] Build " stringify(ORBIS_TOOLBOX_BUILDVERSION) " " __DATE__ " " __TIME__)
|
||||
#endif
|
||||
#pragma once
|
||||
#define ORBIS_TOOLBOX_MAJOR 2
|
||||
#define ORBIS_TOOLBOX_MINOR 0
|
||||
#define ORBIS_TOOLBOX_BUILDVERSION 198
|
||||
#define stringify(a) stringify_(a)
|
||||
#define stringify_(a) #a
|
||||
#if defined(ORBIS_TOOLBOX_DEBUG)
|
||||
#define ORBIS_TOOLBOX_BUILDSTRING ("[Orbis Toolbox " stringify(ORBIS_TOOLBOX_MAJOR) "." stringify(ORBIS_TOOLBOX_MINOR) "] Dev Build " stringify(ORBIS_TOOLBOX_BUILDVERSION) " " __DATE__ " " __TIME__)
|
||||
#else
|
||||
#define ORBIS_TOOLBOX_BUILDSTRING ("[Orbis Toolbox " stringify(ORBIS_TOOLBOX_MAJOR) "." stringify(ORBIS_TOOLBOX_MINOR) "] Build " stringify(ORBIS_TOOLBOX_BUILDVERSION) " " __DATE__ " " __TIME__)
|
||||
#endif
|
||||
|
||||
@@ -399,8 +399,8 @@
|
||||
<!-- Library Manager -->
|
||||
<controls:AppLauncherButton
|
||||
Grid.Column="3"
|
||||
IsEnabled="False"
|
||||
ToolTip="Currently under development."
|
||||
IsEnabled="true"
|
||||
ToolTip="Launch the Orbis Library Manager to load SPRX, ELF's and more!"
|
||||
Text="Library Manager"
|
||||
Source="/OrbisNeighborHood;component/Images/Icons/OrbisModuleManager.ico"/>
|
||||
|
||||
|
||||
@@ -70,6 +70,10 @@
|
||||
<!-- Current Target -->
|
||||
<controls:CurrentTargetDisplay VerticalAlignment="Stretch"
|
||||
HorizontalAlignment="Stretch"/>
|
||||
<!-- Separation bar -->
|
||||
<Rectangle Grid.Column="0" Grid.Row="0"
|
||||
Height="0.5" VerticalAlignment="Top"
|
||||
Fill="{DynamicResource WindowBackground}"/>
|
||||
|
||||
<!-- Menu Controls -->
|
||||
<StackPanel Grid.Column="0" Grid.Row="2"
|
||||
|
||||
@@ -1 +1 @@
|
||||
1326
|
||||
1337
|
||||
|
||||
@@ -1 +1 @@
|
||||
Version 3.0.1326 Debug Build Friday July 08 2022 1:58 PM
|
||||
Version 3.0.1337 Debug Build Saturday July 30 2022 8:50 AM
|
||||
|
||||