Add project files.

This commit is contained in:
2025-07-29 10:18:44 -06:00
commit 89a7805015
81 changed files with 9939 additions and 0 deletions

6
DatEmAll-GUI/App.config Normal file
View 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

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

View 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

File diff suppressed because it is too large Load Diff

870
DatEmAll-GUI/FrmDatEmAll.cs Normal file
View 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
}
}

View 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
View 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();
}
}
}

View 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")]

View 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));
}
}
}
}

View 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>

View 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;
}
}
}
}

View 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>

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 933 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View 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>