Changed: close button + clean-up
@ -196,6 +196,9 @@
|
|||||||
<EmbeddedResource Include="RyzStudio\Windows\ThemedForms\TButtonTextBox.resx">
|
<EmbeddedResource Include="RyzStudio\Windows\ThemedForms\TButtonTextBox.resx">
|
||||||
<DependentUpon>TButtonTextBox.cs</DependentUpon>
|
<DependentUpon>TButtonTextBox.cs</DependentUpon>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="Windows\Forms\AForm.resx">
|
||||||
|
<DependentUpon>AForm.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="Windows\Forms\Tile\AddTileForm.resx">
|
<EmbeddedResource Include="Windows\Forms\Tile\AddTileForm.resx">
|
||||||
<DependentUpon>AddTileForm.cs</DependentUpon>
|
<DependentUpon>AddTileForm.cs</DependentUpon>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
@ -229,68 +232,28 @@
|
|||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="Resources\arrow-right-ea-16.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\grid-ea-24.png" />
|
|
||||||
<None Include="Resources\toggle-left-ea-16.png" />
|
<None Include="Resources\toggle-left-ea-16.png" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="Resources\toggle-right-ea-16.png" />
|
<None Include="Resources\toggle-right-ea-16.png" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\folder-ea-32.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Folder Include="DTO\" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\form16_close.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\form16_close2.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\form16_maximise.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\form16_maximise2.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\form16_menu.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\form16_menu2.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\form16_minimise.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\form16_minimise2.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\form16_restore.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\form16_restore2.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\button16_file_add.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\button16_file_add2.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\button16_folder_add.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="Resources\button16_folder_add2.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="Resources\app_icon_24.png" />
|
<None Include="Resources\app_icon_24.png" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="Resources\folder_32.png" />
|
<None Include="Resources\folder_32.png" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="RyzStudio\Windows\Forms\Resources\minimise_20.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="RyzStudio\Windows\Forms\Resources\minimise2_20.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="RyzStudio\Windows\Forms\Resources\maximise_20.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="RyzStudio\Windows\Forms\Resources\maximise2_20.png" />
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
</Project>
|
</Project>
|
120
Properties/Resources.Designer.cs
generated
@ -70,16 +70,6 @@ namespace AppLauncher.Properties {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap arrow_right_ea_16 {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("arrow_right_ea_16", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -90,116 +80,6 @@ namespace AppLauncher.Properties {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap form16_close {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("form16_close", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap form16_close2 {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("form16_close2", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap form16_maximise {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("form16_maximise", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap form16_maximise2 {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("form16_maximise2", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap form16_menu {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("form16_menu", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap form16_menu2 {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("form16_menu2", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap form16_minimise {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("form16_minimise", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap form16_minimise2 {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("form16_minimise2", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap form16_restore {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("form16_restore", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap form16_restore2 {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("form16_restore2", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap grid_ea_24 {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("grid_ea_24", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -121,45 +121,9 @@
|
|||||||
<data name="app_icon_24" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="app_icon_24" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>..\Resources\app_icon_24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>..\Resources\app_icon_24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="arrow_right_ea_16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\arrow-right-ea-16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="folder_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="folder_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>..\Resources\folder_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>..\Resources\folder_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="form16_close" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\form16_close.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="form16_close2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\form16_close2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="form16_maximise" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\form16_maximise.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="form16_maximise2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\form16_maximise2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="form16_menu" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\form16_menu.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="form16_menu2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\form16_menu2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="form16_minimise" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\form16_minimise.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="form16_minimise2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\form16_minimise2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="form16_restore" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\form16_restore.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="form16_restore2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\form16_restore2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="grid_ea_24" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\grid-ea-24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
<data name="toggle_left_ea_16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="toggle_left_ea_16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>..\Resources\toggle-left-ea-16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>..\Resources\toggle-left-ea-16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
|
80
Resource1.Designer.cs
generated
@ -100,6 +100,46 @@ namespace AppLauncher {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap close_16 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("close_16", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap close_20 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("close_20", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap close2_16 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("close2_16", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap close2_20 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("close2_20", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -160,6 +200,46 @@ namespace AppLauncher {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap maximise_20 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("maximise_20", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap maximise2_20 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("maximise2_20", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap minimise_20 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("minimise_20", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap minimise2_20 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("minimise2_20", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -130,6 +130,18 @@
|
|||||||
<data name="arrow_up2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="arrow_up2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>RyzStudio\Windows\Forms\Resources\arrow_up2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>RyzStudio\Windows\Forms\Resources\arrow_up2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="close2_16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>RyzStudio\Windows\Forms\Resources\close2_16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="close2_20" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>RyzStudio\Windows\Forms\Resources\close2_20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="close_16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>RyzStudio\Windows\Forms\Resources\close_16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="close_20" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>RyzStudio\Windows\Forms\Resources\close_20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
<data name="edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>RyzStudio\Windows\Forms\Resources\edit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>RyzStudio\Windows\Forms\Resources\edit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
@ -148,6 +160,18 @@
|
|||||||
<data name="folder2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="folder2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>RyzStudio\Windows\Forms\Resources\folder2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>RyzStudio\Windows\Forms\Resources\folder2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="maximise2_20" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>RyzStudio\Windows\Forms\Resources\maximise2_20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="maximise_20" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>RyzStudio\Windows\Forms\Resources\maximise_20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="minimise2_20" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>RyzStudio\Windows\Forms\Resources\minimise2_20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="minimise_20" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>RyzStudio\Windows\Forms\Resources\minimise_20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
<data name="minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>RyzStudio\Windows\Forms\Resources\minus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>RyzStudio\Windows\Forms\Resources\minus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
|
Before Width: | Height: | Size: 285 B |
Before Width: | Height: | Size: 372 B |
Before Width: | Height: | Size: 323 B |
Before Width: | Height: | Size: 352 B |
Before Width: | Height: | Size: 288 B |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 522 B |
Before Width: | Height: | Size: 347 B |
Before Width: | Height: | Size: 352 B |
Before Width: | Height: | Size: 300 B |
Before Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 297 B |
Before Width: | Height: | Size: 282 B |
Before Width: | Height: | Size: 276 B |
Before Width: | Height: | Size: 291 B |
Before Width: | Height: | Size: 318 B |
Before Width: | Height: | Size: 317 B |
Before Width: | Height: | Size: 224 B |
Before Width: | Height: | Size: 789 B |
@ -26,9 +26,9 @@
|
|||||||
inkscape:document-rotation="0"
|
inkscape:document-rotation="0"
|
||||||
inkscape:current-layer="layer1"
|
inkscape:current-layer="layer1"
|
||||||
inkscape:document-units="mm"
|
inkscape:document-units="mm"
|
||||||
inkscape:cy="407.3011"
|
inkscape:cy="380.16089"
|
||||||
inkscape:cx="356.66747"
|
inkscape:cx="225.9408"
|
||||||
inkscape:zoom="11.2"
|
inkscape:zoom="5.9043449"
|
||||||
inkscape:pageshadow="2"
|
inkscape:pageshadow="2"
|
||||||
inkscape:pageopacity="0.0"
|
inkscape:pageopacity="0.0"
|
||||||
borderopacity="1.0"
|
borderopacity="1.0"
|
||||||
@ -420,7 +420,7 @@
|
|||||||
inkscape:export-ydpi="96"
|
inkscape:export-ydpi="96"
|
||||||
inkscape:export-xdpi="96"
|
inkscape:export-xdpi="96"
|
||||||
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\Resources\app_icon_24.png"
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\Resources\app_icon_24.png"
|
||||||
transform="matrix(0.4024192,0,0,0.4024192,75.420915,95.566356)"
|
transform="matrix(0.4024192,0,0,0.4024192,47.691701,86.479192)"
|
||||||
id="g1549"
|
id="g1549"
|
||||||
style="fill:none;fill-opacity:1;stroke:#545b6b;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1">
|
style="fill:none;fill-opacity:1;stroke:#545b6b;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1">
|
||||||
<rect
|
<rect
|
||||||
@ -526,7 +526,7 @@
|
|||||||
inkscape:export-ydpi="96"
|
inkscape:export-ydpi="96"
|
||||||
inkscape:export-xdpi="96"
|
inkscape:export-xdpi="96"
|
||||||
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\Resources\folder_32.png"
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\Resources\folder_32.png"
|
||||||
transform="matrix(0.34189664,0,0,0.34189664,90.202299,100.09411)"
|
transform="matrix(0.34189664,0,0,0.34189664,58.53086,85.862008)"
|
||||||
id="g1832"
|
id="g1832"
|
||||||
style="fill:none;stroke:#636977;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1">
|
style="fill:none;stroke:#636977;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1">
|
||||||
<path
|
<path
|
||||||
@ -537,5 +537,231 @@
|
|||||||
inkscape:export-xdpi="122.18182"
|
inkscape:export-xdpi="122.18182"
|
||||||
inkscape:export-ydpi="122.18182" />
|
inkscape:export-ydpi="122.18182" />
|
||||||
</g>
|
</g>
|
||||||
|
<g
|
||||||
|
inkscape:export-ydpi="96"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\RyzStudio\Windows\Forms\Resources\close_16.png"
|
||||||
|
transform="matrix(0.21447029,0,0,0.21447029,102.69715,99.69036)"
|
||||||
|
id="g1972"
|
||||||
|
style="fill:none;stroke:#9c9eab;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1">
|
||||||
|
<rect
|
||||||
|
style="stroke:#9c9eab;stroke-opacity:1"
|
||||||
|
x="3"
|
||||||
|
y="3"
|
||||||
|
width="18"
|
||||||
|
height="18"
|
||||||
|
rx="2"
|
||||||
|
ry="2"
|
||||||
|
id="rect1955" />
|
||||||
|
<line
|
||||||
|
style="stroke:#9c9eab;stroke-opacity:1"
|
||||||
|
x1="9"
|
||||||
|
y1="9"
|
||||||
|
x2="15"
|
||||||
|
y2="15"
|
||||||
|
id="line1957" />
|
||||||
|
<line
|
||||||
|
style="stroke:#9c9eab;stroke-opacity:1"
|
||||||
|
x1="15"
|
||||||
|
y1="9"
|
||||||
|
x2="9"
|
||||||
|
y2="15"
|
||||||
|
id="line1959" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
style="fill:none;stroke:#9c9eab;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
|
||||||
|
id="g1972-0"
|
||||||
|
transform="matrix(0.26458333,0,0,0.26458333,91.972952,99.256047)"
|
||||||
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\RyzStudio\Windows\Forms\Resources\close_20.png"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-ydpi="96">
|
||||||
|
<rect
|
||||||
|
id="rect1955-1"
|
||||||
|
ry="2"
|
||||||
|
rx="2"
|
||||||
|
height="18"
|
||||||
|
width="18"
|
||||||
|
y="3"
|
||||||
|
x="3"
|
||||||
|
style="stroke:#9c9eab;stroke-opacity:1" />
|
||||||
|
<line
|
||||||
|
id="line1957-7"
|
||||||
|
y2="15"
|
||||||
|
x2="15"
|
||||||
|
y1="9"
|
||||||
|
x1="9"
|
||||||
|
style="stroke:#9c9eab;stroke-opacity:1" />
|
||||||
|
<line
|
||||||
|
id="line1959-0"
|
||||||
|
y2="15"
|
||||||
|
x2="9"
|
||||||
|
y1="9"
|
||||||
|
x1="15"
|
||||||
|
style="stroke:#9c9eab;stroke-opacity:1" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
style="fill:none;stroke:#ffa800;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
|
||||||
|
id="g1972-6"
|
||||||
|
transform="matrix(0.21447029,0,0,0.21447029,103.16487,107.37436)"
|
||||||
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\RyzStudio\Windows\Forms\Resources\close2_16.png"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-ydpi="96">
|
||||||
|
<rect
|
||||||
|
id="rect1955-5"
|
||||||
|
ry="2"
|
||||||
|
rx="2"
|
||||||
|
height="18"
|
||||||
|
width="18"
|
||||||
|
y="3"
|
||||||
|
x="3"
|
||||||
|
style="stroke:#ffa800;stroke-opacity:1" />
|
||||||
|
<line
|
||||||
|
id="line1957-79"
|
||||||
|
y2="15"
|
||||||
|
x2="15"
|
||||||
|
y1="9"
|
||||||
|
x1="9"
|
||||||
|
style="stroke:#ffa800;stroke-opacity:1" />
|
||||||
|
<line
|
||||||
|
id="line1959-9"
|
||||||
|
y2="15"
|
||||||
|
x2="9"
|
||||||
|
y1="9"
|
||||||
|
x1="15"
|
||||||
|
style="stroke:#ffa800;stroke-opacity:1" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
inkscape:export-ydpi="96"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\RyzStudio\Windows\Forms\Resources\close2_20.png"
|
||||||
|
transform="matrix(0.26458333,0,0,0.26458333,92.44067,106.94004)"
|
||||||
|
id="g1972-0-6"
|
||||||
|
style="fill:none;stroke:#ffa800;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1">
|
||||||
|
<rect
|
||||||
|
style="stroke:#ffa800;stroke-opacity:1"
|
||||||
|
x="3"
|
||||||
|
y="3"
|
||||||
|
width="18"
|
||||||
|
height="18"
|
||||||
|
rx="2"
|
||||||
|
ry="2"
|
||||||
|
id="rect1955-1-5" />
|
||||||
|
<line
|
||||||
|
style="stroke:#ffa800;stroke-opacity:1"
|
||||||
|
x1="9"
|
||||||
|
y1="9"
|
||||||
|
x2="15"
|
||||||
|
y2="15"
|
||||||
|
id="line1957-7-3" />
|
||||||
|
<line
|
||||||
|
style="stroke:#ffa800;stroke-opacity:1"
|
||||||
|
x1="15"
|
||||||
|
y1="9"
|
||||||
|
x2="9"
|
||||||
|
y2="15"
|
||||||
|
id="line1959-0-0" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
inkscape:export-ydpi="96"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\RyzStudio\Windows\Forms\Resources\minimise_20.png"
|
||||||
|
style="stroke:#9c9eab;stroke-opacity:1"
|
||||||
|
id="g2084">
|
||||||
|
<rect
|
||||||
|
style="fill:none;stroke:#9c9eab;stroke-width:0.529167;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
|
||||||
|
x="50.264584"
|
||||||
|
y="100.26458"
|
||||||
|
width="4.7624998"
|
||||||
|
height="4.7624998"
|
||||||
|
rx="0.52916664"
|
||||||
|
ry="0.52916664"
|
||||||
|
id="rect2046" />
|
||||||
|
<line
|
||||||
|
style="fill:none;stroke:#9c9eab;stroke-width:0.529167;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
|
||||||
|
x1="51.587502"
|
||||||
|
y1="103.70419"
|
||||||
|
x2="53.704166"
|
||||||
|
y2="103.70419"
|
||||||
|
id="line2048" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
inkscape:export-ydpi="96"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\RyzStudio\Windows\Forms\Resources\maximise_20.png"
|
||||||
|
style="stroke:#9c9eab;stroke-opacity:1"
|
||||||
|
id="g2093">
|
||||||
|
<g
|
||||||
|
style="stroke:#9c9eab;stroke-opacity:1"
|
||||||
|
id="g2088">
|
||||||
|
<rect
|
||||||
|
style="fill:none;stroke:#9c9eab;stroke-width:0.529167;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
|
||||||
|
x="57.506439"
|
||||||
|
y="100.23583"
|
||||||
|
width="4.7624998"
|
||||||
|
height="4.7624998"
|
||||||
|
rx="0.52916664"
|
||||||
|
ry="0.52916664"
|
||||||
|
id="rect2046-3" />
|
||||||
|
<line
|
||||||
|
style="fill:none;stroke:#9c9eab;stroke-width:0.529167;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
|
||||||
|
x1="58.829357"
|
||||||
|
y1="101.55878"
|
||||||
|
x2="60.946022"
|
||||||
|
y2="101.55878"
|
||||||
|
id="line2048-3" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
inkscape:export-ydpi="96"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\RyzStudio\Windows\Forms\Resources\minimise2_20.png"
|
||||||
|
transform="translate(0.28551938,6.8433626)"
|
||||||
|
id="g2084-0"
|
||||||
|
style="stroke:#ffa800;stroke-opacity:1">
|
||||||
|
<rect
|
||||||
|
id="rect2046-8"
|
||||||
|
ry="0.52916664"
|
||||||
|
rx="0.52916664"
|
||||||
|
height="4.7624998"
|
||||||
|
width="4.7624998"
|
||||||
|
y="100.26458"
|
||||||
|
x="50.264584"
|
||||||
|
style="fill:none;stroke:#ffa800;stroke-width:0.529167;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
|
||||||
|
<line
|
||||||
|
id="line2048-0"
|
||||||
|
y2="103.70419"
|
||||||
|
x2="53.704166"
|
||||||
|
y1="103.70419"
|
||||||
|
x1="51.587502"
|
||||||
|
style="fill:none;stroke:#ffa800;stroke-width:0.529167;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
inkscape:export-ydpi="96"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-filename="L:\gitlab-hiimray\linear-app-launcher\RyzStudio\Windows\Forms\Resources\maximise2_20.png"
|
||||||
|
transform="translate(0.28551938,6.8433626)"
|
||||||
|
id="g2093-0"
|
||||||
|
style="stroke:#ffa800;stroke-opacity:1">
|
||||||
|
<g
|
||||||
|
id="g2088-0"
|
||||||
|
style="stroke:#ffa800;stroke-opacity:1">
|
||||||
|
<rect
|
||||||
|
id="rect2046-3-0"
|
||||||
|
ry="0.52916664"
|
||||||
|
rx="0.52916664"
|
||||||
|
height="4.7624998"
|
||||||
|
width="4.7624998"
|
||||||
|
y="100.23583"
|
||||||
|
x="57.506439"
|
||||||
|
style="fill:none;stroke:#ffa800;stroke-width:0.529167;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
|
||||||
|
<line
|
||||||
|
id="line2048-3-5"
|
||||||
|
y2="101.55878"
|
||||||
|
x2="60.946022"
|
||||||
|
y1="101.55878"
|
||||||
|
x1="58.829357"
|
||||||
|
style="fill:none;stroke:#ffa800;stroke-width:0.529167;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
</g>
|
</g>
|
||||||
</svg>
|
</svg>
|
||||||
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 26 KiB |
@ -1,137 +0,0 @@
|
|||||||
namespace RyzStudio.Drawing
|
|
||||||
{
|
|
||||||
using System.Drawing;
|
|
||||||
using System.Drawing.Drawing2D;
|
|
||||||
|
|
||||||
public struct LeftRectangoid
|
|
||||||
{
|
|
||||||
private int X;
|
|
||||||
private int Y;
|
|
||||||
private int Width;
|
|
||||||
private int Height;
|
|
||||||
private int Radius;
|
|
||||||
|
|
||||||
public LeftRectangoid(Rectangle rect, int radius)
|
|
||||||
{
|
|
||||||
X = rect.X;
|
|
||||||
Y = rect.Y;
|
|
||||||
Width = rect.Width;
|
|
||||||
Height = rect.Height;
|
|
||||||
Radius = radius;
|
|
||||||
}
|
|
||||||
|
|
||||||
public LeftRectangoid(Rectangle rect, int radius, int borderWidth)
|
|
||||||
{
|
|
||||||
rect.Inflate((-1 * borderWidth), (-1 * borderWidth));
|
|
||||||
|
|
||||||
X = rect.X;
|
|
||||||
Y = rect.Y;
|
|
||||||
Width = rect.Width;
|
|
||||||
Height = rect.Height;
|
|
||||||
Radius = radius;
|
|
||||||
}
|
|
||||||
|
|
||||||
public LeftRectangoid(int x, int y, int width, int height, int radius)
|
|
||||||
{
|
|
||||||
X = x;
|
|
||||||
Y = y;
|
|
||||||
Width = width;
|
|
||||||
Height = height;
|
|
||||||
Radius = radius;
|
|
||||||
}
|
|
||||||
|
|
||||||
public LeftRectangoid(int x, int y, int width, int height)
|
|
||||||
{
|
|
||||||
X = x;
|
|
||||||
Y = y;
|
|
||||||
Width = width;
|
|
||||||
Height = height;
|
|
||||||
Radius = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public LeftRectangoid(int width, int height, int radius)
|
|
||||||
{
|
|
||||||
X = 0;
|
|
||||||
Y = 0;
|
|
||||||
Width = width;
|
|
||||||
Height = height;
|
|
||||||
Radius = radius;
|
|
||||||
}
|
|
||||||
|
|
||||||
public LeftRectangoid(int width, int height)
|
|
||||||
{
|
|
||||||
X = 0;
|
|
||||||
Y = 0;
|
|
||||||
Width = width;
|
|
||||||
Height = height;
|
|
||||||
Radius = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public LeftRectangoid(int width)
|
|
||||||
{
|
|
||||||
X = 0;
|
|
||||||
Y = 0;
|
|
||||||
Width = width;
|
|
||||||
Height = width;
|
|
||||||
Radius = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public GraphicsPath ToGraphicsPath()
|
|
||||||
{
|
|
||||||
GraphicsPath rv = new GraphicsPath();
|
|
||||||
|
|
||||||
rv.AddLine(X + Width, Y + Height, X + this.Radius, Y + Height);
|
|
||||||
|
|
||||||
if (this.Radius > 0)
|
|
||||||
{
|
|
||||||
rv.AddArc(X, Y + Height - (this.Radius * 2), this.Radius * 2, this.Radius * 2, 90, 90);
|
|
||||||
}
|
|
||||||
|
|
||||||
rv.AddLine(X, Y + Height - (this.Radius * 2), X, Y + this.Radius);
|
|
||||||
|
|
||||||
if (this.Radius > 0)
|
|
||||||
{
|
|
||||||
rv.AddArc(X, Y, this.Radius * 2, this.Radius * 2, 180, 90);
|
|
||||||
}
|
|
||||||
|
|
||||||
rv.AddLine(X + Width, Y, X + this.Radius, Y);
|
|
||||||
|
|
||||||
return rv;
|
|
||||||
}
|
|
||||||
|
|
||||||
public GraphicsPath ToClosedGraphicsPath()
|
|
||||||
{
|
|
||||||
GraphicsPath rv = new GraphicsPath();
|
|
||||||
|
|
||||||
rv.AddLine(X + this.Radius, Y, X + Width, Y);
|
|
||||||
rv.AddLine(X + Width + this.Radius, Y + this.Radius, X + Width + this.Radius, Y + Height);
|
|
||||||
|
|
||||||
rv.AddLine(X + Width + this.Radius, Y + Height, X + this.Radius, Y + Height);
|
|
||||||
|
|
||||||
if (this.Radius > 0)
|
|
||||||
{
|
|
||||||
rv.AddArc(X, Y + Height - (this.Radius * 2), this.Radius * 2, this.Radius * 2, 90, 90);
|
|
||||||
}
|
|
||||||
|
|
||||||
rv.AddLine(X, Y + Height - (this.Radius * 2), X, Y + this.Radius);
|
|
||||||
|
|
||||||
if (this.Radius > 0)
|
|
||||||
{
|
|
||||||
rv.AddArc(X, Y, this.Radius * 2, this.Radius * 2, 180, 90);
|
|
||||||
}
|
|
||||||
|
|
||||||
rv.AddLine(X + Width + this.Radius, Y, X + this.Radius, Y);
|
|
||||||
|
|
||||||
return rv;
|
|
||||||
}
|
|
||||||
|
|
||||||
public PointF GetOrigin()
|
|
||||||
{
|
|
||||||
PointF rv = new PointF();
|
|
||||||
rv.X = ((float)Width / 2) + X;
|
|
||||||
rv.Y = ((float)Height / 2) + Y;
|
|
||||||
|
|
||||||
return rv;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,36 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.IO;
|
|
||||||
using System.Security.Cryptography;
|
|
||||||
using System.Text;
|
|
||||||
|
|
||||||
namespace RyzStudio
|
|
||||||
{
|
|
||||||
public class String
|
|
||||||
{
|
|
||||||
public static string EncodeTo64(string value)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
byte[] toEncodeAsBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(value);
|
|
||||||
return System.Convert.ToBase64String(toEncodeAsBytes);
|
|
||||||
}
|
|
||||||
catch
|
|
||||||
{
|
|
||||||
return string.Empty;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static string DecodeFrom64(string value)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
byte[] encodedDataAsBytes = System.Convert.FromBase64String(value);
|
|
||||||
return System.Text.ASCIIEncoding.ASCII.GetString(encodedDataAsBytes);
|
|
||||||
}
|
|
||||||
catch
|
|
||||||
{
|
|
||||||
return string.Empty;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
BIN
RyzStudio/Windows/Forms/Resources/close2_16.png
Normal file
After Width: | Height: | Size: 422 B |
BIN
RyzStudio/Windows/Forms/Resources/close2_20.png
Normal file
After Width: | Height: | Size: 435 B |
BIN
RyzStudio/Windows/Forms/Resources/close_16.png
Normal file
After Width: | Height: | Size: 484 B |
BIN
RyzStudio/Windows/Forms/Resources/close_20.png
Normal file
After Width: | Height: | Size: 522 B |
BIN
RyzStudio/Windows/Forms/Resources/maximise2_20.png
Normal file
After Width: | Height: | Size: 290 B |
BIN
RyzStudio/Windows/Forms/Resources/maximise_20.png
Normal file
After Width: | Height: | Size: 319 B |
BIN
RyzStudio/Windows/Forms/Resources/minimise2_20.png
Normal file
After Width: | Height: | Size: 294 B |
BIN
RyzStudio/Windows/Forms/Resources/minimise_20.png
Normal file
After Width: | Height: | Size: 320 B |
@ -1,111 +0,0 @@
|
|||||||
namespace RyzStudio.Windows.ThemedForms
|
|
||||||
{
|
|
||||||
using System;
|
|
||||||
using System.ComponentModel;
|
|
||||||
using System.Drawing;
|
|
||||||
|
|
||||||
public partial class LeftButton : RyzStudio.Windows.ThemedForms.LeftUserControl
|
|
||||||
{
|
|
||||||
protected ButtonState buttonState = ButtonState.Normal;
|
|
||||||
|
|
||||||
public LeftButton() : base()
|
|
||||||
{
|
|
||||||
InitializeComponent();
|
|
||||||
|
|
||||||
label1.ImageAlign = ContentAlignment.MiddleCenter;
|
|
||||||
|
|
||||||
label1.Click += delegate { this.OnClick(null); };
|
|
||||||
label1.MouseEnter += delegate { this.VisualState = ButtonState.Hover; };
|
|
||||||
label1.MouseLeave += delegate { this.VisualState = ButtonState.Normal; };
|
|
||||||
label1.MouseDown += delegate { this.VisualState = ButtonState.Down; };
|
|
||||||
label1.MouseUp += delegate { this.VisualState = ButtonState.Normal; };
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnLoad(EventArgs e)
|
|
||||||
{
|
|
||||||
base.OnLoad(e);
|
|
||||||
|
|
||||||
// customise
|
|
||||||
this.StyleOver = new ButtonStyle(Color.FromArgb(0, 152, 167), Color.White, this.OverImage);
|
|
||||||
this.StyleDown = new ButtonStyle(Color.FromArgb(179, 179, 179), Color.Black, this.DownImage);
|
|
||||||
this.StyleDefault = new ButtonStyle(Color.White, Color.Black, this.DefaultImage);
|
|
||||||
|
|
||||||
//this.StyleOver.ForeImage = this.OverImage;
|
|
||||||
//this.StyleDown.ForeImage = this.DownImage;
|
|
||||||
//this.StyleDefault.ForeImage = this.DefaultImage;
|
|
||||||
|
|
||||||
this.VisualState = ButtonState.Normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected ButtonState VisualState
|
|
||||||
{
|
|
||||||
get { return buttonState; }
|
|
||||||
set
|
|
||||||
{
|
|
||||||
switch (value)
|
|
||||||
{
|
|
||||||
case ButtonState.Normal:
|
|
||||||
if (this.VisualState == ButtonState.Down)
|
|
||||||
{
|
|
||||||
updateButton(StyleOver);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
updateButton(StyleDefault);
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
case ButtonState.Hover:
|
|
||||||
updateButton(StyleOver);
|
|
||||||
break;
|
|
||||||
case ButtonState.Down:
|
|
||||||
updateButton(StyleDown);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
updateButton(StyleDefault);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
buttonState = value;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void updateButton(ButtonStyle style)
|
|
||||||
{
|
|
||||||
label1.ForeColor = style.PenColour;
|
|
||||||
label1.BackColor = style.BackColour;
|
|
||||||
label1.Image = style.ForeImage;
|
|
||||||
}
|
|
||||||
|
|
||||||
[Browsable(true)]
|
|
||||||
[Category("Appearance")]
|
|
||||||
public string LabelText { get => label1.Text; set => label1.Text = value; }
|
|
||||||
|
|
||||||
[Browsable(true)]
|
|
||||||
[Category("Appearance")]
|
|
||||||
public System.Windows.Forms.Label Label { get => label1; set => label1 = value; }
|
|
||||||
|
|
||||||
[Browsable(true)]
|
|
||||||
[Category("Appearance")]
|
|
||||||
public Image OverImage { get; set; } = null;
|
|
||||||
|
|
||||||
[Browsable(true)]
|
|
||||||
[Category("Appearance")]
|
|
||||||
public Image DownImage { get; set; } = null;
|
|
||||||
|
|
||||||
[Browsable(true)]
|
|
||||||
[Category("Appearance")]
|
|
||||||
public Image DefaultImage { get; set; } = null;
|
|
||||||
|
|
||||||
[Browsable(false)]
|
|
||||||
public ButtonStyle StyleOver { get; set; } = new ButtonStyle(Color.FromArgb(71, 142, 203), Color.FromArgb(250, 250, 250));
|
|
||||||
|
|
||||||
[Browsable(false)]
|
|
||||||
public ButtonStyle StyleDown { get; set; } = new ButtonStyle(Color.FromArgb(61, 132, 193), Color.FromArgb(250, 250, 250));
|
|
||||||
|
|
||||||
[Browsable(false)]
|
|
||||||
public ButtonStyle StyleDefault { get; set; } = new ButtonStyle(Color.FromArgb(51, 122, 183), Color.FromArgb(250, 250, 250));
|
|
||||||
|
|
||||||
public void PerformClick() => this.OnClick(null);
|
|
||||||
}
|
|
||||||
}
|
|
61
RyzStudio/Windows/ThemedForms/LeftButton.designer.cs
generated
@ -1,61 +0,0 @@
|
|||||||
namespace RyzStudio.Windows.ThemedForms
|
|
||||||
{
|
|
||||||
partial class LeftButton
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Required designer variable.
|
|
||||||
/// </summary>
|
|
||||||
private System.ComponentModel.IContainer components = null;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Clean up any resources being used.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
|
||||||
protected override void Dispose(bool disposing)
|
|
||||||
{
|
|
||||||
if (disposing && (components != null))
|
|
||||||
{
|
|
||||||
components.Dispose();
|
|
||||||
}
|
|
||||||
base.Dispose(disposing);
|
|
||||||
}
|
|
||||||
|
|
||||||
#region Component Designer generated code
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Required method for Designer support - do not modify
|
|
||||||
/// the contents of this method with the code editor.
|
|
||||||
/// </summary>
|
|
||||||
private void InitializeComponent()
|
|
||||||
{
|
|
||||||
this.label1 = new System.Windows.Forms.Label();
|
|
||||||
this.SuspendLayout();
|
|
||||||
//
|
|
||||||
// label1
|
|
||||||
//
|
|
||||||
this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
||||||
this.label1.Location = new System.Drawing.Point(4, 4);
|
|
||||||
this.label1.Margin = new System.Windows.Forms.Padding(0);
|
|
||||||
this.label1.Name = "label1";
|
|
||||||
this.label1.Size = new System.Drawing.Size(121, 25);
|
|
||||||
this.label1.TabIndex = 0;
|
|
||||||
this.label1.Text = "label1";
|
|
||||||
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
|
||||||
//
|
|
||||||
// Button
|
|
||||||
//
|
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
||||||
this.Controls.Add(this.label1);
|
|
||||||
this.Name = "Button";
|
|
||||||
this.Padding = new System.Windows.Forms.Padding(4, 4, 0, 3);
|
|
||||||
this.Size = new System.Drawing.Size(128, 32);
|
|
||||||
this.ResumeLayout(false);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
private System.Windows.Forms.Label label1;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,53 +0,0 @@
|
|||||||
namespace RyzStudio.Windows.ThemedForms
|
|
||||||
{
|
|
||||||
using System;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.Windows.Forms;
|
|
||||||
using RyzStudio.Drawing;
|
|
||||||
using System.ComponentModel;
|
|
||||||
|
|
||||||
public partial class LeftUserControl : System.Windows.Forms.UserControl
|
|
||||||
{
|
|
||||||
protected ThemeStyle styleActive = new ThemeStyle(1, 3, 2, Color.FromArgb(212, 212, 212), Color.White);
|
|
||||||
|
|
||||||
public LeftUserControl()
|
|
||||||
{
|
|
||||||
InitializeComponent();
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnLoad(EventArgs e)
|
|
||||||
{
|
|
||||||
base.OnLoad(e);
|
|
||||||
|
|
||||||
this.BackColor = Color.Transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
protected override void OnPaintBackground(PaintEventArgs e)
|
|
||||||
{
|
|
||||||
base.OnPaintBackground(e);
|
|
||||||
|
|
||||||
Graphics g = e.Graphics;
|
|
||||||
//// g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
|
|
||||||
//// g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
|
|
||||||
//// g.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
|
|
||||||
//// g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
|
|
||||||
|
|
||||||
updateBackground(g, styleActive);
|
|
||||||
}
|
|
||||||
|
|
||||||
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never)]
|
|
||||||
public new Padding Padding { get => base.Padding; set => base.Padding = value; }
|
|
||||||
|
|
||||||
protected virtual void updateBackground(Graphics g, ThemeStyle style)
|
|
||||||
{
|
|
||||||
int b = (styleActive.BorderWidth + 1) + styleActive.BorderPadding;
|
|
||||||
|
|
||||||
this.Padding = new Padding(b, b, 0, (b - 1));
|
|
||||||
|
|
||||||
LeftRectangoid area = new LeftRectangoid(this.ClientRectangle, style.BorderRadius, style.BorderWidth);
|
|
||||||
g.FillPath(new SolidBrush(style.BackColour), area.ToClosedGraphicsPath());
|
|
||||||
g.DrawPath(new Pen(new SolidBrush(style.BorderColour), style.BorderWidth), area.ToGraphicsPath());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,37 +0,0 @@
|
|||||||
namespace RyzStudio.Windows.ThemedForms
|
|
||||||
{
|
|
||||||
partial class LeftUserControl
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Required designer variable.
|
|
||||||
/// </summary>
|
|
||||||
private System.ComponentModel.IContainer components = null;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Clean up any resources being used.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
|
||||||
protected override void Dispose(bool disposing)
|
|
||||||
{
|
|
||||||
if (disposing && (components != null))
|
|
||||||
{
|
|
||||||
components.Dispose();
|
|
||||||
}
|
|
||||||
base.Dispose(disposing);
|
|
||||||
}
|
|
||||||
|
|
||||||
#region Component Designer generated code
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Required method for Designer support - do not modify
|
|
||||||
/// the contents of this method with the code editor.
|
|
||||||
/// </summary>
|
|
||||||
private void InitializeComponent()
|
|
||||||
{
|
|
||||||
components = new System.ComponentModel.Container();
|
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,72 +0,0 @@
|
|||||||
namespace RyzStudio.Windows.ThemedForms
|
|
||||||
{
|
|
||||||
partial class ProgressBar
|
|
||||||
{
|
|
||||||
private System.ComponentModel.IContainer components = null;
|
|
||||||
|
|
||||||
protected override void Dispose(bool disposing)
|
|
||||||
{
|
|
||||||
if (disposing && (components != null))
|
|
||||||
{
|
|
||||||
components.Dispose();
|
|
||||||
}
|
|
||||||
base.Dispose(disposing);
|
|
||||||
}
|
|
||||||
|
|
||||||
#region Component Designer generated code
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Required method for Designer support - do not modify
|
|
||||||
/// the contents of this method with the code editor.
|
|
||||||
/// </summary>
|
|
||||||
private void InitializeComponent()
|
|
||||||
{
|
|
||||||
this.label3 = new System.Windows.Forms.Label();
|
|
||||||
this.userControl1 = new RyzStudio.Windows.ThemedForms.ProgressBarInner();
|
|
||||||
this.SuspendLayout();
|
|
||||||
//
|
|
||||||
// label3
|
|
||||||
//
|
|
||||||
this.label3.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.label3.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
||||||
this.label3.Font = new System.Drawing.Font("Segoe UI", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
|
||||||
this.label3.Location = new System.Drawing.Point(4, 4);
|
|
||||||
this.label3.Margin = new System.Windows.Forms.Padding(0);
|
|
||||||
this.label3.Name = "label3";
|
|
||||||
this.label3.Size = new System.Drawing.Size(803, 47);
|
|
||||||
this.label3.TabIndex = 144;
|
|
||||||
this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
|
||||||
//
|
|
||||||
// userControl1
|
|
||||||
//
|
|
||||||
this.userControl1.BarColour = System.Drawing.Color.FromArgb(((int)(((byte)(158)))), ((int)(((byte)(225)))), ((int)(((byte)(249)))));
|
|
||||||
this.userControl1.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
||||||
this.userControl1.Location = new System.Drawing.Point(4, 4);
|
|
||||||
this.userControl1.Margin = new System.Windows.Forms.Padding(0);
|
|
||||||
this.userControl1.Maximum = 100;
|
|
||||||
this.userControl1.Minimum = 0;
|
|
||||||
this.userControl1.Name = "userControl1";
|
|
||||||
this.userControl1.Size = new System.Drawing.Size(803, 47);
|
|
||||||
this.userControl1.TabIndex = 145;
|
|
||||||
this.userControl1.Value = 50;
|
|
||||||
//
|
|
||||||
// ProgressBar
|
|
||||||
//
|
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
||||||
this.Controls.Add(this.userControl1);
|
|
||||||
this.Controls.Add(this.label3);
|
|
||||||
this.Margin = new System.Windows.Forms.Padding(0);
|
|
||||||
this.Name = "ProgressBar";
|
|
||||||
this.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
|
|
||||||
this.Size = new System.Drawing.Size(810, 54);
|
|
||||||
this.ResumeLayout(false);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
private System.Windows.Forms.Label label3;
|
|
||||||
private ProgressBarInner userControl1;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,29 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Drawing;
|
|
||||||
|
|
||||||
namespace RyzStudio.Windows.ThemedForms
|
|
||||||
{
|
|
||||||
public partial class ProgressBar : RyzStudio.Windows.ThemedForms.UserControl
|
|
||||||
{
|
|
||||||
public ProgressBar() : base()
|
|
||||||
{
|
|
||||||
InitializeComponent();
|
|
||||||
|
|
||||||
styleActive = new ThemeStyle(1, 3, 2, Color.FromArgb(212, 212, 212), Color.White);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int Minimum { get => userControl1.Minimum; set => userControl1.Minimum = value; }
|
|
||||||
public int Maximum { get => userControl1.Maximum; set => userControl1.Maximum = value; }
|
|
||||||
public int Value { get => userControl1.Value; set => userControl1.Value = value; }
|
|
||||||
|
|
||||||
public Color BarColour { get => userControl1.BarColour; set => userControl1.BarColour = value; }
|
|
||||||
public Color BarTextColour { get => userControl1.BarTextColour; set => userControl1.BarTextColour = value; }
|
|
||||||
|
|
||||||
protected override void OnSizeChanged(EventArgs e)
|
|
||||||
{
|
|
||||||
base.OnSizeChanged(e);
|
|
||||||
|
|
||||||
this.Invalidate();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,120 +0,0 @@
|
|||||||
<?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>
|
|
@ -1,63 +0,0 @@
|
|||||||
namespace RyzStudio.Windows.ThemedForms
|
|
||||||
{
|
|
||||||
partial class ProgressBarInner
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Required designer variable.
|
|
||||||
/// </summary>
|
|
||||||
private System.ComponentModel.IContainer components = null;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Clean up any resources being used.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
|
||||||
protected override void Dispose(bool disposing)
|
|
||||||
{
|
|
||||||
if (disposing && (components != null))
|
|
||||||
{
|
|
||||||
components.Dispose();
|
|
||||||
}
|
|
||||||
base.Dispose(disposing);
|
|
||||||
}
|
|
||||||
|
|
||||||
#region Component Designer generated code
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Required method for Designer support - do not modify
|
|
||||||
/// the contents of this method with the code editor.
|
|
||||||
/// </summary>
|
|
||||||
private void InitializeComponent()
|
|
||||||
{
|
|
||||||
this.label3 = new System.Windows.Forms.Label();
|
|
||||||
this.SuspendLayout();
|
|
||||||
//
|
|
||||||
// label3
|
|
||||||
//
|
|
||||||
this.label3.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.label3.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
||||||
this.label3.Font = new System.Drawing.Font("Segoe UI", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
|
||||||
this.label3.Location = new System.Drawing.Point(4, 4);
|
|
||||||
this.label3.Margin = new System.Windows.Forms.Padding(0);
|
|
||||||
this.label3.Name = "label3";
|
|
||||||
this.label3.Size = new System.Drawing.Size(803, 47);
|
|
||||||
this.label3.TabIndex = 144;
|
|
||||||
this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
|
||||||
//
|
|
||||||
// ProgressBarInner
|
|
||||||
//
|
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
||||||
this.Controls.Add(this.label3);
|
|
||||||
this.Margin = new System.Windows.Forms.Padding(0);
|
|
||||||
this.Name = "ProgressBarInner";
|
|
||||||
this.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
|
|
||||||
this.Size = new System.Drawing.Size(810, 54);
|
|
||||||
this.ResumeLayout(false);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
private System.Windows.Forms.Label label3;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,197 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.Windows.Forms;
|
|
||||||
|
|
||||||
namespace RyzStudio.Windows.ThemedForms
|
|
||||||
{
|
|
||||||
public partial class ProgressBarInner : System.Windows.Forms.UserControl
|
|
||||||
{
|
|
||||||
protected int minimum = 0;
|
|
||||||
protected int maximum = 100;
|
|
||||||
protected int value = 0;
|
|
||||||
|
|
||||||
public ProgressBarInner() : base()
|
|
||||||
{
|
|
||||||
InitializeComponent();
|
|
||||||
|
|
||||||
this.Padding = new Padding(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int Minimum
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
return minimum;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
if (this.InvokeRequired)
|
|
||||||
{
|
|
||||||
this.Invoke(new MethodInvoker(() => {
|
|
||||||
setMinimum(value);
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
setMinimum(value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public int Maximum
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
return maximum;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
if (this.InvokeRequired)
|
|
||||||
{
|
|
||||||
this.Invoke(new MethodInvoker(() => {
|
|
||||||
setMaximum(value);
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
setMaximum(value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public int Value
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
if (this.InvokeRequired)
|
|
||||||
{
|
|
||||||
this.Invoke(new MethodInvoker(() => {
|
|
||||||
setValue(value);
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
setValue(value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public Color BarColour { get; set; } = Color.FromArgb(158, 225, 249);
|
|
||||||
|
|
||||||
public Color BarTextColour
|
|
||||||
{
|
|
||||||
get => label3.ForeColor;
|
|
||||||
set => label3.ForeColor = value;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnPaint(PaintEventArgs e)
|
|
||||||
{
|
|
||||||
base.OnPaint(e);
|
|
||||||
|
|
||||||
Rectangle canvas = this.DisplayRectangle;
|
|
||||||
Graphics g = e.Graphics;
|
|
||||||
|
|
||||||
if (this.Value > 0)
|
|
||||||
{
|
|
||||||
decimal result = decimal.Divide(canvas.Width, this.Maximum) * this.Value;
|
|
||||||
|
|
||||||
canvas.Width = (int)Math.Round(result);
|
|
||||||
|
|
||||||
g.FillRectangle(new SolidBrush(this.BarColour), canvas);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void updateText()
|
|
||||||
{
|
|
||||||
if (label3.InvokeRequired)
|
|
||||||
{
|
|
||||||
label3.Invoke(new MethodInvoker(() =>
|
|
||||||
{
|
|
||||||
label3.Text = string.Format("{0}/{1}", this.Value.ToString(), this.Maximum.ToString());
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
label3.Text = string.Format("{0}/{1}", this.Value.ToString(), this.Maximum.ToString());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void setMinimum(int value)
|
|
||||||
{
|
|
||||||
int m = value;
|
|
||||||
if (m < 0)
|
|
||||||
{
|
|
||||||
m = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (m > this.Maximum)
|
|
||||||
{
|
|
||||||
m = this.Maximum;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.Value < m)
|
|
||||||
{
|
|
||||||
this.Value = m;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.value > this.Maximum)
|
|
||||||
{
|
|
||||||
this.value = this.Maximum;
|
|
||||||
}
|
|
||||||
|
|
||||||
minimum = m;
|
|
||||||
updateText();
|
|
||||||
this.Invalidate();
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void setMaximum(int value)
|
|
||||||
{
|
|
||||||
int m = value;
|
|
||||||
if (m < 0)
|
|
||||||
{
|
|
||||||
m = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (m < this.Minimum)
|
|
||||||
{
|
|
||||||
m = this.Minimum;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.Value > m)
|
|
||||||
{
|
|
||||||
this.Value = m;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.value < this.Minimum)
|
|
||||||
{
|
|
||||||
this.value = this.Minimum;
|
|
||||||
}
|
|
||||||
|
|
||||||
maximum = m;
|
|
||||||
updateText();
|
|
||||||
this.Invalidate();
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void setValue(int value)
|
|
||||||
{
|
|
||||||
int m = value;
|
|
||||||
if (m < this.Minimum)
|
|
||||||
{
|
|
||||||
m = this.Minimum;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (m > this.Maximum)
|
|
||||||
{
|
|
||||||
m = this.Maximum;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.value = m;
|
|
||||||
updateText();
|
|
||||||
this.Invalidate();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,120 +0,0 @@
|
|||||||
<?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>
|
|
@ -50,12 +50,12 @@
|
|||||||
this.imgbxClose.BackColor = System.Drawing.Color.Transparent;
|
this.imgbxClose.BackColor = System.Drawing.Color.Transparent;
|
||||||
this.imgbxClose.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
|
this.imgbxClose.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
|
||||||
this.imgbxClose.ErrorImage = null;
|
this.imgbxClose.ErrorImage = null;
|
||||||
this.imgbxClose.HighlightImage = global::AppLauncher.Properties.Resources.form16_close2;
|
this.imgbxClose.HighlightImage = global::AppLauncher.Resource1.close2_16;
|
||||||
this.imgbxClose.Image = global::AppLauncher.Properties.Resources.form16_close;
|
this.imgbxClose.Image = null;
|
||||||
this.imgbxClose.InitialImage = null;
|
this.imgbxClose.InitialImage = null;
|
||||||
this.imgbxClose.Location = new System.Drawing.Point(308, 4);
|
this.imgbxClose.Location = new System.Drawing.Point(308, 4);
|
||||||
this.imgbxClose.Name = "imgbxClose";
|
this.imgbxClose.Name = "imgbxClose";
|
||||||
this.imgbxClose.NormalImage = global::AppLauncher.Properties.Resources.form16_close;
|
this.imgbxClose.NormalImage = global::AppLauncher.Resource1.close_16;
|
||||||
this.imgbxClose.Size = new System.Drawing.Size(24, 24);
|
this.imgbxClose.Size = new System.Drawing.Size(24, 24);
|
||||||
this.imgbxClose.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
|
this.imgbxClose.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
|
||||||
this.imgbxClose.TabIndex = 145;
|
this.imgbxClose.TabIndex = 145;
|
||||||
|
Before Width: | Height: | Size: 426 B |
Before Width: | Height: | Size: 371 B |
Before Width: | Height: | Size: 463 B |
Before Width: | Height: | Size: 361 B |
Before Width: | Height: | Size: 639 B |
Before Width: | Height: | Size: 421 B |
Before Width: | Height: | Size: 347 B |
Before Width: | Height: | Size: 352 B |
Before Width: | Height: | Size: 300 B |
Before Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 297 B |
Before Width: | Height: | Size: 282 B |
Before Width: | Height: | Size: 276 B |
Before Width: | Height: | Size: 291 B |
Before Width: | Height: | Size: 318 B |
Before Width: | Height: | Size: 317 B |
Before Width: | Height: | Size: 493 B |
Before Width: | Height: | Size: 386 B |
Before Width: | Height: | Size: 280 B |
Before Width: | Height: | Size: 281 B |
Before Width: | Height: | Size: 296 B |
Before Width: | Height: | Size: 298 B |
Before Width: | Height: | Size: 289 B |
Before Width: | Height: | Size: 301 B |
Before Width: | Height: | Size: 319 B |
Before Width: | Height: | Size: 323 B |
Before Width: | Height: | Size: 729 B |
Before Width: | Height: | Size: 483 B |
Before Width: | Height: | Size: 516 B |
@ -13,10 +13,13 @@ namespace AppLauncher.Windows.Forms
|
|||||||
protected readonly int titleBarHeight = 56;
|
protected readonly int titleBarHeight = 56;
|
||||||
|
|
||||||
private bool isDragging = false;
|
private bool isDragging = false;
|
||||||
|
protected internal RyzStudio.Windows.Forms.TImageBox imageBox3;
|
||||||
private Point startPosition = new Point();
|
private Point startPosition = new Point();
|
||||||
|
|
||||||
public AForm() : base()
|
public AForm() : base()
|
||||||
{
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
|
||||||
if (!this.DesignMode)
|
if (!this.DesignMode)
|
||||||
{
|
{
|
||||||
this.FormBorderStyle = FormBorderStyle.None;
|
this.FormBorderStyle = FormBorderStyle.None;
|
||||||
@ -24,6 +27,18 @@ namespace AppLauncher.Windows.Forms
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected override void OnLoad(EventArgs e)
|
||||||
|
{
|
||||||
|
base.OnLoad(e);
|
||||||
|
|
||||||
|
|
||||||
|
this.SuspendLayout();
|
||||||
|
imageBox3.Left = this.DisplayRectangle.Width - imageBox3.Width - 17;
|
||||||
|
imageBox3.Top = 17;
|
||||||
|
imageBox3.Anchor = (AnchorStyles.Top | AnchorStyles.Right);
|
||||||
|
this.ResumeLayout();
|
||||||
|
}
|
||||||
|
|
||||||
protected override void OnMouseClick(MouseEventArgs e)
|
protected override void OnMouseClick(MouseEventArgs e)
|
||||||
{
|
{
|
||||||
base.OnMouseClick(e);
|
base.OnMouseClick(e);
|
||||||
@ -146,5 +161,47 @@ namespace AppLauncher.Windows.Forms
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
this.imageBox3 = new RyzStudio.Windows.Forms.TImageBox();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.imageBox3)).BeginInit();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// imageBox3
|
||||||
|
//
|
||||||
|
this.imageBox3.BackColor = System.Drawing.Color.Transparent;
|
||||||
|
this.imageBox3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
|
||||||
|
this.imageBox3.ErrorImage = null;
|
||||||
|
this.imageBox3.HighlightImage = global::AppLauncher.Resource1.close2_20;
|
||||||
|
this.imageBox3.Image = global::AppLauncher.Resource1.close_20;
|
||||||
|
this.imageBox3.InitialImage = null;
|
||||||
|
this.imageBox3.Location = new System.Drawing.Point(12, 12);
|
||||||
|
this.imageBox3.Name = "imageBox3";
|
||||||
|
this.imageBox3.NormalImage = global::AppLauncher.Resource1.close_20;
|
||||||
|
this.imageBox3.Size = new System.Drawing.Size(24, 24);
|
||||||
|
this.imageBox3.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
|
||||||
|
this.imageBox3.TabIndex = 146;
|
||||||
|
this.imageBox3.TabStop = false;
|
||||||
|
this.imageBox3.MouseClick += new System.Windows.Forms.MouseEventHandler(this.imageBox3_MouseClick);
|
||||||
|
//
|
||||||
|
// AForm
|
||||||
|
//
|
||||||
|
this.ClientSize = new System.Drawing.Size(421, 321);
|
||||||
|
this.Controls.Add(this.imageBox3);
|
||||||
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||||
|
this.Name = "AForm";
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.imageBox3)).EndInit();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void imageBox3_MouseClick(object sender, MouseEventArgs e)
|
||||||
|
{
|
||||||
|
if (e.Button == MouseButtons.Left)
|
||||||
|
{
|
||||||
|
this.Close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
213
Windows/Forms/Tile/TileGroupLabel.Designer.cs
generated
@ -1,213 +0,0 @@
|
|||||||
namespace AppLauncher.Windows.Forms
|
|
||||||
{
|
|
||||||
partial class TileGroupLabel
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Required designer variable.
|
|
||||||
/// </summary>
|
|
||||||
private System.ComponentModel.IContainer components = null;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Clean up any resources being used.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
|
||||||
protected override void Dispose(bool disposing)
|
|
||||||
{
|
|
||||||
if (disposing && (components != null))
|
|
||||||
{
|
|
||||||
components.Dispose();
|
|
||||||
}
|
|
||||||
base.Dispose(disposing);
|
|
||||||
}
|
|
||||||
|
|
||||||
#region Component Designer generated code
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Required method for Designer support - do not modify
|
|
||||||
/// the contents of this method with the code editor.
|
|
||||||
/// </summary>
|
|
||||||
private void InitializeComponent()
|
|
||||||
{
|
|
||||||
this.components = new System.ComponentModel.Container();
|
|
||||||
this.label1 = new System.Windows.Forms.Label();
|
|
||||||
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
|
|
||||||
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
|
|
||||||
this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.topToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.upToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.downToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.bottomToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
|
|
||||||
this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.pictureBox1 = new System.Windows.Forms.PictureBox();
|
|
||||||
this.toolStripMenuItem5 = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.contextMenuStrip1.SuspendLayout();
|
|
||||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
|
|
||||||
this.SuspendLayout();
|
|
||||||
//
|
|
||||||
// label1
|
|
||||||
//
|
|
||||||
this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
|
||||||
| System.Windows.Forms.AnchorStyles.Left)
|
|
||||||
| System.Windows.Forms.AnchorStyles.Right)));
|
|
||||||
this.label1.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.label1.ContextMenuStrip = this.contextMenuStrip1;
|
|
||||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
|
||||||
this.label1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(234)))), ((int)(((byte)(234)))), ((int)(((byte)(234)))));
|
|
||||||
this.label1.Location = new System.Drawing.Point(25, 0);
|
|
||||||
this.label1.Margin = new System.Windows.Forms.Padding(0);
|
|
||||||
this.label1.MinimumSize = new System.Drawing.Size(20, 20);
|
|
||||||
this.label1.Name = "label1";
|
|
||||||
this.label1.Size = new System.Drawing.Size(575, 20);
|
|
||||||
this.label1.TabIndex = 8;
|
|
||||||
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
|
||||||
this.label1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.panel_MouseClick);
|
|
||||||
this.label1.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.panel_MouseClick);
|
|
||||||
//
|
|
||||||
// contextMenuStrip1
|
|
||||||
//
|
|
||||||
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
|
||||||
this.toolStripMenuItem2,
|
|
||||||
this.toolStripMenuItem5,
|
|
||||||
this.toolStripMenuItem1,
|
|
||||||
this.toolStripSeparator2,
|
|
||||||
this.toolStripMenuItem4,
|
|
||||||
this.toolStripSeparator1,
|
|
||||||
this.toolStripMenuItem3});
|
|
||||||
this.contextMenuStrip1.Name = "contextMenuStrip1";
|
|
||||||
this.contextMenuStrip1.Size = new System.Drawing.Size(181, 148);
|
|
||||||
//
|
|
||||||
// toolStripMenuItem2
|
|
||||||
//
|
|
||||||
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
|
|
||||||
this.toolStripMenuItem2.Size = new System.Drawing.Size(180, 22);
|
|
||||||
this.toolStripMenuItem2.Text = "&Add Group";
|
|
||||||
this.toolStripMenuItem2.Click += new System.EventHandler(this.toolStripMenuItem2_Click);
|
|
||||||
//
|
|
||||||
// toolStripMenuItem1
|
|
||||||
//
|
|
||||||
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
|
|
||||||
this.toolStripMenuItem1.Size = new System.Drawing.Size(180, 22);
|
|
||||||
this.toolStripMenuItem1.Text = "&Edit";
|
|
||||||
this.toolStripMenuItem1.Click += new System.EventHandler(this.toolStripMenuItem1_Click);
|
|
||||||
//
|
|
||||||
// toolStripSeparator2
|
|
||||||
//
|
|
||||||
this.toolStripSeparator2.Name = "toolStripSeparator2";
|
|
||||||
this.toolStripSeparator2.Size = new System.Drawing.Size(177, 6);
|
|
||||||
//
|
|
||||||
// toolStripMenuItem4
|
|
||||||
//
|
|
||||||
this.toolStripMenuItem4.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
|
||||||
this.topToolStripMenuItem,
|
|
||||||
this.upToolStripMenuItem,
|
|
||||||
this.downToolStripMenuItem,
|
|
||||||
this.bottomToolStripMenuItem});
|
|
||||||
this.toolStripMenuItem4.Name = "toolStripMenuItem4";
|
|
||||||
this.toolStripMenuItem4.Size = new System.Drawing.Size(180, 22);
|
|
||||||
this.toolStripMenuItem4.Text = "&Move";
|
|
||||||
//
|
|
||||||
// topToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.topToolStripMenuItem.Name = "topToolStripMenuItem";
|
|
||||||
this.topToolStripMenuItem.Size = new System.Drawing.Size(114, 22);
|
|
||||||
this.topToolStripMenuItem.Text = "&Top";
|
|
||||||
this.topToolStripMenuItem.Click += new System.EventHandler(this.topToolStripMenuItem_Click);
|
|
||||||
//
|
|
||||||
// upToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.upToolStripMenuItem.Name = "upToolStripMenuItem";
|
|
||||||
this.upToolStripMenuItem.Size = new System.Drawing.Size(114, 22);
|
|
||||||
this.upToolStripMenuItem.Text = "&Up";
|
|
||||||
this.upToolStripMenuItem.Click += new System.EventHandler(this.upToolStripMenuItem_Click);
|
|
||||||
//
|
|
||||||
// downToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.downToolStripMenuItem.Name = "downToolStripMenuItem";
|
|
||||||
this.downToolStripMenuItem.Size = new System.Drawing.Size(114, 22);
|
|
||||||
this.downToolStripMenuItem.Text = "&Down";
|
|
||||||
this.downToolStripMenuItem.Click += new System.EventHandler(this.downToolStripMenuItem_Click);
|
|
||||||
//
|
|
||||||
// bottomToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.bottomToolStripMenuItem.Name = "bottomToolStripMenuItem";
|
|
||||||
this.bottomToolStripMenuItem.Size = new System.Drawing.Size(114, 22);
|
|
||||||
this.bottomToolStripMenuItem.Text = "&Bottom";
|
|
||||||
this.bottomToolStripMenuItem.Click += new System.EventHandler(this.bottomToolStripMenuItem_Click);
|
|
||||||
//
|
|
||||||
// toolStripSeparator1
|
|
||||||
//
|
|
||||||
this.toolStripSeparator1.Name = "toolStripSeparator1";
|
|
||||||
this.toolStripSeparator1.Size = new System.Drawing.Size(177, 6);
|
|
||||||
//
|
|
||||||
// toolStripMenuItem3
|
|
||||||
//
|
|
||||||
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
|
|
||||||
this.toolStripMenuItem3.Size = new System.Drawing.Size(180, 22);
|
|
||||||
this.toolStripMenuItem3.Text = "&Remove";
|
|
||||||
this.toolStripMenuItem3.Click += new System.EventHandler(this.toolStripMenuItem3_Click);
|
|
||||||
//
|
|
||||||
// pictureBox1
|
|
||||||
//
|
|
||||||
this.pictureBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
|
||||||
| System.Windows.Forms.AnchorStyles.Left)));
|
|
||||||
this.pictureBox1.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.pictureBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
|
|
||||||
this.pictureBox1.ContextMenuStrip = this.contextMenuStrip1;
|
|
||||||
this.pictureBox1.ErrorImage = null;
|
|
||||||
this.pictureBox1.InitialImage = null;
|
|
||||||
this.pictureBox1.Location = new System.Drawing.Point(0, 0);
|
|
||||||
this.pictureBox1.Margin = new System.Windows.Forms.Padding(0);
|
|
||||||
this.pictureBox1.MaximumSize = new System.Drawing.Size(20, 20);
|
|
||||||
this.pictureBox1.MinimumSize = new System.Drawing.Size(20, 20);
|
|
||||||
this.pictureBox1.Name = "pictureBox1";
|
|
||||||
this.pictureBox1.Size = new System.Drawing.Size(20, 20);
|
|
||||||
this.pictureBox1.TabIndex = 7;
|
|
||||||
this.pictureBox1.TabStop = false;
|
|
||||||
this.pictureBox1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.panel_MouseClick);
|
|
||||||
this.pictureBox1.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.panel_MouseClick);
|
|
||||||
//
|
|
||||||
// toolStripMenuItem5
|
|
||||||
//
|
|
||||||
this.toolStripMenuItem5.Name = "toolStripMenuItem5";
|
|
||||||
this.toolStripMenuItem5.Size = new System.Drawing.Size(180, 22);
|
|
||||||
this.toolStripMenuItem5.Text = "Add &Row";
|
|
||||||
this.toolStripMenuItem5.Click += new System.EventHandler(this.toolStripMenuItem5_Click);
|
|
||||||
//
|
|
||||||
// TileGroupLabel
|
|
||||||
//
|
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
||||||
this.ContextMenuStrip = this.contextMenuStrip1;
|
|
||||||
this.Controls.Add(this.label1);
|
|
||||||
this.Controls.Add(this.pictureBox1);
|
|
||||||
this.MinimumSize = new System.Drawing.Size(100, 20);
|
|
||||||
this.Name = "TileGroupLabel";
|
|
||||||
this.Size = new System.Drawing.Size(600, 20);
|
|
||||||
this.MouseClick += new System.Windows.Forms.MouseEventHandler(this.panel_MouseClick);
|
|
||||||
this.contextMenuStrip1.ResumeLayout(false);
|
|
||||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
|
|
||||||
this.ResumeLayout(false);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
private System.Windows.Forms.Label label1;
|
|
||||||
private System.Windows.Forms.PictureBox pictureBox1;
|
|
||||||
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem2;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem4;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem3;
|
|
||||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
|
|
||||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem topToolStripMenuItem;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem upToolStripMenuItem;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem downToolStripMenuItem;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem bottomToolStripMenuItem;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem5;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,101 +0,0 @@
|
|||||||
using System.ComponentModel;
|
|
||||||
using System.Windows.Forms;
|
|
||||||
|
|
||||||
namespace AppLauncher.Windows.Forms
|
|
||||||
{
|
|
||||||
public partial class TileGroupLabel : AUserControl
|
|
||||||
{
|
|
||||||
protected bool isChecked = true;
|
|
||||||
|
|
||||||
public TileGroupLabel() : base()
|
|
||||||
{
|
|
||||||
InitializeComponent();
|
|
||||||
}
|
|
||||||
|
|
||||||
[Category("Appearance"), Browsable(true)]
|
|
||||||
public string TitleText { get => label1.Text; set => label1.Text = value; }
|
|
||||||
|
|
||||||
[Category("Appearance"), Browsable(true)]
|
|
||||||
public bool Checked
|
|
||||||
{
|
|
||||||
get => isChecked;
|
|
||||||
set
|
|
||||||
{
|
|
||||||
isChecked = value;
|
|
||||||
|
|
||||||
pictureBox1.BackgroundImage = (value) ? Properties.Resources.toggle_right_ea_16 : Properties.Resources.toggle_left_ea_16;
|
|
||||||
|
|
||||||
if (this.TileGroupPanel != null) this.TileGroupPanel.InvalidateContainer();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never)]
|
|
||||||
public TileLayoutContainer TileGroupPanel { get; set; } = null;
|
|
||||||
|
|
||||||
protected void panel_MouseClick(object sender, MouseEventArgs e)
|
|
||||||
{
|
|
||||||
if (e.Button != MouseButtons.Left)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.Checked = !this.Checked;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void topToolStripMenuItem_Click(object sender, System.EventArgs e)
|
|
||||||
{
|
|
||||||
if (this.TileGroupPanel != null) this.TileGroupPanel.MoveTop();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void bottomToolStripMenuItem_Click(object sender, System.EventArgs e)
|
|
||||||
{
|
|
||||||
if (this.TileGroupPanel != null) this.TileGroupPanel.MoveBottom();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void upToolStripMenuItem_Click(object sender, System.EventArgs e)
|
|
||||||
{
|
|
||||||
if (this.TileGroupPanel != null) this.TileGroupPanel.MoveUp();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void downToolStripMenuItem_Click(object sender, System.EventArgs e)
|
|
||||||
{
|
|
||||||
if (this.TileGroupPanel != null) this.TileGroupPanel.MoveDown();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Add group
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="sender"></param>
|
|
||||||
/// <param name="e"></param>
|
|
||||||
private void toolStripMenuItem2_Click(object sender, System.EventArgs e)
|
|
||||||
{
|
|
||||||
if (this.TileGroupPanel != null) this.TileGroupPanel.AddGroup();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Edit group
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="sender"></param>
|
|
||||||
/// <param name="e"></param>
|
|
||||||
private void toolStripMenuItem1_Click(object sender, System.EventArgs e)
|
|
||||||
{
|
|
||||||
if (this.TileGroupPanel != null) this.TileGroupPanel.EditGroup();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Remove group
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="sender"></param>
|
|
||||||
/// <param name="e"></param>
|
|
||||||
private void toolStripMenuItem3_Click(object sender, System.EventArgs e)
|
|
||||||
{
|
|
||||||
if (this.TileGroupPanel != null) this.TileGroupPanel.Remove();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void toolStripMenuItem5_Click(object sender, System.EventArgs e)
|
|
||||||
{
|
|
||||||
if (this.TileGroupPanel != null) this.TileGroupPanel.AddRow();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,123 +0,0 @@
|
|||||||
<?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="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
|
||||||
<value>17, 17</value>
|
|
||||||
</metadata>
|
|
||||||
</root>
|
|
208
Windows/Forms/Tile/TileLayoutContainer.Designer.cs
generated
@ -1,208 +0,0 @@
|
|||||||
namespace AppLauncher.Windows.Forms
|
|
||||||
{
|
|
||||||
partial class TileLayoutContainer
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Required designer variable.
|
|
||||||
/// </summary>
|
|
||||||
private System.ComponentModel.IContainer components = null;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Clean up any resources being used.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
|
||||||
protected override void Dispose(bool disposing)
|
|
||||||
{
|
|
||||||
if (disposing && (components != null))
|
|
||||||
{
|
|
||||||
components.Dispose();
|
|
||||||
}
|
|
||||||
base.Dispose(disposing);
|
|
||||||
}
|
|
||||||
|
|
||||||
#region Component Designer generated code
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Required method for Designer support - do not modify
|
|
||||||
/// the contents of this method with the code editor.
|
|
||||||
/// </summary>
|
|
||||||
private void InitializeComponent()
|
|
||||||
{
|
|
||||||
this.components = new System.ComponentModel.Container();
|
|
||||||
this.panel1 = new AppLauncher.Windows.Forms.TileLayoutPanel();
|
|
||||||
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
|
|
||||||
this.addToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.addListToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.contextMenuStrip2 = new System.Windows.Forms.ContextMenuStrip(this.components);
|
|
||||||
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.toolStripMenuItem5 = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
|
|
||||||
this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.topToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.upToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.downToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.bottomToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
|
|
||||||
this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripMenuItem();
|
|
||||||
this.contextMenuStrip1.SuspendLayout();
|
|
||||||
this.contextMenuStrip2.SuspendLayout();
|
|
||||||
this.SuspendLayout();
|
|
||||||
//
|
|
||||||
// panel1
|
|
||||||
//
|
|
||||||
this.panel1.AllowDrop = true;
|
|
||||||
this.panel1.AutoScrollMargin = new System.Drawing.Size(0, 0);
|
|
||||||
this.panel1.AutoScrollMinSize = new System.Drawing.Size(0, 0);
|
|
||||||
this.panel1.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.panel1.Location = new System.Drawing.Point(0, 23);
|
|
||||||
this.panel1.Margin = new System.Windows.Forms.Padding(2, 0, 0, 0);
|
|
||||||
this.panel1.Name = "panel1";
|
|
||||||
this.panel1.Size = new System.Drawing.Size(223, 127);
|
|
||||||
this.panel1.TabIndex = 27;
|
|
||||||
//
|
|
||||||
// contextMenuStrip1
|
|
||||||
//
|
|
||||||
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
|
||||||
this.addToolStripMenuItem,
|
|
||||||
this.addListToolStripMenuItem});
|
|
||||||
this.contextMenuStrip1.Name = "contextMenuStrip1";
|
|
||||||
this.contextMenuStrip1.Size = new System.Drawing.Size(139, 48);
|
|
||||||
//
|
|
||||||
// addToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.addToolStripMenuItem.Name = "addToolStripMenuItem";
|
|
||||||
this.addToolStripMenuItem.Size = new System.Drawing.Size(138, 22);
|
|
||||||
this.addToolStripMenuItem.Text = "&Add Tile";
|
|
||||||
this.addToolStripMenuItem.Click += new System.EventHandler(this.addTileMenuItem_Click);
|
|
||||||
//
|
|
||||||
// addListToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.addListToolStripMenuItem.Name = "addListToolStripMenuItem";
|
|
||||||
this.addListToolStripMenuItem.Size = new System.Drawing.Size(138, 22);
|
|
||||||
this.addListToolStripMenuItem.Text = "Add &List Tile";
|
|
||||||
this.addListToolStripMenuItem.Click += new System.EventHandler(this.addListTileMenuItem_Click);
|
|
||||||
//
|
|
||||||
// contextMenuStrip2
|
|
||||||
//
|
|
||||||
this.contextMenuStrip2.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
|
||||||
this.toolStripMenuItem2,
|
|
||||||
this.toolStripMenuItem5,
|
|
||||||
this.toolStripMenuItem1,
|
|
||||||
this.toolStripSeparator2,
|
|
||||||
this.toolStripMenuItem4,
|
|
||||||
this.toolStripSeparator1,
|
|
||||||
this.toolStripMenuItem3});
|
|
||||||
this.contextMenuStrip2.Name = "contextMenuStrip1";
|
|
||||||
this.contextMenuStrip2.Size = new System.Drawing.Size(133, 126);
|
|
||||||
//
|
|
||||||
// toolStripMenuItem2
|
|
||||||
//
|
|
||||||
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
|
|
||||||
this.toolStripMenuItem2.Size = new System.Drawing.Size(132, 22);
|
|
||||||
this.toolStripMenuItem2.Text = "&Add Group";
|
|
||||||
this.toolStripMenuItem2.Click += new System.EventHandler(this.toolStripMenuItem2_Click);
|
|
||||||
//
|
|
||||||
// toolStripMenuItem5
|
|
||||||
//
|
|
||||||
this.toolStripMenuItem5.Name = "toolStripMenuItem5";
|
|
||||||
this.toolStripMenuItem5.Size = new System.Drawing.Size(132, 22);
|
|
||||||
this.toolStripMenuItem5.Text = "Add &Row";
|
|
||||||
this.toolStripMenuItem5.Click += new System.EventHandler(this.toolStripMenuItem5_Click);
|
|
||||||
//
|
|
||||||
// toolStripMenuItem1
|
|
||||||
//
|
|
||||||
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
|
|
||||||
this.toolStripMenuItem1.Size = new System.Drawing.Size(132, 22);
|
|
||||||
this.toolStripMenuItem1.Text = "&Edit";
|
|
||||||
this.toolStripMenuItem1.Click += new System.EventHandler(this.toolStripMenuItem1_Click);
|
|
||||||
//
|
|
||||||
// toolStripSeparator2
|
|
||||||
//
|
|
||||||
this.toolStripSeparator2.Name = "toolStripSeparator2";
|
|
||||||
this.toolStripSeparator2.Size = new System.Drawing.Size(129, 6);
|
|
||||||
//
|
|
||||||
// toolStripMenuItem4
|
|
||||||
//
|
|
||||||
this.toolStripMenuItem4.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
|
||||||
this.topToolStripMenuItem,
|
|
||||||
this.upToolStripMenuItem,
|
|
||||||
this.downToolStripMenuItem,
|
|
||||||
this.bottomToolStripMenuItem});
|
|
||||||
this.toolStripMenuItem4.Name = "toolStripMenuItem4";
|
|
||||||
this.toolStripMenuItem4.Size = new System.Drawing.Size(132, 22);
|
|
||||||
this.toolStripMenuItem4.Text = "&Move";
|
|
||||||
//
|
|
||||||
// topToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.topToolStripMenuItem.Name = "topToolStripMenuItem";
|
|
||||||
this.topToolStripMenuItem.Size = new System.Drawing.Size(114, 22);
|
|
||||||
this.topToolStripMenuItem.Text = "&Top";
|
|
||||||
this.topToolStripMenuItem.Click += new System.EventHandler(this.topToolStripMenuItem_Click);
|
|
||||||
//
|
|
||||||
// upToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.upToolStripMenuItem.Name = "upToolStripMenuItem";
|
|
||||||
this.upToolStripMenuItem.Size = new System.Drawing.Size(114, 22);
|
|
||||||
this.upToolStripMenuItem.Text = "&Up";
|
|
||||||
this.upToolStripMenuItem.Click += new System.EventHandler(this.upToolStripMenuItem_Click);
|
|
||||||
//
|
|
||||||
// downToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.downToolStripMenuItem.Name = "downToolStripMenuItem";
|
|
||||||
this.downToolStripMenuItem.Size = new System.Drawing.Size(114, 22);
|
|
||||||
this.downToolStripMenuItem.Text = "&Down";
|
|
||||||
this.downToolStripMenuItem.Click += new System.EventHandler(this.downToolStripMenuItem_Click);
|
|
||||||
//
|
|
||||||
// bottomToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.bottomToolStripMenuItem.Name = "bottomToolStripMenuItem";
|
|
||||||
this.bottomToolStripMenuItem.Size = new System.Drawing.Size(114, 22);
|
|
||||||
this.bottomToolStripMenuItem.Text = "&Bottom";
|
|
||||||
this.bottomToolStripMenuItem.Click += new System.EventHandler(this.bottomToolStripMenuItem_Click);
|
|
||||||
//
|
|
||||||
// toolStripSeparator1
|
|
||||||
//
|
|
||||||
this.toolStripSeparator1.Name = "toolStripSeparator1";
|
|
||||||
this.toolStripSeparator1.Size = new System.Drawing.Size(129, 6);
|
|
||||||
//
|
|
||||||
// toolStripMenuItem3
|
|
||||||
//
|
|
||||||
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
|
|
||||||
this.toolStripMenuItem3.Size = new System.Drawing.Size(132, 22);
|
|
||||||
this.toolStripMenuItem3.Text = "&Remove";
|
|
||||||
this.toolStripMenuItem3.Click += new System.EventHandler(this.toolStripMenuItem3_Click);
|
|
||||||
//
|
|
||||||
// TileLayoutContainer
|
|
||||||
//
|
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
||||||
this.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.Controls.Add(this.panel1);
|
|
||||||
this.Name = "TileLayoutContainer";
|
|
||||||
this.Size = new System.Drawing.Size(370, 150);
|
|
||||||
this.contextMenuStrip1.ResumeLayout(false);
|
|
||||||
this.contextMenuStrip2.ResumeLayout(false);
|
|
||||||
this.ResumeLayout(false);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
private TileLayoutPanel panel1;
|
|
||||||
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem addToolStripMenuItem;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem addListToolStripMenuItem;
|
|
||||||
private System.Windows.Forms.ContextMenuStrip contextMenuStrip2;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem2;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem5;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1;
|
|
||||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem4;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem topToolStripMenuItem;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem upToolStripMenuItem;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem downToolStripMenuItem;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem bottomToolStripMenuItem;
|
|
||||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
|
|
||||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem3;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,362 +0,0 @@
|
|||||||
using AppLauncher.Models;
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.ComponentModel;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.Threading;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System.Windows.Forms;
|
|
||||||
|
|
||||||
namespace AppLauncher.Windows.Forms
|
|
||||||
{
|
|
||||||
public partial class TileLayoutContainer : AUserControl
|
|
||||||
{
|
|
||||||
protected TileGroupModel groupInfo = null;
|
|
||||||
|
|
||||||
protected readonly int labelHeight = 20;
|
|
||||||
protected readonly int collapseIncrement = 6;
|
|
||||||
protected readonly int expandIncrement = 8;
|
|
||||||
|
|
||||||
protected bool isAnimating = false;
|
|
||||||
protected bool isChecked = true;
|
|
||||||
|
|
||||||
public TileLayoutContainer(TileGroupModel model) : base()
|
|
||||||
{
|
|
||||||
InitializeComponent();
|
|
||||||
|
|
||||||
this.LoadModel(model);
|
|
||||||
|
|
||||||
panel1.Resize += panel1_Resize;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override async void OnLoad(EventArgs e)
|
|
||||||
{
|
|
||||||
base.OnLoad(e);
|
|
||||||
|
|
||||||
this.Margin = new Padding(0);
|
|
||||||
this.Padding = new Padding(0, 0, 0, 10);
|
|
||||||
//this.MaximumSize = new Size(panel1.Width, ExpandedHeight);
|
|
||||||
//this.MinimumSize = new Size(panel1.Width, label1.Height);
|
|
||||||
//this.Size = this.MaximumSize;
|
|
||||||
this.Size = new Size(panel1.Width, this.ExpandedHeight);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnPaint(PaintEventArgs e)
|
|
||||||
{
|
|
||||||
base.OnPaint(e);
|
|
||||||
|
|
||||||
Graphics g = e.Graphics;
|
|
||||||
|
|
||||||
g.DrawImageUnscaled((isChecked ? Properties.Resources.toggle_right_ea_16 : Properties.Resources.toggle_left_ea_16), 2, 2);
|
|
||||||
|
|
||||||
TextRenderer.DrawText(g, groupInfo?.Title, new Font(this.Font.FontFamily, 8.25F), new Point(25, 4), Color.FromArgb(99, 105, 119));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private async void panel1_Resize(object sender, EventArgs e) => await this.InvalidateContainer();
|
|
||||||
|
|
||||||
public int CollapseHeight => labelHeight + panel1.CollapseHeight;
|
|
||||||
|
|
||||||
public int ExpandedHeight => labelHeight + panel1.ExpandedHeight + this.Padding.Top + this.Padding.Bottom;
|
|
||||||
|
|
||||||
public TileGroupModel Model
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
TileGroupModel rs = new TileGroupModel()
|
|
||||||
{
|
|
||||||
Title = groupInfo.Title,
|
|
||||||
GridSize = new Size(panel1.GridSize.X, panel1.GridSize.Y),
|
|
||||||
IsExpanded = isChecked,
|
|
||||||
IsExclusive = groupInfo.IsExclusive,
|
|
||||||
Items = panel1.Tiles
|
|
||||||
};
|
|
||||||
|
|
||||||
return rs;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public FlowLayoutPanel FlowLayoutPanel
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
if (this.Parent == null)
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.Parent.GetType() != typeof(FlowLayoutPanel))
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
return this.Parent as FlowLayoutPanel;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task Collapse()
|
|
||||||
{
|
|
||||||
await Task.Run(() =>
|
|
||||||
{
|
|
||||||
if (isAnimating) return;
|
|
||||||
|
|
||||||
isAnimating = true;
|
|
||||||
|
|
||||||
while (this.Height > this.CollapseHeight)
|
|
||||||
{
|
|
||||||
if (this.InvokeRequired)
|
|
||||||
{
|
|
||||||
this.Invoke(new MethodInvoker(() => {
|
|
||||||
this.Height -= collapseIncrement;
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
this.Height -= collapseIncrement;
|
|
||||||
}
|
|
||||||
|
|
||||||
Thread.Sleep(10);
|
|
||||||
}
|
|
||||||
|
|
||||||
isAnimating = false;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task CollapseNow()
|
|
||||||
{
|
|
||||||
await Task.Run(() =>
|
|
||||||
{
|
|
||||||
if (isAnimating) return;
|
|
||||||
|
|
||||||
isAnimating = true;
|
|
||||||
|
|
||||||
if (this.InvokeRequired)
|
|
||||||
{
|
|
||||||
this.Invoke(new MethodInvoker(() => {
|
|
||||||
this.Height = this.CollapseHeight;
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
this.Height = this.CollapseHeight;
|
|
||||||
}
|
|
||||||
|
|
||||||
isAnimating = false;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task Expand()
|
|
||||||
{
|
|
||||||
await Task.Run(() =>
|
|
||||||
{
|
|
||||||
if (isAnimating) return;
|
|
||||||
|
|
||||||
isAnimating = true;
|
|
||||||
|
|
||||||
while (this.Height < this.ExpandedHeight)
|
|
||||||
{
|
|
||||||
if (this.InvokeRequired)
|
|
||||||
{
|
|
||||||
this.Invoke(new MethodInvoker(() => {
|
|
||||||
this.Height += expandIncrement;
|
|
||||||
this.Invalidate();
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
this.Height += expandIncrement;
|
|
||||||
this.Invalidate();
|
|
||||||
}
|
|
||||||
|
|
||||||
Thread.Sleep(10);
|
|
||||||
}
|
|
||||||
|
|
||||||
isAnimating = false;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task InvalidateContainer(bool animate = true)
|
|
||||||
{
|
|
||||||
if (isAnimating)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isChecked)
|
|
||||||
{
|
|
||||||
await this.Expand();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (animate)
|
|
||||||
{
|
|
||||||
await this.Collapse();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
await this.CollapseNow();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void AddGroup()
|
|
||||||
{
|
|
||||||
if (this.FlowLayoutPanel == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.FlowLayoutPanel.Controls.Add(new TileLayoutContainer(new TileGroupModel()
|
|
||||||
{
|
|
||||||
Title = "New Group",
|
|
||||||
GridSize = new Size(8, 1)
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
|
|
||||||
public void AddRow()
|
|
||||||
{
|
|
||||||
panel1.SetGridSize(groupInfo.GridSize.Width, (groupInfo.GridSize.Height + 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
public void EditGroup()
|
|
||||||
{
|
|
||||||
EditGroupForm editForm = new EditGroupForm(this);
|
|
||||||
editForm.ShowDialog();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void LoadModel(TileGroupModel model, bool loadTiles = true)
|
|
||||||
{
|
|
||||||
groupInfo = model;
|
|
||||||
|
|
||||||
panel1.SetGridSize(groupInfo.GridSize.Width, groupInfo.GridSize.Height);
|
|
||||||
this.Width = panel1.Width;
|
|
||||||
|
|
||||||
isChecked = groupInfo.IsExpanded;
|
|
||||||
|
|
||||||
if (loadTiles)
|
|
||||||
{
|
|
||||||
panel1.LoadTiles(model.Items);
|
|
||||||
}
|
|
||||||
|
|
||||||
this.Invalidate();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void MoveTop()
|
|
||||||
{
|
|
||||||
if (this.FlowLayoutPanel == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.FlowLayoutPanel.Controls.SetChildIndex(this, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void MoveUp()
|
|
||||||
{
|
|
||||||
if (this.FlowLayoutPanel == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
int pos = this.FlowLayoutPanel.Controls.GetChildIndex(this);
|
|
||||||
if (pos <= 0)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.FlowLayoutPanel.Controls.SetChildIndex(this, (pos - 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
public void MoveDown()
|
|
||||||
{
|
|
||||||
if (this.FlowLayoutPanel == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
int pos = this.FlowLayoutPanel.Controls.GetChildIndex(this);
|
|
||||||
if (pos >= (this.FlowLayoutPanel.Controls.Count - 1))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.FlowLayoutPanel.Controls.SetChildIndex(this, (pos + 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
public void MoveBottom()
|
|
||||||
{
|
|
||||||
if (this.FlowLayoutPanel == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.FlowLayoutPanel.Controls.SetChildIndex(this, (this.FlowLayoutPanel.Controls.Count - 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Remove()
|
|
||||||
{
|
|
||||||
if (this.FlowLayoutPanel == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.FlowLayoutPanel.Controls.Remove(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void addTileMenuItem_Click(object sender, EventArgs e) => AddTileForm.ShowDialog(panel1);
|
|
||||||
|
|
||||||
private void addListTileMenuItem_Click(object sender, EventArgs e) => AddListTileForm.ShowDialog(panel1);
|
|
||||||
|
|
||||||
protected override async void OnMouseClick(MouseEventArgs e)
|
|
||||||
{
|
|
||||||
base.OnMouseClick(e);
|
|
||||||
|
|
||||||
bool isLabel = ((e.Location.X >= 0) && (e.Location.X <= this.Width) && (e.Location.Y >= 0) && (e.Location.Y <= 20));
|
|
||||||
|
|
||||||
if (e.Button == MouseButtons.Left)
|
|
||||||
{
|
|
||||||
if (isLabel)
|
|
||||||
{
|
|
||||||
isChecked = !isChecked;
|
|
||||||
|
|
||||||
this.Invalidate();
|
|
||||||
await this.InvalidateContainer();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (e.Button == MouseButtons.Right)
|
|
||||||
{
|
|
||||||
if (isLabel)
|
|
||||||
{
|
|
||||||
contextMenuStrip2.Show(this, e.Location);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
contextMenuStrip1.Show(this, e.Location);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnMouseDoubleClick(MouseEventArgs e) => base.OnMouseClick(e);
|
|
||||||
|
|
||||||
private void toolStripMenuItem2_Click(object sender, EventArgs e) => this.AddGroup();
|
|
||||||
|
|
||||||
private void toolStripMenuItem5_Click(object sender, EventArgs e) => this.AddRow();
|
|
||||||
|
|
||||||
private void toolStripMenuItem1_Click(object sender, EventArgs e) => this.EditGroup();
|
|
||||||
|
|
||||||
private void topToolStripMenuItem_Click(object sender, EventArgs e) => this.MoveTop();
|
|
||||||
|
|
||||||
private void upToolStripMenuItem_Click(object sender, EventArgs e) => this.MoveUp();
|
|
||||||
|
|
||||||
private void downToolStripMenuItem_Click(object sender, EventArgs e) => this.MoveDown();
|
|
||||||
|
|
||||||
private void bottomToolStripMenuItem_Click(object sender, EventArgs e) => this.MoveBottom();
|
|
||||||
|
|
||||||
private void toolStripMenuItem3_Click(object sender, EventArgs e) => this.Remove();
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,126 +0,0 @@
|
|||||||
<?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="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
|
||||||
<value>17, 17</value>
|
|
||||||
</metadata>
|
|
||||||
<metadata name="contextMenuStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
|
||||||
<value>172, 17</value>
|
|
||||||
</metadata>
|
|
||||||
</root>
|
|
@ -1,454 +0,0 @@
|
|||||||
using AppLauncher.Models;
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Diagnostics;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.IO;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Windows.Forms;
|
|
||||||
|
|
||||||
namespace AppLauncher.Windows.Forms
|
|
||||||
{
|
|
||||||
public class TileLayoutPanel : AUserControl
|
|
||||||
{
|
|
||||||
public class Item
|
|
||||||
{
|
|
||||||
public TilePanel Tile { get; set; }
|
|
||||||
public Point Coord { get; set; } = new Point(0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected readonly int tileSize = 70;
|
|
||||||
protected readonly int margin = 3;
|
|
||||||
|
|
||||||
protected int collapseHeight = 0;
|
|
||||||
protected int expandedHeight = 0;
|
|
||||||
|
|
||||||
protected List<Item> items = new List<Item>();
|
|
||||||
|
|
||||||
public TileLayoutPanel() : base()
|
|
||||||
{
|
|
||||||
InitializeComponent();
|
|
||||||
|
|
||||||
this.AllowDrop = true;
|
|
||||||
this.BackColor = Color.Transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void InitializeComponent()
|
|
||||||
{
|
|
||||||
this.SuspendLayout();
|
|
||||||
//
|
|
||||||
// TileLayoutPanel
|
|
||||||
//
|
|
||||||
this.Name = "TileLayoutPanel";
|
|
||||||
this.DragDrop += new System.Windows.Forms.DragEventHandler(this.panel_DragDrop);
|
|
||||||
this.DragOver += new System.Windows.Forms.DragEventHandler(this.panel_DragOver);
|
|
||||||
this.ResumeLayout(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnLoad(EventArgs e)
|
|
||||||
{
|
|
||||||
base.OnLoad(e);
|
|
||||||
|
|
||||||
OnResize(e);
|
|
||||||
}
|
|
||||||
|
|
||||||
public Point GridSize
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
int w = (int)Math.Floor(decimal.Divide(this.Width, this.TileSize));
|
|
||||||
int h = (int)Math.Floor(decimal.Divide(this.Height, this.TileSize));
|
|
||||||
|
|
||||||
return new Point(w, h);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public TileLayoutContainer TileContainer
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
if (this.Parent == null)
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.Parent.GetType() != typeof(TileLayoutContainer))
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
return (TileLayoutContainer)this.Parent;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public int TileSize => (tileSize + margin);
|
|
||||||
|
|
||||||
public int CollapseHeight => collapseHeight;
|
|
||||||
|
|
||||||
public int ExpandedHeight => expandedHeight;
|
|
||||||
|
|
||||||
public List<TileModel> Tiles
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
List<TileModel> rs = new List<TileModel>();
|
|
||||||
foreach (Item item in items)
|
|
||||||
{
|
|
||||||
TileModel model = item.Tile.ModelInfo;
|
|
||||||
model.Position = item.Coord;
|
|
||||||
|
|
||||||
rs.Add(model);
|
|
||||||
}
|
|
||||||
|
|
||||||
return rs;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void AddTile(TileModel tile)
|
|
||||||
{
|
|
||||||
Point gridSize = this.GridSize;
|
|
||||||
|
|
||||||
if (items.Count >= (gridSize.X * gridSize.Y))
|
|
||||||
{
|
|
||||||
this.SetGridSize(gridSize.X, (gridSize.Y + 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
Point? newCoord = findLastFreeCoord();
|
|
||||||
if (newCoord == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
tile.Position = newCoord.Value;
|
|
||||||
|
|
||||||
TilePanel panel = new TilePanel();
|
|
||||||
panel.LoadInfo(tile);
|
|
||||||
panel.Location = convertCoordToLocation(tile.Position);
|
|
||||||
|
|
||||||
items.Add(new Item()
|
|
||||||
{
|
|
||||||
Tile = panel,
|
|
||||||
Coord = tile.Position
|
|
||||||
});
|
|
||||||
|
|
||||||
this.Controls.Add(panel);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Clear()
|
|
||||||
{
|
|
||||||
this.Controls.Clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
public Point GetTilePosition(int posX, int posY)
|
|
||||||
{
|
|
||||||
int x = (int)Math.Round(decimal.Divide(posX, this.TileSize));
|
|
||||||
int y = (int)Math.Round(decimal.Divide(posY, this.TileSize));
|
|
||||||
|
|
||||||
if (x < 0) x = 0;
|
|
||||||
if (y < 0) y = 0;
|
|
||||||
|
|
||||||
return new Point((x * this.TileSize), (y * this.TileSize));
|
|
||||||
}
|
|
||||||
|
|
||||||
public void LoadTiles(List<TileModel> tiles)
|
|
||||||
{
|
|
||||||
if (tiles == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tiles.Count() <= 0)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach (TileModel item in tiles)
|
|
||||||
{
|
|
||||||
// resolve final grid position
|
|
||||||
Point? confirmedPosition = resolveCoord(item.Position);
|
|
||||||
if (confirmedPosition == null)
|
|
||||||
{
|
|
||||||
continue;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// place control
|
|
||||||
TilePanel panel = new TilePanel();
|
|
||||||
panel.LoadInfo(item);
|
|
||||||
panel.Location = convertCoordToLocation(confirmedPosition.Value);
|
|
||||||
|
|
||||||
items.Add(new Item()
|
|
||||||
{
|
|
||||||
Tile = panel,
|
|
||||||
Coord = confirmedPosition.Value
|
|
||||||
});
|
|
||||||
|
|
||||||
this.Controls.Add(panel);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void MoveTile(TilePanel panel, int posX, int posY)
|
|
||||||
{
|
|
||||||
Item item = items.Where(x => x.Tile.Equals(panel)).FirstOrDefault();
|
|
||||||
if (item == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
Point newPosition = convertLocationToCoord(posX, posY);
|
|
||||||
if (!isTileInBounds(newPosition))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (hasTile(newPosition))
|
|
||||||
{
|
|
||||||
Item swapItem = items.Where(x => x.Coord.Equals(newPosition)).FirstOrDefault();
|
|
||||||
if (swapItem != null)
|
|
||||||
{
|
|
||||||
swapItem.Coord = item.Coord;
|
|
||||||
swapItem.Tile.Location = convertCoordToLocation(item.Coord);
|
|
||||||
}
|
|
||||||
|
|
||||||
item.Coord = newPosition;
|
|
||||||
panel.Location = convertCoordToLocation(newPosition);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
item.Coord = newPosition;
|
|
||||||
panel.Location = convertCoordToLocation(newPosition);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Remove(TilePanel panel)
|
|
||||||
{
|
|
||||||
Item m = items.Where(x => x.Tile.Equals(panel)).FirstOrDefault();
|
|
||||||
if (m != null)
|
|
||||||
{
|
|
||||||
items.Remove(m);
|
|
||||||
}
|
|
||||||
|
|
||||||
this.Controls.Remove(panel);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void SetGridSize(int width, int height)
|
|
||||||
{
|
|
||||||
expandedHeight = (this.TileSize * height);
|
|
||||||
|
|
||||||
this.Size = new Size((this.TileSize * width), expandedHeight);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected Point convertCoordToLocation(Point position) => new Point((position.X * this.TileSize), (position.Y * this.TileSize));
|
|
||||||
|
|
||||||
protected Point convertLocationToCoord(int posX, int posY)
|
|
||||||
{
|
|
||||||
int x = (int)Math.Round(decimal.Divide(posX, this.TileSize));
|
|
||||||
int y = (int)Math.Round(decimal.Divide(posY, this.TileSize));
|
|
||||||
|
|
||||||
if (x < 0) x = 0;
|
|
||||||
if (y < 0) y = 0;
|
|
||||||
|
|
||||||
return new Point(x, y);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected Point? findLastFreeCoord()
|
|
||||||
{
|
|
||||||
Point gridSize = this.GridSize;
|
|
||||||
|
|
||||||
// none available
|
|
||||||
if (items.Count >= (gridSize.X * gridSize.Y))
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (items.Count <= 0)
|
|
||||||
{
|
|
||||||
return findFirstFreeCoord();
|
|
||||||
}
|
|
||||||
|
|
||||||
// only one available
|
|
||||||
if (items.Count >= ((gridSize.X * gridSize.Y) - 1))
|
|
||||||
{
|
|
||||||
return findFirstFreeCoord();
|
|
||||||
}
|
|
||||||
|
|
||||||
Point? rv = null;
|
|
||||||
|
|
||||||
for (int y = (gridSize.Y - 1); y >= 0; y--)
|
|
||||||
{
|
|
||||||
for (int x = (gridSize.X - 1); x >= 0; x--)
|
|
||||||
{
|
|
||||||
if (hasTile(new Point(x, y)))
|
|
||||||
{
|
|
||||||
if (rv.HasValue)
|
|
||||||
{
|
|
||||||
return rv;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
rv = new Point(x, y);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected Point? findFirstFreeCoord()
|
|
||||||
{
|
|
||||||
Point gridSize = this.GridSize;
|
|
||||||
|
|
||||||
for (int y = 0; y < gridSize.Y; y++)
|
|
||||||
{
|
|
||||||
for (int x = 0; x < gridSize.X; x++)
|
|
||||||
{
|
|
||||||
if (hasTile(new Point(x, y)))
|
|
||||||
{
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
return new Point(x, y);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected Point? resolveCoord(Point coord)
|
|
||||||
{
|
|
||||||
if (!isTileInBounds(coord))
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!hasTile(coord))
|
|
||||||
{
|
|
||||||
return coord;
|
|
||||||
}
|
|
||||||
|
|
||||||
return resolveNextCoord(coord);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected Point? resolveNextCoord(Point coord)
|
|
||||||
{
|
|
||||||
Point gridSize = this.GridSize;
|
|
||||||
Point newCoord = coord;
|
|
||||||
|
|
||||||
while (true)
|
|
||||||
{
|
|
||||||
newCoord.X++;
|
|
||||||
|
|
||||||
if (newCoord.X >= gridSize.X)
|
|
||||||
{
|
|
||||||
newCoord.Y++;
|
|
||||||
newCoord.X = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!isTileInBounds(newCoord))
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (hasTile(newCoord))
|
|
||||||
{
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
return newCoord;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected bool hasTile(Point position)
|
|
||||||
{
|
|
||||||
if (items == null)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (items.Count <= 0)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return (items.Count(x => x.Coord.Equals(position)) > 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected bool isTileInBounds(Point position)
|
|
||||||
{
|
|
||||||
Point gridSize = this.GridSize;
|
|
||||||
|
|
||||||
if (position.X >= gridSize.X)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (position.Y >= gridSize.Y)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void panel_DragOver(object sender, DragEventArgs e)
|
|
||||||
{
|
|
||||||
if (e.Data.GetDataPresent(DataFormats.FileDrop))
|
|
||||||
{
|
|
||||||
e.Effect = DragDropEffects.Link;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
e.Effect = DragDropEffects.None;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void panel_DragDrop(object sender, DragEventArgs e)
|
|
||||||
{
|
|
||||||
string[] fileList = e.Data.GetData(DataFormats.FileDrop) as string[];
|
|
||||||
if (fileList == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (fileList.Length <= 0)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (string.IsNullOrWhiteSpace(fileList[0]))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
TileModel model = new TileModel()
|
|
||||||
{
|
|
||||||
ProcessFilename = fileList[0],
|
|
||||||
Title = Path.GetFileName(fileList[0])
|
|
||||||
};
|
|
||||||
|
|
||||||
// exe
|
|
||||||
if (Path.GetExtension(fileList[0]).Equals(".exe", StringComparison.CurrentCultureIgnoreCase))
|
|
||||||
{
|
|
||||||
if (File.Exists(fileList[0]))
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(fileList[0]);
|
|
||||||
if (fvi != null)
|
|
||||||
{
|
|
||||||
model.Title = fvi.ProductName;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch
|
|
||||||
{
|
|
||||||
// do nothing
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
this.AddTile(model);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,120 +0,0 @@
|
|||||||
<?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>
|
|
90
Windows/Forms/TitlePanel.Designer.cs
generated
@ -1,90 +0,0 @@
|
|||||||
namespace AppLauncher.Windows.Forms
|
|
||||||
{
|
|
||||||
partial class TitlePanel
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Required designer variable.
|
|
||||||
/// </summary>
|
|
||||||
private System.ComponentModel.IContainer components = null;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Clean up any resources being used.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
|
||||||
protected override void Dispose(bool disposing)
|
|
||||||
{
|
|
||||||
if (disposing && (components != null))
|
|
||||||
{
|
|
||||||
components.Dispose();
|
|
||||||
}
|
|
||||||
base.Dispose(disposing);
|
|
||||||
}
|
|
||||||
|
|
||||||
#region Component Designer generated code
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Required method for Designer support - do not modify
|
|
||||||
/// the contents of this method with the code editor.
|
|
||||||
/// </summary>
|
|
||||||
private void InitializeComponent()
|
|
||||||
{
|
|
||||||
this.pictureBox1 = new System.Windows.Forms.PictureBox();
|
|
||||||
this.label1 = new System.Windows.Forms.Label();
|
|
||||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
|
|
||||||
this.SuspendLayout();
|
|
||||||
//
|
|
||||||
// pictureBox1
|
|
||||||
//
|
|
||||||
this.pictureBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
|
||||||
| System.Windows.Forms.AnchorStyles.Left)));
|
|
||||||
this.pictureBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(83)))), ((int)(((byte)(93)))));
|
|
||||||
this.pictureBox1.BackgroundImage = global::AppLauncher.Properties.Resources.grid_ea_24;
|
|
||||||
this.pictureBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
|
|
||||||
this.pictureBox1.ErrorImage = null;
|
|
||||||
this.pictureBox1.InitialImage = null;
|
|
||||||
this.pictureBox1.Location = new System.Drawing.Point(0, 0);
|
|
||||||
this.pictureBox1.Margin = new System.Windows.Forms.Padding(0);
|
|
||||||
this.pictureBox1.Name = "pictureBox1";
|
|
||||||
this.pictureBox1.Size = new System.Drawing.Size(40, 40);
|
|
||||||
this.pictureBox1.TabIndex = 5;
|
|
||||||
this.pictureBox1.TabStop = false;
|
|
||||||
this.pictureBox1.DoubleClick += new System.EventHandler(this.pictureBox1_DoubleClick);
|
|
||||||
this.pictureBox1.MouseUp += new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseUp);
|
|
||||||
//
|
|
||||||
// label1
|
|
||||||
//
|
|
||||||
this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
|
||||||
| System.Windows.Forms.AnchorStyles.Left)
|
|
||||||
| System.Windows.Forms.AnchorStyles.Right)));
|
|
||||||
this.label1.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
|
||||||
this.label1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(234)))), ((int)(((byte)(234)))), ((int)(((byte)(234)))));
|
|
||||||
this.label1.Location = new System.Drawing.Point(40, 0);
|
|
||||||
this.label1.Margin = new System.Windows.Forms.Padding(0);
|
|
||||||
this.label1.Name = "label1";
|
|
||||||
this.label1.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
|
|
||||||
this.label1.Size = new System.Drawing.Size(657, 40);
|
|
||||||
this.label1.TabIndex = 6;
|
|
||||||
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
|
||||||
//
|
|
||||||
// TitlePanel
|
|
||||||
//
|
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
||||||
this.BackColor = System.Drawing.Color.Black;
|
|
||||||
this.Controls.Add(this.label1);
|
|
||||||
this.Controls.Add(this.pictureBox1);
|
|
||||||
this.MinimumSize = new System.Drawing.Size(100, 40);
|
|
||||||
this.Name = "TitlePanel";
|
|
||||||
this.Size = new System.Drawing.Size(697, 40);
|
|
||||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
|
|
||||||
this.ResumeLayout(false);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
private System.Windows.Forms.PictureBox pictureBox1;
|
|
||||||
private System.Windows.Forms.Label label1;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,140 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.ComponentModel;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.Windows.Forms;
|
|
||||||
|
|
||||||
namespace AppLauncher.Windows.Forms
|
|
||||||
{
|
|
||||||
public partial class TitlePanel : UserControl
|
|
||||||
{
|
|
||||||
private bool isDragging = false;
|
|
||||||
private Point windowOffset = new Point();
|
|
||||||
|
|
||||||
public TitlePanel()
|
|
||||||
{
|
|
||||||
InitializeComponent();
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnLoad(EventArgs e)
|
|
||||||
{
|
|
||||||
base.OnLoad(e);
|
|
||||||
|
|
||||||
this.BackColor = Color.Black;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnParentBindingContextChanged(EventArgs e)
|
|
||||||
{
|
|
||||||
base.OnParentBindingContextChanged(e);
|
|
||||||
|
|
||||||
if (this.Parent != null)
|
|
||||||
{
|
|
||||||
if (this.Parent.GetType() == typeof(MainForm))
|
|
||||||
{
|
|
||||||
pictureBox1.MouseDown += parentForm_MouseDown;
|
|
||||||
pictureBox1.MouseUp += parentForm_MouseUp;
|
|
||||||
pictureBox1.MouseMove += parentForm_MouseMove;
|
|
||||||
label1.MouseDown += parentForm_MouseDown;
|
|
||||||
label1.MouseUp += parentForm_MouseUp;
|
|
||||||
label1.MouseMove += parentForm_MouseMove;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[Category("Appearance"), Browsable(true)]
|
|
||||||
public string TitleText { get => label1.Text; set => label1.Text = value; }
|
|
||||||
|
|
||||||
[Category("Appearance"), Browsable(true)]
|
|
||||||
public bool LabelVisible { get => label1.Visible; set => label1.Visible = value; }
|
|
||||||
|
|
||||||
public ContextMenuStrip MainMenu { get; set; } = null;
|
|
||||||
|
|
||||||
public MainForm MainForm
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
if (this.Parent == null)
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.Parent.GetType() != typeof(MainForm))
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
return (MainForm)this.Parent;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void parentForm_MouseDown(object sender, MouseEventArgs e)
|
|
||||||
{
|
|
||||||
if (e.Button != MouseButtons.Left)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
isDragging = true;
|
|
||||||
windowOffset = e.Location;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void parentForm_MouseUp(object sender, MouseEventArgs e)
|
|
||||||
{
|
|
||||||
isDragging = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void parentForm_MouseMove(object sender, MouseEventArgs e)
|
|
||||||
{
|
|
||||||
if (isDragging)
|
|
||||||
{
|
|
||||||
Point pos = this.PointToScreen(e.Location);
|
|
||||||
int y = (pos.Y - windowOffset.Y);
|
|
||||||
int x = (pos.X - windowOffset.X);
|
|
||||||
|
|
||||||
this.Parent.Location = new Point(x, y);
|
|
||||||
|
|
||||||
//int y = Math.Max((pos.Y - windowOffset.Y), Screen.PrimaryScreen.WorkingArea.Y);
|
|
||||||
//y = Math.Min(y, (Screen.PrimaryScreen.WorkingArea.Y + Screen.PrimaryScreen.WorkingArea.Height) - this.Height);
|
|
||||||
|
|
||||||
//this.Parent.Location = new Point(Screen.PrimaryScreen.WorkingArea.X, y);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
|
|
||||||
{
|
|
||||||
if (e.Button == MouseButtons.Right)
|
|
||||||
{
|
|
||||||
if (this.MainMenu != null)
|
|
||||||
{
|
|
||||||
this.MainMenu.Show(this.PointToScreen(e.Location));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private async void pictureBox1_DoubleClick(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
if (this.MainForm == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
await this.MainForm.ToggleSize();
|
|
||||||
}
|
|
||||||
|
|
||||||
//protected Point validateFormLocation(int x, int y)
|
|
||||||
//{
|
|
||||||
// Screen activeScreen = Screen.FromControl(this);
|
|
||||||
// int maxX = (activeScreen.WorkingArea.X + activeScreen.WorkingArea.Width) - this.Width;
|
|
||||||
// int maxY = (activeScreen.WorkingArea.Y + activeScreen.WorkingArea.Height) - this.Height;
|
|
||||||
|
|
||||||
// if (x < activeScreen.WorkingArea.X) x = activeScreen.WorkingArea.X;
|
|
||||||
// if (y < activeScreen.WorkingArea.Y) y = activeScreen.WorkingArea.Y;
|
|
||||||
// if (x > maxX) x = maxX;
|
|
||||||
// if (y > maxY) y = maxY;
|
|
||||||
|
|
||||||
// //y = activeScreen.WorkingArea.Y;
|
|
||||||
|
|
||||||
// return new Point(x, y);
|
|
||||||
//}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,120 +0,0 @@
|
|||||||
<?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>
|
|