diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 000000000..9412b20da
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,81 @@
+# https://github.com/dotnet/roslyn/blob/master/.editorconfig
+# EditorConfig is awesome:http://EditorConfig.org
+
+# top-most EditorConfig file
+root = true
+
+# Don't use tabs for indentation.
+[*]
+indent_style = space
+# (Please don't specify an indent_size here; that has too many unintended consequences.)
+
+# Code files
+[*.{cs,csx,vb,vbx}]
+indent_size = 4
+insert_final_newline = true
+charset = utf-8-bom
+
+# Xml project files
+[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj}]
+indent_size = 2
+
+# Xml config files
+[*.{props,targets,ruleset,config,nuspec,resx,vsixmanifest,vsct}]
+indent_size = 2
+
+# JSON files
+[*.json]
+indent_size = 2
+
+# Dotnet code style settings:
+[*.{cs,vb}]
+# Sort using and Import directives with System.* appearing first
+dotnet_sort_system_directives_first = true
+# Avoid "this." and "Me." if not necessary
+dotnet_style_qualification_for_field = false:suggestion
+dotnet_style_qualification_for_property = false:suggestion
+dotnet_style_qualification_for_method = false:suggestion
+dotnet_style_qualification_for_event = false:suggestion
+
+# Use language keywords instead of framework type names for type references
+dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion
+dotnet_style_predefined_type_for_member_access = true:suggestion
+
+# Suggest more modern language features when available
+dotnet_style_object_initializer = true:suggestion
+dotnet_style_collection_initializer = true:suggestion
+dotnet_style_coalesce_expression = true:suggestion
+dotnet_style_null_propagation = true:suggestion
+dotnet_style_explicit_tuple_names = true:suggestion
+
+# CSharp code style settings:
+[*.cs]
+# Prefer "var" everywhere
+csharp_style_var_for_built_in_types = true:suggestion
+csharp_style_var_when_type_is_apparent = true:suggestion
+csharp_style_var_elsewhere = true:suggestion
+
+# Prefer method-like constructs to have a block body
+csharp_style_expression_bodied_methods = false:none
+csharp_style_expression_bodied_constructors = false:none
+csharp_style_expression_bodied_operators = false:none
+
+# Prefer property-like constructs to have an expression-body
+csharp_style_expression_bodied_properties = true:none
+csharp_style_expression_bodied_indexers = true:none
+csharp_style_expression_bodied_accessors = true:none
+
+# Suggest more modern language features when available
+csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion
+csharp_style_pattern_matching_over_as_with_null_check = true:suggestion
+csharp_style_inlined_variable_declaration = true:suggestion
+csharp_style_throw_expression = true:suggestion
+csharp_style_conditional_delegate_call = true:suggestion
+
+# Newline settings
+csharp_new_line_before_open_brace = all
+csharp_new_line_before_else = true
+csharp_new_line_before_catch = true
+csharp_new_line_before_finally = true
+csharp_new_line_before_members_in_object_initializers = true
+csharp_new_line_before_members_in_anonymous_types = true
\ No newline at end of file
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 000000000..1ff0c4230
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,63 @@
+###############################################################################
+# Set default behavior to automatically normalize line endings.
+###############################################################################
+* text=auto
+
+###############################################################################
+# Set default behavior for command prompt diff.
+#
+# This is need for earlier builds of msysgit that does not have it on by
+# default for csharp files.
+# Note: This is only used by command line
+###############################################################################
+#*.cs diff=csharp
+
+###############################################################################
+# Set the merge driver for project and solution files
+#
+# Merging from the command prompt will add diff markers to the files if there
+# are conflicts (Merging from VS is not affected by the settings below, in VS
+# the diff markers are never inserted). Diff markers may cause the following
+# file extensions to fail to load in VS. An alternative would be to treat
+# these files as binary and thus will always conflict and require user
+# intervention with every merge. To do so, just uncomment the entries below
+###############################################################################
+#*.sln merge=binary
+#*.csproj merge=binary
+#*.vbproj merge=binary
+#*.vcxproj merge=binary
+#*.vcproj merge=binary
+#*.dbproj merge=binary
+#*.fsproj merge=binary
+#*.lsproj merge=binary
+#*.wixproj merge=binary
+#*.modelproj merge=binary
+#*.sqlproj merge=binary
+#*.wwaproj merge=binary
+
+###############################################################################
+# behavior for image files
+#
+# image files are treated as binary by default.
+###############################################################################
+#*.jpg binary
+#*.png binary
+#*.gif binary
+
+###############################################################################
+# diff behavior for common document formats
+#
+# Convert binary document formats to text before diffing them. This feature
+# is only available from the command line. Turn it on by uncommenting the
+# entries below.
+###############################################################################
+#*.doc diff=astextplain
+#*.DOC diff=astextplain
+#*.docx diff=astextplain
+#*.DOCX diff=astextplain
+#*.dot diff=astextplain
+#*.DOT diff=astextplain
+#*.pdf diff=astextplain
+#*.PDF diff=astextplain
+#*.rtf diff=astextplain
+#*.RTF diff=astextplain
diff --git a/.gitignore b/.gitignore
index 553fcb70b..04b131df9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,6 +25,10 @@ bld/
[Oo]bj/
[Bb]uildX86/
[Bb]uildX64/
+[Rr]eleasex64/
+[Rr]eleasex86/
+[Rr]elease_x86/
+[Rr]elease_x64/
# Roslyn cache directories
*.ide/
@@ -189,4 +193,5 @@ UpgradeLog*.htm
*.bim_*.settings
# Microsoft Fakes
-FakesAssemblies/
\ No newline at end of file
+FakesAssemblies/
+.vscode/settings.json
\ No newline at end of file
diff --git a/AddonExample/AddonExample.csproj b/AddonExample/AddonExample.csproj
index 9fe7d7a1b..2022a6664 100644
--- a/AddonExample/AddonExample.csproj
+++ b/AddonExample/AddonExample.csproj
@@ -96,4 +96,4 @@
-->
-
\ No newline at end of file
+
diff --git a/AddonExample/Properties/AssemblyInfo.cs b/AddonExample/Properties/AssemblyInfo.cs
index 885aff95f..a03847511 100644
--- a/AddonExample/Properties/AssemblyInfo.cs
+++ b/AddonExample/Properties/AssemblyInfo.cs
@@ -33,4 +33,4 @@
// 既定値にすることができます:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
\ No newline at end of file
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/HtmlRenderer/App.cs b/HtmlRenderer/App.cs
index ecc022ba3..076e394bb 100644
--- a/HtmlRenderer/App.cs
+++ b/HtmlRenderer/App.cs
@@ -1,9 +1,4 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Xilium.CefGlue;
+using Xilium.CefGlue;
namespace RainbowMage.HtmlRenderer
{
diff --git a/HtmlRenderer/Args/BroadcastMessageEventArgs.cs b/HtmlRenderer/Args/BroadcastMessageEventArgs.cs
new file mode 100644
index 000000000..31bc84f5f
--- /dev/null
+++ b/HtmlRenderer/Args/BroadcastMessageEventArgs.cs
@@ -0,0 +1,14 @@
+using System;
+
+namespace RainbowMage.HtmlRenderer
+{
+ public class BroadcastMessageEventArgs : EventArgs
+ {
+ public string Message { get; private set; }
+
+ public BroadcastMessageEventArgs(string message)
+ {
+ this.Message = message;
+ }
+ }
+}
diff --git a/HtmlRenderer/Args/EndEncounterEventArgs.cs b/HtmlRenderer/Args/EndEncounterEventArgs.cs
new file mode 100644
index 000000000..ec8a4d449
--- /dev/null
+++ b/HtmlRenderer/Args/EndEncounterEventArgs.cs
@@ -0,0 +1,12 @@
+using System;
+
+namespace RainbowMage.HtmlRenderer
+{
+ public class EndEncounterEventArgs : EventArgs
+ {
+ public EndEncounterEventArgs()
+ {
+
+ }
+ }
+}
diff --git a/HtmlRenderer/Args/SendMessageEventArgs.cs b/HtmlRenderer/Args/SendMessageEventArgs.cs
new file mode 100644
index 000000000..e1ca009ee
--- /dev/null
+++ b/HtmlRenderer/Args/SendMessageEventArgs.cs
@@ -0,0 +1,16 @@
+using System;
+
+namespace RainbowMage.HtmlRenderer
+{
+ public class SendMessageEventArgs : EventArgs
+ {
+ public string Target { get; private set; }
+ public string Message { get; private set; }
+
+ public SendMessageEventArgs(string target, string message)
+ {
+ this.Target = target;
+ this.Message = message;
+ }
+ }
+}
diff --git a/HtmlRenderer/Args/TakeScreenshotEventArgs.cs b/HtmlRenderer/Args/TakeScreenshotEventArgs.cs
new file mode 100644
index 000000000..effa3e4bd
--- /dev/null
+++ b/HtmlRenderer/Args/TakeScreenshotEventArgs.cs
@@ -0,0 +1,14 @@
+using System;
+
+namespace RainbowMage.HtmlRenderer
+{
+ public class TakeScreenshotEventArgs : EventArgs
+ {
+ public string Message { get; private set; }
+
+ public TakeScreenshotEventArgs(string message)
+ {
+ this.Message = message;
+ }
+ }
+}
diff --git a/HtmlRenderer/Client.cs b/HtmlRenderer/Client.cs
index 05a4150b6..3e68e4c92 100644
--- a/HtmlRenderer/Client.cs
+++ b/HtmlRenderer/Client.cs
@@ -1,9 +1,4 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Xilium.CefGlue;
+using Xilium.CefGlue;
namespace RainbowMage.HtmlRenderer
{
diff --git a/HtmlRenderer/BuiltinFunctionHandler.cs b/HtmlRenderer/Handlers/BuiltinFunctionHandler.cs
similarity index 52%
rename from HtmlRenderer/BuiltinFunctionHandler.cs
rename to HtmlRenderer/Handlers/BuiltinFunctionHandler.cs
index c34f331a2..b16723943 100644
--- a/HtmlRenderer/BuiltinFunctionHandler.cs
+++ b/HtmlRenderer/Handlers/BuiltinFunctionHandler.cs
@@ -1,19 +1,17 @@
using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using Xilium.CefGlue;
namespace RainbowMage.HtmlRenderer
{
- class BuiltinFunctionHandler : CefV8Handler
+ class BuiltinFunctionHandler : CefV8Handler
{
+ public event EventHandler TakeScreenshot;
public event EventHandler BroadcastMessage;
public event EventHandler SendMessage;
public event EventHandler OverlayMessage;
public event EventHandler EndEncounter;
+ public const string TakeScreenshotFunctionName = "takeScreenshot";
public const string BroadcastMessageFunctionName = "broadcastMessage";
public const string SendMessageFunctionName = "sendMessage";
public const string OverlayMessageFunctionName = "overlayMessage";
@@ -24,14 +22,15 @@ protected override bool Execute(string name, CefV8Value obj, CefV8Value[] argume
exception = "";
returnValue = CefV8Value.CreateUndefined();
- if (name == BroadcastMessageFunctionName)
+ if (name == EndEncounterFunctionName)
+ {
+ EndEncounter?.Invoke(obj, new EndEncounterEventArgs());
+ }
+ else if (name == TakeScreenshotFunctionName)
{
if (arguments.Length > 0)
{
- if (BroadcastMessage != null)
- {
- BroadcastMessage(obj, new BroadcastMessageEventArgs(arguments[0].GetStringValue()));
- }
+ TakeScreenshot?.Invoke(obj, new TakeScreenshotEventArgs(arguments[0].GetStringValue()));
}
else
{
@@ -40,14 +39,11 @@ protected override bool Execute(string name, CefV8Value obj, CefV8Value[] argume
return true;
}
- else if (name == SendMessageFunctionName)
+ else if (name == BroadcastMessageFunctionName)
{
- if (arguments.Length > 1)
+ if (arguments.Length > 0)
{
- if (SendMessage != null)
- {
- SendMessage(obj, new SendMessageEventArgs(arguments[0].GetStringValue(), arguments[1].GetStringValue()));
- }
+ BroadcastMessage?.Invoke(obj, new BroadcastMessageEventArgs(arguments[0].GetStringValue()));
}
else
{
@@ -56,14 +52,11 @@ protected override bool Execute(string name, CefV8Value obj, CefV8Value[] argume
return true;
}
- else if (name == OverlayMessageFunctionName)
+ else if (name == SendMessageFunctionName)
{
if (arguments.Length > 1)
{
- if (OverlayMessage != null)
- {
- OverlayMessage(obj, new SendMessageEventArgs(arguments[0].GetStringValue(), arguments[1].GetStringValue()));
- }
+ SendMessage?.Invoke(obj, new SendMessageEventArgs(arguments[0].GetStringValue(), arguments[1].GetStringValue()));
}
else
{
@@ -72,45 +65,21 @@ protected override bool Execute(string name, CefV8Value obj, CefV8Value[] argume
return true;
}
- else if (name == EndEncounterFunctionName)
+ else if (name == OverlayMessageFunctionName)
{
- if (EndEncounter != null)
+ if (arguments.Length > 1)
{
- EndEncounter(obj, new EndEncounterEventArgs());
+ OverlayMessage?.Invoke(obj, new SendMessageEventArgs(arguments[0].GetStringValue(), arguments[1].GetStringValue()));
}
+ else
+ {
+ exception = "Invalid argument count.";
+ }
+
+ return true;
}
return false;
}
}
-
- public class BroadcastMessageEventArgs : EventArgs
- {
- public string Message { get; private set; }
-
- public BroadcastMessageEventArgs(string message)
- {
- this.Message = message;
- }
- }
-
- public class SendMessageEventArgs : EventArgs
- {
- public string Target { get; private set; }
- public string Message { get; private set; }
-
- public SendMessageEventArgs(string target, string message)
- {
- this.Target = target;
- this.Message = message;
- }
- }
-
- public class EndEncounterEventArgs : EventArgs
- {
- public EndEncounterEventArgs()
- {
-
- }
- }
}
diff --git a/HtmlRenderer/DisplayHandler.cs b/HtmlRenderer/Handlers/DisplayHandler.cs
similarity index 78%
rename from HtmlRenderer/DisplayHandler.cs
rename to HtmlRenderer/Handlers/DisplayHandler.cs
index 1c558e7b5..a95776ee7 100644
--- a/HtmlRenderer/DisplayHandler.cs
+++ b/HtmlRenderer/Handlers/DisplayHandler.cs
@@ -1,9 +1,4 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Xilium.CefGlue;
+using Xilium.CefGlue;
namespace RainbowMage.HtmlRenderer
{
diff --git a/HtmlRenderer/LifeSpanHandler.cs b/HtmlRenderer/Handlers/LifeSpanHandler.cs
similarity index 81%
rename from HtmlRenderer/LifeSpanHandler.cs
rename to HtmlRenderer/Handlers/LifeSpanHandler.cs
index 86049a682..6aa636778 100644
--- a/HtmlRenderer/LifeSpanHandler.cs
+++ b/HtmlRenderer/Handlers/LifeSpanHandler.cs
@@ -1,9 +1,4 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Xilium.CefGlue;
+using Xilium.CefGlue;
namespace RainbowMage.HtmlRenderer
{
diff --git a/HtmlRenderer/LoadHandler.cs b/HtmlRenderer/Handlers/LoadHandler.cs
similarity index 90%
rename from HtmlRenderer/LoadHandler.cs
rename to HtmlRenderer/Handlers/LoadHandler.cs
index 7c49ce715..82ac2de6e 100644
--- a/HtmlRenderer/LoadHandler.cs
+++ b/HtmlRenderer/Handlers/LoadHandler.cs
@@ -1,9 +1,4 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Xilium.CefGlue;
+using Xilium.CefGlue;
namespace RainbowMage.HtmlRenderer
{
diff --git a/HtmlRenderer/MenuHandler.cs b/HtmlRenderer/Handlers/MenuHandler.cs
similarity index 71%
rename from HtmlRenderer/MenuHandler.cs
rename to HtmlRenderer/Handlers/MenuHandler.cs
index 3601dd518..c5076c814 100644
--- a/HtmlRenderer/MenuHandler.cs
+++ b/HtmlRenderer/Handlers/MenuHandler.cs
@@ -1,9 +1,4 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Xilium.CefGlue;
+using Xilium.CefGlue;
namespace RainbowMage.HtmlRenderer
{
diff --git a/HtmlRenderer/RenderHandler.cs b/HtmlRenderer/Handlers/RenderHandler.cs
similarity index 95%
rename from HtmlRenderer/RenderHandler.cs
rename to HtmlRenderer/Handlers/RenderHandler.cs
index 1cf6d8cb2..b5f2179c2 100644
--- a/HtmlRenderer/RenderHandler.cs
+++ b/HtmlRenderer/Handlers/RenderHandler.cs
@@ -1,8 +1,4 @@
using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using Xilium.CefGlue;
namespace RainbowMage.HtmlRenderer
diff --git a/HtmlRenderer/RenderProcessHandler.cs b/HtmlRenderer/Handlers/RenderProcessHandler.cs
similarity index 80%
rename from HtmlRenderer/RenderProcessHandler.cs
rename to HtmlRenderer/Handlers/RenderProcessHandler.cs
index 96f6f74cd..1af0a920b 100644
--- a/HtmlRenderer/RenderProcessHandler.cs
+++ b/HtmlRenderer/Handlers/RenderProcessHandler.cs
@@ -1,9 +1,4 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Xilium.CefGlue;
+using Xilium.CefGlue;
namespace RainbowMage.HtmlRenderer
{
@@ -26,10 +21,19 @@ public RenderProcessHandler()
{
Renderer.OnOverlayMessage(o, e);
};
- this.builtinFunctionHandler.EndEncounter += (o, e) =>
- {
- Renderer.OnRendererFeatureRequest(o, new RendererFeatureRequestEventArgs("EndEncounter"));
- };
+
+ this.builtinFunctionHandler.EndEncounter += EndEncounterEvent;
+ this.builtinFunctionHandler.TakeScreenshot += TakeScreenshotEvent;
+ }
+
+ private void EndEncounterEvent(object sender, EndEncounterEventArgs e)
+ {
+ Renderer.OnRendererFeatureRequest(sender, new RendererFeatureRequestEventArgs("EndEncounter"));
+ }
+
+ private void TakeScreenshotEvent(object sender, TakeScreenshotEventArgs e)
+ {
+ Renderer.OnTakeScreenshot(sender, e);
}
protected override bool OnProcessMessageReceived(CefBrowser browser, CefProcessId sourceProcess, CefProcessMessage message)
@@ -47,6 +51,10 @@ protected override bool OnProcessMessageReceived(CefBrowser browser, CefProcessI
{
var apiObject = CefV8Value.CreateObject(null);
+ var takeScreenshotFunction = CefV8Value.CreateFunction(
+ BuiltinFunctionHandler.TakeScreenshotFunctionName,
+ builtinFunctionHandler);
+
var broadcastMessageFunction = CefV8Value.CreateFunction(
BuiltinFunctionHandler.BroadcastMessageFunctionName,
builtinFunctionHandler);
@@ -63,6 +71,11 @@ protected override bool OnProcessMessageReceived(CefBrowser browser, CefProcessI
apiObject.SetValue("version", CefV8Value.CreateString(overlayVersion), CefV8PropertyAttribute.ReadOnly);
apiObject.SetValue("overlayName", CefV8Value.CreateString(overlayName), CefV8PropertyAttribute.ReadOnly);
+ apiObject.SetValue(
+ BuiltinFunctionHandler.TakeScreenshotFunctionName,
+ takeScreenshotFunction,
+ CefV8PropertyAttribute.ReadOnly);
+
apiObject.SetValue(
BuiltinFunctionHandler.BroadcastMessageFunctionName,
broadcastMessageFunction,
diff --git a/HtmlRenderer/HtmlRenderer.csproj b/HtmlRenderer/HtmlRenderer.csproj
index c2299090d..f3d5b425d 100644
--- a/HtmlRenderer/HtmlRenderer.csproj
+++ b/HtmlRenderer/HtmlRenderer.csproj
@@ -33,6 +33,7 @@
+
@@ -46,16 +47,20 @@
-
+
+
+
-
-
-
-
+
+
+
+
+
-
-
+
+
+
diff --git a/HtmlRenderer/Properties/AssemblyInfo.cs b/HtmlRenderer/Properties/AssemblyInfo.cs
index ee5e386f6..048b2495d 100644
--- a/HtmlRenderer/Properties/AssemblyInfo.cs
+++ b/HtmlRenderer/Properties/AssemblyInfo.cs
@@ -1,5 +1,4 @@
using System.Reflection;
-using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// アセンブリに関する一般情報は以下の属性セットをとおして制御されます。
@@ -7,12 +6,8 @@
// これらの属性値を変更してください。
[assembly: AssemblyTitle("HtmlRenderer")]
[assembly: AssemblyDescription("HTML based offscreen rendering library for the OverlayPlugin.")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("HtmlRenderer")]
[assembly: AssemblyCopyright("Copyright © RainbowMage 2014, Kuriyama hibiya 2016")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
// ComVisible を false に設定すると、その型はこのアセンブリ内で COM コンポーネントから
// 参照不可能になります。COM からこのアセンブリ内の型にアクセスする場合は、
diff --git a/HtmlRenderer/Renderer.cs b/HtmlRenderer/Renderer.cs
index 48d2e8811..395787ff6 100644
--- a/HtmlRenderer/Renderer.cs
+++ b/HtmlRenderer/Renderer.cs
@@ -1,8 +1,7 @@
using System;
using System.Collections.Generic;
+using System.Drawing;
using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using Xilium.CefGlue;
namespace RainbowMage.HtmlRenderer
@@ -18,6 +17,7 @@ public class Renderer : IDisposable
public static event EventHandler SendMessage;
public static event EventHandler OverlayMessage;
public static event EventHandler RendererFeatureRequest;
+ public static event EventHandler TakeScreenshotHandler;
// Guards access to |allBrowsers| across threads.
private System.Threading.SemaphoreSlim allBrowsersSemaphore = new System.Threading.SemaphoreSlim(1);
@@ -38,18 +38,20 @@ public CefBrowser Browser
get
{
allBrowsersSemaphore.Wait();
- CefBrowser b = this.allBrowsers.FirstOrDefault();
+ var b = this.allBrowsers.FirstOrDefault();
allBrowsersSemaphore.Release();
return b;
}
}
- public string OverlayVersion {
+ public string OverlayVersion
+ {
get { return overlayVersion; }
}
- public string OverlayName {
- get { return overlayName; }
+ public string OverlayName
+ {
+ get { return overlayName; }
}
private Client Client { get; set; }
@@ -215,13 +217,13 @@ public void SendKeyEvent(CefKeyEvent keyEvent)
}
}
- public void showDevTools(bool firstwindow = true)
+ public void ShowDevTools(bool firstwindow = true)
{
this.allBrowsersSemaphore.Wait();
if (this.allBrowsers.Count > 0)
{
- CefBrowser b = firstwindow ? this.allBrowsers.First() : this.allBrowsers.Last();
- CefWindowInfo wi = CefWindowInfo.Create();
+ var b = firstwindow ? this.allBrowsers.First() : this.allBrowsers.Last();
+ var wi = CefWindowInfo.Create();
wi.SetAsPopup(b.GetHost().GetWindowHandle(), "DevTools");
b.GetHost().ShowDevTools(wi, this.Client, new CefBrowserSettings(), new CefPoint());
}
@@ -241,7 +243,7 @@ internal void OnCreated(CefBrowser browser)
internal void OnBeforeClose(CefBrowser browser)
{
this.allBrowsersSemaphore.Wait();
- int index = this.allBrowsers.FindIndex((b) => b.Identifier == browser.Identifier);
+ var index = this.allBrowsers.FindIndex((b) => b.Identifier == browser.Identifier);
if (index > 0) {
// The first browser window is only removed from the list on the main thread.
System.Diagnostics.Debug.Assert(index > 0);
@@ -252,64 +254,46 @@ internal void OnBeforeClose(CefBrowser browser)
internal void OnPaint(CefBrowser browser, IntPtr buffer, int width, int height, CefRectangle[] dirtyRects)
{
- if (Render != null)
- {
- Render(this, new RenderEventArgs(buffer, width, height, dirtyRects));
- }
+ Render?.Invoke(this, new RenderEventArgs(buffer, width, height, dirtyRects));
}
internal void OnError(CefErrorCode errorCode, string errorText, string failedUrl)
{
- if (BrowserError != null)
- {
- BrowserError(this, new BrowserErrorEventArgs(errorCode, errorText, failedUrl));
- }
+ BrowserError?.Invoke(this, new BrowserErrorEventArgs(errorCode, errorText, failedUrl));
}
internal void OnLoad(CefBrowser browser, CefFrame frame, int httpStatusCode)
{
- if (BrowserLoad != null)
- {
- BrowserLoad(this, new BrowserLoadEventArgs(httpStatusCode, frame.Url));
- }
+ BrowserLoad?.Invoke(this, new BrowserLoadEventArgs(httpStatusCode, frame.Url));
}
internal void OnConsoleLog(CefBrowser browser, string message, string source, int line)
{
- if (BrowserConsoleLog != null)
- {
- BrowserConsoleLog(this, new BrowserConsoleLogEventArgs(message, source, line));
- }
+ BrowserConsoleLog?.Invoke(this, new BrowserConsoleLogEventArgs(message, source, line));
}
internal static void OnBroadcastMessage(object sender, BroadcastMessageEventArgs e)
{
- if (BroadcastMessage != null)
- {
- BroadcastMessage(sender, e);
- }
+ BroadcastMessage?.Invoke(sender, e);
}
internal static void OnSendMessage(object sender, SendMessageEventArgs e)
{
- if (SendMessage != null)
- {
- SendMessage(sender, e);
- }
+ SendMessage?.Invoke(sender, e);
}
internal static void OnOverlayMessage(object sender, SendMessageEventArgs e) {
- if (OverlayMessage != null) {
- OverlayMessage(sender, e);
- }
+ OverlayMessage?.Invoke(sender, e);
}
internal static void OnRendererFeatureRequest(object sender, RendererFeatureRequestEventArgs e)
{
- if (RendererFeatureRequest != null)
- {
- RendererFeatureRequest(sender, e);
- }
+ RendererFeatureRequest?.Invoke(sender, e);
+ }
+
+ internal static void OnTakeScreenshot(object sender, TakeScreenshotEventArgs e)
+ {
+ TakeScreenshotHandler?.Invoke(sender, e);
}
public void Dispose()
@@ -320,13 +304,42 @@ public void Dispose()
static bool initialized = false;
public static void Initialize()
+ {
+ Initialize("");
+ }
+
+ public static void Initialize(string MainApplicationPath)
{
if (!initialized)
{
CefRuntime.Load();
+ var Cache = "Cache";
+ var Userdata = "UserData";
+
+ if(MainApplicationPath != "")
+ {
+ Cache = System.IO.Path.Combine(MainApplicationPath, "Cache");
+ Userdata = System.IO.Path.Combine(MainApplicationPath, "UserData");
+ }
+
+ // for under 0.3.4.0 users
+ if (System.IO.Directory.Exists("cache"))
+ {
+ try
+ {
+ var di = new System.IO.DirectoryInfo("cache");
+ di.MoveTo(Cache);
+ }
+ catch
+ {
+ Cache = "cache";
+ }
+ }
+
var cefMainArgs = new CefMainArgs(new string[0]);
var cefApp = new App();
+
if (CefRuntime.ExecuteProcess(cefMainArgs, cefApp, IntPtr.Zero) != -1)
{
Console.Error.WriteLine("Couldn't execute secondary process.");
@@ -334,15 +347,15 @@ public static void Initialize()
var cefSettings = new CefSettings
{
+ CachePath = Cache,
Locale = System.Globalization.CultureInfo.CurrentCulture.Name,
- CachePath = "cache",
+ UserDataPath = Userdata,
SingleProcess = true,
MultiThreadedMessageLoop = true,
LogSeverity = CefLogSeverity.Disable
};
CefRuntime.Initialize(cefMainArgs, cefSettings, cefApp, IntPtr.Zero);
-
initialized = true;
}
}
diff --git a/OverlayPlugin.Common/Args/LogEventArgs.cs b/OverlayPlugin.Common/Args/LogEventArgs.cs
new file mode 100644
index 000000000..3aa93a741
--- /dev/null
+++ b/OverlayPlugin.Common/Args/LogEventArgs.cs
@@ -0,0 +1,15 @@
+using System;
+
+namespace RainbowMage.OverlayPlugin
+{
+ public class LogEventArgs : EventArgs
+ {
+ public string Message { get; private set; }
+ public LogLevel Level { get; private set; }
+ public LogEventArgs(LogLevel level, string message)
+ {
+ this.Message = message;
+ this.Level = level;
+ }
+ }
+}
diff --git a/OverlayPlugin.Common/Enums/LogLevel.cs b/OverlayPlugin.Common/Enums/LogLevel.cs
new file mode 100644
index 000000000..3a1de8cbf
--- /dev/null
+++ b/OverlayPlugin.Common/Enums/LogLevel.cs
@@ -0,0 +1,11 @@
+namespace RainbowMage.OverlayPlugin
+{
+ public enum LogLevel
+ {
+ Trace,
+ Debug,
+ Info,
+ Warning,
+ Error
+ }
+}
diff --git a/OverlayPlugin.Common/Enums/ScreenshotBackgroundMode.cs b/OverlayPlugin.Common/Enums/ScreenshotBackgroundMode.cs
new file mode 100644
index 000000000..a0be08a23
--- /dev/null
+++ b/OverlayPlugin.Common/Enums/ScreenshotBackgroundMode.cs
@@ -0,0 +1,12 @@
+namespace RainbowMage.OverlayPlugin
+{
+ public enum ScreenshotBackgroundMode
+ {
+ Hide = 0,
+ Normal = 1,
+ Center = 2,
+ Fill = 3,
+ Uniform = 4,
+ UniformToFill = 5,
+ }
+}
diff --git a/OverlayPlugin.Common/IOverlay.cs b/OverlayPlugin.Common/Interfaces/IOverlay.cs
similarity index 91%
rename from OverlayPlugin.Common/IOverlay.cs
rename to OverlayPlugin.Common/Interfaces/IOverlay.cs
index a94eda2d9..91d3fa389 100644
--- a/OverlayPlugin.Common/IOverlay.cs
+++ b/OverlayPlugin.Common/Interfaces/IOverlay.cs
@@ -1,9 +1,4 @@
using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
namespace RainbowMage.OverlayPlugin
{
@@ -63,5 +58,11 @@ public interface IOverlay : IDisposable
///
/// A string message created by the plugin javascript.
void OverlayMessage(string message);
+
+ ///
+ /// Take Overlay Renderer PNG Image (Offscreen?)
+ ///
+ ///
+ void TakeScreenshot(ScreenshotConfig config);
}
}
diff --git a/OverlayPlugin.Common/IOverlayAddon.cs b/OverlayPlugin.Common/Interfaces/IOverlayAddon.cs
similarity index 96%
rename from OverlayPlugin.Common/IOverlayAddon.cs
rename to OverlayPlugin.Common/Interfaces/IOverlayAddon.cs
index 1586b2638..a7afdb5d0 100644
--- a/OverlayPlugin.Common/IOverlayAddon.cs
+++ b/OverlayPlugin.Common/Interfaces/IOverlayAddon.cs
@@ -1,8 +1,4 @@
using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using System.Windows.Forms;
namespace RainbowMage.OverlayPlugin
diff --git a/OverlayPlugin.Common/IOverlayConfig.cs b/OverlayPlugin.Common/Interfaces/IOverlayConfig.cs
similarity index 89%
rename from OverlayPlugin.Common/IOverlayConfig.cs
rename to OverlayPlugin.Common/Interfaces/IOverlayConfig.cs
index 9e88bf8ec..7a604037b 100644
--- a/OverlayPlugin.Common/IOverlayConfig.cs
+++ b/OverlayPlugin.Common/Interfaces/IOverlayConfig.cs
@@ -1,10 +1,5 @@
using System;
-using System.Collections.Generic;
-using System.ComponentModel;
using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using System.Windows.Forms;
namespace RainbowMage.OverlayPlugin
diff --git a/OverlayPlugin.Common/IPluginConfig.cs b/OverlayPlugin.Common/Interfaces/IPluginConfig.cs
similarity index 59%
rename from OverlayPlugin.Common/IPluginConfig.cs
rename to OverlayPlugin.Common/Interfaces/IPluginConfig.cs
index f9fc7f03d..10d6a7f54 100644
--- a/OverlayPlugin.Common/IPluginConfig.cs
+++ b/OverlayPlugin.Common/Interfaces/IPluginConfig.cs
@@ -1,9 +1,4 @@
using System;
-using System.Collections.Generic;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
namespace RainbowMage.OverlayPlugin
{
@@ -14,5 +9,10 @@ public interface IPluginConfig
bool HideOverlaysWhenNotActive { get; set; }
Version Version { get; set; }
bool IsFirstLaunch { get; set; }
+ string ScreenshotSavePath { get; }
+ string ScreenshotBackgroundPath { get; }
+ int ScreenshotBackgroundMode { get; }
+ bool ScreenshotAutoClipping { get; }
+ int ScreenshotMargin { get; }
}
}
diff --git a/OverlayPlugin.Common/LogEntry.cs b/OverlayPlugin.Common/LogEntry.cs
new file mode 100644
index 000000000..bd037b7d0
--- /dev/null
+++ b/OverlayPlugin.Common/LogEntry.cs
@@ -0,0 +1,18 @@
+using System;
+
+namespace RainbowMage.OverlayPlugin
+{
+ public class LogEntry
+ {
+ public string Message { get; set; }
+ public LogLevel Level { get; set; }
+ public DateTime Time { get; set; }
+
+ public LogEntry(LogLevel level, DateTime time, string message)
+ {
+ this.Message = message;
+ this.Level = level;
+ this.Time = time;
+ }
+ }
+}
diff --git a/OverlayPlugin.Common/Logger.cs b/OverlayPlugin.Common/Logger.cs
index 981c00c6b..b1c824cc0 100644
--- a/OverlayPlugin.Common/Logger.cs
+++ b/OverlayPlugin.Common/Logger.cs
@@ -1,9 +1,5 @@
using System;
-using System.Collections.Generic;
using System.ComponentModel;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
namespace RainbowMage.OverlayPlugin
{
@@ -38,7 +34,6 @@ public void Log(LogLevel level, string message)
#if DEBUG
System.Diagnostics.Trace.WriteLine(string.Format("{0}: {1}: {2}", level, DateTime.Now, message));
#endif
-
this.Logs.Add(new LogEntry(level, DateTime.Now, message));
}
@@ -53,38 +48,4 @@ public void Log(LogLevel level, string format, params object[] args)
Log(level, string.Format(format, args));
}
}
-
- public class LogEntry
- {
- public string Message { get; set; }
- public LogLevel Level { get; set; }
- public DateTime Time { get; set; }
-
- public LogEntry(LogLevel level, DateTime time, string message)
- {
- this.Message = message;
- this.Level = level;
- this.Time = time;
- }
- }
-
- public class LogEventArgs : EventArgs
- {
- public string Message { get; private set; }
- public LogLevel Level { get; private set; }
- public LogEventArgs(LogLevel level, string message)
- {
- this.Message = message;
- this.Level = level;
- }
- }
-
- public enum LogLevel
- {
- Trace,
- Debug,
- Info,
- Warning,
- Error
- }
}
diff --git a/OverlayPlugin.Common/OverlayConfigList.cs b/OverlayPlugin.Common/OverlayConfigList.cs
index 406c54d9b..b7cfac4fd 100644
--- a/OverlayPlugin.Common/OverlayConfigList.cs
+++ b/OverlayPlugin.Common/OverlayConfigList.cs
@@ -1,9 +1,5 @@
using System;
-using System.Collections.Generic;
using System.Collections.ObjectModel;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using System.Xml.Serialization;
namespace RainbowMage.OverlayPlugin
diff --git a/OverlayPlugin.Common/OverlayPlugin.Common.csproj b/OverlayPlugin.Common/OverlayPlugin.Common.csproj
index e2d0c7486..443e4b9f2 100644
--- a/OverlayPlugin.Common/OverlayPlugin.Common.csproj
+++ b/OverlayPlugin.Common/OverlayPlugin.Common.csproj
@@ -41,14 +41,20 @@
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Meiryo UI, 9pt
-
-
- 削除
-
-
- 追加
-
-
- [追加] バートンを押して、オーバーレイを設定してください
-
-
- 非アクティブのときに自動的にオーバーレイを隠す
-
-
- 設定
-
-
- 時間
-
-
- レベル
-
-
- メッセージ
-
-
-
- 180, 22
-
-
- 全てのログをコピー
-
-
- 180, 22
-
-
- 選択されたログをコピー
-
-
- 177, 6
-
-
- 180, 22
-
-
- 最新のログを常に表示
-
-
- 177, 6
-
-
- 180, 22
-
-
- ログをクリア
-
-
- 181, 104
-
-
\ No newline at end of file
diff --git a/OverlayPlugin.Core/ControlPanel.resx b/OverlayPlugin.Core/ControlPanel.resx
deleted file mode 100644
index 66e4589e3..000000000
--- a/OverlayPlugin.Core/ControlPanel.resx
+++ /dev/null
@@ -1,582 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
- Segoe UI, 9pt
-
-
- 3, 223
-
-
- splitContainer1.Panel2
-
-
- columnHeader3
-
-
- 6, 18
-
-
- 0
-
-
- 3, 3
-
-
- columnHeader1
-
-
- 1
-
-
- 0
-
-
- System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Windows.Forms.ListView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- New
-
-
-
- NoControl
-
-
- tableLayoutPanel1
-
-
- 580, 274
-
-
- 4, 22
-
-
- System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- listViewLog
-
-
- Fill
-
-
- Fill
-
-
- menuClearLog
-
-
- tabControl
-
-
- columnHeader4
-
-
- 2
-
-
-
- 0
-
-
- Message
-
-
- splitContainer1
-
-
- 580, 410
-
-
- 179, 6
-
-
- 183, 104
-
-
- 144
-
-
- splitContainer1.Panel1
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 1
-
-
- 274
-
-
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Bottom, Left
-
-
- Level
-
-
- Time
-
-
- 0
-
-
- menuFollowLatestLog
-
-
- toolStripMenuItem2
-
-
- listViewOverlay
-
-
- System.Windows.Forms.ListView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Copy all logs
-
-
- toolStripMenuItem1
-
-
- tabControl
-
-
- NoControl
-
-
- ControlPanel
-
-
- $this
-
-
- menuCopyLogAll
-
-
- General
-
-
- groupBox2
-
-
- Name
-
-
- 1
-
-
- 75, 23
-
-
- 1
-
-
- tableLayoutPanel1
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Fill
-
-
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabPageMain
-
-
- columnHeader2
-
-
- splitContainer1
-
-
- <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="tabControl" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="flowLayoutPanel" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /></Controls><Columns Styles="Percent,100" /><Rows Styles="Percent,100,Absolute,28" /></TableLayoutSettings>
-
-
- <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="groupBox2" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="checkBoxAutoHide" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /></Controls><Columns Styles="Percent,100" /><Rows Styles="Percent,100,Absolute,22" /></TableLayoutSettings>
-
-
- groupBox2
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 560, 16
-
-
- 0, 0
-
-
- splitContainer1
-
-
- 451
-
-
- 0
-
-
- 548, 161
-
-
- 572, 248
-
-
- System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabPageMain
-
-
- True
-
-
- Click [Add] button to configure overlays.
-
-
- Clear logs
-
-
- 3, 3, 3, 3
-
-
- 2
-
-
- 87, 185
-
-
- 182, 22
-
-
- Fill
-
-
- Automatically hide overlays
-
-
- Bottom, Left
-
-
- 0
-
-
- 182, 22
-
-
- buttonRemoveOverlay
-
-
- Remove
-
-
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 580, 132
-
-
- 179, 6
-
-
- 6, 185
-
-
- 580, 410
-
-
- splitContainer1.Panel2
-
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Follow latest log
-
-
- 1
-
-
- 2
-
-
- 1
-
-
- 0, 0
-
-
- groupBox2
-
-
- System.Windows.Forms.UserControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 182, 22
-
-
- 2
-
-
- checkBoxAutoHide
-
-
- splitContainer1.Panel1
-
-
- 566, 242
-
-
- Fill
-
-
- 2
-
-
- 182, 22
-
-
- 251
-
-
- 0
-
-
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 3, 3
-
-
- 0
-
-
- 0, 0
-
-
- 6, 12
-
-
- System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- columnHeader5
-
-
- System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tableLayoutPanel1
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Top, Bottom, Left, Right
-
-
- 0
-
-
- menuLogCopy
-
-
- buttonNewOverlay
-
-
- Horizontal
-
-
- System.Windows.Forms.SplitContainer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Fill
-
-
- 2
-
-
- 0
-
-
- Copy selected logs
-
-
- contextMenuLogList
-
-
- Add/Remove overlays
-
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Type
-
-
- 560, 214
-
-
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 1
-
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 75, 23
-
-
- System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 1
-
-
- ja-JP
-
-
- True
-
-
- 17, 17
-
-
\ No newline at end of file
diff --git a/OverlayPlugin.Core/Enums/GlobalHotkeyType.cs b/OverlayPlugin.Core/Enums/GlobalHotkeyType.cs
new file mode 100644
index 000000000..7fcba41cc
--- /dev/null
+++ b/OverlayPlugin.Core/Enums/GlobalHotkeyType.cs
@@ -0,0 +1,10 @@
+namespace RainbowMage.OverlayPlugin
+{
+ public enum GlobalHotkeyType
+ {
+ ToggleVisible,
+ ToggleClickthru,
+ ToggleLock,
+ Screenshot
+ }
+}
diff --git a/OverlayPlugin.Core/Enums/MessageType.cs b/OverlayPlugin.Core/Enums/MessageType.cs
new file mode 100644
index 000000000..a443b8bbb
--- /dev/null
+++ b/OverlayPlugin.Core/Enums/MessageType.cs
@@ -0,0 +1,37 @@
+namespace RainbowMage.OverlayPlugin
+{
+ // Part of ACTWebSocket
+ // Copyright (c) 2016 ZCube; Licensed under MIT license.
+ public enum MessageType
+ {
+ LogLine = 0,
+ ChangeZone = 1,
+ ChangePrimaryPlayer = 2,
+ AddCombatant = 3,
+ RemoveCombatant = 4,
+ AddBuff = 5,
+ RemoveBuff = 6,
+ FlyingText = 7,
+ OutgoingAbility = 8,
+ IncomingAbility = 10,
+ PartyList = 11,
+ PlayerStats = 12,
+ CombatantHP = 13,
+ NetworkStartsCasting = 20,
+ NetworkAbility = 21,
+ NetworkAOEAbility = 22,
+ NetworkCancelAbility = 23,
+ NetworkDoT = 24,
+ NetworkDeath = 25,
+ NetworkBuff = 26,
+ NetworkTargetIcon = 27,
+ NetworkRaidMarker = 28,
+ NetworkTargetMarker = 29,
+ NetworkBuffRemove = 30,
+ Debug = 251,
+ PacketDump = 252,
+ Version = 253,
+ Error = 254,
+ Timer = 255
+ }
+}
diff --git a/OverlayPlugin.Core/Enums/ModifierKeys.cs b/OverlayPlugin.Core/Enums/ModifierKeys.cs
new file mode 100644
index 000000000..54b3703d6
--- /dev/null
+++ b/OverlayPlugin.Core/Enums/ModifierKeys.cs
@@ -0,0 +1,16 @@
+using System;
+
+namespace RainbowMage.OverlayPlugin
+{
+ ///
+ /// The enumeration of possible modifiers.
+ ///
+ [Flags]
+ public enum ModifierKeys : uint
+ {
+ Alt = 1,
+ Control = 2,
+ Shift = 4,
+ Win = 8
+ }
+}
diff --git a/OverlayPlugin.Core/Enums/TextItem.cs b/OverlayPlugin.Core/Enums/TextItem.cs
new file mode 100644
index 000000000..71bb58654
--- /dev/null
+++ b/OverlayPlugin.Core/Enums/TextItem.cs
@@ -0,0 +1,20 @@
+namespace RainbowMage.OverlayPlugin
+{
+ public enum TextItem
+ {
+ ErrorTitle,
+ RequiredAssemblyFileNotFound,
+ RequiredAssemblyFileCannotRead,
+ RequiredAssemblyFileBlocked,
+ RequiredAssemblyFileException,
+ DoNotSort,
+ SortStringAscending,
+ SortStringDescending,
+ SortNumberAscending,
+ SortNumberDescending,
+ ToggleVisible,
+ ToggleClickthru,
+ ToggleLock,
+ Screenshot
+ }
+}
diff --git a/OverlayPlugin.Core/KeyboardHook.cs b/OverlayPlugin.Core/KeyboardHook.cs
index cfe8ff192..823304626 100644
--- a/OverlayPlugin.Core/KeyboardHook.cs
+++ b/OverlayPlugin.Core/KeyboardHook.cs
@@ -1,6 +1,7 @@
using System;
using System.Runtime.InteropServices;
using System.Windows.Forms;
+
namespace RainbowMage.OverlayPlugin
{
public sealed class KeyboardHook : IDisposable
@@ -12,52 +13,6 @@ public sealed class KeyboardHook : IDisposable
[DllImport("user32.dll")]
private static extern bool UnregisterHotKey(IntPtr hWnd, int id);
- ///
- /// Represents the window that is used internally to get the messages.
- ///
- private class Window : NativeWindow, IDisposable
- {
- private static int WM_HOTKEY = 0x0312;
-
- public Window()
- {
- // create the handle for the window.
- this.CreateHandle(new CreateParams());
- }
-
- ///
- /// Overridden to get the notifications.
- ///
- ///
- protected override void WndProc(ref Message m)
- {
- base.WndProc(ref m);
-
- // check if we got a hot key pressed.
- if (m.Msg == WM_HOTKEY)
- {
- // get the keys.
- Keys key = (Keys)(((int)m.LParam >> 16) & 0xFFFF);
- ModifierKeys modifier = (ModifierKeys)((int)m.LParam & 0xFFFF);
-
- // invoke the event to notify the parent.
- if (KeyPressed != null)
- KeyPressed(this, new KeyPressedEventArgs(modifier, key));
- }
- }
-
- public event EventHandler KeyPressed;
-
- #region IDisposable Members
-
- public void Dispose()
- {
- this.DestroyHandle();
- }
-
- #endregion
- }
-
private Window _window = new Window();
private int _currentId;
@@ -66,8 +21,7 @@ public KeyboardHook()
// register the event of the inner native window.
_window.KeyPressed += delegate(object sender, KeyPressedEventArgs args)
{
- if (KeyPressed != null)
- KeyPressed(this, args);
+ KeyPressed?.Invoke(this, args);
};
}
@@ -96,7 +50,7 @@ public void RegisterHotKey(ModifierKeys modifier, Keys key)
public void Dispose()
{
// unregister all the registered hot keys.
- for (int i = _currentId; i > 0; i--)
+ for (var i = _currentId; i > 0; i--)
{
UnregisterHotKey(_window.Handle, i);
}
@@ -107,41 +61,4 @@ public void Dispose()
#endregion
}
-
- ///
- /// Event Args for the event that is fired after the hot key has been pressed.
- ///
- public class KeyPressedEventArgs : EventArgs
- {
- private ModifierKeys _modifier;
- private Keys _key;
-
- internal KeyPressedEventArgs(ModifierKeys modifier, Keys key)
- {
- _modifier = modifier;
- _key = key;
- }
-
- public ModifierKeys Modifier
- {
- get { return _modifier; }
- }
-
- public Keys Key
- {
- get { return _key; }
- }
- }
-
- ///
- /// The enumeration of possible modifiers.
- ///
- [Flags]
- public enum ModifierKeys : uint
- {
- Alt = 1,
- Control = 2,
- Shift = 4,
- Win = 8
- }
-}
\ No newline at end of file
+}
diff --git a/OverlayPlugin.Core/Localization.cs b/OverlayPlugin.Core/Localization.cs
index 61db2d922..0bc277570 100644
--- a/OverlayPlugin.Core/Localization.cs
+++ b/OverlayPlugin.Core/Localization.cs
@@ -1,28 +1,7 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
+using System.Collections.Generic;
namespace RainbowMage.OverlayPlugin
{
- public enum TextItem
- {
- ErrorTitle,
- RequiredAssemblyFileNotFound,
- RequiredAssemblyFileCannotRead,
- RequiredAssemblyFileBlocked,
- RequiredAssemblyFileException,
- DoNotSort,
- SortStringAscending,
- SortStringDescending,
- SortNumberAscending,
- SortNumberDescending,
- ToggleVisible,
- ToggleClickthru,
- ToggleLock
- }
-
public static class Localization
{
private static LocalizationDict dict;
@@ -65,13 +44,16 @@ static Localization()
dict[TextItem.ToggleVisible, ""] = "Toggle visible/hide";
dict[TextItem.ToggleVisible, "ja"] = "表示/非表示の切り替え";
- dict[TextItem.ToggleVisible, "ko"] = "표시 / 숨기기 토글";
+ dict[TextItem.ToggleVisible, "ko"] = "표시 / 숨기기";
dict[TextItem.ToggleClickthru, ""] = "Toggle clickthru";
dict[TextItem.ToggleClickthru, "ja"] = "クリック透過の切り替え";
- dict[TextItem.ToggleClickthru, "ko"] = "Toggle clickthru";
+ dict[TextItem.ToggleClickthru, "ko"] = "마우스 통과 끄기 / 켜기";
dict[TextItem.ToggleLock, ""] = "Toggle lock";
dict[TextItem.ToggleLock, "ja"] = "移動/リサイズ制限の切り替え";
- dict[TextItem.ToggleLock, "ko"] = "Toggle lock";
+ dict[TextItem.ToggleLock, "ko"] = "위치 잠금 끄기 / 켜기";
+ dict[TextItem.Screenshot, ""] = "Screenshot";
+ dict[TextItem.Screenshot, "ja"] = "Screenshot";
+ dict[TextItem.Screenshot, "ko"] = "오버레이 스크린샷 촬영";
}
public static string GetText(TextItem item)
@@ -85,52 +67,4 @@ private static string GetCurrentLocale()
return culture.TwoLetterISOLanguageName.ToLower();
}
}
-
- class LocalizationDict
- {
- IDictionary> dict;
-
- public LocalizationDict()
- {
- this.dict = new Dictionary>();
- }
-
- public string this[TextItem item, string locale]
- {
- get
- {
- if (dict.ContainsKey(item))
- {
- if (dict[item].ContainsKey(locale))
- {
- return dict[item][locale];
- }
- else if (dict[item].ContainsKey(""))
- {
- return dict[item][""];
- }
- else
- {
- throw new KeyNotFoundException();
- }
- }
- throw new KeyNotFoundException();
- }
- set
- {
- if (!dict.ContainsKey(item))
- {
- dict.Add(item, new Dictionary());
- }
- if (!dict[item].ContainsKey(locale))
- {
- dict[item].Add(locale, value);
- }
- else
- {
- dict[item][locale] = value;
- }
- }
- }
- }
-}
\ No newline at end of file
+}
diff --git a/OverlayPlugin.Core/LocalizationDict.cs b/OverlayPlugin.Core/LocalizationDict.cs
new file mode 100644
index 000000000..fbdd248bc
--- /dev/null
+++ b/OverlayPlugin.Core/LocalizationDict.cs
@@ -0,0 +1,52 @@
+using System.Collections.Generic;
+
+namespace RainbowMage.OverlayPlugin
+{
+ class LocalizationDict
+ {
+ IDictionary> dict;
+
+ public LocalizationDict()
+ {
+ this.dict = new Dictionary>();
+ }
+
+ public string this[TextItem item, string locale]
+ {
+ get
+ {
+ if (dict.ContainsKey(item))
+ {
+ if (dict[item].ContainsKey(locale))
+ {
+ return dict[item][locale];
+ }
+ else if (dict[item].ContainsKey(""))
+ {
+ return dict[item][""];
+ }
+ else
+ {
+ throw new KeyNotFoundException();
+ }
+ }
+ throw new KeyNotFoundException();
+ }
+ set
+ {
+ if (!dict.ContainsKey(item))
+ {
+ dict.Add(item, new Dictionary());
+ }
+ if (!dict[item].ContainsKey(locale))
+ {
+ dict[item].Add(locale, value);
+ }
+ else
+ {
+ dict[item][locale] = value;
+ }
+ }
+ }
+ }
+}
diff --git a/OverlayPlugin.Core/OverlayBase.cs b/OverlayPlugin.Core/OverlayBase.cs
index c8b35dfee..c764c66d2 100644
--- a/OverlayPlugin.Core/OverlayBase.cs
+++ b/OverlayPlugin.Core/OverlayBase.cs
@@ -1,13 +1,6 @@
using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.Drawing;
using System.IO;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using System.Windows.Forms;
-using Xilium.CefGlue;
namespace RainbowMage.OverlayPlugin
{
@@ -16,7 +9,9 @@ public abstract class OverlayBase : IOverlay
{
private KeyboardHook hook = new KeyboardHook();
protected System.Timers.Timer timer;
- protected System.Timers.Timer xivWindowTimer;
+
+ public System.Timers.Timer UpdateTimer { get { return timer; } }
+
///
/// オーバーレイがログを出力したときに発生します。
///
@@ -50,6 +45,8 @@ protected OverlayBase(TConfig config, string name)
InitializeOverlay();
InitializeTimer();
InitializeConfigHandlers();
+
+ Update();
}
///
@@ -58,7 +55,7 @@ protected OverlayBase(TConfig config, string name)
public void Start()
{
timer.Start();
- xivWindowTimer.Start();
+ AutoHide.AddOverlay(this.Config, this.Overlay);
}
///
@@ -67,7 +64,7 @@ public void Start()
public void Stop()
{
timer.Stop();
- xivWindowTimer.Stop();
+ AutoHide.RemoveOverlay(this.Config);
}
///
@@ -99,6 +96,9 @@ protected virtual void InitializeOverlay()
case GlobalHotkeyType.ToggleLock:
hook.KeyPressed += (o, e) => this.Config.IsLocked = !this.Config.IsLocked;
break;
+ case GlobalHotkeyType.Screenshot:
+ hook.KeyPressed += (o, e) => this.TakeScreenshot();
+ break;
default:
hook.KeyPressed += (o, e) => this.Config.IsVisible = !this.Config.IsVisible;
break;
@@ -164,7 +164,7 @@ protected virtual void InitializeOverlay()
private ModifierKeys GetModifierKey(Keys modifier)
{
- ModifierKeys modifiers = new ModifierKeys();
+ var modifiers = new ModifierKeys();
if ((modifier & Keys.Shift) == Keys.Shift)
{
modifiers |= ModifierKeys.Shift;
@@ -238,41 +238,6 @@ protected virtual void InitializeTimer()
Log(LogLevel.Error, "Update: {0}", ex.ToString());
}
};
-
- xivWindowTimer = new System.Timers.Timer();
- xivWindowTimer.Interval = 1000;
- xivWindowTimer.Elapsed += (o, e) =>
- {
- try
- {
- if (Config.IsVisible && PluginConfig.HideOverlaysWhenNotActive)
- {
- uint pid;
- var hWndFg = NativeMethods.GetForegroundWindow();
- if (hWndFg == IntPtr.Zero)
- {
- return;
- }
- NativeMethods.GetWindowThreadProcessId(hWndFg, out pid);
- var exePath = Process.GetProcessById((int)pid).MainModule.FileName;
-
- if (Path.GetFileName(exePath.ToString()) == "ffxiv.exe" ||
- Path.GetFileName(exePath.ToString()) == "ffxiv_dx11.exe" ||
- exePath.ToString() == Process.GetCurrentProcess().MainModule.FileName)
- {
- this.Overlay.Visible = true;
- }
- else
- {
- this.Overlay.Visible = false;
- }
- }
- }
- catch (Exception ex)
- {
- Log(LogLevel.Error, "XivWindowWatcher: {0}", ex.ToString());
- }
- };
}
///
@@ -312,10 +277,6 @@ public virtual void Dispose()
{
this.timer.Stop();
}
- if (this.xivWindowTimer != null)
- {
- this.xivWindowTimer.Stop();
- }
if (this.Overlay != null)
{
this.Overlay.Close();
@@ -325,6 +286,7 @@ public virtual void Dispose()
{
this.hook.Dispose();
}
+ AutoHide.RemoveOverlay(this.Config);
}
catch (Exception ex)
{
@@ -334,15 +296,18 @@ public virtual void Dispose()
public virtual void Navigate(string url)
{
- this.Overlay.Url = url;
+ this.Overlay.Url = url;
+ try
+ {
+ this.Update();
+ }
+ catch
+ { }
}
protected void Log(LogLevel level, string message)
{
- if (OnLog != null)
- {
- OnLog(this, new LogEventArgs(level, string.Format("{0}: {1}", this.Name, message)));
- }
+ OnLog?.Invoke(this, new LogEventArgs(level, string.Format("{0}: {1}", this.Name, message)));
}
protected void Log(LogLevel level, string format, params object[] args)
@@ -363,9 +328,7 @@ private void NotifyOverlayState()
"document.dispatchEvent(new CustomEvent('onOverlayStateUpdate', {{ detail: {{ isLocked: {0} }} }}));",
this.Config.IsLocked ? "true" : "false");
- if (this.Overlay != null &&
- this.Overlay.Renderer != null &&
- this.Overlay.Renderer.Browser != null)
+ if (BrowserVerifiedCheck())
{
this.Overlay.Renderer.ExecuteScript(updateScript);
}
@@ -377,16 +340,37 @@ public void SendMessage(string message)
"document.dispatchEvent(new CustomEvent('onBroadcastMessageReceive', {{ detail: {{ message: \"{0}\" }} }}));",
Util.CreateJsonSafeString(message));
- if (this.Overlay != null &&
- this.Overlay.Renderer != null &&
- this.Overlay.Renderer.Browser != null)
+ if (BrowserVerifiedCheck())
{
this.Overlay.Renderer.ExecuteScript(script);
}
}
+ private bool BrowserVerifiedCheck()
+ {
+ return Overlay != null && Overlay.Renderer != null && Overlay.Renderer.Browser != null;
+ }
+
public virtual void OverlayMessage(string message)
{
+
+ }
+
+ public void TakeScreenshot()
+ {
+ TakeScreenshot(new ScreenshotConfig
+ {
+ SavePath = PluginConfig.ScreenshotSavePath,
+ AutoClipping = PluginConfig.ScreenshotAutoClipping,
+ BackgroundImagePath = PluginConfig.ScreenshotBackgroundPath,
+ BackgroundMode = (ScreenshotBackgroundMode)PluginConfig.ScreenshotBackgroundMode,
+ Margin = PluginConfig.ScreenshotMargin,
+ });
+ }
+
+ public void TakeScreenshot(ScreenshotConfig config)
+ {
+ Screenshot.SaveScreenshot(this.Overlay.SurfaceBuffer, config);
}
}
}
diff --git a/OverlayPlugin.Core/OverlayConfigBase.cs b/OverlayPlugin.Core/OverlayConfigBase.cs
index d72b31ded..b0b5981d7 100644
--- a/OverlayPlugin.Core/OverlayConfigBase.cs
+++ b/OverlayPlugin.Core/OverlayConfigBase.cs
@@ -1,9 +1,5 @@
using System;
-using System.Collections.Generic;
using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using System.Windows.Forms;
using System.Xml.Serialization;
@@ -275,11 +271,4 @@ protected OverlayConfigBase(string name)
[XmlIgnore]
public abstract Type OverlayType { get; }
}
-
- public enum GlobalHotkeyType
- {
- ToggleVisible,
- ToggleClickthru,
- ToggleLock
- }
}
diff --git a/OverlayPlugin.Core/OverlayPlugin.Core.csproj b/OverlayPlugin.Core/OverlayPlugin.Core.csproj
index 91fccc3ca..589f801eb 100644
--- a/OverlayPlugin.Core/OverlayPlugin.Core.csproj
+++ b/OverlayPlugin.Core/OverlayPlugin.Core.csproj
@@ -34,6 +34,7 @@
False
..\Thirdparty\ACT\Advanced Combat Tracker.exe
+ False
..\Thirdparty\Newtonsoft.Json\Newtonsoft.Json.dll
@@ -41,7 +42,6 @@
-
@@ -54,63 +54,77 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
UserControl
-
+
LogParseConfigPanel.cs
-
-
-
-
-
- Component
-
-
+
+
+
+
+
+
+
+
+
+
+
UserControl
-
+
ControlPanel.cs
-
+
-
-
-
-
-
+
+
+
+
+
UserControl
-
+
LabelOverlayConfigPanel.cs
-
+
UserControl
-
+
MiniParseConfigPanel.cs
-
-
-
-
-
+
+
+
+
+
Form
-
+
NewOverlayDialog.cs
-
+
Form
-
+
OverlayForm.cs
-
+
@@ -120,13 +134,13 @@
Resources.resx
-
-
+
+
-
+
UserControl
-
+
SpellTimerConfigPanel.cs
@@ -149,65 +163,66 @@
-
+
ControlPanel.cs
-
+
ControlPanel.cs
-
+
ControlPanel.cs
-
+
NewOverlayDialog.cs
-
+
NewOverlayDialog.cs
-
+
LabelOverlayConfigPanel.cs
-
+
LabelOverlayConfigPanel.cs
-
+
LabelOverlayConfigPanel.cs
-
+
LogParseConfigPanel.cs
-
+
LogParseConfigPanel.cs
-
+
LogParseConfigPanel.cs
-
+
MiniParseConfigPanel.cs
-
+
MiniParseConfigPanel.cs
-
+
MiniParseConfigPanel.cs
-
+
NewOverlayDialog.cs
-
+
OverlayForm.cs
+ Designer
-
+
SpellTimerConfigPanel.cs
ResXFileCodeGenerator
Resources.Designer.cs
-
+
SpellTimerConfigPanel.cs
-
+
SpellTimerConfigPanel.cs
diff --git a/OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.Designer.cs b/OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.Designer.cs
similarity index 98%
rename from OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.Designer.cs
rename to OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.Designer.cs
index 37d232002..159d19b05 100644
--- a/OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.Designer.cs
+++ b/OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.Designer.cs
@@ -29,30 +29,36 @@ protected override void Dispose(bool disposing)
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LabelOverlayConfigPanel));
- this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
- this.checkMiniParseVisible = new System.Windows.Forms.CheckBox();
- this.checkMiniParseClickthru = new System.Windows.Forms.CheckBox();
+ this.label4 = new System.Windows.Forms.Label();
+ this.label5 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
- this.checkEnableGlobalHotkey = new System.Windows.Forms.CheckBox();
- this.textGlobalHotkey = new System.Windows.Forms.TextBox();
this.label9 = new System.Windows.Forms.Label();
- this.checkLock = new System.Windows.Forms.CheckBox();
this.label13 = new System.Windows.Forms.Label();
- this.textBox = new System.Windows.Forms.TextBox();
+
+ this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+ this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
+
+ this.checkMiniParseVisible = new System.Windows.Forms.CheckBox();
+ this.checkMiniParseClickthru = new System.Windows.Forms.CheckBox();
+ this.checkEnableGlobalHotkey = new System.Windows.Forms.CheckBox();
+ this.checkLock = new System.Windows.Forms.CheckBox();
+ this.checkHTML = new System.Windows.Forms.CheckBox();
+
+ this.textGlobalHotkey = new System.Windows.Forms.TextBox();
+ this.textBox = new System.Windows.Forms.TextBox();
+ this.textUrl = new System.Windows.Forms.TextBox();
+
this.buttonCopyUpdateScript = new System.Windows.Forms.Button();
this.buttonOpenDevTools = new System.Windows.Forms.Button();
this.buttonReloadBrowser = new System.Windows.Forms.Button();
- this.label4 = new System.Windows.Forms.Label();
- this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
- this.textUrl = new System.Windows.Forms.TextBox();
this.buttonSelectFile = new System.Windows.Forms.Button();
- this.label5 = new System.Windows.Forms.Label();
- this.checkHTML = new System.Windows.Forms.CheckBox();
+
this.tableLayoutPanel1.SuspendLayout();
this.tableLayoutPanel3.SuspendLayout();
this.tableLayoutPanel2.SuspendLayout();
@@ -64,20 +70,21 @@ private void InitializeComponent()
this.tableLayoutPanel1.Controls.Add(this.label1, 0, 7);
this.tableLayoutPanel1.Controls.Add(this.label2, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.label3, 0, 0);
- this.tableLayoutPanel1.Controls.Add(this.checkMiniParseVisible, 1, 0);
- this.tableLayoutPanel1.Controls.Add(this.checkMiniParseClickthru, 1, 1);
+ this.tableLayoutPanel1.Controls.Add(this.label4, 0, 3);
+ this.tableLayoutPanel1.Controls.Add(this.label5, 0, 8);
this.tableLayoutPanel1.Controls.Add(this.label7, 0, 4);
this.tableLayoutPanel1.Controls.Add(this.label8, 0, 5);
+ this.tableLayoutPanel1.Controls.Add(this.label9, 0, 2);
+ this.tableLayoutPanel1.Controls.Add(this.label13, 1, 6);
+
+ this.tableLayoutPanel1.Controls.Add(this.tableLayoutPanel2, 1, 3);
+ this.tableLayoutPanel1.Controls.Add(this.tableLayoutPanel3, 0, 9);
+ this.tableLayoutPanel1.Controls.Add(this.checkMiniParseVisible, 1, 0);
+ this.tableLayoutPanel1.Controls.Add(this.checkMiniParseClickthru, 1, 1);
this.tableLayoutPanel1.Controls.Add(this.checkEnableGlobalHotkey, 1, 4);
this.tableLayoutPanel1.Controls.Add(this.textGlobalHotkey, 1, 5);
- this.tableLayoutPanel1.Controls.Add(this.label9, 0, 2);
this.tableLayoutPanel1.Controls.Add(this.checkLock, 1, 2);
- this.tableLayoutPanel1.Controls.Add(this.label13, 1, 6);
this.tableLayoutPanel1.Controls.Add(this.textBox, 1, 7);
- this.tableLayoutPanel1.Controls.Add(this.tableLayoutPanel3, 0, 9);
- this.tableLayoutPanel1.Controls.Add(this.label4, 0, 3);
- this.tableLayoutPanel1.Controls.Add(this.tableLayoutPanel2, 1, 3);
- this.tableLayoutPanel1.Controls.Add(this.label5, 0, 8);
this.tableLayoutPanel1.Controls.Add(this.checkHTML, 1, 8);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
//
@@ -226,7 +233,8 @@ private void InitializeComponent()
// LabelOverlayConfigPanel
//
resources.ApplyResources(this, "$this");
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
+ this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
this.Controls.Add(this.tableLayoutPanel1);
this.Name = "LabelOverlayConfigPanel";
this.tableLayoutPanel1.ResumeLayout(false);
@@ -241,28 +249,32 @@ private void InitializeComponent()
#endregion
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+ private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
+ private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
+
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
- private System.Windows.Forms.CheckBox checkMiniParseVisible;
- private System.Windows.Forms.CheckBox checkMiniParseClickthru;
+ private System.Windows.Forms.Label label4;
+ private System.Windows.Forms.Label label5;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.Label label8;
- private System.Windows.Forms.CheckBox checkEnableGlobalHotkey;
- private System.Windows.Forms.TextBox textGlobalHotkey;
private System.Windows.Forms.Label label9;
- private System.Windows.Forms.CheckBox checkLock;
private System.Windows.Forms.Label label13;
+
+ private System.Windows.Forms.TextBox textGlobalHotkey;
private System.Windows.Forms.TextBox textBox;
- private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
+ private System.Windows.Forms.TextBox textUrl;
+
private System.Windows.Forms.Button buttonReloadBrowser;
private System.Windows.Forms.Button buttonOpenDevTools;
private System.Windows.Forms.Button buttonCopyUpdateScript;
- private System.Windows.Forms.Label label4;
- private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
- private System.Windows.Forms.TextBox textUrl;
private System.Windows.Forms.Button buttonSelectFile;
- private System.Windows.Forms.Label label5;
+
private System.Windows.Forms.CheckBox checkHTML;
+ private System.Windows.Forms.CheckBox checkMiniParseVisible;
+ private System.Windows.Forms.CheckBox checkMiniParseClickthru;
+ private System.Windows.Forms.CheckBox checkEnableGlobalHotkey;
+ private System.Windows.Forms.CheckBox checkLock;
}
}
diff --git a/OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.cs b/OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.cs
similarity index 85%
rename from OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.cs
rename to OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.cs
index a926b115d..336efcea6 100644
--- a/OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.cs
+++ b/OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.cs
@@ -1,11 +1,4 @@
using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Drawing;
-using System.Data;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using System.Windows.Forms;
namespace RainbowMage.OverlayPlugin.Overlays
@@ -43,28 +36,28 @@ private void SetupConfigEventHandlers()
{
this.config.VisibleChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.checkMiniParseVisible.Checked = e.IsVisible;
});
};
this.config.ClickThruChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.checkMiniParseClickthru.Checked = e.IsClickThru;
});
};
this.config.UrlChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.textUrl.Text = e.NewUrl;
});
};
this.config.GlobalHotkeyEnabledChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.checkEnableGlobalHotkey.Checked = e.NewGlobalHotkeyEnabled;
this.textGlobalHotkey.Enabled = this.checkEnableGlobalHotkey.Checked;
@@ -72,53 +65,41 @@ private void SetupConfigEventHandlers()
};
this.config.GlobalHotkeyChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.textGlobalHotkey.Text = Util.GetHotkeyString(this.config.GlobalHotkeyModifiers, e.NewHotkey);
});
};
this.config.GlobalHotkeyModifiersChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.textGlobalHotkey.Text = Util.GetHotkeyString(e.NewHotkey, this.config.GlobalHotkey);
});
};
this.config.LockChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.checkLock.Checked = e.IsLocked;
});
};
this.config.TextChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.textBox.Text = e.Text;
});
};
this.config.HTMLModeChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.checkHTML.Checked = e.NewState;
});
};
}
- private void InvokeIfRequired(Action action)
- {
- if (this.InvokeRequired)
- {
- this.Invoke(action);
- }
- else
- {
- action();
- }
- }
-
private void checkWindowVisible_CheckedChanged(object sender, EventArgs e)
{
this.config.IsVisible = checkMiniParseVisible.Checked;
@@ -131,7 +112,7 @@ private void checkMouseClickthru_CheckedChanged(object sender, EventArgs e)
private void textUrl_TextChanged(object sender, EventArgs e)
{
- //this.config.Url = textMiniParseUrl.Text;
+
}
private void buttonReloadBrowser_Click(object sender, EventArgs e)
@@ -141,13 +122,13 @@ private void buttonReloadBrowser_Click(object sender, EventArgs e)
private void buttonOpenDevTools_Click(object sender, EventArgs e)
{
- this.overlay.Overlay.Renderer.showDevTools();
+ this.overlay.Overlay.Renderer.ShowDevTools();
}
private void buttonOpenDevTools_RClick(object sender, System.Windows.Forms.MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
- this.overlay.Overlay.Renderer.showDevTools(false);
+ this.overlay.Overlay.Renderer.ShowDevTools(false);
}
private void buttonCopyActXiv_Click(object sender, EventArgs e)
diff --git a/OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.ja-JP.resx b/OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.ja-JP.resx
similarity index 100%
rename from OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.ja-JP.resx
rename to OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.ja-JP.resx
diff --git a/OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.ko-KR.resx b/OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.ko-KR.resx
similarity index 100%
rename from OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.ko-KR.resx
rename to OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.ko-KR.resx
diff --git a/OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.resx b/OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.resx
similarity index 84%
rename from OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.resx
rename to OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.resx
index 7cbc72b43..fae80b92a 100644
--- a/OverlayPlugin.Core/Overlays/LabelOverlayConfigPanel.resx
+++ b/OverlayPlugin.Core/Overlays/ConfigPanels/LabelOverlayConfigPanel.resx
@@ -117,772 +117,664 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 403, 12
-
-
- 403, 16
-
-
- 149, 22
-
-
- 1
-
-
- 7
+
+ 2
-
- 4
+
+ True
Fill
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 6
-
-
- MiddleLeft
+
+ NoControl
-
- 1
+
+
+ 25
-
- 28
+
+ Text
-
+
MiddleLeft
-
- NoControl
+
+ label1
-
- 0, 0
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
tableLayoutPanel1
-
- tableLayoutPanel1
+
+ 0
-
- tableLayoutPanel1
+
+ True
-
- 31
+
+ Fill
-
- tableLayoutPanel1
+
+ NoControl
-
- 2
+
+ 0
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ Enable clickthru
-
- 3, 44
+
+ MiddleLeft
-
- NoControl
+
+ label2
System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 30
+
+ tableLayoutPanel1
-
- 22
+
+ 1
-
+
+ True
+
+
Fill
-
+
NoControl
-
+
0
-
- tableLayoutPanel3
+
+ Show overlay
-
- 3, 259
+
+ MiddleLeft
-
- True
+
+ label3
-
- 11
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 1, 1, 1, 1
+
+ tableLayoutPanel1
-
- <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="textUrl" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="buttonSelectFile" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /></Controls><Columns Styles="Percent,100,Absolute,37" /><Rows Styles="Percent,100" /></TableLayoutSettings>
+
+ 2
-
- Open DevTools
+
+ True
-
+
Fill
-
- Reload overlay
+
+ NoControl
-
- 16
+
+ 1
-
- NoControl
+
+ checkMiniParseVisible
-
- MiddleLeft
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 158, 262
+
+ tableLayoutPanel1
-
- 0
+
+ 3
True
-
- 0
-
-
+
Fill
-
- 20
+
+ NoControl
-
- True
+
+ 2
-
- 156, 67
+
+ checkMiniParseClickthru
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 24
+
+ tableLayoutPanel1
-
- 6, 12
+
+ 4
-
- System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ True
-
- 1
+
+ Fill
-
+
NoControl
-
- tableLayoutPanel1
+
+ 20
-
- Fill
+
+ Enable global hotkey
-
- textUrl
+
+ MiddleLeft
-
- tableLayoutPanel1
+
+ label7
-
- Show overlay
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- Fill
+
+ tableLayoutPanel1
-
- 1, 1, 1, 1
+
+ 5
-
+
True
-
- 19
+
+ Fill
-
+
NoControl
-
- 2
+
+ 20
-
- 403, 49
+
+ Global hotkey
-
- Fill
+
+ MiddleLeft
-
- System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ label8
-
- tableLayoutPanel1
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 158, 25
+
+ tableLayoutPanel1
-
- label1
+
+ 6
-
- Vertical
+
+ Fill
-
- 149, 22
+
+ NoControl
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 21
-
- buttonCopyUpdateScript
+
+ checkEnableGlobalHotkey
-
- 407, 19
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
tableLayoutPanel1
-
- True
+
+ 7
-
+
Fill
-
- True
-
-
- 196, 43
-
-
- label5
-
-
- 149, 22
-
-
- 158, 150
+
+ 1, 1, 1, 1
-
- 407, 20
+
+ 22
-
- tableLayoutPanel2
+
+ textGlobalHotkey
-
- 1
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- Fill
+
+ tableLayoutPanel1
-
- Fill
+
+ 8
-
- 3, 66
+
+ True
-
+
Fill
-
- 37, 19
-
-
- 3, 147
-
-
- System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 0, 0
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- buttonReloadBrowser
-
-
- buttonSelectFile
-
-
- 1
+
+ NoControl
-
- tableLayoutPanel3
+
+ 23
-
- Display text as HTML
+
+ Lock overlay
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ MiddleLeft
-
- 14
+
+ label9
-
+
System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 158, 284
+
+ tableLayoutPanel1
-
- Fill
+
+ 9
-
+
True
-
+
NoControl
-
- System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
+
Fill
-
- 149, 22
-
-
- 26
-
-
- NoControl
+
+ 24
-
- MiddleLeft
+
+ checkLock
-
- 3, 110
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- label7
+
+ tableLayoutPanel1
10
-
- 5
+
+ True
-
- tableLayoutPanel1
+
+ Fill
-
- MiddleLeft
+
+ NoControl
+
+
+ 19
※You need restarting this plugin to apply framerate and hotkey settings.
-
- tableLayoutPanel1
+
+ label13
-
- 23
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- label9
+
+ tableLayoutPanel1
-
- 3, 3
+
+ 11
-
- 32
+
+ Fill
-
- 13
+
+ Consolas, 9pt
-
- tableLayoutPanel2
+
+ True
-
- 403, 106
+
+ Vertical
-
- 204, 3
+
+ 26
-
- tableLayoutPanel1
+
+ textBox
-
- $this
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
tableLayoutPanel1
-
- 21
+
+ 12
-
+
3
-
- checkHTML
-
-
- 149, 22
+
+ Fill
-
+
NoControl
-
- True
+
+ 1
-
- tableLayoutPanel3
+
+ Copy the update variable to clipboard
-
- Fill
+
+ buttonCopyUpdateScript
System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ tableLayoutPanel3
-
- Enable global hotkey
+
+ 0
-
- 158, 3
+
+ Fill
-
- Lock overlay
+
+ 2
-
- 403, 16
+
+ Open DevTools
-
- 158, 47
+
+ buttonOpenDevTools
-
- 25
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- tableLayoutPanel2
+
+ tableLayoutPanel3
-
- 149, 22
+
+ 1
-
- 3, 0
+
+ Fill
-
- 0
+
+ NoControl
-
- System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 0
-
- 2
+
+ Reload overlay
-
- 403, 16
+
+ buttonReloadBrowser
-
- 1
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 9
+
+ tableLayoutPanel3
-
- checkLock
+
+ 2
-
- 564, 336
+
+ Fill
-
- 12
+
+ 0, 0, 0, 0
-
+
1
-
- LabelOverlayConfigPanel
+
+ 27
-
- <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="buttonOpenDevTools" Row="0" RowSpan="1" Column="2" ColumnSpan="1" /><Control Name="buttonReloadBrowser" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="buttonCopyUpdateScript" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /></Controls><Columns Styles="Percent,33.33,Percent,33.33,Percent,33.33" /><Rows Styles="Percent,50" /></TableLayoutSettings>
+
+ tableLayoutPanel3
-
- NoControl
+
+ System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 3
-
-
- Copy the update variable to clipboard
-
-
- label4
-
-
- 195, 43
-
-
- MiddleLeft
-
-
- label13
-
-
+
tableLayoutPanel1
-
- System.Windows.Forms.UserControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 13
-
+
+ True
+
+
Fill
-
- 17
+
+ NoControl
-
- label3
+
+ 28
-
- Enable clickthru
+
+ URL
-
+
MiddleLeft
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- textGlobalHotkey
-
-
- True
-
-
- NoControl
+
+ label4
-
+
System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 3, 88
+
+ tableLayoutPanel1
-
- 564, 336
+
+ 14
-
- label8
+
+ 2
-
+
Fill
-
- 2
+
+ 0, 0, 0, 0
-
- <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="label1" Row="7" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="label2" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="label3" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="checkMiniParseVisible" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="checkMiniParseClickthru" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="label7" Row="4" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="label8" Row="5" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="checkEnableGlobalHotkey" Row="4" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="textGlobalHotkey" Row="5" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="label9" Row="2" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="checkLock" Row="2" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="label13" Row="6" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="textBox" Row="7" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="tableLayoutPanel3" Row="9" RowSpan="1" Column="0" ColumnSpan="2" /><Control Name="label4" Row="3" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="tableLayoutPanel2" Row="3" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="label5" Row="8" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="checkHTML" Row="8" RowSpan="1" Column="1" ColumnSpan="1" /></Controls><Columns Styles="Absolute,155,Percent,100" /><Rows Styles="Absolute,22,Absolute,22,Absolute,22,Absolute,22,Absolute,22,Absolute,22,AutoSize,0,Percent,100,Absolute,22,Absolute,55" /></TableLayoutSettings>
+
+ 3
-
- 8
+
+ textUrl
-
- textBox
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tableLayoutPanel2
0
-
- 370, 19
+
+ Fill
-
- 149, 112
+
+ Popup
-
+
NoControl
-
- 15
-
-
- True
-
-
- 0
-
-
- Fill
-
-
- True
+
+ 0, 0, 0, 0
-
- True
+
+ 4
-
- tableLayoutPanel1
+
+ ...
-
- Text
+
+ buttonSelectFile
-
+
System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- NoControl
-
-
- 0
-
-
- checkMiniParseVisible
-
-
- Fill
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ tableLayoutPanel2
-
- Fill
+
+ 1
-
+
Fill
-
- NoControl
-
-
- 3, 22
-
-
- Global hotkey
+
+ 1, 1, 1, 1
-
- label2
+
+ 1
-
- 3, 0, 3, 3
+
+ 30
-
- 20
+
+ tableLayoutPanel2
-
- NoControl
+
+ System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
tableLayoutPanel1
-
- tableLayoutPanel1
+
+ 15
-
- 156, 111
+
+ True
-
+
Fill
-
- tableLayoutPanel1
+
+ NoControl
-
- 10
+
+ 31
-
- 0, 0, 0, 0
+
+ Display text as HTML
-
- 0, 0, 0, 1
+
+ MiddleLeft
-
- 3
+
+ label5
-
- 2
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 370, 0
+
+ tableLayoutPanel1
-
- 158, 132
+
+ 16
-
- 149, 22
+
+ Fill
-
+
NoControl
-
- Fill
+
+ 32
-
- 403, 16
+
+ checkHTML
-
- MiddleLeft
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
tableLayoutPanel1
-
- checkEnableGlobalHotkey
-
-
- NoControl
+
+ 17
-
- checkMiniParseClickthru
+
+ Fill
-
- 158, 91
+
+ 0, 0, 0, 0
-
- System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 10
-
- 27
+
+ 2
-
+
tableLayoutPanel1
-
- System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ $this
-
- ...
+
+ 0
-
+
True
+
+
+ 7, 12
-
- URL
+
+ 0, 0, 0, 0
-
- Consolas, 9pt
+
+ System.Windows.Forms.UserControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 4
+
+ Microsoft NeoGothic, 9pt
+
+
+ LabelOverlayConfigPanel
+
+
+ <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="label1" Row="7" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="label2" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="label3" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="checkMiniParseVisible" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="checkMiniParseClickthru" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="label7" Row="4" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="label8" Row="5" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="checkEnableGlobalHotkey" Row="4" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="textGlobalHotkey" Row="5" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="label9" Row="2" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="checkLock" Row="2" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="label13" Row="6" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="textBox" Row="7" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="tableLayoutPanel3" Row="9" RowSpan="1" Column="0" ColumnSpan="2" /><Control Name="label4" Row="3" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="tableLayoutPanel2" Row="3" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="label5" Row="8" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="checkHTML" Row="8" RowSpan="1" Column="1" ColumnSpan="1" /></Controls><Columns Styles="Absolute,220,Percent,100" /><Rows Styles="Absolute,25,Absolute,25,Absolute,25,Absolute,25,Absolute,25,Absolute,25,AutoSize,0,Percent,100,Absolute,25,Absolute,55" /></TableLayoutSettings>
+
+
+ <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="textUrl" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="buttonSelectFile" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /></Controls><Columns Styles="Percent,100,Absolute,50" /><Rows Styles="Percent,100" /></TableLayoutSettings>
+
+
+ <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="buttonCopyUpdateScript" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="buttonOpenDevTools" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="buttonReloadBrowser" Row="0" RowSpan="1" Column="2" ColumnSpan="1" /></Controls><Columns Styles="Percent,33.33,Percent,33.33,Percent,33.33" /><Rows Styles="Percent,50" /></TableLayoutSettings>
-
- True
-
-
-
-
\ No newline at end of file
diff --git a/OverlayPlugin.Core/Overlays/LogParseConfigPanel.Designer.cs b/OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.Designer.cs
similarity index 94%
rename from OverlayPlugin.Core/Overlays/LogParseConfigPanel.Designer.cs
rename to OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.Designer.cs
index 82c5f734b..33a0ffd3f 100644
--- a/OverlayPlugin.Core/Overlays/LogParseConfigPanel.Designer.cs
+++ b/OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.Designer.cs
@@ -29,37 +29,43 @@ protected override void Dispose(bool disposing)
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LogParseConfigPanel));
- this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
- this.label6 = new System.Windows.Forms.Label();
- //this.label5 = new System.Windows.Forms.Label();
- //this.label4 = new System.Windows.Forms.Label();
+ this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
- this.label1 = new System.Windows.Forms.Label();
- this.checkMiniParseVisible = new System.Windows.Forms.CheckBox();
- this.checkMiniParseClickthru = new System.Windows.Forms.CheckBox();
- this.panel1 = new System.Windows.Forms.Panel();
- this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
+ this.label6 = new System.Windows.Forms.Label();
+ this.label7 = new System.Windows.Forms.Label();
+ this.label8 = new System.Windows.Forms.Label();
+ this.label9 = new System.Windows.Forms.Label();
+ this.label10 = new System.Windows.Forms.Label();
+ this.label13 = new System.Windows.Forms.Label();
+
+ this.buttonLogParseSelectFile = new System.Windows.Forms.Button();
this.buttonLogParseCopyActXiv = new System.Windows.Forms.Button();
this.buttonLogParseOpenDevTools = new System.Windows.Forms.Button();
this.buttonLogParseReloadBrowser = new System.Windows.Forms.Button();
+
+ this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
- this.textLogParseUrl = new System.Windows.Forms.TextBox();
- this.buttonLogParseSelectFile = new System.Windows.Forms.Button();
- this.nudMaxFrameRate = new System.Windows.Forms.NumericUpDown();
- this.label13 = new System.Windows.Forms.Label();
- this.label7 = new System.Windows.Forms.Label();
- this.label8 = new System.Windows.Forms.Label();
+ this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
+
+ this.checkMiniParseVisible = new System.Windows.Forms.CheckBox();
+ this.checkMiniParseClickthru = new System.Windows.Forms.CheckBox();
this.checkEnableGlobalHotkey = new System.Windows.Forms.CheckBox();
- this.textGlobalHotkey = new System.Windows.Forms.TextBox();
- this.label9 = new System.Windows.Forms.Label();
this.checkLock = new System.Windows.Forms.CheckBox();
- this.label10 = new System.Windows.Forms.Label();
+
this.comboHotkeyType = new System.Windows.Forms.ComboBox();
+
+ this.panel1 = new System.Windows.Forms.Panel();
+
+ this.textGlobalHotkey = new System.Windows.Forms.TextBox();
+ this.textLogParseUrl = new System.Windows.Forms.TextBox();
+
+ this.nudMaxFrameRate = new System.Windows.Forms.NumericUpDown();
+
this.tableLayoutPanel1.SuspendLayout();
- this.panel1.SuspendLayout();
- this.tableLayoutPanel3.SuspendLayout();
this.tableLayoutPanel2.SuspendLayout();
+ this.tableLayoutPanel3.SuspendLayout();
+ this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.nudMaxFrameRate)).BeginInit();
this.SuspendLayout();
//
@@ -67,8 +73,6 @@ private void InitializeComponent()
//
resources.ApplyResources(this.tableLayoutPanel1, "tableLayoutPanel1");
this.tableLayoutPanel1.Controls.Add(this.label6, 0, 4);
- //this.tableLayoutPanel1.Controls.Add(this.label5, 0, 5);
- //this.tableLayoutPanel1.Controls.Add(this.label4, 0, 4);
this.tableLayoutPanel1.Controls.Add(this.label2, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.label3, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.label1, 0, 3);
@@ -93,16 +97,6 @@ private void InitializeComponent()
resources.ApplyResources(this.label6, "label6");
this.label6.Name = "label6";
//
- // label5
- //
- //resources.ApplyResources(this.label5, "label5");
- //this.label5.Name = "label5";
- //
- // label4
- //
- //resources.ApplyResources(this.label4, "label4");
- //this.label4.Name = "label4";
- //
// label2
//
resources.ApplyResources(this.label2, "label2");
@@ -120,8 +114,8 @@ private void InitializeComponent()
//
// checkMiniParseVisible
//
- resources.ApplyResources(this.checkMiniParseVisible, "checkLogParseVisible");
- this.checkMiniParseVisible.Name = "checkLogParseVisible";
+ resources.ApplyResources(this.checkMiniParseVisible, "checkMiniParseVisible");
+ this.checkMiniParseVisible.Name = "checkMiniParseVisible";
this.checkMiniParseVisible.UseVisualStyleBackColor = true;
this.checkMiniParseVisible.CheckedChanged += new System.EventHandler(this.checkWindowVisible_CheckedChanged);
//
@@ -134,9 +128,9 @@ private void InitializeComponent()
//
// panel1
//
- resources.ApplyResources(this.panel1, "panel1");
this.tableLayoutPanel1.SetColumnSpan(this.panel1, 2);
this.panel1.Controls.Add(this.tableLayoutPanel3);
+ resources.ApplyResources(this.panel1, "panel1");
this.panel1.Name = "panel1";
//
// tableLayoutPanel3
@@ -259,13 +253,14 @@ private void InitializeComponent()
// comboHotkeyType
//
resources.ApplyResources(this.comboHotkeyType, "comboHotkeyType");
+ this.comboHotkeyType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboHotkeyType.FormattingEnabled = true;
this.comboHotkeyType.Name = "comboHotkeyType";
//
// LogParseConfigPanel
//
resources.ApplyResources(this, "$this");
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.BackColor = System.Drawing.Color.Transparent;
this.Controls.Add(this.tableLayoutPanel1);
this.Name = "LogParseConfigPanel";
@@ -283,31 +278,36 @@ private void InitializeComponent()
#endregion
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
- private System.Windows.Forms.Label label13;
- private System.Windows.Forms.Label label6;
- //private System.Windows.Forms.Label label5;
- //private System.Windows.Forms.Label label4;
+ private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
+ private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
+
+ private System.Windows.Forms.Panel panel1;
+
+ private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.CheckBox checkMiniParseVisible;
- private System.Windows.Forms.CheckBox checkMiniParseClickthru;
- private System.Windows.Forms.Panel panel1;
- private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
+ private System.Windows.Forms.Label label6;
+ private System.Windows.Forms.Label label7;
+ private System.Windows.Forms.Label label8;
+ private System.Windows.Forms.Label label9;
+ private System.Windows.Forms.Label label10;
+ private System.Windows.Forms.Label label13;
+
private System.Windows.Forms.Button buttonLogParseReloadBrowser;
private System.Windows.Forms.Button buttonLogParseOpenDevTools;
private System.Windows.Forms.Button buttonLogParseCopyActXiv;
- private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
- private System.Windows.Forms.TextBox textLogParseUrl;
private System.Windows.Forms.Button buttonLogParseSelectFile;
- private System.Windows.Forms.NumericUpDown nudMaxFrameRate;
- private System.Windows.Forms.Label label7;
- private System.Windows.Forms.Label label8;
+
private System.Windows.Forms.CheckBox checkEnableGlobalHotkey;
- private System.Windows.Forms.TextBox textGlobalHotkey;
- private System.Windows.Forms.Label label9;
private System.Windows.Forms.CheckBox checkLock;
- private System.Windows.Forms.Label label10;
+ private System.Windows.Forms.CheckBox checkMiniParseVisible;
+ private System.Windows.Forms.CheckBox checkMiniParseClickthru;
+
private System.Windows.Forms.ComboBox comboHotkeyType;
+
+ private System.Windows.Forms.TextBox textGlobalHotkey;
+ private System.Windows.Forms.TextBox textLogParseUrl;
+
+ private System.Windows.Forms.NumericUpDown nudMaxFrameRate;
}
}
diff --git a/OverlayPlugin.Core/Overlays/LogParseConfigPanel.cs b/OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.cs
similarity index 87%
rename from OverlayPlugin.Core/Overlays/LogParseConfigPanel.cs
rename to OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.cs
index 1747b06a5..480422aee 100644
--- a/OverlayPlugin.Core/Overlays/LogParseConfigPanel.cs
+++ b/OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.cs
@@ -1,11 +1,5 @@
using System;
using System.Collections.Generic;
-using System.ComponentModel;
-using System.Drawing;
-using System.Data;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using System.Windows.Forms;
namespace RainbowMage.OverlayPlugin.Overlays
@@ -19,7 +13,8 @@ public partial class LogParseConfigPanel : UserControl
{
new KeyValuePair(Localization.GetText(TextItem.ToggleVisible), GlobalHotkeyType.ToggleVisible),
new KeyValuePair(Localization.GetText(TextItem.ToggleClickthru), GlobalHotkeyType.ToggleClickthru),
- new KeyValuePair(Localization.GetText(TextItem.ToggleLock), GlobalHotkeyType.ToggleLock)
+ new KeyValuePair(Localization.GetText(TextItem.ToggleLock), GlobalHotkeyType.ToggleLock),
+ new KeyValuePair(Localization.GetText(TextItem.Screenshot), GlobalHotkeyType.Screenshot)
};
public LogParseConfigPanel(LogParseOverlay overlay)
@@ -54,35 +49,35 @@ private void SetupConfigEventHandlers()
{
this.config.VisibleChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.checkMiniParseVisible.Checked = e.IsVisible;
});
};
this.config.ClickThruChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.checkMiniParseClickthru.Checked = e.IsClickThru;
});
};
this.config.UrlChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.textLogParseUrl.Text = e.NewUrl;
});
};
this.config.MaxFrameRateChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.nudMaxFrameRate.Value = e.NewFrameRate;
});
};
this.config.GlobalHotkeyEnabledChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.checkEnableGlobalHotkey.Checked = e.NewGlobalHotkeyEnabled;
this.textGlobalHotkey.Enabled = this.checkEnableGlobalHotkey.Checked;
@@ -90,53 +85,43 @@ private void SetupConfigEventHandlers()
};
this.config.GlobalHotkeyChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.textGlobalHotkey.Text = Util.GetHotkeyString(this.config.GlobalHotkeyModifiers, e.NewHotkey);
});
};
this.config.GlobalHotkeyModifiersChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.textGlobalHotkey.Text = Util.GetHotkeyString(e.NewHotkey, this.config.GlobalHotkey);
});
};
this.config.LockChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.checkLock.Checked = e.IsLocked;
});
};
this.config.GlobalHotkeyTypeChanged += (o, e) =>
{
- this.InvokeIfRequired(() =>
+ Invoke((MethodInvoker)delegate
{
this.comboHotkeyType.SelectedValue = e.NewHotkeyType;
});
};
}
- private void InvokeIfRequired(Action action)
- {
- if (this.InvokeRequired)
- {
- this.Invoke(action);
- }
- else
- {
- action();
- }
- }
-
private void checkWindowVisible_CheckedChanged(object sender, EventArgs e)
{
+ if (this.config.Url == "") return;
this.config.IsVisible = checkMiniParseVisible.Checked;
}
private void checkMouseClickthru_CheckedChanged(object sender, EventArgs e)
{
+ if (this.config.Url == "") return;
this.config.IsClickThru = checkMiniParseClickthru.Checked;
}
@@ -178,13 +163,13 @@ private void buttonSelectFile_Click(object sender, EventArgs e)
private void buttonLogParseOpenDevTools_Click(object sender, EventArgs e)
{
- this.overlay.Overlay.Renderer.showDevTools();
+ this.overlay.Overlay.Renderer.ShowDevTools();
}
private void buttonLogParseOpenDevTools_RClick(object sender, System.Windows.Forms.MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
- this.overlay.Overlay.Renderer.showDevTools(false);
+ this.overlay.Overlay.Renderer.ShowDevTools(false);
}
private void buttonCopyActXiv_Click(object sender, EventArgs e)
@@ -212,6 +197,7 @@ private void textBoxGlobalHotkey_KeyDown(object sender, KeyEventArgs e)
private void checkLock_CheckedChanged(object sender, EventArgs e)
{
+ if (this.config.Url == "") return;
this.config.IsLocked = this.checkLock.Checked;
}
}
diff --git a/OverlayPlugin.Core/Overlays/LogParseConfigPanel.ja-JP.resx b/OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.ja-JP.resx
similarity index 86%
rename from OverlayPlugin.Core/Overlays/LogParseConfigPanel.ja-JP.resx
rename to OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.ja-JP.resx
index 960d215bf..fe2fd934b 100644
--- a/OverlayPlugin.Core/Overlays/LogParseConfigPanel.ja-JP.resx
+++ b/OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.ja-JP.resx
@@ -117,15 +117,10 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
最大フレームレート
-
- ソートタイプ
-
-
- 含めるログ
-
クリックを透過させる
@@ -135,6 +130,17 @@
表示するURL
+
+
+ False
+
+
+
+ None
+
+
+ 13
+
変数をクリップボードにコピー
@@ -144,6 +150,12 @@
オーバーレイの表示をリロード
+
+ Popup
+
+
+ 0, 0, 0, 0
+
※最大フレームレート、およびホットキーの変更を有効にするためにはプラグインの再起動が必要です
@@ -159,13 +171,7 @@
ホットキータイプ
-
- /echo
-
-
- 残りの会話
-
-
- 残りのログ
+
+ 7, 12
\ No newline at end of file
diff --git a/OverlayPlugin.Core/Overlays/LogParseConfigPanel.ko-KR.resx b/OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.ko-KR.resx
similarity index 100%
rename from OverlayPlugin.Core/Overlays/LogParseConfigPanel.ko-KR.resx
rename to OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.ko-KR.resx
diff --git a/OverlayPlugin.Core/Overlays/LogParseConfigPanel.resx b/OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.resx
similarity index 71%
rename from OverlayPlugin.Core/Overlays/LogParseConfigPanel.resx
rename to OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.resx
index fc088c226..1efd77841 100644
--- a/OverlayPlugin.Core/Overlays/LogParseConfigPanel.resx
+++ b/OverlayPlugin.Core/Overlays/ConfigPanels/LogParseConfigPanel.resx
@@ -118,933 +118,666 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 4
-
-
-
- 149, 22
-
-
- label6
-
-
- MiddleLeft
-
-
- checkLock
-
-
-
- Fill
-
-
- True
-
-
- 15
-
-
- MiddleLeft
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 8
-
-
- MiddleLeft
-
-
+
2
-
- NoControl
-
-
- 0, 0
-
-
+
True
-
- tableLayoutPanel1
-
-
- tableLayoutPanel1
-
-
- 410, 0
+
+
+ Fill
-
+
NoControl
-
- 10
-
-
- 3, 3
-
-
- tableLayoutPanel1
-
-
- 447, 19
-
-
- buttonLogParseSelectFile
+
+
+ 12
Max. framerate
-
- 2
+
+ MiddleLeft
-
- comboHotkeyType
+
+ label6
-
+
System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 3, 44
-
-
- 4
-
-
- 2
-
tableLayoutPanel1
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 5
-
-
- 22
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tableLayoutPanel1
-
-
- 8
-
-
+
0
-
- 149, 22
-
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 3, 110
-
-
- Fill
-
-
- Enable global hotkey
-
-
+
True
-
- 149, 22
-
-
- 13
+
+ Fill
-
- <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="textLogParseUrl" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="buttonLogParseSelectFile" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /></Controls><Columns Styles="Percent,100,Absolute,37" /><Rows Styles="Percent,100" /></TableLayoutSettings>
+
+ NoControl
-
- 4
+
+ 0
Enable clickthru
-
- NoControl
-
-
+
MiddleLeft
-
- Fill
+
+ label2
-
- 6
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- label10
+
+ tableLayoutPanel1
-
- True
+
+ 1
-
- MiddleLeft
+
+ True
-
+
Fill
-
- System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ NoControl
0
-
- Fill
-
-
- Fill
-
-
- 20
-
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Copy the update variable to clipboard
-
-
- NoControl
-
-
- 1, 1, 1, 1
-
-
- 24
-
-
- 6, 12
+
+ Show overlay
-
- NoControl
+
+