From 0aa3757b52e49b7e586347148b5209887819788b Mon Sep 17 00:00:00 2001 From: callmeyan Date: Sun, 4 Feb 2024 14:48:32 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=86=99=E4=BC=98=E5=8C=96bridge=E4=BA=A4?= =?UTF-8?q?=E4=BA=92=E7=9A=84=E5=8F=82=E6=95=B0;=20=E5=AE=8C=E5=96=84web?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E6=88=90=E5=8A=9F=E5=90=8E=E5=9B=9E=E8=B0=83?= =?UTF-8?q?=E6=8F=92=E4=BB=B6=E7=9A=84=E6=95=B0=E6=8D=AE=E4=BA=A4=E4=BA=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AIProofread/Bridge.cs | 43 ++++++++++++++++++ AIProofread/Controls/FormLogin.cs | 10 ++++ AIProofread/Properties/Resources.Designer.cs | 2 +- AIProofread/Ribbon1.cs | 28 ++++++++---- ...AIProofread.csproj.AssemblyReference.cache | Bin 14944 -> 19064 bytes .../AIProofread.csproj.GenerateResource.cache | Bin 545 -> 545 bytes AIProofread/obj/Debug/AIProofread.dll | Bin 52736 -> 54272 bytes AIProofread/obj/Debug/AIProofread.pdb | Bin 65024 -> 65024 bytes .../DesignTimeResolveAssemblyReferences.cache | Bin 0 -> 10326 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 4845 -> 4713 bytes .../Properties.Resources.Designer.cs.dll | Bin 4096 -> 4096 bytes 11 files changed, 74 insertions(+), 9 deletions(-) create mode 100644 AIProofread/obj/Debug/DesignTimeResolveAssemblyReferences.cache diff --git a/AIProofread/Bridge.cs b/AIProofread/Bridge.cs index 4db9e1e..edcea8f 100644 --- a/AIProofread/Bridge.cs +++ b/AIProofread/Bridge.cs @@ -1,10 +1,16 @@ using Microsoft.Web.WebView2.Core; using Microsoft.Web.WebView2.WinForms; +using System; using System.Collections.Generic; using System.Runtime.InteropServices; namespace AIProofread { + public enum BridgeEvent + { + LoginSuccess + } + public delegate void BridgeEventHandler(object sender, EventArgs e); [ClassInterface(ClassInterfaceType.AutoDual)] [ComVisible(true)] public class Bridge @@ -13,12 +19,49 @@ namespace AIProofread private static readonly Dictionary webViewDict = new Dictionary(); + private static readonly Dictionary> eventHandlers = new Dictionary>(); public void showDialog(string message) { System.Windows.Forms.MessageBox.Show(message); } + /// + /// 添加事件 + /// + /// + /// + public static void AddEventHandler(BridgeEvent eventName, BridgeEventHandler handler) + { + if (!eventHandlers.ContainsKey(eventName)) + { + eventHandlers.Add(eventName, new List()); + } + eventHandlers[eventName].Add(handler); + } + public static void RemoveEventHandler(BridgeEvent eventName, BridgeEventHandler handler) + { + if (eventHandlers.ContainsKey(eventName)) + { + eventHandlers[eventName].Remove(handler); + } + } + + /// + /// 登录成功后通知后端 + /// + public void loginSuccess(string loginToken) + { + showDialog(string.Format("登录成功,token:{0}", loginToken)); + if (eventHandlers.ContainsKey(BridgeEvent.LoginSuccess)) + { + foreach (var eventHandler in eventHandlers[BridgeEvent.LoginSuccess]) + { + eventHandler(null, null); + } + } + } + // 获取文档所有文本数据 public string getAllText() { diff --git a/AIProofread/Controls/FormLogin.cs b/AIProofread/Controls/FormLogin.cs index 22764ce..16e5039 100644 --- a/AIProofread/Controls/FormLogin.cs +++ b/AIProofread/Controls/FormLogin.cs @@ -5,15 +5,25 @@ namespace AIProofread.Controls { public partial class FormLogin : Form { + + public event EventHandler OnLoginCompleted; public FormLogin() { InitializeComponent(); Bridge.InitWebEnvAsync("login", web); + Bridge.AddEventHandler(BridgeEvent.LoginSuccess, OnLoginSuccess); + } + + private void OnLoginSuccess(object sender, EventArgs e) + { + OnLoginCompleted?.Invoke(this, e); } private void FormLogin_Load(object sender, EventArgs e) { this.web.Source = new Uri(Config.WebPath("#login")); } + + } } diff --git a/AIProofread/Properties/Resources.Designer.cs b/AIProofread/Properties/Resources.Designer.cs index 5c62c1f..38bf5df 100644 --- a/AIProofread/Properties/Resources.Designer.cs +++ b/AIProofread/Properties/Resources.Designer.cs @@ -39,7 +39,7 @@ namespace AIProofread.Properties { internal static global::System.Resources.ResourceManager ResourceManager { get { if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WordAddInTest2024.Properties.Resources", typeof(Resources).Assembly); + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("AIProofread.Properties.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan; diff --git a/AIProofread/Ribbon1.cs b/AIProofread/Ribbon1.cs index f0edb66..c1e4587 100644 --- a/AIProofread/Ribbon1.cs +++ b/AIProofread/Ribbon1.cs @@ -14,29 +14,41 @@ namespace AIProofread private FormLogin formLogin; private void Ribbon1_Load(object sender, RibbonUIEventArgs e) { - formLogin = new FormLogin(); btnLogin.Label = "用户\n登录"; btnLogout.Label = "退出\n登录"; } + + // 处理是否登录的展示 private void ToggleLogin() { - if(!IS_LOGIN) - { - if(formLogin == null || formLogin.IsDisposed) { formLogin = new FormLogin(); } - formLogin.Show(); - } - IS_LOGIN = !IS_LOGIN; gpLogin.Visible = !IS_LOGIN; gpLogout.Visible = IS_LOGIN; } - private void btnLogin_Click(object sender, RibbonControlEventArgs e) + // 当登录成功后的回调处理 + private void FormLogin_OnLoginCompleted(object sender, EventArgs e) { + IS_LOGIN = true; ToggleLogin(); + formLogin.Close(); + formLogin = null; } + // 弹出登录窗口 + private void btnLogin_Click(object sender, RibbonControlEventArgs e) + { + if (formLogin == null || formLogin.IsDisposed) + { + formLogin = new FormLogin(); + formLogin.OnLoginCompleted += FormLogin_OnLoginCompleted; + } + formLogin.ShowDialog(); + } + + // 注销登录 private void btnLogout_Click(object sender, RibbonControlEventArgs e) { + IS_LOGIN = false; ToggleLogin(); } diff --git a/AIProofread/obj/Debug/AIProofread.csproj.AssemblyReference.cache b/AIProofread/obj/Debug/AIProofread.csproj.AssemblyReference.cache index 3a9088c73b4a3fec3bbdb9e5fd87e51d53f49549..cf6de54313e3b9b7819e88b6ffb5fd7bfab1be6d 100644 GIT binary patch delta 945 zcmah|zi-n(6waBHmXfrIofsmjsvse?DKV9h2o)^QfSQUf1fhuS;#|rJ`|R2mzzY%r z0VD7_vN0f}N(^B^Vq#%o;2%H~iKPQ#Wdpyfjnaj9uzddB`+nTL+mXMw$g{gml8GNO z7Qb@B3tZk6)Dn(=7#E^v4}Ev>TNR1kZ3UzYg*=ZQ!q2%i_>tEKlO(5WR)<>%-3NxX&))$hy%vz!LE%>r<0rc7CENWDeg3Cg(zz=xHS}eH3 zZH7vFZqey$<6aUE9gY@P@oJ^}8ktnFw(?g?C^wzRwV2%xxQzaZ;Fe(a*w<)w9jWpc z?bv0=JKPx}G7%~!Dh=j4UgR<%Q=Kt{Pr>KnOu@PmA2^k9?9gg?)K5#4_4g&Ik!*S* zN3cszNvWh(Ytw1FPTaCQ+N~lyUygu|uc@Q|RJ@sHRoKV!lT_@a-rNVBKG%k~=7|(e zcE~_KQ>mXwP?y`o_6Oh0Hx+|uIOv2-xS{O@4(|{Rj#uk>{C6;vUC&`;9KN1i#F^AG zWbkMRWICo_ coZ4SJFwZ>As^rOJ0i>2HH2?qr delta 115 zcmew{h4Dejg!0LLo&pokm4c|v3mLhDK#a-9+`}gSQQ(=(Dk=!(KM^kj(|(dQVET?XhEKmRd diff --git a/AIProofread/obj/Debug/AIProofread.csproj.GenerateResource.cache b/AIProofread/obj/Debug/AIProofread.csproj.GenerateResource.cache index 5ffc4ba7a5299feb88ba50f4f1af250361b0552a..73e0d7ecd45a244e07926cea0a30c130d9473a1b 100644 GIT binary patch delta 34 ncmZ3;vXEuN6GpbYEMble)yc0IHTa8Wv##z|y~DxC$N&NW#X1RY delta 34 ocmZ3;vXEuN6Gpa{OLO<7DouXHsKH-iY5uZS=?(`YBLfHk0PW)oB>(^b diff --git a/AIProofread/obj/Debug/AIProofread.dll b/AIProofread/obj/Debug/AIProofread.dll index 3e539115bb91b9b72fb282ca09e360e8ec87324e..b3a4efecc50a3c944cc3f49058c74f8adeee86ad 100644 GIT binary patch delta 15744 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 M_?LfHTL-)UAIci!y#N3J diff --git a/AIProofread/obj/Debug/AIProofread.pdb b/AIProofread/obj/Debug/AIProofread.pdb index dd26e3f4c8eea08d307b3388e2caf6a1e8819c54..54fee3154ddd33a50195d541a3404a9e07d61ec0 100644 GIT binary patch delta 10475 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

gWvNDz)(b`Jg~2W&-%ki8ik^iD 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 a0+G9SF|2{KhAfMFmnoobin!ma2>${vBrvD| literal 0 HcmV?d00001 diff --git a/AIProofread/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/AIProofread/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache index d6fd92179f3a588d5d852620c83194f52c7718e5..c593ad4982c75a5538b2f872be5f4f68665eb335 100644 GIT binary patch delta 174 zcmaE>`ch@XdPYXu$$?CIlOJ$#aOfrH=cQ$)dw~T^m}D4Tz^ra2F-DM><>co~f{Z?3 zu^wiw$+pZQj80IV2%`f`oU^nzwMefZFWnU;!dIM{lbT$TnV$y|c7zFYCFi6jf>k=h Ygm{WmOG+~H(n0EAg4~;xSx@l-03&KOkN^Mx delta 199 zcmaE<@>X@jdPYXi$r~8;CMyW?Ouom+&lm>h$uP+<2EcjgOkzlKYk+bQa5+8}uE~td zB8+}0B7V$Vj6TRBoTbI7MS2B!>4C_ie8s6bsmUdo`FS8IUnD7EMt>w8*W@S`Zd8%Y J^H@&v0szy_Hl+Xn diff --git a/AIProofread/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll b/AIProofread/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll index 87be4eb5a0590927fa534d20dcfc506f58875ba5..f29269370e53f48e8affacc60a8623a3df4a055b 100644 GIT binary patch delta 219 zcmZorXi%8Y!5pH!e`2>R)V4QBYj&cGl5V!MZWx&Ud0 z&7CY)*u)$i89W&R7>XG3fiMk7r!pimq)e{oUMV2BS0Q7;jAOnVtCDuNsqK^7Y{BEg sC^SPGq!|J>f!GQY6~%xqT*@0W(SV0jfq{VsD0swrvmoDl#)$^(0Ev7%(f|Me delta 216 zcmZorXi%8Y!FrGYM-$s5C|05le8^abn9f_(28CmOH=0KytOg#Z8m