Add project files.
6
DatEmAll-GUI/App.config
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
|
||||
</startup>
|
||||
</configuration>
|
||||
BIN
DatEmAll-GUI/App.ico
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
149
DatEmAll-GUI/DatEmAll-GUI.csproj
Normal file
@@ -0,0 +1,149 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{472C0464-F101-4A66-8D26-E065497AA86D}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>DatEmAll_GUI</RootNamespace>
|
||||
<AssemblyName>DatEmAll-GUI</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>bin\Debug\DatEmAll-GUI.xml</DocumentationFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>none</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>
|
||||
</DocumentationFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ApplicationIcon>App.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Serilog, Version=2.0.0.0, Culture=neutral, PublicKeyToken=24c2f752a8e58a10, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Serilog.2.12.0\lib\net47\Serilog.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Serilog.Sinks.LogEmAll, Version=0.0.6.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Serilog.Sinks.LogEmAll.0.0.7\lib\net461\Serilog.Sinks.LogEmAll.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="FrmDatEmAll.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FrmDatEmAll.Designer.cs">
|
||||
<DependentUpon>FrmDatEmAll.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<EmbeddedResource Include="FrmDatEmAll.resx">
|
||||
<DependentUpon>FrmDatEmAll.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
<DesignTime>True</DesignTime>
|
||||
</Compile>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\DatEmAll\DatEmAll.csproj">
|
||||
<Project>{4f7103f0-8421-42f1-8afe-251b752fa1e2}</Project>
|
||||
<Name>DatEmAll</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="App.ico" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\Blank_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\BuildDat_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\Cancel_16x16.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\Donate_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\Exit_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\Help_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\Key_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\License_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\LoadOptions_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\Log_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\Options_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\SaveLog_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\SaveOptions_32x32.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\Toolbar_32x32.png" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
2125
DatEmAll-GUI/FrmDatEmAll.Designer.cs
generated
Normal file
870
DatEmAll-GUI/FrmDatEmAll.cs
Normal file
@@ -0,0 +1,870 @@
|
||||
using System;
|
||||
using System.ComponentModel;
|
||||
using System.IO;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using Serilog;
|
||||
|
||||
namespace DatEmAll_GUI
|
||||
{
|
||||
/// <summary>
|
||||
/// The DatEmAll GUI Class which interacts with the Main Program Class.
|
||||
/// </summary>
|
||||
public partial class FrmDatEmAll : Form
|
||||
{
|
||||
#region Constructors
|
||||
|
||||
DatEmAll.DatEmAll DEA = new DatEmAll.DatEmAll();
|
||||
|
||||
/// <summary>
|
||||
/// Constructor
|
||||
/// </summary>
|
||||
public FrmDatEmAll()
|
||||
{
|
||||
// Initialize the form.
|
||||
InitializeComponent();
|
||||
|
||||
// Print the version.
|
||||
DEA.PrintVersion();
|
||||
|
||||
// Load the default options passed from the default options file.
|
||||
DEA.LoadOptionsFromFile();
|
||||
|
||||
// Load the default options passed from the command line arguments.
|
||||
DEA.LoadOptionsFromCLI(Environment.GetCommandLineArgs());
|
||||
|
||||
// Add data bindings.
|
||||
chkIncludeCRC32Hash.DataBindings.Add("Checked", DEA, "IncludeCRC32Hash");
|
||||
chkIncludeMD5Hash.DataBindings.Add("Checked", DEA, "IncludeMD5Hash");
|
||||
chkIncludeSHA1Hash.DataBindings.Add("Checked", DEA, "IncludeSHA1Hash");
|
||||
chkIncludeFileSize.DataBindings.Add("Checked", DEA, "IncludeFileSize");
|
||||
chkAppendGameCountToFilename.DataBindings.Add("Checked", DEA, "AppendGameCountToFilename");
|
||||
chkAppendGameCountToDescription.DataBindings.Add("Checked", DEA, "AppendGameCountToDescription");
|
||||
chkAppendVersionToFilename.DataBindings.Add("Checked", DEA, "AppendVersionToFilename");
|
||||
chkAppendVersionToDescription.DataBindings.Add("Checked", DEA, "AppendVersionToDescription");
|
||||
chkIncludeROMDirRootFiles.DataBindings.Add("Checked", DEA, "IncludeROMDirRootFiles");
|
||||
txtDatFilename.DataBindings.Add("Text", DEA, "DatFilename");
|
||||
cbXMLEncoding.DataBindings.Add("SelectedItem", DEA, "XMLEncoding");
|
||||
cbXMLDOCTYPE.DataBindings.Add("SelectedItem", DEA, "XMLDOCTYPE");
|
||||
chkIncludeDefaultHeaderName.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderName");
|
||||
chkIncludeDefaultHeaderDescription.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderDescription");
|
||||
chkIncludeDefaultHeaderVersion.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderVersion");
|
||||
chkIncludeDefaultHeaderDate.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderDate");
|
||||
chkIncludeDefaultHeaderAuthor.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderAuthor");
|
||||
chkIncludeDefaultHeaderEmail.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderEmail");
|
||||
chkIncludeDefaultHeaderHomepage.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderHomepage");
|
||||
chkIncludeDefaultHeaderURL.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderURL");
|
||||
chkIncludeDefaultHeaderComment.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderComment");
|
||||
chkIncludeDefaultHeaderCategory.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderCategory");
|
||||
chkIncludeDefaultHeaderCMPForceUnzip.DataBindings.Add("Checked", DEA, "IncludeDefaultHeaderCMPForceUnzip");
|
||||
txtOverrideHeaderName.DataBindings.Add("Text", DEA, "OverrideHeaderName");
|
||||
txtOverrideHeaderDescription.DataBindings.Add("Text", DEA, "OverrideHeaderDescription");
|
||||
txtOverrideHeaderVersion.DataBindings.Add("Text", DEA, "OverrideHeaderVersion");
|
||||
txtOverrideHeaderDate.DataBindings.Add("Text", DEA, "OverrideHeaderDate");
|
||||
txtOverrideHeaderAuthor.DataBindings.Add("Text", DEA, "OverrideHeaderAuthor");
|
||||
txtOverrideHeaderEmail.DataBindings.Add("Text", DEA, "OverrideHeaderEmail");
|
||||
txtOverrideHeaderHomepage.DataBindings.Add("Text", DEA, "OverrideHeaderHomepage");
|
||||
txtOverrideHeaderURL.DataBindings.Add("Text", DEA, "OverrideHeaderURL");
|
||||
txtOverrideHeaderComment.DataBindings.Add("Text", DEA, "OverrideHeaderComment");
|
||||
txtOverrideHeaderCategory.DataBindings.Add("Text", DEA, "OverrideHeaderCategory");
|
||||
chkCheckForLatestVersion.DataBindings.Add("Checked", DEA, "CheckForLatestVersion");
|
||||
chkCheckSSLCertificates.DataBindings.Add("Checked", DEA, "CheckSSLCertificates");
|
||||
chkSendErrorReports.DataBindings.Add("Checked", DEA, "SendErrorReports");
|
||||
cbLanguageLocality.DataBindings.Add("SelectedItem", DEA, "LanguageLocality");
|
||||
cbLogLevel.DataBindings.Add("SelectedItem", DEA, "LogLevel");
|
||||
txtPathDatsDir.DataBindings.Add("Text", DEA, "PathDatsDir");
|
||||
txtPathROMsDir.DataBindings.Add("Text", DEA, "PathROMsDir");
|
||||
txtRegisterAppUsername.DataBindings.Add("Text", DEA, "RegisterAppUsername");
|
||||
txtRegisterAppEmailAddress.DataBindings.Add("Text", DEA, "RegisterAppEmailAddress");
|
||||
txtRegisterAppPassword.DataBindings.Add("Text", DEA, "RegisterAppPassword");
|
||||
|
||||
// Hide some tabs.
|
||||
tcMain.TabPages.Remove(tabHelp);
|
||||
tcMain.TabPages.Remove(tabLicense);
|
||||
tcMain.TabPages.Remove(tabDonations);
|
||||
tcMain.TabPages.Remove(tabRegistration);
|
||||
|
||||
// Set the title.
|
||||
UpdateTitle();
|
||||
|
||||
// Load the GUI RichTextBoxes from resources.
|
||||
rtbHelp.Text = DatEmAll.Properties.Resources.DatEmAll_HELP;
|
||||
rtbLicense.Text = DatEmAll.Properties.Resources.DatEmAll_LICENSE;
|
||||
rtbDonations.Text = DatEmAll.Properties.Resources.DatEmAll_DONATIONS;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Getters/Setters Public Accessors
|
||||
|
||||
/// LogLines
|
||||
public string[] LogLines
|
||||
{
|
||||
get { return rtblLog.Lines; }
|
||||
set { rtblLog.Lines = value; }
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Log
|
||||
|
||||
/// <summary>
|
||||
/// Saves the log to a text file.
|
||||
/// </summary>
|
||||
/// <param name="strPath"></param>
|
||||
/// <returns></returns>
|
||||
public bool SaveLogToFile(string strPath = null)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (strPath != null)
|
||||
{
|
||||
DEA.PathLogFile = strPath;
|
||||
}
|
||||
|
||||
// Determine if the user selected a log filename.
|
||||
if (DEA.PathLogFile.Length == 0)
|
||||
{
|
||||
// Return a bool value.
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Print to screen
|
||||
Log.Information("Saving log file ...");
|
||||
|
||||
// Create log file directory if it doesn't exist.
|
||||
if (Directory.Exists(Path.GetDirectoryName(DEA.PathLogFile)) == false) Directory.CreateDirectory(Path.GetDirectoryName(DEA.PathLogFile));
|
||||
|
||||
// Save the contents of the log to a text file.
|
||||
File.WriteAllLines(DEA.PathLogFile, LogLines);
|
||||
|
||||
// Print to screen
|
||||
Log.Information("Log file saved (" + DEA.PathLogFile + ")");
|
||||
|
||||
// Return a bool value.
|
||||
return true;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// Print to screen
|
||||
Log.Error("Saving log file failed");
|
||||
Log.Error(ex.Message);
|
||||
|
||||
// Return a bool value.
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Startup Tasks
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void StartupTasks_DoWork(object sender, DoWorkEventArgs e)
|
||||
{
|
||||
// Run startup tasks.
|
||||
DEA.StartupTasks();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void StartupTasks_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
|
||||
{
|
||||
if (e.Cancelled)
|
||||
{
|
||||
// Print to screen
|
||||
Log.Information("Startup tasks canceled");
|
||||
}
|
||||
else if (e.Error != null)
|
||||
{
|
||||
// Print to screen
|
||||
Log.Error("Startup tasks failed");
|
||||
Log.Error(e.Error.Message);
|
||||
}
|
||||
else
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
// Print to screen
|
||||
Log.Information("Ready");
|
||||
|
||||
// Update the status message label.
|
||||
UpdateStatusMessageLabel("Ready");
|
||||
|
||||
// Enable all of the buttons.
|
||||
Invoke(new EnableAllButtonsDelegate(EnableAllButtons));
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region GUI Methods
|
||||
|
||||
/// <summary>
|
||||
/// Cancels the current backgroundworker.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void Cancel_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (bgwBuildDat.WorkerSupportsCancellation == true)
|
||||
{
|
||||
// Print to screen
|
||||
Log.Information("Cancellation pending after current operation ...");
|
||||
|
||||
// Disable the cancel button.
|
||||
tssbCancel.Enabled = false;
|
||||
|
||||
// Cancel the asynchronous operation.
|
||||
bgwBuildDat.CancelAsync();
|
||||
|
||||
// Update the status message label.
|
||||
UpdateStatusMessageLabel("Cancellation Pending ...");
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Updates/Sets the application title.
|
||||
/// </summary>
|
||||
/// <param name="strTitle"></param>
|
||||
/// <returns></returns>
|
||||
public bool UpdateTitle(string strTitle = "")
|
||||
{
|
||||
try
|
||||
{
|
||||
if (this.InvokeRequired && !this.IsDisposed)
|
||||
{
|
||||
Invoke(new MethodInvoker(delegate ()
|
||||
{
|
||||
// Update the application title.
|
||||
this.Text = DEA.AppName + " v" + DEA.AppVersion + strTitle;
|
||||
}));
|
||||
}
|
||||
else if (!this.IsDisposed)
|
||||
{
|
||||
// Update the application title.
|
||||
this.Text = DEA.AppName + " v" + DEA.AppVersion + strTitle;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Updates the progress status message label.
|
||||
/// </summary>
|
||||
/// <param name="strMsg"></param>
|
||||
private void UpdateStatusMessageLabel(string strMsg)
|
||||
{
|
||||
// Update the progress status message label.
|
||||
tsslStatusMessage.Text = strMsg;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// After the form is shown, run the startup tasks.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void Form_Shown(object sender, EventArgs e)
|
||||
{
|
||||
// Perform the application startup tasks.
|
||||
bgwStartupTasks.RunWorkerAsync();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Exits the WinForm app.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void ExitApp_Click(object sender, EventArgs e)
|
||||
{
|
||||
Application.Exit();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Exits the Forms application.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void Form_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
if (bgwBuildDat.IsBusy == true)
|
||||
{
|
||||
if (MessageBox.Show("The dat builder is currently running. Are you sure you want to exit now? Exiting now may cause corrupt or incomplete files!", "Confirm Exit", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
|
||||
{
|
||||
e.Cancel = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Changes the path to the Dats directory.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void PathDatsDir_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Disable all buttons.
|
||||
DisableAllButtons();
|
||||
|
||||
if (txtPathDatsDir.Text == "") { txtPathDatsDir.Text = "Dats"; }
|
||||
|
||||
// Create and initialize a FolderBrowserDialog for the Dats directory.
|
||||
FolderBrowserDialog fbdSelectDir = new FolderBrowserDialog
|
||||
{
|
||||
ShowNewFolderButton = true,
|
||||
Description = "Please enter a path to the Dats directory: ",
|
||||
SelectedPath = Path.GetFullPath(Path.Combine(txtPathDatsDir.Text))
|
||||
};
|
||||
|
||||
// Determine if the user selected OK from the FolderBrowserDialog.
|
||||
if (fbdSelectDir.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
// Set both variables for compatibility for Windows .Net and Mono.
|
||||
this.DEA.PathDatsDir = fbdSelectDir.SelectedPath;
|
||||
txtPathDatsDir.Text = fbdSelectDir.SelectedPath;
|
||||
}
|
||||
|
||||
// Enable all buttons.
|
||||
EnableAllButtons();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Changes the path to the ROMs directory.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void PathROMsDir_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Disable all buttons.
|
||||
DisableAllButtons();
|
||||
|
||||
if (txtPathROMsDir.Text == "") { txtPathROMsDir.Text = "ROMs"; }
|
||||
|
||||
// Create and initialize a FolderBrowserDialog for the ROMs directory.
|
||||
FolderBrowserDialog fbdSelectDir = new FolderBrowserDialog
|
||||
{
|
||||
ShowNewFolderButton = true,
|
||||
Description = "Please enter a path to the ROMs directory: ",
|
||||
SelectedPath = Path.GetFullPath(Path.Combine(txtPathROMsDir.Text))
|
||||
};
|
||||
|
||||
// Determine if the user selected OK from the FolderBrowserDialog.
|
||||
if (fbdSelectDir.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
// Set both variables for compatibility for Windows .NET and Mono.
|
||||
this.DEA.PathROMsDir = fbdSelectDir.SelectedPath;
|
||||
txtPathROMsDir.Text = fbdSelectDir.SelectedPath;
|
||||
}
|
||||
|
||||
// Enable all buttons.
|
||||
EnableAllButtons();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Builds a dat.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void BuildDat_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Select the Log tab.
|
||||
if (tcMain.TabPages.Contains(tabLog)) { tcMain.SelectTab(tabLog); }
|
||||
|
||||
// Disable all buttons.
|
||||
DisableAllButtons();
|
||||
|
||||
// Enable the cancel button.
|
||||
tssbCancel.Enabled = true;
|
||||
|
||||
// Update the status message label.
|
||||
UpdateStatusMessageLabel("Building Dat ...");
|
||||
|
||||
// Update the DateTimeFormatted variable.
|
||||
DEA.DateTimeFormatted = DateTime.Now.ToString("yyyyMMdd_HHmmss");
|
||||
|
||||
// Build a dat.
|
||||
bgwBuildDat.RunWorkerAsync();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Loads an options file.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void LoadOptions_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Disable all buttons.
|
||||
DisableAllButtons();
|
||||
|
||||
// Create and initialize an OpenFileDialog for the options file.
|
||||
OpenFileDialog ofdOptions = new OpenFileDialog
|
||||
{
|
||||
DefaultExt = "*.xml",
|
||||
Filter = "XML Files|*.xml",
|
||||
Title = "Please enter a path to the options file: ",
|
||||
InitialDirectory = Path.Combine(Application.StartupPath, "Options")
|
||||
};
|
||||
|
||||
// Determine if the user selected a file name from the OpenFileDialog.
|
||||
if (ofdOptions.ShowDialog() == DialogResult.OK && ofdOptions.FileName.Length > 0)
|
||||
{
|
||||
// Set the options file path.
|
||||
DEA.PathOptionsFile = ofdOptions.FileName;
|
||||
|
||||
// Select the Log tab.
|
||||
if (tcMain.TabPages.Contains(tabLog)) { tcMain.SelectTab(tabLog); }
|
||||
|
||||
// Load the options.
|
||||
DEA.LoadOptionsFromFile();
|
||||
|
||||
// Print to screen
|
||||
Log.Information("Ready");
|
||||
}
|
||||
|
||||
// Dispose of the OpenFileDialog.
|
||||
ofdOptions.Dispose();
|
||||
|
||||
// Enable all buttons.
|
||||
EnableAllButtons();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Saves an options file.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void SaveOptions_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Disable all buttons.
|
||||
DisableAllButtons();
|
||||
|
||||
// Create and initialize a SaveFileDialog for the options file.
|
||||
SaveFileDialog sfdOptions = new SaveFileDialog
|
||||
{
|
||||
DefaultExt = "*.xml",
|
||||
Filter = "XML Files|*.xml",
|
||||
FileName = "DatEmAll-Options.xml",
|
||||
Title = "Please enter a path to the options file: ",
|
||||
InitialDirectory = Path.Combine(Application.StartupPath, "Options")
|
||||
};
|
||||
|
||||
// Determine if the user selected a file name from the SaveFileDialog.
|
||||
if (sfdOptions.ShowDialog() == DialogResult.OK && sfdOptions.FileName.Length > 0)
|
||||
{
|
||||
// Set the options file path.
|
||||
DEA.PathOptionsFile = sfdOptions.FileName;
|
||||
|
||||
// Select the Log tab.
|
||||
if (tcMain.TabPages.Contains(tabLog)) { tcMain.SelectTab(tabLog); }
|
||||
|
||||
// Save the options.
|
||||
DEA.SaveOptionsToFile();
|
||||
|
||||
// Print to screen
|
||||
Log.Information("Ready");
|
||||
}
|
||||
|
||||
// Dispose of the SaveFileDialog.
|
||||
sfdOptions.Dispose();
|
||||
|
||||
// Enable all buttons.
|
||||
EnableAllButtons();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Saves the log to a text file.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void SaveLog_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Disable all buttons.
|
||||
DisableAllButtons();
|
||||
|
||||
// Create and initialize a SaveFileDialog for the log file.
|
||||
SaveFileDialog sfdLog = new SaveFileDialog
|
||||
{
|
||||
DefaultExt = "*.txt",
|
||||
Filter = "TXT Files|*.txt",
|
||||
FileName = "DatEmAll-Log-" + DateTime.Now.ToString("yyyyMMdd_HHmmss") + ".txt",
|
||||
Title = "Please enter a path to the log file: ",
|
||||
InitialDirectory = Path.Combine(Application.StartupPath, "Logs")
|
||||
};
|
||||
|
||||
// Determine if the user selected a log filename.
|
||||
if (sfdLog.ShowDialog() == DialogResult.OK && sfdLog.FileName.Length > 0)
|
||||
{
|
||||
// Set the log file path.
|
||||
DEA.PathLogFile = sfdLog.FileName;
|
||||
|
||||
// Select the Log tab.
|
||||
if (tcMain.TabPages.Contains(tabLog)) { tcMain.SelectTab(tabLog); }
|
||||
|
||||
// Save the log.
|
||||
SaveLogToFile(DEA.PathLogFile);
|
||||
|
||||
// Print to screen
|
||||
Log.Information("Ready");
|
||||
}
|
||||
|
||||
// Dispose of the SaveFileDialog.
|
||||
sfdLog.Dispose();
|
||||
|
||||
// Enable all buttons.
|
||||
EnableAllButtons();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Toggles the visibility of the log.
|
||||
/// </summary>
|
||||
private void ViewLog_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (tsmiLog.Checked)
|
||||
{
|
||||
tsmiLog.Checked = false;
|
||||
tsmiLog.CheckState = CheckState.Unchecked;
|
||||
tcMain.TabPages.Remove(tabLog);
|
||||
}
|
||||
else
|
||||
{
|
||||
tsmiLog.Checked = true;
|
||||
tsmiLog.CheckState = CheckState.Checked;
|
||||
tcMain.TabPages.Add(tabLog);
|
||||
tcMain.SelectTab(tabLog);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Toggles the visibility of the options.
|
||||
/// </summary>
|
||||
private void ViewOptions_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (tsmiOptions.Checked)
|
||||
{
|
||||
tsmiOptions.Checked = false;
|
||||
tsmiOptions.CheckState = CheckState.Unchecked;
|
||||
tcMain.TabPages.Remove(tabOptions);
|
||||
}
|
||||
else
|
||||
{
|
||||
tsmiOptions.Checked = true;
|
||||
tsmiOptions.CheckState = CheckState.Checked;
|
||||
tcMain.TabPages.Add(tabOptions);
|
||||
tcMain.SelectTab(tabOptions);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Toggles the visibility of the help.
|
||||
/// </summary>
|
||||
private void ViewHelp_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (tsmiHelp.Checked)
|
||||
{
|
||||
tsmiHelp.Checked = false;
|
||||
tsmiHelp.CheckState = CheckState.Unchecked;
|
||||
tcMain.TabPages.Remove(tabHelp);
|
||||
}
|
||||
else
|
||||
{
|
||||
tsmiHelp.Checked = true;
|
||||
tsmiHelp.CheckState = CheckState.Checked;
|
||||
tcMain.TabPages.Add(tabHelp);
|
||||
tcMain.SelectTab(tabHelp);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Toggles the visibility of the license.
|
||||
/// </summary>
|
||||
private void ViewLicense_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (tsmiLicense.Checked)
|
||||
{
|
||||
tsmiLicense.Checked = false;
|
||||
tsmiLicense.CheckState = CheckState.Unchecked;
|
||||
tcMain.TabPages.Remove(tabLicense);
|
||||
}
|
||||
else
|
||||
{
|
||||
tsmiLicense.Checked = true;
|
||||
tsmiLicense.CheckState = CheckState.Checked;
|
||||
tcMain.TabPages.Add(tabLicense);
|
||||
tcMain.SelectTab(tabLicense);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Toggles the visibility of the registration.
|
||||
/// </summary>
|
||||
private void ViewRegistration_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (tsmiRegistration.Checked)
|
||||
{
|
||||
tsmiRegistration.Checked = false;
|
||||
tsmiRegistration.CheckState = CheckState.Unchecked;
|
||||
tcMain.TabPages.Remove(tabRegistration);
|
||||
}
|
||||
else
|
||||
{
|
||||
tsmiRegistration.Checked = true;
|
||||
tsmiRegistration.CheckState = CheckState.Checked;
|
||||
tcMain.TabPages.Add(tabRegistration);
|
||||
tcMain.SelectTab(tabRegistration);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Toggles the visibility of the Donations.
|
||||
/// </summary>
|
||||
private void ViewDonations_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (tsmiDonations.Checked)
|
||||
{
|
||||
tsmiDonations.Checked = false;
|
||||
tsmiDonations.CheckState = CheckState.Unchecked;
|
||||
tcMain.TabPages.Remove(tabDonations);
|
||||
}
|
||||
else
|
||||
{
|
||||
tsmiDonations.Checked = true;
|
||||
tsmiDonations.CheckState = CheckState.Checked;
|
||||
tcMain.TabPages.Add(tabDonations);
|
||||
tcMain.SelectTab(tabDonations);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Toggles the visibility of the toolbar.
|
||||
/// </summary>
|
||||
private void ViewToolbar_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (tsMain.Visible)
|
||||
{
|
||||
tsMain.Visible = false;
|
||||
tsmiToolbar.Checked = false;
|
||||
tsmiToolbar.CheckState = CheckState.Unchecked;
|
||||
}
|
||||
else
|
||||
{
|
||||
tsMain.Visible = true;
|
||||
tsmiToolbar.Checked = true;
|
||||
tsmiToolbar.CheckState = CheckState.Checked;
|
||||
}
|
||||
}
|
||||
|
||||
private delegate void EnableAllButtonsDelegate();
|
||||
|
||||
/// <summary>
|
||||
/// Enables all of the buttons.
|
||||
/// </summary>
|
||||
private void EnableAllButtons()
|
||||
{
|
||||
// Enable all Menu Item buttons.
|
||||
tsmiCommands.Enabled = true;
|
||||
tsmiBuildDat.Enabled = true;
|
||||
tsmiLoadOptions.Enabled = true;
|
||||
tsmiSaveOptions.Enabled = true;
|
||||
tsmiSaveLog.Enabled = true;
|
||||
tsmiExit.Enabled = true;
|
||||
|
||||
// Enable all Toolbar buttons.
|
||||
tsbBuildDat.Enabled = true;
|
||||
tsbLoadOptions.Enabled = true;
|
||||
tsbSaveOptions.Enabled = true;
|
||||
tsbSaveLog.Enabled = true;
|
||||
|
||||
// Enable all Options checkboxes and textboxes and comboboxes.
|
||||
chkIncludeCRC32Hash.Enabled = true;
|
||||
chkIncludeFileSize.Enabled = true;
|
||||
chkIncludeMD5Hash.Enabled = true;
|
||||
chkIncludeSHA1Hash.Enabled = true;
|
||||
chkIncludeFileSize.Enabled = true;
|
||||
chkAppendGameCountToFilename.Enabled = true;
|
||||
chkAppendGameCountToDescription.Enabled = true;
|
||||
chkAppendVersionToFilename.Enabled = true;
|
||||
chkAppendVersionToDescription.Enabled = true;
|
||||
chkIncludeROMDirRootFiles.Enabled = true;
|
||||
txtDatFilename.Enabled = true;
|
||||
cbXMLEncoding.Enabled = true;
|
||||
cbXMLDOCTYPE.Enabled = true;
|
||||
chkIncludeDefaultHeaderName.Enabled = true;
|
||||
chkIncludeDefaultHeaderDescription.Enabled = true;
|
||||
chkIncludeDefaultHeaderVersion.Enabled = true;
|
||||
chkIncludeDefaultHeaderDate.Enabled = true;
|
||||
chkIncludeDefaultHeaderAuthor.Enabled = true;
|
||||
chkIncludeDefaultHeaderEmail.Enabled = true;
|
||||
chkIncludeDefaultHeaderHomepage.Enabled = true;
|
||||
chkIncludeDefaultHeaderURL.Enabled = true;
|
||||
chkIncludeDefaultHeaderComment.Enabled = true;
|
||||
chkIncludeDefaultHeaderCategory.Enabled = true;
|
||||
chkIncludeDefaultHeaderCMPForceUnzip.Enabled = true;
|
||||
txtOverrideHeaderName.Enabled = true;
|
||||
txtOverrideHeaderDescription.Enabled = true;
|
||||
txtOverrideHeaderVersion.Enabled = true;
|
||||
txtOverrideHeaderDate.Enabled = true;
|
||||
txtOverrideHeaderAuthor.Enabled = true;
|
||||
txtOverrideHeaderEmail.Enabled = true;
|
||||
txtOverrideHeaderHomepage.Enabled = true;
|
||||
txtOverrideHeaderURL.Enabled = true;
|
||||
txtOverrideHeaderComment.Enabled = true;
|
||||
txtOverrideHeaderCategory.Enabled = true;
|
||||
txtDownloadEmAllUsername.Enabled = true;
|
||||
txtDownloadEmAllPassword.Enabled = true;
|
||||
txtPathDatsDir.Enabled = true;
|
||||
txtPathROMsDir.Enabled = true;
|
||||
chkCheckForLatestVersion.Enabled = true;
|
||||
chkCheckSSLCertificates.Enabled = true;
|
||||
chkSendErrorReports.Enabled = true;
|
||||
cbLanguageLocality.Enabled = true;
|
||||
cbLogLevel.Enabled = true;
|
||||
}
|
||||
|
||||
private delegate void DisableAllButtonsDelegate();
|
||||
|
||||
/// <summary>
|
||||
/// Disables all of the buttons.
|
||||
/// </summary>
|
||||
private void DisableAllButtons()
|
||||
{
|
||||
// Disable all Menu Item buttons.
|
||||
tsmiCommands.Enabled = false;
|
||||
tsmiBuildDat.Enabled = false;
|
||||
tsmiLoadOptions.Enabled = false;
|
||||
tsmiSaveOptions.Enabled = false;
|
||||
tsmiSaveLog.Enabled = false;
|
||||
tsmiExit.Enabled = false;
|
||||
|
||||
// Disable all Toolbar buttons.
|
||||
tsbBuildDat.Enabled = false;
|
||||
tsbLoadOptions.Enabled = false;
|
||||
tsbSaveOptions.Enabled = false;
|
||||
tsbSaveLog.Enabled = false;
|
||||
|
||||
// Disable all Options checkboxes and textboxes and comboboxes.
|
||||
chkIncludeCRC32Hash.Enabled = false;
|
||||
chkIncludeFileSize.Enabled = false;
|
||||
chkIncludeMD5Hash.Enabled = false;
|
||||
chkIncludeSHA1Hash.Enabled = false;
|
||||
chkIncludeFileSize.Enabled = false;
|
||||
chkAppendGameCountToFilename.Enabled = false;
|
||||
chkAppendGameCountToDescription.Enabled = false;
|
||||
chkAppendVersionToFilename.Enabled = false;
|
||||
chkAppendVersionToDescription.Enabled = false;
|
||||
chkIncludeROMDirRootFiles.Enabled = false;
|
||||
txtDatFilename.Enabled = false;
|
||||
cbXMLEncoding.Enabled = false;
|
||||
cbXMLDOCTYPE.Enabled = false;
|
||||
chkIncludeDefaultHeaderName.Enabled = false;
|
||||
chkIncludeDefaultHeaderDescription.Enabled = false;
|
||||
chkIncludeDefaultHeaderVersion.Enabled = false;
|
||||
chkIncludeDefaultHeaderDate.Enabled = false;
|
||||
chkIncludeDefaultHeaderAuthor.Enabled = false;
|
||||
chkIncludeDefaultHeaderEmail.Enabled = false;
|
||||
chkIncludeDefaultHeaderHomepage.Enabled = false;
|
||||
chkIncludeDefaultHeaderURL.Enabled = false;
|
||||
chkIncludeDefaultHeaderComment.Enabled = false;
|
||||
chkIncludeDefaultHeaderCategory.Enabled = false;
|
||||
chkIncludeDefaultHeaderCMPForceUnzip.Enabled = false;
|
||||
txtOverrideHeaderName.Enabled = false;
|
||||
txtOverrideHeaderDescription.Enabled = false;
|
||||
txtOverrideHeaderVersion.Enabled = false;
|
||||
txtOverrideHeaderDate.Enabled = false;
|
||||
txtOverrideHeaderAuthor.Enabled = false;
|
||||
txtOverrideHeaderEmail.Enabled = false;
|
||||
txtOverrideHeaderHomepage.Enabled = false;
|
||||
txtOverrideHeaderURL.Enabled = false;
|
||||
txtOverrideHeaderComment.Enabled = false;
|
||||
txtOverrideHeaderCategory.Enabled = false;
|
||||
txtDownloadEmAllUsername.Enabled = false;
|
||||
txtDownloadEmAllPassword.Enabled = false;
|
||||
txtPathDatsDir.Enabled = false;
|
||||
txtPathROMsDir.Enabled = false;
|
||||
chkCheckForLatestVersion.Enabled = false;
|
||||
chkCheckSSLCertificates.Enabled = false;
|
||||
chkSendErrorReports.Enabled = false;
|
||||
cbLanguageLocality.Enabled = false;
|
||||
cbLogLevel.Enabled = false;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Builders
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void BuildDat_DoWork(object sender, DoWorkEventArgs e)
|
||||
{
|
||||
// Run dat builder.
|
||||
DEA.BuildADat(sender, e);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void BuildDat_ProgressChanged(object sender, ProgressChangedEventArgs e)
|
||||
{
|
||||
// Display the changed progress status.
|
||||
// UpdateStatusBuildProgress(e.ProgressPercentage);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void BuildDat_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
|
||||
{
|
||||
if (e.Cancelled)
|
||||
{
|
||||
// Print to screen
|
||||
Log.Information("Dat builder canceled");
|
||||
}
|
||||
else if (e.Error != null)
|
||||
{
|
||||
// Print to screen
|
||||
Log.Error("Dat builder failed");
|
||||
Log.Error(e.Error.Message);
|
||||
}
|
||||
else
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
// Reset the progress status.
|
||||
// UpdateStatusBuildProgress(0);
|
||||
|
||||
// Disable the cancel button.
|
||||
tssbCancel.Enabled = false;
|
||||
|
||||
// Print to screen
|
||||
Log.Information("Ready");
|
||||
|
||||
// Update the status message label.
|
||||
UpdateStatusMessageLabel("Ready");
|
||||
|
||||
// Enable all buttons.
|
||||
Invoke(new EnableAllButtonsDelegate(EnableAllButtons));
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
215
DatEmAll-GUI/FrmDatEmAll.resx
Normal file
@@ -0,0 +1,215 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="msMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="tsMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>112, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ssMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>200, 17</value>
|
||||
</metadata>
|
||||
<metadata name="bgwBuildDat.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>433, 17</value>
|
||||
</metadata>
|
||||
<metadata name="bgwStartupTasks.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>289, 17</value>
|
||||
</metadata>
|
||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>43</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAvnkASb55AMy+eQD2vnkA+r55AP++eQD/vnkA/755AP++eQD/vnkA/755AP++eQD/vnkA/755
|
||||
AP++eQD/vnkA/755AP++eQD/vnkA/755AP++eQD/vnkA/755AP++eQD/vnkA/755AP++eQD6vnkA9r55
|
||||
AMy+eQBJAAAAAL13AE29dwD2vXcA/713AP+9dwD/vXcA/713AP+9dwD/vXcA/713AP+9dwD/vXcA/713
|
||||
AP+9dwD/vXcA/713AP+9dwD/vXcA/713AP+9dwD/vXcA/713AP+9dwD/vXcA/713AP+9dwD/vXcA/713
|
||||
AP+9dwD/vXcA/713APe9dwBJvHYA37x2AP+8dgD/vHYA/7x2AP+8dgD/vHYA/7x2AP+8dgD/vHYA/7x2
|
||||
AP+8dgD/vHYA/7x2AP+8dgD/vHYA/7x2AP+8dgD/vHYA/7x2AP+8dgD/vHYA/7x2AP+8dgD/vHYA/7x2
|
||||
AP+8dgD/vHYA/7x2AP+8dgD/vHYA/7x2ANe7dAD/u3QA/7t0AP+7dAD/u3QA/7t0AP+7dAD/u3QA/7t0
|
||||
AP+7dAD/u3QA/7t0AP+7dAD/u3QA/7t0AP+7dAD/u3QA/7t0AP+7dAD/u3QA/7t0AP+7dAD/u3QA/7t0
|
||||
AP+7dAD/u3QA/7t0AP+7dAD/u3QA/7t0AP+7dAD/u3QA/7pzAP+6dAr/vXkj/79/Nv/BhUf/wohP/8KI
|
||||
T//Ch03/wodM/8KGS//Ch0v/wodL/8KHS//Ch0v/wodL/8KHS//Ch0v/wodL/8KHS//Chkv/wodM/8GF
|
||||
R/+/fzb/vXoj/7t1Dv+6cwD/unMA/7pzAP+6cwD/unMA/7pzAP+6cwD/uXEA/7x4JP/Gj1H/0aZ4/9q6
|
||||
mv/fw6n/38Op/97Bpv/dv6H/3b6h/92+of/dvqH/3b6h/92+of/dvqH/3b6h/92+of/dvqH/3b6h/92+
|
||||
of/dvqH/2riY/9GmeP/Hj0//vXoj/7lyAP+5cgD/uXIA/7lyAP+5cgD/uXIA/7lyAP+3bwD/ungn/8iT
|
||||
WP/Wr4P/48iq/+zYwv/w4c7/8uTT//Hk1P/x5NT/8eTU//Hk1P/x5NT/8eTU//Hk1P/x5NT/8eTU//Hk
|
||||
1P/x5NT/8eTT//Hk1P/u3sz/5c20/9m2k//Km3D/v4VK/7p2Iv+3cAD/t3AA/7dwAP+3cAD/t3AA/7Zv
|
||||
AP+3chT/vH00/8WPV//Sp3v/4MOl/+7fzf/37uP/+vXv//v38v/69vH/+vbx//r28f/69vH/+vbx//r2
|
||||
8f/69vH/+vbx//r28f/69vH/+/bx//r07//27+n/8OTZ/+TOt//Urov/wYdO/7lyDv+2cAX/tm8A/7Zv
|
||||
AP+2bwD/tW0A/7VtAP+1bQD/uHMc/8GFQf/PpHv/38Wu/+razP/y6OD/+PLs//z6+P///v7/////////
|
||||
///////////////////////////////////////////////////9+/j/9ezh/+jWxP/Zu6X/zKF//8GK
|
||||
VP+6eC7/tW0L/7VtAP+0bAD/tGwA/7RsAP+1bQj/t3Me/7t9Pv/Bi17/y6B7/9q5nP/q2Mf/9+/o//z5
|
||||
9v/+/f3//v79//79/f/+/f3//v39//79/f/+/f3//v39//79/f/+/v3//v79//38+//7+PX/+fTw//Ts
|
||||
5//n08P/062F/8GKT/+1bxr/tGsA/7NrAf+zawH/s2sB/7NrAf+zawH/s2sB/7NrAf+4dST/xI5Y/9Kt
|
||||
kP/fx7b/59bJ/+3e0v/t39P/7d/U/+3f1P/t39T/7d/U/+3f1P/t39T/7d/U/+3g1P/u4NX/7uHV/+/h
|
||||
1v/v49j/7+HW/+bQuv/Ys4v/yJRd/7l2Kv+zbAX/smkD/7JqBv+zaxD/tG0X/7RuGv+0bhn/tG0Z/7Vv
|
||||
If+2czD/uXtF/7+IW//KnHL/0al//9Osgv/UrYT/1K2E/9SthP/UrYT/1K2E/9SthP/UrYT/1K2E/9Su
|
||||
hv/Vr4j/1rGK/9ezjf/Ys43/17GI/9Oqe//JlV//vHwz/7NsDv+xaAj/s2wZ/7p7OP/Ahkj/wYlO/8GI
|
||||
TP/AhUX/v4NB/72BPv+9fjf/vYAz/8OJQf/Ikkz/yZNO/8mUUP/JlFD/yZRQ/8mUUP/JlFD/yZRQ/8mU
|
||||
UP/HkU3/wohD/8CEQf/Bh0j/wolM/8KKUP/Ejlb/xI5Z/7+DSP+3dCj/smoO/7BmDP+zbiL/wIZI/8qZ
|
||||
Yv/QpHT/06p+/9Osg//TrIX/0quD/9Kpgv/RqH//0Kd+/9CmfP/Qpnz/0KZ8/9CmfP/Qpnz/0KZ8/9Cm
|
||||
fP/Qpnz/0aZ8/86hd//EkWj/vIJV/7h4Pf+1cSr/s20j/7JsIf+ybSH/smsb/7FpEf+wZw3/r2UQ/7Jr
|
||||
IP+8fj7/yZho/9i1k//kzLX/69vN/+7g1f/t39T/7d7T/+zd0v/s3dL/693S/+vd0v/r3dH/693R/+vd
|
||||
0f/r3dH/693R/+vd0f/s3dL/6trO/+TRxP/Zvan/yJly/7l5Nv+wZg//r2UQ/69lEP+vZRD/r2UQ/69l
|
||||
EP+uZBL/sGca/7VyK//CjmD/1rSY/+XSwf/w5+D/9/Ht//r39P/9+/n//v39//7+/f/+/f3//v39//79
|
||||
/f/+/f3//v39//79/f/+/f3//v39//7+/f/9/Pv/+/f0//Hm3f/fxa7/zaSC/76JYv+1dUL/sGki/65k
|
||||
Ef+uZBL/rmQS/65kFP+vZRf/sWkd/7Z1Pv++iWL/yJ6A/9Sznf/izLz/8ebb//r28f//////////////
|
||||
/////////////////////////////////////////////////////v3/+/j1//Ts5v/q2s7/28Cq/8md
|
||||
fP+3dj7/sGYQ/65kFf+uZBT/sWcY/7FnGP+xZxj/sWcY/7FnGP+0bST/vH5E/8ugff/dwq3/6drN//Lq
|
||||
4v/38u3/+/bz//v49P/7+PT/+/j0//v49P/7+PT/+/j0//v49P/7+PT/+/j0//v39P/7+PT/+/j0//fv
|
||||
5//t3M3/3L+n/8qdev+8glH/tG8r/7FoGf+zax3/s2sd/7NrHf+zax3/s2sd/7NrHP+1byf/unxG/8GN
|
||||
Zv/LoYH/2Lif/+bQv//v4dT/8eXY//Hl2f/x5dn/8eXZ//Hl2f/x5dn/8eXZ//Hl2f/x5tr/8+bb//Ln
|
||||
3f/z6N7/8ufd//Hj1//q2Mj/38St/82jf/+6ez//tGwf/7VvI/+0bSH/tG0g/7RsHf+yaRv/smcb/7Fm
|
||||
HP+wZBz/sWUb/7VxJv+/hlX/zKSF/9a3oP/Yu6X/2Lum/9i7pv/Yu6b/2Lum/9i7pv/Yu6b/2Lul/9m8
|
||||
p//bvqr/3MGs/93Crv/exbL/38e1/93Dr//Wtp7/xph2/7h3Ov+2cCT/uHEn/7RrIv+0bCj/tW8w/7Vx
|
||||
Of+0cT7/tHFA/7NxP/+ybz//s29A/7NzSP+4fVf/u4Vi/7yHZP+8h2X/vIdl/7yHZf+8h2X/vIdl/7yH
|
||||
Zf+8hmT/vYdj/8GLY//EjGH/wope/8KKXv/BiV//v4Vb/7t+UP+0cTz/smol/7hyKP+7dyz/uHQx/7x/
|
||||
Sf/Ekmz/z6qT/9W4qP/XvLD/1ryv/9S4qv/Ttqj/07Wn/9O1pv/TtaX/07Wl/9O1pf/TtaX/07Wl/9O1
|
||||
pf/TtaX/07Wl/9O1pf/SsZ7/z6SE/8aQYf+5dC//tWkm/7pzK/+6cyz/t28n/7dvKP+4cSn/vXku/8B9
|
||||
M/+/fz7/x5Ff/9Kriv/kzb3/7+LZ//Ts5v/27+v/9u/p//Xu6P/17ef/9Ozm//Ts5f/07OX/9Ovl//Tr
|
||||
5f/06+X/9Ovl//Tr5f/06+X/9Ozl//Lm3f/n08D/17Wb/8GPbv+6e0n/wH89/8KAN//Dgzz/xodJ/8KB
|
||||
Of/CgDX/xoY7/8aGQf/Lk1z/z591/9KulP/cwrH/6trN//Xt5v/9+/j///78//78+v/+/Pn//fv5//37
|
||||
+f/9+/n//fv5//37+f/9+/n//fv5//37+P/9+/n/+/j0//Xt5v/s3tP/38m7/9Kvl//Hk2L/x4pH/8yQ
|
||||
Uv/MkVP/yIk//8eHO//LjkH/zI9E/9GXV//Nk1b/woRM/8aUbf/auJz/6dbG//Ps5//59fL//Pn3//79
|
||||
/P////////////////////////////////////////////////////7///7+//z6+P/48ev/6dnN/9a0
|
||||
m//Ronv/06Bt/9CYXv/JjET/yo1A/9CVSP/Rlkr/1Z5c/9SbW//NklH/zpdc/9amdv/Xro3/1rel/+LO
|
||||
wP/x5tz/+vbz//////////////////////////////////////////////////////////////////79
|
||||
+//48/D/8Obf/+fTxP/du53/zJty/8KEQv/NkUT/1p1O/9eeUP/apWH/26Zj/9ulYv/bpWL/2qRi/9GZ
|
||||
WP/IkFv/1a2L/+XMtv/s3tP/8Ofi//Ho4//x6OP/8ejj//Ho4//x6OP/8ejj//Ho4//x6OP/8ejj//Ho
|
||||
4//x6OP/8ejj//Ho5P/w5uH/59bK/9m5of/Dkm7/vHo9/9GXSP/bpVT/3KZV/9+sZv/grmn/4K1o/+Ct
|
||||
aP/grWj/3Khj/9mkYv/drXP/37SE/9Wui//Op4//zaiQ/86pkf/OqZH/zqmR/86pkf/OqZH/zqmR/86p
|
||||
kf/OqZH/zqmR/86pkf/OqZH/zqqT/86qkv/MpIb/x5dx/7yBUv++fjz/1p5P/+GuW//hrlr/47Fl/+W2
|
||||
cP/ltW//5bVu/+W1bv/ltW7/5bVu/+W1bv/jsmz/2qdh/9KdWv/SnVr/055b/9OeW//Tnlv/055b/9Oe
|
||||
W//Tnlv/055b/9OeW//Tnlv/055b/9OeW//Tnlv/055b/9SgXv/UoWH/0JpV/9OcTv/fq1n/57di/ue3
|
||||
Yv/nt2L/6bpr/+q9cv/qvXP/6rxz/+q8c//qvHP/6r1z/+q8c//pu3L/6bxy/+m8cv/pu3L/6bty/+m7
|
||||
cv/pu3L/6bxy/+m8cv/pu3L/6bty/+m8cv/pu3L/6bty/+m7cv/pvHL/6bxx/+i6av/mtmH/5rZh/+e3
|
||||
Yv7swGmp7cFq/+7Bav/uwWn/7sJq/+7Ba//uwWv/7sFr/+7Ba//uwmv/7sFr/+7Ba//uwmv/7sJr/+7B
|
||||
a//uwWv/7sFr/+7Ba//uwmv/7sJr/+7Ba//uwWv/7sJr/+7Ba//uwWv/7sFr/+7Ba//uwmr/7sFp/+7B
|
||||
av/twWr/7MBprQAAAADxyW+w9Mtx/vTMcf/0zHH/9Mtx//TLcf/0y3H/9Mtx//TMcf/0zHH/9Mxx//TM
|
||||
cf/0zHH/9Mtx//TLcf/0y3H/9Mtx//TMcf/0zHH/9Mxx//TMcf/0zHH/9Mtx//TLcf/0y3H/9Mtx//TM
|
||||
cf/0zHH/9Mtx/vLJb7UAAAAAgAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAE=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
40
DatEmAll-GUI/Program.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using Serilog;
|
||||
using Serilog.Formatting.Display;
|
||||
using Serilog.Sinks.LogEmAll;
|
||||
|
||||
namespace DatEmAll_GUI
|
||||
{
|
||||
/// <summary>
|
||||
/// The Main Program Class.
|
||||
/// </summary>
|
||||
static class Program
|
||||
{
|
||||
/// <summary>
|
||||
/// The main entry point for the application.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
ConfigureSerilog();
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
Application.Run(new FrmDatEmAll());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Configure the logger.
|
||||
/// </summary>
|
||||
public static void ConfigureSerilog()
|
||||
{
|
||||
Log.Logger = new LoggerConfiguration()
|
||||
.MinimumLevel.Information()
|
||||
.WriteToRichTextBox(new MessageTemplateTextFormatter("{Level:u4}: {Message:lj}{NewLine}{Exception}"))
|
||||
.CreateLogger();
|
||||
}
|
||||
}
|
||||
}
|
||||
36
DatEmAll-GUI/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("DatEmAll-GUI")]
|
||||
[assembly: AssemblyDescription("The Original Automated Datter")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("DatEmAll")]
|
||||
[assembly: AssemblyProduct("DatEmAll-GUI")]
|
||||
[assembly: AssemblyCopyright("Copyright (c) 2020-2025 DatEmAll")]
|
||||
[assembly: AssemblyTrademark("DatEmAll - The Original Automated Datter")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible
|
||||
// to COM components. If you need to access a type in this assembly from
|
||||
// COM, set the ComVisible attribute to true on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||
[assembly: Guid("472c0464-f101-4a66-8d26-e065497aa86d")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// 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("0.0.3")]
|
||||
[assembly: AssemblyFileVersion("0.0.3")]
|
||||
203
DatEmAll-GUI/Properties/Resources.Designer.cs
generated
Normal file
@@ -0,0 +1,203 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace DatEmAll_GUI.Properties {
|
||||
using System;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// A strongly-typed resource class, for looking up localized strings, etc.
|
||||
/// </summary>
|
||||
// This class was auto-generated by the StronglyTypedResourceBuilder
|
||||
// class via a tool like ResGen or Visual Studio.
|
||||
// To add or remove a member, edit your .ResX file then rerun ResGen
|
||||
// with the /str option, or rebuild your VS project.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources() {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns the cached ResourceManager instance used by this class.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("DatEmAll_GUI.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Overrides the current thread's CurrentUICulture property for all
|
||||
/// resource lookups using this strongly typed resource class.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture {
|
||||
get {
|
||||
return resourceCulture;
|
||||
}
|
||||
set {
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Blank_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Blank_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap BuildDat_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("BuildDat_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Cancel_16x16 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Cancel_16x16", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Donate_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Donate_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Exit_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Exit_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Help_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Help_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Key_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Key_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap License_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("License_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap LoadOptions_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("LoadOptions_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Log_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Log_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Options_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Options_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap SaveLog_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("SaveLog_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap SaveOptions_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("SaveOptions_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Toolbar_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Toolbar_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
163
DatEmAll-GUI/Properties/Resources.resx
Normal file
@@ -0,0 +1,163 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="Blank_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Blank_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="BuildDat_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\BuildDat_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Cancel_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Cancel_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Donate_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Donate_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Exit_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Exit_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Help_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Help_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Key_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Key_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="License_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\License_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="LoadOptions_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\LoadOptions_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Log_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Log_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Options_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Options_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="SaveLog_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\SaveLog_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="SaveOptions_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\SaveOptions_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Toolbar_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Toolbar_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
||||
26
DatEmAll-GUI/Properties/Settings.Designer.cs
generated
Normal file
@@ -0,0 +1,26 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace DatEmAll_GUI.Properties {
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default {
|
||||
get {
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
7
DatEmAll-GUI/Properties/Settings.settings
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||
<Profiles>
|
||||
<Profile Name="(Default)" />
|
||||
</Profiles>
|
||||
<Settings />
|
||||
</SettingsFile>
|
||||
BIN
DatEmAll-GUI/Resources/Images/Blank_32x32.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
DatEmAll-GUI/Resources/Images/BuildDat_32x32.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
DatEmAll-GUI/Resources/Images/Cancel_16x16.png
Normal file
|
After Width: | Height: | Size: 933 B |
BIN
DatEmAll-GUI/Resources/Images/Donate_32x32.png
Normal file
|
After Width: | Height: | Size: 3.3 KiB |
BIN
DatEmAll-GUI/Resources/Images/Exit_32x32.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
DatEmAll-GUI/Resources/Images/Help_32x32.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
DatEmAll-GUI/Resources/Images/Key_32x32.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
DatEmAll-GUI/Resources/Images/License_32x32.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
DatEmAll-GUI/Resources/Images/LoadOptions_32x32.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
DatEmAll-GUI/Resources/Images/Log_32x32.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
DatEmAll-GUI/Resources/Images/Options_32x32.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
DatEmAll-GUI/Resources/Images/SaveLog_32x32.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
DatEmAll-GUI/Resources/Images/SaveOptions_32x32.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
DatEmAll-GUI/Resources/Images/Toolbar_32x32.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
5
DatEmAll-GUI/packages.config
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Serilog" version="2.12.0" targetFramework="net48" />
|
||||
<package id="Serilog.Sinks.LogEmAll" version="0.0.7" targetFramework="net48" />
|
||||
</packages>
|
||||