}iYzKz~mOV+QDlm&-HTIg7E`&@04Uay<0f=i&MSy`+VVJrBKa5G3J{N7o{=
zCZezp(eep8*s+{3Gx%AEjvBbOXFUQ5{FPOV-9Y`-HSh}fZGUI%J9O~=2FBLH;D$FC
zQ=z_T8)N6tPTG!tsQ-S4e1|=?6W&9;(>s_ks@?_q!cJ!=jz#gonMbELJ^1nOqh{&0
z$Bk`nz8N?YS@H7$WcfA9)e%i&K1VxXc`MacH`43X!Ib}Vfa)Hkp}$hq(OO(JRN7gt
z{;|!?AJ?dRTkbmyS`*}ejqj3yOOXh%0$j)5Lju?k`IlE6TNrK(Thw-cMNH8r+pecf
zdGm~mO5~5Uk$z`Ut`qvw5+d+zVtEf_;Pvor>sWzsi-k2
zgns|Um7gO0d)BL{Hex{CPqi1@Ui**zx;vN8{#K}!Ro!_!>4&ZuI4%0MD_?KT%>A~y
zx>wnqpmpD32(pvm?WY<073Od<&^&kSR
z0<8wE0hvK-LBH?I*~F>p2i+UG>zrIoe%iWGd3BMug3sJNnO%I_WrQL`Onjm)mRqdH
z$PI(_c{2?2m9INDteMNc490HJy&FmD5vUqztG1s5aR*g=muO9IMsOm6MXi45JnN}m
zsd;kjrEemB=)L}_$(}c-`!5r(w=UOVzcWNVLnO0Q?5zi&0+cUdJLrHjk%dHGZ9s%K
z^Krz12z0``Bo0^vybRm}#I9qrof#9^t`+zJ&`*P%QjEffNMAZ&hzlMKz-hoDpg+=?
zF!Tx#+l!qBz5sj?=}pLw0fk(NE3J^P0_uQ214Y^#s6{pceg+&4obMsybzn4johNpx
zsCXSm`E9u7Ja89qFJ5ax?u>N#19%VT(!gMn%s
zM`E$^fP&v{;~kNHk)T+QN)!rFSO?St?fv9qtvk>N{xnd?qx@w98-ZeAJOG^m_W)yn
zVS$W211thQ3ykT-Z~!sZ2oxRv2PpJT1j(L@35IvTSI$O3#EeUCd8BUxg@N1Vw$>vw`B=?bBDjU#teUg1-P<0o?r*@;0z{m^|PkKrw;tNE_)Q
zQ~o1L?kE+*(V=1!de60oK`gLv-DcnWR$@PiOYJApTWUjr|dVd)gOzT*H%P*ft}&%tK2L!)`}Q8;(Ld=h;wwWU0Dhq
z17%gq>Tem;qfl}NiG8gag?=B{(VSa}Y7u6`ZE~JVzuZc3JR+HTUxFlCp3MVv-5_hHKW>N8Z^a
zul0{qUq{(rR6qVW5pz4(rG`;`i!$;D<|eL+{`FXKH}jL-~AEiEvS5WZmI3DnV6dNeIL7D{^g0hnp%y~2=!3B
z$c~BMF=*^BjkM*!Vmy~Row>W6;r~4W
z^j=sq+vg@S2NMG}{P6{#r%%p1x&-7|kR_R;RpWmy)p|#yR{106e_wzj#LrgZ@q;@M
zJSB`bz&TrNzt6bPio1u&?%o{vR~-BnLq4NJsIIhD{I+%A4#&?-Z$rPr9H8Wb_?I?w
zL(QAaPj6Oodg^uc6KQlyQ0Nfr6{P7`es?r-wEB8@{k=QObdVBEqb7Vmjh8
z{MlnD-b=)V^|MT{Xi*peGKi-`!y~(DxaS~Q2?3I45fLb&*&z0swV$SD4?84^^fLn<
z?k!KaME-hM!ci6p$`*e#aq%{@kG*)HjGIa=NgDhZ=pzpQX8wWjLg@dyDdIT-Yi)4R
z7`isv2iC*Di?H1y%&55=%}acrnuf(v%iSU>O7!4u4_6CMRW#_02I7ZCv055&88q*8
Z=dQH%t-;cvcP?=`h7wCOAqrTCv7sU=mc`ysfl*eCvDa84
zu13TX3?}*;W5JF_H1T3$jADZRDn{-*-=KePd+zhx`|0q0=bR~L&N*{tzS-Qf+T0!5
zefbJo$P1Km?d$sbdOlDSXCYo@^NpHLzLSY)3d&TJ9F%D&(@{P^nTcZLFEo8wOYW=n
zwhw9jUG24>uQCnzlx@z@25H!N^G+*wt62IxKe0C0T&usJ=%7%&OM}dEAYQDT_)DjFoef?ay=~(>m+8ze
zoVRPB!aBau)ze(&TB2cE^Hk4x4KLS*Zm#uVmIF|~#LfKDcP3MowKwPZcVPNkS;x!|
zG(|l}e6}O3_`!*Xwgt&e%oPEajRJ-0aWtILX%b~%?(fk^SY$X2BOgkl(UeA6G=j$Q
z`p`+L-H13WBvtu<28KDS{RPHPYD0Kd$2{8!G=?Tp7wSYac)fEV_i1Kn
z?i_Yn!*As`@`k
z*p=L;z8SChtAv$s-)@nG1}AG5AEF*HePc8DiOgv{KPmvlkKZ=fC+D`x%vo~#Dr4yE
z%@Y&bH&z(+?^B*aohj^11+u`~2pD5D{@JNDyHO1FrykUWcZqJzZ8H7%!e}RNA~EN2
zFx;n<0+We8QvTI1zZ?FJ`CfFk!p}~cF4Qs~?-rxwWgl+gTl)C%pCVIvX1pDLu(+{8
zTD~!I2EQ|*12??VvBoA(FILP>!@*5?OvFOd2FC2T{lGg7Jvr=82+^>e=FsHxmS)3;
zjtbwGuH`2)SLoB>yRrX43Eyx}o|~!T)6-JS@23pZ@<)S9%=zihY^~#(NV5&$1>-;C
zt;Pko=k_c4<;D;H)m-+7>sg`h{%J45J)#oFtwTdZNV&aw60%0d_{*
zS0j2_bp{{nwyXK;8c6;d`J+ixE&a3AhuOjO^=gHk8lR=z4EbJkXIueaEy!E8khT?uw-8$-JZ#~ve!{b%v
zhBt3s@azx0$m;S5Dr+TP4n;L%PK;O8`M&k)hLJt$M{?@@n&A_i6LUaq`lWiJI2S&ei
zqDbHmLnU?}E-S7cfrSjy&(9#b40+K=bc&9CA4PN&czZ0-3Gi=a672yVn1B@nT#|)4
zz#ZAJ2-@$REGIG#r>B+RN8|K#lNpJ+&p;(Gn&Q1bI=nUuAqZ1@&4b@T&qAPznGIV+
z^fPeM66xb%OA$+;uPsAti+Tu(CgMdcoUHpbkt_}ALzSP22sp*1R4gMzY~Llzi1cY0r>77_!el|
zOOy+Fcrj5vPl
zWC+GzK>UJ^s35WiPQ8S+47GP(MhJs`az*mHTmuvIr0Ya>z+*Rv(3DPA!p^{=n^Jxj
z?)QS+_qJ@GQH8!i-@HTA71-DK6VY?jo$)im30QzXm;z=08#)CJtA?F`DfbbQ!1sT_
zoPa%lMF<1a9}vM*)c!Z3AAyF4lArQBA_a8!N7BBN9}_jffJbZKETG#Tm?-2%t3Qb_
z339B3p&%IgR1Tc@467IXn17-Xur;(i0rY$U+W}t!@t*?gh!nK@;1wJQI_fW}XcWv=
z3c77Q(J5dM%q7No7l%K=_d_G}YotaR$#@1VgWy+$gRt%sTLI=k{tk>_Tng1Qf|01NBU3Gv3UeI5_|y$c
zSZLJAnGvi`NiMR%2$(~dbRw3rFx5a;MqdIW+@!ppJ5#eqHMHD?5UlfI6bSs-pHU3f
zR!wt8X{eta$Y>!HYSogd>1#IZzX|+!XxUS&jk}1?lVDtE%LvMmV=yB>;J6S*YsG+}
zjFyA8XwT>+a3D4iF~c9i7@fvI7sDBqqu#+Tj9_i5K!k~W>mJ3(4LB~EscWuHtn7Cd
zPFUgKKf($%dZU9O@r)AD;r-q)DbO~7(OIBt5@rN>abHHWK!4Jo5f%oe4PfdfehG;6
zNnd=xXeBUxAfp1*Yx^Oi{XqK^Mr(lAKW4N518z@cG!8gqC{y$7r^At(nqYu(tjuCm
zJo2e*cyKhMi=fYrWwaSsoXIF3xO4(K0wy69tOELFGs;GX=ca%FI!IgkO-Es1E22dLX7Rg0{F&qRk3fKX)Y~c#obJF+$kTd(d9=Q*K<%2ysJx
zpUHv8t(6T=e=ap|y`HIw;_wFe67}ph$$>_~EWV)6Y+;0OpzhlkAyv?*?UJtEAr+4Q
zf>AK!rMu*e-S#j-SW(_yIiB&xm$IX9*k5S2d_PkYQL&lPJD}YT$_^HNB|FxZAnL)-
zMB4NKo+_2-byVV{V^V(ixD3)>Wzyt_PB3yoeWjeK88PLgy4sAC`>oXU-gitr?oT?+
z2v(z{GfX|2yoX4Hvee_8ocWgX60Hy*A|`HCFoJhz$7R`W&Q+#vby?S?yjLZoE|6cm
ziDd`e`y-=)z|<+Sqa
zTJH5jY1(m*r2O1tnJ+fiFv3`L{SQX)B5kXcnDva2lM&Hh`2xO1^hUnI`bCAsuNk!g
zJ_msnheMd6o{zFM3e5oB)k2}^z*m+E^#K;>6dD8!#-hhcq<`2d^bv4WBZ-ahLAw#L
zaUFOH{2O|Sl}!{fiW8jCMNxOHL>y}Vfr>qvDa255tgE8t^dw{v?5`B$F6GTV6g49%
zIK_Pr{;LLj?ga%wulH7PYeA&is(k_36pexxm#}_s*qlIEr1zTH5ffY_;
zLXeKbkMOB;sG=sOW$hG#8);Psh3bG0!W4=Fj_IsWPYiS!cm?z$q_s*|v}2S)L%=@-
z>;QgXw4x@So3RS@f_!cdg<1gJdm9x(a-%Q%D1^YJy$K4fgaTQ~3RR(l$?*!xVLWU&MhGTRi727bI8GerG|g$gBEz;de;HP!xe
zwW4lD?bj-Vg+{&CDQdzhS+7uYMtZW_s1Ob()NzwSuo`inMLs-L=f^5}^pUTP>dhe9
z%|V%qqJCKck)YLGRnQ_-mZ0RJ2znWCIf_URf-VGd6p>a0T?8~Wyd(drd(>yZwJ4vX
ztV3Ckg4G(Xei(?nfrLw2P`08V*%A`1nrB3ZU*KKfZXgn@ny+wWF~?Uhk*Cz7=%t2A
zB2bZ|)MG6wZEhQ@ek5nn1mI}uhmYrp_;41V%oAzkQ=6?iu{g`&~OnK|ms&%xzJtH4Ch8L-8)#%cB!kokPyPK5%AE;fpcl8nlS|Pc0HK)nRBO_0?N=%t`+1dXHZt
zZ-$u?>>65pBgU|57=zzk=&v6=VryMDhbxQiOW${~cT9V%MbE8yZdkauyb|}4j_tbc
z@ox1z$ujzBsdmtxJT6MC4fsHP#$cXx2-P?AEJT}Y`@)BDx*n)yi6Ts7i7gyUkmo$a
zm$x>A?cz@#CW!BLc7ad&U43hWt%h*0R-ZB+ee{S?P9*#B`fD5Bbq>=Q23xG_|Dtd{
zYP=au^uHO!2W<_&95A{9D}mym?PG;}20R5c09)wf!FvpFG-zLIqFCTO;7;Hf;2_|~
zHsBlaasn?xU}-A_ML+}STA;|@9qn*}16~5g0NXXfrM3bd5PL7>;woJ5tAQPWF%FXU
zb(Z~HZNM=ul0FUWjCwXrkw!#-4abXMYzGS3wwb&D@dAzny%rb^v~raf4{pG*pw9pW
zzk{1>zX2!|(YRv|0~Q0j0NZ-tkPaLRj08q{;&TF6;)!Ft82BX^qT;t+(o~V&_%H&U
z1MCKD>?0N14HO*=^OZCC2KX)L=fJtZul$G-fbaOr=uZPK1>Gt@-a(mw*Fj$aE(h*=
z$0#q>0-H;Xj{?OE+yZgd1SYqY1AX6sc|m9leo?TzaQHn8dmfTzc7#;$5pV?LYoO&>
zhNTB{3fH+9h!PPm-R(R051`RC&W
z_{fI*%_{mIz6Ndo_Bp6tT(7zA0~`L|Kk0aGWtl#q*NFQwk7$g}Bb+n0THbH0jpQ~XiBr77NmeZ_0~+n8+Z*lA?C;y!y|LmSf&dv=&_iOfNIYQe`&
zcErkVgt_cBC0nrV+$TbJXu1QlXX;pqvv;*PnQ~yba>UxaX>?4`+p)CxF2{BMAs1eB
z&7;w1HEm9SQ&MPvDb1ISDvWRwegFTIxXg;0usfzCN45{Y0Qq+NT>UBJ)loOo7B^PS
z+2Nbw=8@+=wMOzF1BxF?oO(eHflCEqLq57P90Cb(j{8SbXj67T+>=M^w;*ce6I|99
zc5vn!pZ|GkhGOeiqfHD)@Kp9ee1&X`yeX6A!q#Sc@y{CrfXDc_z=SAUJ-
u4yOR@lh_c+gBA)Szs31`z+Z5x=j`Nh_Pk3taFtyy#I{rHxj@8Ei
diff --git a/WinNodeEditerTest/Demo_Image/STNodeImageInput.cs b/WinNodeEditerTest/Demo_Image/STNodeImageInput.cs
index ec54ade..940e237 100755
--- a/WinNodeEditerTest/Demo_Image/STNodeImageInput.cs
+++ b/WinNodeEditerTest/Demo_Image/STNodeImageInput.cs
@@ -41,8 +41,8 @@ namespace ST.Library.UI.Demo_Image
return m_sz;
}
- protected override Point OnSetOptionLocation(STNodeOption op) {
- return new Point(op.DotLeft, this.Top + 35);
+ protected override Point OnSetOptionDotLocation(STNodeOption op, Point pt) {
+ return new Point(pt.X, pt.Y + 10);
//return base.OnSetOptionLocation(op);
}
diff --git a/WinNodeEditerTest/Form1.cs b/WinNodeEditerTest/Form1.cs
index 7102db6..2bdce0f 100755
--- a/WinNodeEditerTest/Form1.cs
+++ b/WinNodeEditerTest/Form1.cs
@@ -80,8 +80,8 @@ namespace ST.Library.UI
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "*.stn|*.stn";
if (ofd.ShowDialog() != DialogResult.OK) return;
- stNodeEditor1.LoadCanvas(ofd.FileName);
stNodeEditor1.Nodes.Clear();
+ stNodeEditor1.LoadCanvas(ofd.FileName);
}
}
}
diff --git a/WinNodeEditerTest/Form2.Designer.cs b/WinNodeEditerTest/Form2.Designer.cs
new file mode 100755
index 0000000..5392566
--- /dev/null
+++ b/WinNodeEditerTest/Form2.Designer.cs
@@ -0,0 +1,96 @@
+namespace ST.Library.UI
+{
+ partial class Form2
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing) {
+ if (disposing && (components != null)) {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent() {
+ this.button1 = new System.Windows.Forms.Button();
+ this.button2 = new System.Windows.Forms.Button();
+ this.button3 = new System.Windows.Forms.Button();
+ this.button4 = new System.Windows.Forms.Button();
+ this.SuspendLayout();
+ //
+ // button1
+ //
+ this.button1.Location = new System.Drawing.Point(0, 0);
+ this.button1.Name = "button1";
+ this.button1.Size = new System.Drawing.Size(75, 23);
+ this.button1.TabIndex = 0;
+ this.button1.Text = "button1";
+ this.button1.UseVisualStyleBackColor = true;
+ this.button1.Click += new System.EventHandler(this.button1_Click);
+ //
+ // button2
+ //
+ this.button2.Location = new System.Drawing.Point(0, 29);
+ this.button2.Name = "button2";
+ this.button2.Size = new System.Drawing.Size(75, 23);
+ this.button2.TabIndex = 1;
+ this.button2.Text = "button2";
+ this.button2.UseVisualStyleBackColor = true;
+ this.button2.Click += new System.EventHandler(this.button2_Click);
+ //
+ // button3
+ //
+ this.button3.Location = new System.Drawing.Point(0, 58);
+ this.button3.Name = "button3";
+ this.button3.Size = new System.Drawing.Size(75, 23);
+ this.button3.TabIndex = 2;
+ this.button3.Text = "button3";
+ this.button3.UseVisualStyleBackColor = true;
+ this.button3.Click += new System.EventHandler(this.button3_Click);
+ //
+ // button4
+ //
+ this.button4.Location = new System.Drawing.Point(0, 87);
+ this.button4.Name = "button4";
+ this.button4.Size = new System.Drawing.Size(75, 23);
+ this.button4.TabIndex = 3;
+ this.button4.Text = "button4";
+ this.button4.UseVisualStyleBackColor = true;
+ this.button4.Click += new System.EventHandler(this.button4_Click);
+ //
+ // Form2
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(292, 273);
+ this.Controls.Add(this.button4);
+ this.Controls.Add(this.button3);
+ this.Controls.Add(this.button2);
+ this.Controls.Add(this.button1);
+ this.Name = "Form2";
+ this.Text = "Form2";
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Button button1;
+ private System.Windows.Forms.Button button2;
+ private System.Windows.Forms.Button button3;
+ private System.Windows.Forms.Button button4;
+ }
+}
\ No newline at end of file
diff --git a/WinNodeEditerTest/Form2.cs b/WinNodeEditerTest/Form2.cs
new file mode 100755
index 0000000..c8457af
--- /dev/null
+++ b/WinNodeEditerTest/Form2.cs
@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+namespace ST.Library.UI
+{
+ public partial class Form2 : Form
+ {
+ public Form2() {
+ InitializeComponent();
+ }
+
+ Graphics m_g;
+
+ private void button1_Click(object sender, EventArgs e) {
+ m_g = this.CreateGraphics();
+ }
+
+ private void button2_Click(object sender, EventArgs e) {
+ m_g.DrawRectangle(Pens.Red, 10, 10, 30, 30);
+ }
+
+ private void button3_Click(object sender, EventArgs e) {
+ m_g.DrawRectangle(Pens.Yellow, 45, 45, 20, 20);
+ }
+
+ private void button4_Click(object sender, EventArgs e) {
+ this.CreateGraphics().FillRectangle(Brushes.Black, 20, 20, 20, 20);
+ }
+ }
+}
diff --git a/WinNodeEditerTest/Form2.resx b/WinNodeEditerTest/Form2.resx
new file mode 100755
index 0000000..29dcb1b
--- /dev/null
+++ b/WinNodeEditerTest/Form2.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
\ No newline at end of file
diff --git a/WinNodeEditerTest/NodeNumberAdd.cs b/WinNodeEditerTest/NodeNumberAdd.cs
index d2c12e4..7d30aa9 100755
--- a/WinNodeEditerTest/NodeNumberAdd.cs
+++ b/WinNodeEditerTest/NodeNumberAdd.cs
@@ -28,7 +28,7 @@ namespace ST.Library.UI
//当有数据传入时
void m_in_num_DataTransfer(object sender, STNodeOptionEventArgs e) {
//判断连线是否是连接状态(建立连线 断开连线 都会触发该事件)
- if (e.Status == ConnectionStatus.Connected) {
+ if (e.Status == ConnectionStatus.Connected && e.TargetOption.Data != null) {
if (sender == m_in_num1)
m_nNum1 = (int)e.TargetOption.Data;//TargetOption为触发此事件的Option
else
diff --git a/WinNodeEditerTest/WinNodeEditerTest.csproj b/WinNodeEditerTest/WinNodeEditerTest.csproj
index 67964b8..b13a2df 100755
--- a/WinNodeEditerTest/WinNodeEditerTest.csproj
+++ b/WinNodeEditerTest/WinNodeEditerTest.csproj
@@ -64,6 +64,12 @@
Form1.cs
+
+ Form
+
+
+ Form2.cs
+
@@ -73,6 +79,9 @@
Form1.cs
+
+ Form2.cs
+
ResXFileCodeGenerator
Resources.Designer.cs
diff --git a/docs/doc.html b/docs/doc.html
index acc910b..ab585a2 100755
--- a/docs/doc.html
+++ b/docs/doc.html
@@ -88,7 +88,7 @@
- 最后编辑时间 2020-12-30
+ 最后编辑时间 2021-01-21
概述
@@ -595,21 +595,40 @@
void OnDrawMark(DrawingTools dt) |
dt | 绘制工具 |
-
-
|
-
当计算Option位置时候发生 |
-
Point OnSetOptionLocation(STNodeOption op) |
-
- op | 需要计算的Option |
-
-
|
+
|
绘制选项连线的点 |
void OnDrawOptionDot(DrawingTools dt, STNodeOption op) |
dt | 绘制工具 |
- op | 指定的选项 |
+ op | 需要绘制的Option |
+
|
+
绘制选项的文本 |
+
void OnDrawOptionText(DrawingTools dt, STNodeOption op) |
+
+ dt | 绘制工具 |
+
|
+
+ op | 需要绘制的Option |
+
+
|
+
当计算Option连线点位置时候发生 |
+
Point OnSetOptionDotLocation(STNodeOption op, Point pt) |
+
+ op | 需要计算的Option |
+
+
+ op | 自动计算出的位置 |
+
+
|
+
当计算Option文本区域时候发生 |
+
Rectangle OnSetOptionTextRectangle(STNodeOption op, Rectangle rect) |
+
+ op | 需要计算的Option |
+
+
+ op | 自动计算出的区域 |
|
计算当前Node所需要的矩形区域 |
@@ -634,13 +653,18 @@
当需要保存时候 此Node有哪些需要额外保存的数据 |
void OnSaveNode(Dictionary<string, byte[]>) |
-
保存时并不会进行序列化 仅自动保存Mark属性 还原时候仅重新通过空参数构造器创建此Node
+
+ dic | 需要保存的数据 |
+
+ 保存时并不会进行序列化 仅自动保存部分(Guid,Left,Top,Mark,LockOption,LockLocation)属性 还原时候仅重新通过空参数构造器创建此Node
然后调用OnLoadNode()将保存的数据进行还原 |
- void OnLoadNode(Dictionary dic) |
+ void OnLoadNode(Dictionary<string, byte[]> dic) |
dic | 保存时候的数据 |
|
+ 当编辑器加载完成所有的节点时候发生 |
+ void OnEditorLoadCompleted() |
protected override void OnSaveNode(Dictionary<string, byte[]>) {
dic.Add("count", BitConverter.GetBytes(this.InputOptionsCount));
|