Compare commits

...

2 Commits

Author SHA1 Message Date
068b54a074
Swap MySql.Data for MySqlConnector 2024-11-25 20:52:55 +01:00
6010249694
Add Notes field 2024-11-15 20:21:32 +01:00
16 changed files with 305 additions and 49 deletions

View File

@ -1,4 +1,4 @@
using MySql.Data.MySqlClient;
using MySqlConnector;
using System;
using System.Collections.Generic;
using System.Windows.Forms;

View File

@ -107,6 +107,7 @@
//
// buttonConfig
//
this.buttonConfig.ContextMenuStrip = this.contextMenuNotifyIcon;
this.buttonConfig.Image = global::RCM.Properties.Resources.ConfigIcon;
this.buttonConfig.Location = new System.Drawing.Point(3, 1);
this.buttonConfig.Name = "buttonConfig";

View File

@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuNotifyIcon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>416, 17</value>
</metadata>
<metadata name="timerDataSourceRefresh.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
@ -126,9 +129,6 @@
<metadata name="notifyIcon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>310, 17</value>
</metadata>
<metadata name="contextMenuNotifyIcon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>416, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="notifyIcon.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>

View File

@ -1,10 +1,10 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
// Tento kód byl generován nástrojem.
// Verze modulu runtime:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// Změny tohoto souboru mohou způsobit nesprávné chování a budou ztraceny,
// dojde-li k novému generování kódu.
// </auto-generated>
//------------------------------------------------------------------------------
@ -13,13 +13,13 @@ namespace RCM.Properties {
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// Třída prostředků se silnými typy pro vyhledávání lokalizovaných řetězců atp.
/// </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", "15.0.0.0")]
// Tato třída byla automaticky generována třídou StronglyTypedResourceBuilder
// pomocí nástroje podobného aplikaci ResGen nebo Visual Studio.
// Chcete-li přidat nebo odebrat člena, upravte souboru .ResX a pak znovu spusťte aplikaci ResGen
// s parametrem /str nebo znovu sestavte projekt aplikace Visual Studio.
[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 {
@ -33,7 +33,7 @@ namespace RCM.Properties {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// Vrací instanci ResourceManager uloženou v mezipaměti použitou touto třídou.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
@ -47,8 +47,8 @@ namespace RCM.Properties {
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// Potlačí vlastnost CurrentUICulture aktuálního vlákna pro všechna
/// vyhledání prostředků pomocí třídy prostředků se silnými typy.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
@ -61,7 +61,7 @@ namespace RCM.Properties {
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// Vyhledává lokalizovaný prostředek typu System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap ConfigIcon {
get {

View File

@ -8,12 +8,13 @@
<OutputType>WinExe</OutputType>
<RootNamespace>RCM</RootNamespace>
<AssemblyName>RCM</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
@ -58,26 +59,58 @@
<ApplicationIcon>Program.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup>
<Reference Include="Google.Protobuf">
<HintPath>..\packages\Google.Protobuf.3.10.1\lib\net45\Google.Protobuf.dll</HintPath>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.9.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="Microsoft.VisualBasic" />
<Reference Include="MySql.Data, Version=8.0.15.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
<HintPath>..\packages\MySql.Data.8.0.15\lib\net452\MySql.Data.dll</HintPath>
<Reference Include="Microsoft.Extensions.DependencyInjection.Abstractions, Version=9.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.9.0.0\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
<Reference Include="Microsoft.Extensions.Logging.Abstractions, Version=9.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Extensions.Logging.Abstractions.9.0.0\lib\net462\Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.VisualBasic" />
<Reference Include="MySqlConnector, Version=2.0.0.0, Culture=neutral, PublicKeyToken=d33d3e53aa5f8c92, processorArchitecture=MSIL">
<HintPath>..\packages\MySqlConnector.2.4.0\lib\net48\MySqlConnector.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.6.0\lib\net462\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.ComponentModel" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Configuration.Install" />
<Reference Include="System.Data" />
<Reference Include="System.Data.SQLite, Version=1.0.110.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
<HintPath>..\packages\System.Data.SQLite.Core.1.0.110.0\lib\net46\System.Data.SQLite.dll</HintPath>
<Reference Include="System.Data.SQLite, Version=1.0.119.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\lib\net46\System.Data.SQLite.dll</HintPath>
</Reference>
<Reference Include="System.Diagnostics.DiagnosticSource, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Diagnostics.DiagnosticSource.9.0.0\lib\net462\System.Diagnostics.DiagnosticSource.dll</HintPath>
</Reference>
<Reference Include="System.Drawing" />
<Reference Include="System.Drawing.Design" />
<Reference Include="System.Management" />
<Reference Include="System.Memory, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.6.0\lib\net462\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.6.0\lib\net462\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.1.0\lib\net462\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.1.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.6.0\lib\net462\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Transactions" />
<Reference Include="System.Windows" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ConfigFormTab.cs">
@ -224,6 +257,9 @@
<DependentUpon>WebSite.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Record\WebSite\WebsiteControl.resx">
<DependentUpon>WebSiteControl.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Record\WinBox\WinBox.resx">
<DependentUpon>WinBox.cs</DependentUpon>
<SubType>Designer</SubType>
@ -247,11 +283,11 @@
<Content Include="Program.ico" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="..\packages\System.Data.SQLite.Core.1.0.110.0\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.110.0\build\net46\System.Data.SQLite.Core.targets')" />
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\build\net46\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\build\net46\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
<ErrorText>Tenhle projekt odkazuje na balíčky NuGet, které nejsou v tomhle počítači k dispozici. Když je chcete stáhnout, použijte funkci obnovení balíčků NuGet. Další informace najdete na adrese http://go.microsoft.com/fwlink/?LinkID=322105. Chybějícím souborem je soubor {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.110.0\build\net46\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.110.0\build\net46\System.Data.SQLite.Core.targets'))" />
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\build\net46\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\build\net46\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
</Target>
</Project>

View File

@ -12,6 +12,7 @@ namespace RCM {
public string Host { get; set; }
public string Username { get; set; }
public string Password { get; set; }
public string Notes { get; set; }
[NonSerialized]
private SimpleHostControl _control;
[NonSerialized]
@ -26,7 +27,7 @@ namespace RCM {
public UserControl GetControl() {
if (_control == null || _control.IsDisposed) {
_control = new SimpleHostControl(Host, Username, Password);
_control = new SimpleHostControl(Host, Username, Password, Notes);
}
return _control;
}
@ -35,10 +36,7 @@ namespace RCM {
Host = _control.textBoxHostAddress.Text;
Username = _control.textBoxUsername.Text;
Password = _control.textBoxPassword.Text;
}
public static void Init() {
Notes = _control.textBoxNotes.Text;
}
}
}

View File

@ -11,6 +11,7 @@ namespace RCM {
public string Host { get; set; }
public string Username { get; set; }
public string Password { get; set; }
public string Notes { get; set; }
[NonSerialized]
private SimpleHostControl _control;
[NonSerialized]
@ -25,7 +26,7 @@ namespace RCM {
public UserControl GetControl() {
if (_control == null || _control.IsDisposed) {
_control = new SimpleHostControl(Host, Username, Password);
_control = new SimpleHostControl(Host, Username, Password, Notes);
}
return _control;
}
@ -34,6 +35,7 @@ namespace RCM {
Host = _control.textBoxHostAddress.Text;
Username = _control.textBoxUsername.Text;
Password = _control.textBoxPassword.Text;
Notes = _control.textBoxNotes.Text;
}
}
}

View File

@ -11,6 +11,7 @@ namespace RCM {
public string URL { get; set; }
public string Username { get; set; }
public string Password { get; set; }
public string Notes { get; set; }
[NonSerialized]
private WebSiteControl _control;
[NonSerialized]
@ -34,6 +35,7 @@ namespace RCM {
URL = _control.textBoxURL.Text;
Username = _control.textBoxUsername.Text;
Password = _control.textBoxPassword.Text;
Notes = _control.textBoxNotes.Text;
}
}
}

View File

@ -30,6 +30,8 @@
this.labelPassword = new System.Windows.Forms.Label();
this.labelUsername = new System.Windows.Forms.Label();
this.labelURL = new System.Windows.Forms.Label();
this.textBoxNotes = new System.Windows.Forms.TextBox();
this.labelNotes = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// buttonUnmaskPassword
@ -91,10 +93,30 @@
this.labelURL.TabIndex = 12;
this.labelURL.Text = "URL:";
//
// WebsiteControl
// textBoxNotes
//
this.textBoxNotes.Location = new System.Drawing.Point(120, 79);
this.textBoxNotes.Multiline = true;
this.textBoxNotes.Name = "textBoxNotes";
this.textBoxNotes.ScrollBars = System.Windows.Forms.ScrollBars.Both;
this.textBoxNotes.Size = new System.Drawing.Size(175, 64);
this.textBoxNotes.TabIndex = 5;
//
// labelNotes
//
this.labelNotes.AutoSize = true;
this.labelNotes.Location = new System.Drawing.Point(0, 82);
this.labelNotes.Name = "labelNotes";
this.labelNotes.Size = new System.Drawing.Size(38, 13);
this.labelNotes.TabIndex = 17;
this.labelNotes.Text = "Notes:";
//
// WebSiteControl
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.textBoxNotes);
this.Controls.Add(this.labelNotes);
this.Controls.Add(this.buttonUnmaskPassword);
this.Controls.Add(this.textBoxPassword);
this.Controls.Add(this.textBoxUsername);
@ -102,8 +124,8 @@
this.Controls.Add(this.labelPassword);
this.Controls.Add(this.labelUsername);
this.Controls.Add(this.labelURL);
this.Name = "WebsiteControl";
this.Size = new System.Drawing.Size(300, 77);
this.Name = "WebSiteControl";
this.Size = new System.Drawing.Size(300, 150);
this.ResumeLayout(false);
this.PerformLayout();
@ -118,5 +140,7 @@
public System.Windows.Forms.TextBox textBoxURL;
public System.Windows.Forms.TextBox textBoxUsername;
public System.Windows.Forms.TextBox textBoxPassword;
public System.Windows.Forms.TextBox textBoxNotes;
private System.Windows.Forms.Label labelNotes;
}
}

View File

@ -8,6 +8,7 @@ namespace RCM {
textBoxURL.Text = website.URL;
textBoxUsername.Text = website.Username;
textBoxPassword.Text = website.Password;
textBoxNotes.Text = website.Notes;
}
private void ButtonUnmaskPassword_Click(object sender, EventArgs e) {

View File

@ -0,0 +1,120 @@
<?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>
</root>

View File

@ -14,6 +14,7 @@ namespace RCM {
public string Host { get; set; }
public string Username { get; set; }
public string Password { get; set; }
public string Notes { get; set; }
[NonSerialized]
private SimpleHostControl _control;
[NonSerialized]
@ -28,7 +29,7 @@ namespace RCM {
public UserControl GetControl() {
if (_control == null || _control.IsDisposed) {
_control = new SimpleHostControl(Host, Username, Password);
_control = new SimpleHostControl(Host, Username, Password, Notes);
}
return _control;
}
@ -37,6 +38,7 @@ namespace RCM {
Host = _control.textBoxHostAddress.Text;
Username = _control.textBoxUsername.Text;
Password = _control.textBoxPassword.Text;
Notes = _control.textBoxNotes.Text;
}
}
}

View File

@ -30,6 +30,8 @@
this.labelPassword = new System.Windows.Forms.Label();
this.labelUsername = new System.Windows.Forms.Label();
this.labelHostAddress = new System.Windows.Forms.Label();
this.labelNotes = new System.Windows.Forms.Label();
this.textBoxNotes = new System.Windows.Forms.TextBox();
this.SuspendLayout();
//
// buttonUnmaskPassword
@ -91,10 +93,30 @@
this.labelHostAddress.TabIndex = 12;
this.labelHostAddress.Text = "Host address:";
//
// labelNotes
//
this.labelNotes.AutoSize = true;
this.labelNotes.Location = new System.Drawing.Point(0, 82);
this.labelNotes.Name = "labelNotes";
this.labelNotes.Size = new System.Drawing.Size(38, 13);
this.labelNotes.TabIndex = 15;
this.labelNotes.Text = "Notes:";
//
// textBoxNotes
//
this.textBoxNotes.Location = new System.Drawing.Point(120, 79);
this.textBoxNotes.Multiline = true;
this.textBoxNotes.Name = "textBoxNotes";
this.textBoxNotes.ScrollBars = System.Windows.Forms.ScrollBars.Both;
this.textBoxNotes.Size = new System.Drawing.Size(175, 64);
this.textBoxNotes.TabIndex = 5;
//
// SimpleHostControl
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.textBoxNotes);
this.Controls.Add(this.labelNotes);
this.Controls.Add(this.buttonUnmaskPassword);
this.Controls.Add(this.textBoxPassword);
this.Controls.Add(this.textBoxUsername);
@ -103,7 +125,7 @@
this.Controls.Add(this.labelUsername);
this.Controls.Add(this.labelHostAddress);
this.Name = "SimpleHostControl";
this.Size = new System.Drawing.Size(300, 75);
this.Size = new System.Drawing.Size(300, 150);
this.ResumeLayout(false);
this.PerformLayout();
@ -118,5 +140,7 @@
public System.Windows.Forms.TextBox textBoxHostAddress;
public System.Windows.Forms.TextBox textBoxUsername;
public System.Windows.Forms.TextBox textBoxPassword;
private System.Windows.Forms.Label labelNotes;
public System.Windows.Forms.TextBox textBoxNotes;
}
}

View File

@ -3,11 +3,12 @@ using System.Windows.Forms;
namespace RCM {
public partial class SimpleHostControl : UserControl {
public SimpleHostControl(string host, string username, string password) {
public SimpleHostControl(string host, string username, string password, string notes) {
InitializeComponent();
textBoxHostAddress.Text = host;
textBoxUsername.Text = username;
textBoxPassword.Text = password;
textBoxNotes.Text = notes;
}
private void ButtonUnmaskPassword_Click(object sender, EventArgs e) {

View File

@ -4,8 +4,44 @@
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Google.Protobuf" publicKeyToken="a7d26565bac4d604" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.10.1.0" newVersion="3.10.1.0" />
<bindingRedirect oldVersion="0.0.0.0-3.28.3.0" newVersion="3.28.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.1.0" newVersion="6.0.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.4.0" newVersion="4.0.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.1.0" newVersion="4.2.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="ZstdSharp" publicKeyToken="8d151af33a4ad5cf" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-0.8.2.0" newVersion="0.8.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="K4os.Compression.LZ4.Streams" publicKeyToken="2186fa9121ef231d" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.3.8.0" newVersion="1.3.8.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Diagnostics.DiagnosticSource" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" /></startup></configuration>

View File

@ -1,7 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Google.Protobuf" version="3.10.1" targetFramework="net461" />
<package id="MySql.Data" version="8.0.15" targetFramework="net461" />
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net461" />
<package id="System.Data.SQLite.Core" version="1.0.110.0" targetFramework="net461" />
<package id="Microsoft.Bcl.AsyncInterfaces" version="9.0.0" targetFramework="net48" />
<package id="Microsoft.Extensions.DependencyInjection.Abstractions" version="9.0.0" targetFramework="net48" />
<package id="Microsoft.Extensions.Logging.Abstractions" version="9.0.0" targetFramework="net48" />
<package id="MySqlConnector" version="2.4.0" targetFramework="net48" />
<package id="Newtonsoft.Json" version="13.0.3" targetFramework="net48" />
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.119.0" targetFramework="net48" />
<package id="System.Buffers" version="4.6.0" targetFramework="net48" />
<package id="System.Data.SQLite.Core" version="1.0.119.0" targetFramework="net48" />
<package id="System.Diagnostics.DiagnosticSource" version="9.0.0" targetFramework="net48" />
<package id="System.Memory" version="4.6.0" targetFramework="net48" />
<package id="System.Numerics.Vectors" version="4.6.0" targetFramework="net48" />
<package id="System.Runtime.CompilerServices.Unsafe" version="6.1.0" targetFramework="net48" />
<package id="System.Threading.Tasks.Extensions" version="4.6.0" targetFramework="net48" />
</packages>