From c99a1ca61649583e23b6e641b39b473d446d07e5 Mon Sep 17 00:00:00 2001 From: simonyan <315082291@qq.com> Date: Sun, 20 Oct 2024 12:07:46 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E5=AE=8C=E6=88=90=E4=BB=8E=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E6=A0=8F=E8=BF=9B=E8=A1=8C=E7=BB=98=E5=88=B6=E4=BA=95?= =?UTF-8?q?=E3=80=81=E8=BE=B9=E7=95=8C=E3=80=81=E6=96=AD=E5=B1=82=E3=80=81?= =?UTF-8?q?=E8=A3=82=E7=BC=9D=E7=9A=84=E5=8A=9F=E8=83=BD=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Bin/Config/Common/BtnCmds.dat | 2 +- Bin/XmlFiles/BtnCmds.xml | 12 ++++---- Include/nmNum/nmSubWnd/nmSubWndMain.h | 3 ++ Src/nmNum/nmPlot/nmGuiPlot.cpp | 7 +++-- Src/nmNum/nmPlot/nmGuiPlotCmdHelper.cpp | 17 ++++++------ Src/nmNum/nmPlot/nmObjLineCrack.cpp | 2 +- Src/nmNum/nmPlot/nmObjLineCrackTool.cpp | 2 ++ Src/nmNum/nmPlot/nmObjLineFaultTool.cpp | 2 ++ Src/nmNum/nmPlot/nmObjLineTool.cpp | 2 +- Src/nmNum/nmSubWnd/nmSubWndMain.cpp | 37 +++++++++++++++++-------- 10 files changed, 55 insertions(+), 31 deletions(-) diff --git a/Bin/Config/Common/BtnCmds.dat b/Bin/Config/Common/BtnCmds.dat index 0fe2d00..e9d9555 100644 --- a/Bin/Config/Common/BtnCmds.dat +++ b/Bin/Config/Common/BtnCmds.dat @@ -1 +1 @@ -77u/PD94bWwgcup_mpadmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCg0KPCEtLSDnvJbovpHkvbwzy/nlKggWE1MU3B5IHYyMDA2IFUgKGh0dHA6Ly93d3cuYWx0b3ZhLmNvbSkg55SxIGFueSAoYW55KSAtLT4NCjwhLS0qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLS0+DQo8IS0tICAgIOacrOaWh+aho+eahOebrueahOaYr+W7uueri1dUQUnova/ku7bns7vnu5/nmoTnu5jlm77pg6jliIbnmoTlip/og73mjInpkq4gICAgICAgICAgICAgICAgIC0tPg0KPCEtLSAgICBBdXRob3Iocyk6IHdhbmd6ZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLT4NCjwhLS0gICAgRGF0ZTogMjAyNDAzMjQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0+DQo8IS0tKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi0tPg0KDQo8IS0tKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi0tPg0KPCEtLSDpg6jliIbmlbDmja7pobnor7TmmI4NCiAgICAgICAgSUQ6ICAgICAgICAgIOWUr+S4gOagh+ivhg0KICAgICAgICBOYW1l77yaICAgICAgIOWQjeensO+8jOmAmuW4uOiLseaWhw0KICAgICAgICBUZXh0ICAgICAgICAg5YaF5a6577yM6YCa5bi45Lit5paHDQogICAgICAgIEljb27vvJogICAgICAg5Zu+5qCHDQogICAgICAgIFRpcHPvvJogICAgICAg6L6F5Yqp6K+05piODQogICAgICAgIENoZWNrTW9kZe+8miAgQ2hlY2vnirbmgIHmqKHlvI/vvIzpu5jorqTkuLowDQogICAgICAgICAgICAgICAgICAgICAgICAw77ya54K55Ye75LmL5ZCO5peg54q25oCB77yM5Y+q5piv5Y2V57qv55qEQWN0aW9u77yM5q+U5aaCIOWKoOi9veWOi+WKm+aWh+S7tg0KICAgICAgICAgICAgICAgICAgICAgICAgMTog54K55Ye75LmL5ZCO5peg54q25oCB77yM5L2G6ZyA6KaB5oqK5YW25a6DQ2hlY2tlZOWOu+mZpO+8jOW5tuS4lOWbnuW9kuWIneWni+eKtuaAge+8jOWmgiDmgaLlpI3mkqTplIDjgIHmlL7lpKfjgIHnvKnlsI/jgIHljp/lp4vnirbmgIENCiAgICAgICAgICAgICAgICAgICAgICAgIDI6IOeCueWHu+S5i+WQjuacieeKtuaAge+8jOS9humcgOimgeaKiuWFtuWug0NoZWNrZWTljrvpmaTvvIzkuIDml6bmk43kvZzlrozmiJDlkI7vvIzlm57lvZLliJ3lp4vnirbmgIHvvIzlpoIg5o+S5YWl54K544CB5o+S5YWl54m55b6B57q/562JDQogICAgICAgICAgICAgICAgICAgICAgICAz77ya5oyB57ut55qE54q25oCB77yM5q+U5aaCIOawtOW5s+e8qeaUvi/lnoLnm7TnvKnmlL7vvIxNb3Zl77yM5qGG6YCJ57yp5pS+562J77yM54K55Ye75ZCO77yM5L+d5oyBQ2hlY2vnirbmgIHvvIzkuIDnm7TliLDkuozmrKHngrnlh7vmiJbngrnlh7vlhbblroMNCiAgICAgICAgICAgICAgICAgICAgICAgIDQ6IOW8gOWFs+exu+eahOaMiemSrueKtuaAge+8jOavlOWmguaYvuekuuWNgeWtl+e6v++8jOaMieS4i+S4uuW8gOOAgeWGjeasoeaMieS4i+S4uuWFs++8jOS4jeW9seWTjeWFtuWug+aMiemSrueKtuaAgQ0KICAgICAgICAgICAgICAgICAgICAgICAgNe+8muWFtuWug++8iFRPRE/vvIkNCi0tPg0KPCEtLSoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiotLT4NCg0KPFJvb3Q+DQoNCiAgICA8IS0tIOWRveS7pOWfuuehgOWumuS5iSAtLT4NCiAgICA8QnV0dG9ucyBOYW1lPSIxIj4NCg0KICAgICAgICA8IS0tIOWbvuWFgyAtLT4NCiAgICAgICAgPEJ0biBJRD0iMTAwIiBOYW1lPSJQb2ludCIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249Ikluc2VydFBvaW50IiBUaXBzPSLmj5LlhaXngrkiIC8+DQogICAgICAgIDxCdG4gSUQ9IjEwMSIgTmFtZT0iTGluZSIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249Ikluc2VydExpbmUiIFRpcHM9IuaPkuWFpeebtOe6vyIgLz4NCiAgICAgICAgPEJ0biBJRD0iMTAyIiBOYW1lPSJSZWN0IiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0UmVjdCIgVGlwcz0i55+p5b2i5qGG6YCJIiAvPg0KICAgICAgICA8QnRuIElEPSIxMDMiIE5hbWU9IlBvbHlnb24iIFRleHQ9IiIgQ2hlY2tNb2RlPSIyIiBJY29uPSJJbnNlcnRQb2x5Z29uIiBUaXBzPSLmj5LlhaXlpJrovrnlvaIiIC8+DQogICAgICAgIDxCdG4gSUQ9IjEwNCIgTmFtZT0iVGV4dCIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249Ikluc2VydFRleHQiIFRpcHM9IuaPkuWFpeaWh+acrOahhiIgLz4NCiAgICAgICAgPEJ0biBJRD0iMTA1IiBOYW1lPSJCYW5kViIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249Ikluc2VydFZlckJhbmQiIFRpcHM9IuWMuuWfn+W4pijnq5bnm7Qp6YCJ5Y+WIiAvPg0KICAgICAgICA8QnRuIElEPSIxMDYiIE5hbWU9IkJhbmRIIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0SG9yaUJhbmQiIFRpcHM9IuWMuuWfn+W4pijmsLTlubMp6YCJ5Y+WIiAvPg0KICAgICAgICA8QnRuIElEPSIxMDciIE5hbWU9IkltYWdlIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0UGljIiBUaXBzPSLmj5LlhaXlm77niYciIC8+DQogICAgICAgIDxCdG4gSUQ9IjEwOCIgTmFtZT0iQ3VydmVGcmVlIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0Q3VydmUiIFRpcHM9IuaPkuWFpeiHqueUseabsue6vyIgLz4NCg0KICAgICAgICA8IS0tIOmrmOe6p+WbvuWFgyAtLT4NCiAgICAgICAgPEJ0biBJRD0iMTU3IiBOYW1lPSJDdXJ2ZVBQRCIgVGV4dD0iIiBDaGVja01vZGU9IjQiIEljb249IkN1cnZlUFBEIiBUaXBzPSLmj5LlhaVQUETmm7Lnur8iIC8+DQogICAgICAgIDxCdG4gSUQ9IjE1NiIgTmFtZT0iU0xSX1BPSU5UIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0UG9pbnQiIFRpcHM9IuaPkuWFpeeJueW+geeCuSIgLz4NCiAgICAgICAgPEJ0biBJRD0iMTUwIiBOYW1lPSJTTFJfMCIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249IlJhZGlhbEZsb3ciIFRpcHM9IuaPkuWFpeeJueW+gee6vygwKSIgLz4NCiAgICAgICAgPEJ0biBJRD0iMTUxIiBOYW1lPSJTTFJfNDEiIFRleHQ9IiIgQ2hlY2tNb2RlPSIyIiBJY29uPSJCaWxpbmVhckZsb3ciIFRpcHM9IuaPkuWFpeeJueW+gee6vygxLzQpIiAvPg0KICAgICAgICA8QnRuIElEPSIxNTIiIE5hbWU9IlNMUl8yMSIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249IkxpbmVhckZsb3ciIFRpcHM9IuaPkuWFpeeJueW+gee6vygxLzIpIiAvPg0KICAgICAgICA8QnRuIElEPSIxNTMiIE5hbWU9IlNMUl8xIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iVW5pdFNsb3BlIiBUaXBzPSLmj5LlhaXnibnlvoHnur8oMSkiIC8+DQogICAgICAgIDxCdG4gSUQ9IjE1NCIgTmFtZT0iU0xSXzIxTmVnYXRpdmUiIFRleHQ9IiIgQ2hlY2tNb2RlPSIyIiBJY29uPSJTcGhlcmljYWxGbG93IiBUaXBzPSLmj5LlhaXnibnlvoHnur8oLTEvMikiIC8+DQogICAgICAgIDxCdG4gSUQ9IjE1NSIgTmFtZT0iTGluZVBhcmFsbGVsIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iTGluZVBhcmFsbGVsIiBUaXBzPSLmj5LlhaXlubPooYznur8iIC8+DQoNCiAgICAgICAgPCEtLSBXZWxsTWFwIC0tPg0KICAgICAgICA8QnRuIElEPSIxODAiIE5hbWU9IldfViIgVGV4dD0iIiBDaGVja01vZGU9IjIiICBJY29uPSJJbnNlcnRQb2ludCIgVGlwcz0i55u05LqVIiAvPg0KICAgICAgICA8QnRuIElEPSIxODEiIE5hbWU9IldfSCIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249Ikluc2VydExpbmUiIFRpcHM9IuawtOW5s+S6lSIgLz4NCiAgICAgICAgPEJ0biBJRD0iMTgyIiBOYW1lPSJXX01MIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0UmVjdCIgVGlwcz0i5aSa5q615LqVIiAvPg0KDQogICAgICAgIDwhLS0g57yW6L6R5Y+K5Lqk5LqSIC0tPg0KICAgICAgICA8QnRuIElEPSIyMDAiIE5hbWU9IlVuZG8iIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJVbmRvIiBUaXBzPSLmkqTplIAiIC8+DQogICAgICAgIDxCdG4gSUQ9IjIwMSIgTmFtZT0iUmVkbyIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249IlJlZG8iIFRpcHM9IuaBouWkjSIgLz4NCg0KICAgICAgICA8QnRuIElEPSIyMDgiIE5hbWU9IlNlbGVjdCIgVGV4dD0iIiBDaGVja01vZGU9IjMiIEljb249IkFycm93IiBUaXBzPSLliIfmjaLkuLrpgInmi6nmqKHlvI8iIC8+DQogICAgICAgIA0KICAgICAgICA8QnRuIElEPSIyMDIiIE5hbWU9IlNlbGVjdE11bHRpIiBUZXh0PSIiIENoZWNrTW9kZT0iMyIgSWNvbj0iTXVsdGlTZWxlY3QiIFRpcHM9IuWkmumAiSIgLz4NCiAgICAgICAgPEJ0biBJRD0iMjAzIiBOYW1lPSJTZWxlY3RSZWN0IiBUZXh0PSIiIENoZWNrTW9kZT0iMyIgSWNvbj0iUmVnaW9uU2VsZWN0IiBUaXBzPSLmibnph4/moYbpgInngrkiIC8+DQogICAgICAgIDxCdG4gSUQ9IjIwNCIgTmFtZT0iRXhjbHVkZVJlY3QiIFRleHQ9IiIgQ2hlY2tNb2RlPSIzIiBJY29uPSJFeGNsdWRlUmVjdCIgVGlwcz0i5qGG6YCJ5YmU6Zmk54K5IiAvPg0KICAgICAgICA8QnRuIElEPSIyMDUiIE5hbWU9IkVyYXNlUmVjdCIgVGV4dD0iIiBDaGVja01vZGU9IjMiIEljb249IkVyYXNlUmVjdCIgVGlwcz0i5qGG6YCJ5Yig6Zmk54K5IiAvPg0KICAgICAgICA8QnRuIElEPSIyMDYiIE5hbWU9Ik1vdmUiIFRleHQ9IiIgQ2hlY2tNb2RlPSIzIiBJY29uPSJNb3ZlIiBUaXBzPSJNb3ZlIiAvPg0KICAgICAgICA8IS0tIDIwMTgwMzE5IDIwN+WKn+iDveebruWJjeWwseaYr+S/ruaUueS4gOS4qm9wTm9uZeaEj+S5ieS4jeWkp++8jOaaguaXtuWOu+aOiSAtLT4NCiAgICAgICAgPEJ0biBJRD0iMjA3IiBOYW1lPSJBbGwiIFRleHQ9IiIgQ2hlY2tNb2RlPSIxIiBJY29uPSJBbGwiIFRpcHM9IlJlc2V0IiAvPg0KDQogICAgICAgIDxCdG4gSUQ9IjIwOSIgTmFtZT0iSGl0UG9pbnQiIFRleHQ9IiIgQ2hlY2tNb2RlPSIyIiBJY29uPSJBZGRQb2ludCIgVGlwcz0i5aKe5Yqg5Zue5b2S54K5IiAvPg0KICAgICAgICA8IS0tIDIwMTgwMzE56ICD6JmR5Yiw55uu5YmN55qE5Yqf6IO977yMMjA05LiOMjEw5a6e546w55qE5Yqf6IO95LiA6Ie0IC0tPg0KICAgICAgICA8QnRuIElEPSIyMTAiIE5hbWU9IlJlc2V0UmVjdCIgVGV4dD0iIiBDaGVja01vZGU9IjEiIEljb249IlJlc2V0UmVjdCIgVGlwcz0i6YeN572u54K5IiAvPg0KICAgICAgICANCiAgICAgICAgPCEtLSDnvKnmlL4gLS0+DQogICAgICAgIDxCdG4gSUQ9IjMwMCIgTmFtZT0iWm9vbUluIiBUZXh0PSIiIENoZWNrTW9kZT0iMSIgSWNvbj0iWm9vbUluIiBUaXBzPSLmlbTkvZPmlL7lpKciIC8+DQogICAgICAgIDxCdG4gSUQ9IjMxMCIgTmFtZT0iWm9vbU91dCIgVGV4dD0iIiBDaGVja01vZGU9IjEiIEljb249Ilpvb21PdXQiIFRpcHM9IuaVtOS9k+e8qeWwjyIgLz4NCiAgICAgICAgPEJ0biBJRD0iMzAxIiBOYW1lPSJab29tUmVjdEluIiBUZXh0PSIiIENoZWNrTW9kZT0iMyIgSWNvbj0iWm9vbVJlY3RJbiIgVGlwcz0i5qGG6YCJ5pS+5aSnIiAvPg0KICAgICAgICA8QnRuIElEPSIzMDIiIE5hbWU9Ilpvb21SZWN0SW5WIiBUZXh0PSIiIENoZWNrTW9kZT0iMyIgSWNvbj0iWm9vbUluViIgVGlwcz0i5qGG6YCJ5pS+5aSnKOerluebtCkiIC8+DQogICAgICAgIDxCdG4gSUQ9IjMwMyIgTmFtZT0iWm9vbVJlY3RJbkgiIFRleHQ9IiIgQ2hlY2tNb2RlPSIzIiBJY29uPSJab29tSW5IIiBUaXBzPSLmoYbpgInmlL7lpKco5rC05bmzKSIgLz4NCiAgICAgICAgPEJ0biBJRD0iMzA0IiBOYW1lPSJab29tUmVzZXQiIFRleHQ9IiIgQ2hlY2tNb2RlPSIxIiBJY29uPSJab29tUmVzZXQiIFRpcHM9IuWOn+Wni+Wkp+WwjyIgLz4NCiAgICAgICAgPEJ0biBJRD0iMzA1IiBOYW1lPSJab29tU2VsZkFkYXB0YXRpb24iIENoZWNrTW9kZT0iMSIgVGV4dD0iIiBJY29uPSJab29tU2VsZkFkYXB0YXRpb24iIFRpcHM9IuiHqumAguW6lOWkp+WwjyIgLz4NCg0KICAgICAgICA8IS0tIOaYvuekuiAtLT4NCiAgICAgICAgPEJ0biBJRD0iNDAxIiBOYW1lPSJTaG93Q3Jvc3NMaW5lIiBUZXh0PSIiIENoZWNrTW9kZT0iNCIgSWNvbj0iQ3Jvc3NsaW5lIiBUaXBzPSLmmL7npLrljYHlrZfnur8iIC8+DQogICAgICAgIDxCdG4gSUQ9IjQwMiIgTmFtZT0iU2hvd1ZhbHVlIiBUZXh0PSIiIENoZWNrTW9kZT0iNCIgSWNvbj0iU2hvd1ZhbHVlIiBUaXBzPSLmmL7npLrmlbDlgLzmj5DnpLoiIC8+DQogICAgICAgIDxCdG4gSUQ9IjQwMyIgTmFtZT0iU2hvd1Byb3BlcnR5IiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iUHJvcGVydHkiIFRpcHM9IuWxnuaAp+mhtSIgLz4NCiAgICAgICAgPEJ0biBJRD0iNDA0IiBOYW1lPSJSZWZyZXNoR3JhcGgiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJSZWZyZXNoIiBUaXBzPSLliLfmlrAiIC8+DQoNCiAgICAgICAgPCEtLSDovpPlhaXovpPlh7ogLS0+DQogICAgICAgIDxCdG4gSUQ9IjUwMCIgTmFtZT0iTG9hZEdyYXBoIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iTG9hZEdyYXBoIiBUaXBzPSLmiZPlvIDlm77ku7YiIC8+DQogICAgICAgIDxCdG4gSUQ9IjUwMSIgTmFtZT0iU2F2ZUdyYXBoIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iU2F2ZUdyYXBoIiBUaXBzPSLkv53lrZjlm77ku7YiIC8+DQogICAgICAgIDxCdG4gSUQ9IjUwMiIgTmFtZT0iTG9hZEV4Y2VsIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iSW1wb3J0RXhjZWwiIFRpcHM9IuWKoOi9vUV4Y2VsIiAvPg0KICAgICAgICA8QnRuIElEPSI1MDMiIE5hbWU9IlNhdmVFeGNlbCIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249IkV4cG9ydEV4Y2VsIiBUaXBzPSLlr7zlh7pFeGNlbCIgLz4NCiAgICAgICAgPEJ0biBJRD0iNTA0IiBOYW1lPSJMb2FkRGF0YWJhc2UiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJEYXRhYmFzZSIgVGlwcz0i5LuO5pWw5o2u5bqT6K+75Y+WIiAvPg0KICAgICAgICA8QnRuIElEPSI1MDUiIE5hbWU9IlNhdmVEYXRhYmFzZSIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249IkluRGF0YWJhc2UiIFRpcHM9IuS/neWtmOWFpeW6kyIgLz4NCg0KICAgICAgICA8QnRuIElEPSI1MDYiIE5hbWU9IkxvYWRQIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iUHJlc3N1cmVEYXRhIiBUaXBzPSLliqDovb3ljovlipvmlbDmja4iIC8+DQogICAgICAgIDxCdG4gSUQ9IjUwNyIgTmFtZT0iTG9hZEYiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJSYXRlRGF0YSIgVGlwcz0i5Yqg6L295rWB6YeP5pWw5o2uIiAvPg0KDQogICAgICAgIDxCdG4gSUQ9IjUwOCIgTmFtZT0iUHJpbnQiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJQcmludCIgVGlwcz0i5omT5Y2wIiAvPg0KICAgICAgICA8QnRuIElEPSI1MDkiIE5hbWU9InByaW50X1ByZXZpZXciIENoZWNrTW9kZT0iMCIgVGV4dD0iIiBJY29uPSJQcmVQcmludCIgVGlwcz0i5omT5Y2w6aKE6KeIIiAvPg0KDQogICAgICAgIDxCdG4gSUQ9IjUxMCIgTmFtZT0iU2F2ZUFzSW1nIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iU2F2ZUFzSW1hZ2UiIFRpcHM9IuS/neWtmOS4uuWbvueJhyIgLz4NCiAgICAgICAgPEJ0biBJRD0iNTExIiBOYW1lPSJTYXZlQXNUZW1wbCIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249IlNhdmVBc1RlbXBsIiBUaXBzPSLkv53lrZjkuLrmqKHmnb8iIC8+DQoNCiAgICAgICAgPCEtLSDljovlipvmtYHph4/nvJbovpEgLS0+DQogICAgICAgIDxCdG4gSUQ9IjYwMCIgTmFtZT0iVGhpbm5pbmciIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJUaGlubmluZyIgVGlwcz0i5oq956iAIiAvPg0KICAgICAgICA8QnRuIElEPSI2MDEiIE5hbWU9IlNtb290aCIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249IlNtb290aCIgVGlwcz0i5YWJ5ruRIiAvPg0KICAgICAgICA8QnRuIElEPSI2MDIiIE5hbWU9Ikluc2VydFJhdGUiIFRleHQ9IiIgQ2hlY2tNb2RlPSIzIiBJY29uPSJSYXRlUG9pbnQiIFRpcHM9IuaPkuWFpea1gemHj+eCuSIgLz4NCiAgICAgICAgPEJ0biBJRD0iNjAzIiBOYW1lPSJQcmV2aWV3QnlDdXIiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJQcmV2aWV3QnlDdXIiIFRpcHM9IumihOiniOW9k+WJjemAieS4rSIgLz4NCiAgICAgICAgPEJ0biBJRD0iNjA0IiBOYW1lPSJTd2FwUEYiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJQRiIgVGlwcz0i6YCJ5oup5Y6L5Yqb5rWB6YePIiAvPg0KDQoNCiAgICAgICAgPCEtLSDmlbDlgLzor5XkupXnm7jlhbPlip/og70gLS0+DQogICAgICAgIDxCdG4gSUQ9IjcwMCIgTmFtZT0ibm1JbnNlcnRPYmpQb2ludCIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249Ikluc2VydFBvaW50IiBUaXBzPSJb5qC35L6LXeaPkuWFpeeCuSIgLz4NCiAgICAgICAgPEJ0biBJRD0iNzAxIiBOYW1lPSJubUluc2VydE9iakxpbmUiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJJbnNlcnRMaW5lIiBUaXBzPSJb5qC35L6LXeaPkuWFpee6vyIgLz4NCiAgICAgICAgPEJ0biBJRD0iNzAyIiBOYW1lPSJubUluc2VydE9ialBvbHlnb24iIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJJbnNlcnRQb2x5Z29uIiBUaXBzPSJb5qC35L6LXeaPkuWFpeWkmui+ueW9oiIgLz4NCiAgICAgICAgPEJ0biBJRD0iNzAzIiBOYW1lPSJubUluc2VydE9ialBvbHlnb25PdXRsaW5lIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iSW5zZXJ0UG9seWdvbiIgVGlwcz0i6L6555WMIiAvPg0KICAgICAgICA8QnRuIElEPSI3MDQiIE5hbWU9Im5tSW5zZXJ0T2JqTGluZUNyYWNrIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iSW5zZXJ0TGluZSIgVGlwcz0i6KOC57ydIiAvPg0KICAgICAgICA8QnRuIElEPSI3MDUiIE5hbWU9Im5tSW5zZXJ0T2JqTGluZUZhdWx0IiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iSW5zZXJ0TGluZSIgVGlwcz0i5pat5bGCIiAvPg0KICAgICAgICA8QnRuIElEPSI3MDYiIE5hbWU9Im5tSW5zZXJ0T2JqUG9pbnRXZWxsIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iSW5zZXJ0UG9pbnQiIFRpcHM9IuayueS6lSIgLz4NCg0KICAgICAgICA8IS0tIFBWVOebuOWFsyAtLT4NCiAgICAgICAgPEJ0biBJRD0iODAwIiBOYW1lPSJCYXNpY09wdGlvbiIgVGV4dD0iIiBJY29uPSJQdnRCYXNpY09wdGlvbiIgVGlwcz0i5Z+656GA6YCJ6aG5IiAvPg0KICAgICAgICA8QnRuIElEPSI4MDEiIE5hbWU9IlBoYXNlT2lsIiBUZXh0PSIiIEljb249IlBoYXNlT2lsIiBUaXBzPSLmsrnnm7giIC8+DQogICAgICAgIDxCdG4gSUQ9IjgwMiIgTmFtZT0iUGhhc2VHYXMiIFRleHQ9IiIgSWNvbj0iUGhhc2VHYXMiIFRpcHM9IuawlOebuCIgLz4NCiAgICAgICAgPEJ0biBJRD0iODAzIiBOYW1lPSJQaGFzZVdhdGVyIiBUZXh0PSIiIEljb249IlBoYXNlV2F0ZXIiIFRpcHM9IuawtOebuCIgLz4NCiAgICAgICAgPEJ0biBJRD0iODA0IiBOYW1lPSJTYXZlUHZ0IiBUZXh0PSIiIEljb249IlNhdmVQdnQiIFRpcHM9IuS/neWtmFB2dCIgLz4NCiAgICAgICAgPEJ0biBJRD0iODA1IiBOYW1lPSJMb2FkUHZ0IiBUZXh0PSIiIEljb249IkxvYWRQdnQiIFRpcHM9IuWKoOi9vVB2dCIgLz4NCiAgICAgICAgPEJ0biBJRD0iODA2IiBOYW1lPSJQc2V1UHJlc3N1cmUiIFRleHQ9IiIgSWNvbj0iUHNlZG9QIiBUaXBzPSLorqHnrpfmi5/ljovlipsiIC8+DQogICAgICAgIDxCdG4gSUQ9IjgwNyIgTmFtZT0iUHNldVByZXNzdXJlMyIgVGV4dD0iIiBJY29uPSJQc2Vkb1AzIiBUaXBzPSLorqHnrpfkuInljLrmi5/ljovlipsiIC8+DQogICAgICAgIDxCdG4gSUQ9IjgwOCIgTmFtZT0iUHNldVByZXNzdXJlQyIgVGV4dD0iIiBJY29uPSJQc2Vkb1BDIiBUaXBzPSLnu4TliIblkKvph4/orqHnrpfmi5/ljovlipsiIC8+DQoNCiAgICAgICAgPCEtLSDkuqfmtrLmrrXlm77lvaLnm7jlhbMgLS0+DQogICAgICAgIDxCdG4gSUQ9IjkwMCIgTmFtZT0iRXF1TGF5b3V0IiBUZXh0PSIiIEljb249IkVxdUxheW91dCIgVGlwcz0i562J6Ze06ZqU5biD5bGAIiAvPg0KICAgICAgICA8QnRuIElEPSI5MDEiIE5hbWU9IkFsbFNlZyIgVGV4dD0iIiBJY29uPSJBbGxTZWciIFRpcHM9IuS6p+a2suauteaVtOS9k+aTjeS9nCIgLz4NCiAgICAgICAgPEJ0biBJRD0iOTAyIiBOYW1lPSJUb3RhbFNlZyIgVGV4dD0iIiBDaGVja01vZGUgPSAiNCIgSWNvbj0iVG90YWxTZWciIFRpcHM9IuS6pOS6kuaVtOS9k+aTjeS9nCIgLz4NCg0KICAgICAgICA8IS0tIOWFtuWugyAtLT4NCiAgICAgICAgPEJ0biBJRD0iOTk5IiBOYW1lPSJIZWxwIiBUZXh0PSIiIEljb249IkhlbHAiIFRpcHM9IuW4ruWKqSIgLz4NCg0KICAgIDwvQnV0dG9ucz4NCg0KICAgIDwhLS0g5ZG95Luk5YWz6IGUIC0tPg0KICAgIDxDb21tYW5kcyBOYW1lPSIxIiA+DQoNCiAgICAgICAgPCEtLSDlm77nsbvlnovlkb3ku6TnmoTphY3nva7vvIzmr5TlpoLljYrlr7nmlbDjgIHlj4zlr7nmlbDlpoLmnpzmjInpkq7kuI3kuIDoh7TvvIzlj6/ku6XlnKjmraTphY3nva4gLS0+DQoNCiAgICAgICAgPCEtLSBQbG90QmFzaWNUeXBl5Li65Z+656GA57G75Z6L77yM6buY6K6k55qE5Zu+5b2i6YWN572uIC0tPg0KICAgICAgICA8Q2hhcnQgVHlwZT0iUGxvdEJhc2ljVHlwZSI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwMDs1MDEiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjEwMDsxMDE7MTAyOzEwMzsxMDQ7MTA1OzEwNjsxMDc7MTA4IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDA7MjAxOzsyMDg7MjA5OzIwMzsyMDQ7MjA1OzIwNiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMTUwOzE1MTsxNTI7MTUzOzE1NDsxNTU7MTU2OzI1IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAyOzMwMzszMDA7MzEwOzMwNCIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNDAxOzQwMjs0MDM7NDA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDg7NTA5OzUxMDs1MTE7OTk5IiAvPiAgICAgICAgICAgIA0KICAgICAgICA8L0NoYXJ0Pg0KDQogICAgICAgIDwhLS0g5Y6L5Yqb57yW6L6R5qih5byPIC0tPg0KICAgICAgICA8Q2hhcnQgVHlwZT0iUF9UeXBlX0VkaXQiPg0KICAgICAgICAgICAgPENtZHMgSURzPSI2MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwNiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjA4OzEwMjsxMDU7MTA2OzIwNSIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjAwOzIwMSIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMzAxOzMwMjszMDM7MjA2OzMwMDszMTA7MzA0OzMwNSIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNDAxOzQwMjs0MDM7NDA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDU7NTA4OzUwOTs1MTAiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQoNCiAgICAgICAgPCEtLSDmtYHph4/nvJbovpHmqKHlvI8gLS0+DQogICAgICAgIDxDaGFydCBUeXBlPSJGX1R5cGVfRWRpdCI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwNyIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjA4OzYwMiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjAwOzIwMSIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMzAxOzMwMjszMDM7MjA2OzMwMDszMTA7MzA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI0MDE7NDAyOzQwMzs0MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwNTs1MDg7NTA5OzUxMCIgLz4NCiAgICAgICAgPC9DaGFydD4NCg0KICAgICAgICA8IS0tIOWOi+WKmyvmtYHph4/nu5/kuIDmqKHlvI8gLS0+DQogICAgICAgIDxDaGFydCBUeXBlPSJQRl9UeXBlX01FUkdFIj4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNjA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDY7NTA3IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI2MDIiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjIwODsxMDI7MTA1OzEwNjsyMDUiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjMwMTszMDI7MzAzOzIwNjszMDA7MzEwOzMwNDszMDUiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjQwMTs0MDI7NDAzOzQwNCIgLz4NCiAgICAgICAgPC9DaGFydD4NCg0KDQogICAgICAgIDwhLS0g5Y6L5Yqb57yW6L6R5qih5byPW+WinuWKoOWbnuW9kueCuV0gLS0+DQogICAgICAgIDxDaGFydCBUeXBlPSJQX1R5cGVfRWRpdF9FWCI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjYwNCIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNTA2IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDg7MTAyOzEwNTsxMDY7MjA1IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDA7MjAxIiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAyOzMwMzsyMDY7MzAwOzMxMDszMDQ7MzA1IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI0MDE7NDAyOzQwMzs0MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwNTs1MDg7NTA5OzUxMCIgLz4NCiAgICAgICAgPC9DaGFydD4NCg0KICAgICAgICA8IS0tIElQUuaooeW8jyAtLT4NCiAgICAgICAgPENoYXJ0IFR5cGU9IklQUl9UeXBlX0VkaXQiPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDk7MjA4OzsyMDA7MjAxIiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAyOzMwMzsyMDY7MzAwOzMxMDszMDQ7MzA1IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI0MDE7NDAyOzQwMzs0MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwODs1MDk7NTEwIiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KICAgICAgICA8IS0tIOa1gemHj+WOi+WKmyjlpITnkIbnu5PmnpznmoTljoblj7Lmm7Lnur/vvIzkuIrkuIvmqKHlvI8pIC0tPg0KICAgICAgICA8Q2hhcnQgVHlwZT0iSElTVF9UeXBlX1BGIj4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMTAwOzEwMTsxMDI7MTAzOzEwNDsxMDU7MTA2OzEwNzsxMDgiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjIwMDsyMDEiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjMwMTszMDI7MzAzOzMwMDszMTA7MzA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI0MDE7NDAyOzQwMzs0MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwODs1MDk7NTEwIiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KICAgICAgICA8IS0tIOa1gemHj+WOi+WKm+mdnue8lui+keaooeW8jyAtLT4NCiAgICAgICAgPENoYXJ0IFR5cGU9IkZfVHlwZV9VbkVkaXQiPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDc7NTA4OzUwOTs1MTAiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQogICAgICAgIDxDaGFydCBUeXBlPSJQX1R5cGVfVW5FZGl0Ij4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNTA2OzUwODs1MDk7NTEwIiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KDQogICAgICAgIDxDaGFydCBUeXBlPSJMb2dfVHlwZV9FZGl0Ij4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjA5OzUwNjs1MDg7NTA5OzUxMCIgLz4NCiAgICAgICAgPC9DaGFydD4NCg0KICAgICAgICA8IS0tIFBsb3RTcXVhcmVHcmlk5Li65pa55b2i572R5qC877yM5Y+M5a+55pWw5LiT5bGeIC0tPg0KICAgICAgICA8Q2hhcnQgVHlwZT0iUGxvdFNxdWFyZUdyaWQiPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDA7NTAxIiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDA7MjAxOzsyMDg7MjA5OzIwMzsyMDQ7MjA1OzIwNiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMTU3OzE1MDsxNTE7MTUyOzE1MzsxNTQ7MTU1OzE1NiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMTAwOzEwMTsxMDI7MTAzOzEwNDsxMDU7MTA2OzEwNzsxMDgiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjMwMTszMDA7MzEwOzMwNCIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNDAxOzQwMjs0MDM7NDA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDg7NTA5OzUxMDs1MTE7OTk5IiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KDQogICAgICAgIDwhLS0gUGxvdFRhYmxlSGVscGVy5Li6UGxvdOeahOi+heWKqeihqOagvOS4iuS+p+eahOmFjee9riAtLT4NCiAgICAgICAgPENoYXJ0IFR5cGU9IlBsb3RUYWJsZUhlbHBlciI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwMzs1MDUiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQoNCiAgICAgICAgPCEtLSDmlbDmja7nrqHnkIbnsbvnmoTlt6XlhbfmoI/phY3nva4gLS0+DQogICAgICAgIDxDaGFydCBUeXBlPSJTdWJXbmREYXRhIj4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNTAzOzUwNSIgLz4NCiAgICAgICAgPC9DaGFydD4NCiAgICAgICAgPENoYXJ0IFR5cGU9IlN1YlduZERhdGFQRiI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwNjs1MDc7OzUwMzs1MDUiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQoNCiAgICAgICAgPCEtLSBXZWxsTWFwMkTnu5jlm77phY3nva4gLS0+DQogICAgICAgIDxDaGFydCBUeXBlPSJXZWxsTWFwMkRUeXBlIj4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMTgwOzE4MTsxODIiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjIwMDsyMDE7OzIwODsyMDYiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjMwMTszMDI7MzAzOzMwMDszMTA7MzA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI0MDE7NDAyOzQwMzs0MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwODs1MDk7NTEwOzUxMTs5OTkiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQoNCiAgICAgICAgPCEtLSDmlbDlgLzor5XkupUyROe7mOWbvuagt+S+i+mFjee9riAtLT4NCiAgICAgICAgPENoYXJ0IFR5cGU9Ik5tRGVtbzJEVHlwZSI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjcwMDs3MDE7NzAyOzcwMzs3MDQ7NzA1OzcwNiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjAwOzIwMTs7MjA4IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAyOzMwMzszMDA7MzEwOzMwNCIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNDAxOzQwMjs0MDM7NDA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDg7NTA5OzUxMDs1MTE7OTk5IiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KDQogICAgICAgIDwhLS0gUnN0IEZpdOmFjee9riAtLT4NCiAgICAgICAgPENoYXJ0IFR5cGU9IlJzdEZpdFR5cGUiPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAwOzMxMDszMDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwODs1MDk7NTEwIiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KICAgICAgICAgPCEtLSBTZWdNb3Jl5Lqn5ray5q615pWw6YWN572uIC0tPg0KICAgICAgICA8Q2hhcnQgVHlwZT0iU2VnTW9yZVR5cGUiPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDA7MjAxOzsyMDg7MjA2IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAwOzMxMDszMDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjQwMTs0MDI7NDAzOzQwNCIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iOTAwOzkwMTs5MDIiLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNTA4OzUwOTs1MTAiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQoNCiAgICA8L0NvbW1hbmRzPg0KDQo8L1Jvb3Q+DQo= \ No newline at end of file +77u/PD94bWwgcup_mpadmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCg0KPCEtLSDnvJbovpHkvbwzy/nlKggWE1MU3B5IHYyMDA2IFUgKGh0dHA6Ly93d3cuYWx0b3ZhLmNvbSkg55SxIGFueSAoYW55KSAtLT4NCjwhLS0qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLS0+DQo8IS0tICAgIOacrOaWh+aho+eahOebrueahOaYr+W7uueri1dUQUnova/ku7bns7vnu5/nmoTnu5jlm77pg6jliIbnmoTlip/og73mjInpkq4gICAgICAgICAgICAgICAgIC0tPg0KPCEtLSAgICBBdXRob3Iocyk6IHdhbmd6ZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLT4NCjwhLS0gICAgRGF0ZTogMjAyNDAzMjQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0+DQo8IS0tKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi0tPg0KDQo8IS0tKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi0tPg0KPCEtLSDpg6jliIbmlbDmja7pobnor7TmmI4NCiAgICAgICAgSUQ6ICAgICAgICAgIOWUr+S4gOagh+ivhg0KICAgICAgICBOYW1l77yaICAgICAgIOWQjeensO+8jOmAmuW4uOiLseaWhw0KICAgICAgICBUZXh0ICAgICAgICAg5YaF5a6577yM6YCa5bi45Lit5paHDQogICAgICAgIEljb27vvJogICAgICAg5Zu+5qCHDQogICAgICAgIFRpcHPvvJogICAgICAg6L6F5Yqp6K+05piODQogICAgICAgIENoZWNrTW9kZe+8miAgQ2hlY2vnirbmgIHmqKHlvI/vvIzpu5jorqTkuLowDQogICAgICAgICAgICAgICAgICAgICAgICAw77ya54K55Ye75LmL5ZCO5peg54q25oCB77yM5Y+q5piv5Y2V57qv55qEQWN0aW9u77yM5q+U5aaCIOWKoOi9veWOi+WKm+aWh+S7tg0KICAgICAgICAgICAgICAgICAgICAgICAgMTog54K55Ye75LmL5ZCO5peg54q25oCB77yM5L2G6ZyA6KaB5oqK5YW25a6DQ2hlY2tlZOWOu+mZpO+8jOW5tuS4lOWbnuW9kuWIneWni+eKtuaAge+8jOWmgiDmgaLlpI3mkqTplIDjgIHmlL7lpKfjgIHnvKnlsI/jgIHljp/lp4vnirbmgIENCiAgICAgICAgICAgICAgICAgICAgICAgIDI6IOeCueWHu+S5i+WQjuacieeKtuaAge+8jOS9humcgOimgeaKiuWFtuWug0NoZWNrZWTljrvpmaTvvIzkuIDml6bmk43kvZzlrozmiJDlkI7vvIzlm57lvZLliJ3lp4vnirbmgIHvvIzlpoIg5o+S5YWl54K544CB5o+S5YWl54m55b6B57q/562JDQogICAgICAgICAgICAgICAgICAgICAgICAz77ya5oyB57ut55qE54q25oCB77yM5q+U5aaCIOawtOW5s+e8qeaUvi/lnoLnm7TnvKnmlL7vvIxNb3Zl77yM5qGG6YCJ57yp5pS+562J77yM54K55Ye75ZCO77yM5L+d5oyBQ2hlY2vnirbmgIHvvIzkuIDnm7TliLDkuozmrKHngrnlh7vmiJbngrnlh7vlhbblroMNCiAgICAgICAgICAgICAgICAgICAgICAgIDQ6IOW8gOWFs+exu+eahOaMiemSrueKtuaAge+8jOavlOWmguaYvuekuuWNgeWtl+e6v++8jOaMieS4i+S4uuW8gOOAgeWGjeasoeaMieS4i+S4uuWFs++8jOS4jeW9seWTjeWFtuWug+aMiemSrueKtuaAgQ0KICAgICAgICAgICAgICAgICAgICAgICAgNe+8muWFtuWug++8iFRPRE/vvIkNCi0tPg0KPCEtLSoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiotLT4NCg0KPFJvb3Q+DQoNCiAgICA8IS0tIOWRveS7pOWfuuehgOWumuS5iSAtLT4NCiAgICA8QnV0dG9ucyBOYW1lPSIxIj4NCg0KICAgICAgICA8IS0tIOWbvuWFgyAtLT4NCiAgICAgICAgPEJ0biBJRD0iMTAwIiBOYW1lPSJQb2ludCIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249Ikluc2VydFBvaW50IiBUaXBzPSLmj5LlhaXngrkiIC8+DQogICAgICAgIDxCdG4gSUQ9IjEwMSIgTmFtZT0iTGluZSIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249Ikluc2VydExpbmUiIFRpcHM9IuaPkuWFpeebtOe6vyIgLz4NCiAgICAgICAgPEJ0biBJRD0iMTAyIiBOYW1lPSJSZWN0IiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0UmVjdCIgVGlwcz0i55+p5b2i5qGG6YCJIiAvPg0KICAgICAgICA8QnRuIElEPSIxMDMiIE5hbWU9IlBvbHlnb24iIFRleHQ9IiIgQ2hlY2tNb2RlPSIyIiBJY29uPSJJbnNlcnRQb2x5Z29uIiBUaXBzPSLmj5LlhaXlpJrovrnlvaIiIC8+DQogICAgICAgIDxCdG4gSUQ9IjEwNCIgTmFtZT0iVGV4dCIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249Ikluc2VydFRleHQiIFRpcHM9IuaPkuWFpeaWh+acrOahhiIgLz4NCiAgICAgICAgPEJ0biBJRD0iMTA1IiBOYW1lPSJCYW5kViIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249Ikluc2VydFZlckJhbmQiIFRpcHM9IuWMuuWfn+W4pijnq5bnm7Qp6YCJ5Y+WIiAvPg0KICAgICAgICA8QnRuIElEPSIxMDYiIE5hbWU9IkJhbmRIIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0SG9yaUJhbmQiIFRpcHM9IuWMuuWfn+W4pijmsLTlubMp6YCJ5Y+WIiAvPg0KICAgICAgICA8QnRuIElEPSIxMDciIE5hbWU9IkltYWdlIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0UGljIiBUaXBzPSLmj5LlhaXlm77niYciIC8+DQogICAgICAgIDxCdG4gSUQ9IjEwOCIgTmFtZT0iQ3VydmVGcmVlIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0Q3VydmUiIFRpcHM9IuaPkuWFpeiHqueUseabsue6vyIgLz4NCg0KICAgICAgICA8IS0tIOmrmOe6p+WbvuWFgyAtLT4NCiAgICAgICAgPEJ0biBJRD0iMTU3IiBOYW1lPSJDdXJ2ZVBQRCIgVGV4dD0iIiBDaGVja01vZGU9IjQiIEljb249IkN1cnZlUFBEIiBUaXBzPSLmj5LlhaVQUETmm7Lnur8iIC8+DQogICAgICAgIDxCdG4gSUQ9IjE1NiIgTmFtZT0iU0xSX1BPSU5UIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0UG9pbnQiIFRpcHM9IuaPkuWFpeeJueW+geeCuSIgLz4NCiAgICAgICAgPEJ0biBJRD0iMTUwIiBOYW1lPSJTTFJfMCIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249IlJhZGlhbEZsb3ciIFRpcHM9IuaPkuWFpeeJueW+gee6vygwKSIgLz4NCiAgICAgICAgPEJ0biBJRD0iMTUxIiBOYW1lPSJTTFJfNDEiIFRleHQ9IiIgQ2hlY2tNb2RlPSIyIiBJY29uPSJCaWxpbmVhckZsb3ciIFRpcHM9IuaPkuWFpeeJueW+gee6vygxLzQpIiAvPg0KICAgICAgICA8QnRuIElEPSIxNTIiIE5hbWU9IlNMUl8yMSIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249IkxpbmVhckZsb3ciIFRpcHM9IuaPkuWFpeeJueW+gee6vygxLzIpIiAvPg0KICAgICAgICA8QnRuIElEPSIxNTMiIE5hbWU9IlNMUl8xIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iVW5pdFNsb3BlIiBUaXBzPSLmj5LlhaXnibnlvoHnur8oMSkiIC8+DQogICAgICAgIDxCdG4gSUQ9IjE1NCIgTmFtZT0iU0xSXzIxTmVnYXRpdmUiIFRleHQ9IiIgQ2hlY2tNb2RlPSIyIiBJY29uPSJTcGhlcmljYWxGbG93IiBUaXBzPSLmj5LlhaXnibnlvoHnur8oLTEvMikiIC8+DQogICAgICAgIDxCdG4gSUQ9IjE1NSIgTmFtZT0iTGluZVBhcmFsbGVsIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iTGluZVBhcmFsbGVsIiBUaXBzPSLmj5LlhaXlubPooYznur8iIC8+DQoNCiAgICAgICAgPCEtLSBXZWxsTWFwIC0tPg0KICAgICAgICA8QnRuIElEPSIxODAiIE5hbWU9IldfViIgVGV4dD0iIiBDaGVja01vZGU9IjIiICBJY29uPSJJbnNlcnRQb2ludCIgVGlwcz0i55u05LqVIiAvPg0KICAgICAgICA8QnRuIElEPSIxODEiIE5hbWU9IldfSCIgVGV4dD0iIiBDaGVja01vZGU9IjIiIEljb249Ikluc2VydExpbmUiIFRpcHM9IuawtOW5s+S6lSIgLz4NCiAgICAgICAgPEJ0biBJRD0iMTgyIiBOYW1lPSJXX01MIiBUZXh0PSIiIENoZWNrTW9kZT0iMiIgSWNvbj0iSW5zZXJ0UmVjdCIgVGlwcz0i5aSa5q615LqVIiAvPg0KDQogICAgICAgIDwhLS0g57yW6L6R5Y+K5Lqk5LqSIC0tPg0KICAgICAgICA8QnRuIElEPSIyMDAiIE5hbWU9IlVuZG8iIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJVbmRvIiBUaXBzPSLmkqTplIAiIC8+DQogICAgICAgIDxCdG4gSUQ9IjIwMSIgTmFtZT0iUmVkbyIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249IlJlZG8iIFRpcHM9IuaBouWkjSIgLz4NCg0KICAgICAgICA8QnRuIElEPSIyMDgiIE5hbWU9IlNlbGVjdCIgVGV4dD0iIiBDaGVja01vZGU9IjMiIEljb249IkFycm93IiBUaXBzPSLliIfmjaLkuLrpgInmi6nmqKHlvI8iIC8+DQogICAgICAgIA0KICAgICAgICA8QnRuIElEPSIyMDIiIE5hbWU9IlNlbGVjdE11bHRpIiBUZXh0PSIiIENoZWNrTW9kZT0iMyIgSWNvbj0iTXVsdGlTZWxlY3QiIFRpcHM9IuWkmumAiSIgLz4NCiAgICAgICAgPEJ0biBJRD0iMjAzIiBOYW1lPSJTZWxlY3RSZWN0IiBUZXh0PSIiIENoZWNrTW9kZT0iMyIgSWNvbj0iUmVnaW9uU2VsZWN0IiBUaXBzPSLmibnph4/moYbpgInngrkiIC8+DQogICAgICAgIDxCdG4gSUQ9IjIwNCIgTmFtZT0iRXhjbHVkZVJlY3QiIFRleHQ9IiIgQ2hlY2tNb2RlPSIzIiBJY29uPSJFeGNsdWRlUmVjdCIgVGlwcz0i5qGG6YCJ5YmU6Zmk54K5IiAvPg0KICAgICAgICA8QnRuIElEPSIyMDUiIE5hbWU9IkVyYXNlUmVjdCIgVGV4dD0iIiBDaGVja01vZGU9IjMiIEljb249IkVyYXNlUmVjdCIgVGlwcz0i5qGG6YCJ5Yig6Zmk54K5IiAvPg0KICAgICAgICA8QnRuIElEPSIyMDYiIE5hbWU9Ik1vdmUiIFRleHQ9IiIgQ2hlY2tNb2RlPSIzIiBJY29uPSJNb3ZlIiBUaXBzPSJNb3ZlIiAvPg0KICAgICAgICA8IS0tIDIwMTgwMzE5IDIwN+WKn+iDveebruWJjeWwseaYr+S/ruaUueS4gOS4qm9wTm9uZeaEj+S5ieS4jeWkp++8jOaaguaXtuWOu+aOiSAtLT4NCiAgICAgICAgPEJ0biBJRD0iMjA3IiBOYW1lPSJBbGwiIFRleHQ9IiIgQ2hlY2tNb2RlPSIxIiBJY29uPSJBbGwiIFRpcHM9IlJlc2V0IiAvPg0KDQogICAgICAgIDxCdG4gSUQ9IjIwOSIgTmFtZT0iSGl0UG9pbnQiIFRleHQ9IiIgQ2hlY2tNb2RlPSIyIiBJY29uPSJBZGRQb2ludCIgVGlwcz0i5aKe5Yqg5Zue5b2S54K5IiAvPg0KICAgICAgICA8IS0tIDIwMTgwMzE56ICD6JmR5Yiw55uu5YmN55qE5Yqf6IO977yMMjA05LiOMjEw5a6e546w55qE5Yqf6IO95LiA6Ie0IC0tPg0KICAgICAgICA8QnRuIElEPSIyMTAiIE5hbWU9IlJlc2V0UmVjdCIgVGV4dD0iIiBDaGVja01vZGU9IjEiIEljb249IlJlc2V0UmVjdCIgVGlwcz0i6YeN572u54K5IiAvPg0KICAgICAgICANCiAgICAgICAgPCEtLSDnvKnmlL4gLS0+DQogICAgICAgIDxCdG4gSUQ9IjMwMCIgTmFtZT0iWm9vbUluIiBUZXh0PSIiIENoZWNrTW9kZT0iMSIgSWNvbj0iWm9vbUluIiBUaXBzPSLmlbTkvZPmlL7lpKciIC8+DQogICAgICAgIDxCdG4gSUQ9IjMxMCIgTmFtZT0iWm9vbU91dCIgVGV4dD0iIiBDaGVja01vZGU9IjEiIEljb249Ilpvb21PdXQiIFRpcHM9IuaVtOS9k+e8qeWwjyIgLz4NCiAgICAgICAgPEJ0biBJRD0iMzAxIiBOYW1lPSJab29tUmVjdEluIiBUZXh0PSIiIENoZWNrTW9kZT0iMyIgSWNvbj0iWm9vbVJlY3RJbiIgVGlwcz0i5qGG6YCJ5pS+5aSnIiAvPg0KICAgICAgICA8QnRuIElEPSIzMDIiIE5hbWU9Ilpvb21SZWN0SW5WIiBUZXh0PSIiIENoZWNrTW9kZT0iMyIgSWNvbj0iWm9vbUluViIgVGlwcz0i5qGG6YCJ5pS+5aSnKOerluebtCkiIC8+DQogICAgICAgIDxCdG4gSUQ9IjMwMyIgTmFtZT0iWm9vbVJlY3RJbkgiIFRleHQ9IiIgQ2hlY2tNb2RlPSIzIiBJY29uPSJab29tSW5IIiBUaXBzPSLmoYbpgInmlL7lpKco5rC05bmzKSIgLz4NCiAgICAgICAgPEJ0biBJRD0iMzA0IiBOYW1lPSJab29tUmVzZXQiIFRleHQ9IiIgQ2hlY2tNb2RlPSIxIiBJY29uPSJab29tUmVzZXQiIFRpcHM9IuWOn+Wni+Wkp+WwjyIgLz4NCiAgICAgICAgPEJ0biBJRD0iMzA1IiBOYW1lPSJab29tU2VsZkFkYXB0YXRpb24iIENoZWNrTW9kZT0iMSIgVGV4dD0iIiBJY29uPSJab29tU2VsZkFkYXB0YXRpb24iIFRpcHM9IuiHqumAguW6lOWkp+WwjyIgLz4NCg0KICAgICAgICA8IS0tIOaYvuekuiAtLT4NCiAgICAgICAgPEJ0biBJRD0iNDAxIiBOYW1lPSJTaG93Q3Jvc3NMaW5lIiBUZXh0PSIiIENoZWNrTW9kZT0iNCIgSWNvbj0iQ3Jvc3NsaW5lIiBUaXBzPSLmmL7npLrljYHlrZfnur8iIC8+DQogICAgICAgIDxCdG4gSUQ9IjQwMiIgTmFtZT0iU2hvd1ZhbHVlIiBUZXh0PSIiIENoZWNrTW9kZT0iNCIgSWNvbj0iU2hvd1ZhbHVlIiBUaXBzPSLmmL7npLrmlbDlgLzmj5DnpLoiIC8+DQogICAgICAgIDxCdG4gSUQ9IjQwMyIgTmFtZT0iU2hvd1Byb3BlcnR5IiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iUHJvcGVydHkiIFRpcHM9IuWxnuaAp+mhtSIgLz4NCiAgICAgICAgPEJ0biBJRD0iNDA0IiBOYW1lPSJSZWZyZXNoR3JhcGgiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJSZWZyZXNoIiBUaXBzPSLliLfmlrAiIC8+DQoNCiAgICAgICAgPCEtLSDovpPlhaXovpPlh7ogLS0+DQogICAgICAgIDxCdG4gSUQ9IjUwMCIgTmFtZT0iTG9hZEdyYXBoIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iTG9hZEdyYXBoIiBUaXBzPSLmiZPlvIDlm77ku7YiIC8+DQogICAgICAgIDxCdG4gSUQ9IjUwMSIgTmFtZT0iU2F2ZUdyYXBoIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iU2F2ZUdyYXBoIiBUaXBzPSLkv53lrZjlm77ku7YiIC8+DQogICAgICAgIDxCdG4gSUQ9IjUwMiIgTmFtZT0iTG9hZEV4Y2VsIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iSW1wb3J0RXhjZWwiIFRpcHM9IuWKoOi9vUV4Y2VsIiAvPg0KICAgICAgICA8QnRuIElEPSI1MDMiIE5hbWU9IlNhdmVFeGNlbCIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249IkV4cG9ydEV4Y2VsIiBUaXBzPSLlr7zlh7pFeGNlbCIgLz4NCiAgICAgICAgPEJ0biBJRD0iNTA0IiBOYW1lPSJMb2FkRGF0YWJhc2UiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJEYXRhYmFzZSIgVGlwcz0i5LuO5pWw5o2u5bqT6K+75Y+WIiAvPg0KICAgICAgICA8QnRuIElEPSI1MDUiIE5hbWU9IlNhdmVEYXRhYmFzZSIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249IkluRGF0YWJhc2UiIFRpcHM9IuS/neWtmOWFpeW6kyIgLz4NCg0KICAgICAgICA8QnRuIElEPSI1MDYiIE5hbWU9IkxvYWRQIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iUHJlc3N1cmVEYXRhIiBUaXBzPSLliqDovb3ljovlipvmlbDmja4iIC8+DQogICAgICAgIDxCdG4gSUQ9IjUwNyIgTmFtZT0iTG9hZEYiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJSYXRlRGF0YSIgVGlwcz0i5Yqg6L295rWB6YeP5pWw5o2uIiAvPg0KDQogICAgICAgIDxCdG4gSUQ9IjUwOCIgTmFtZT0iUHJpbnQiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJQcmludCIgVGlwcz0i5omT5Y2wIiAvPg0KICAgICAgICA8QnRuIElEPSI1MDkiIE5hbWU9InByaW50X1ByZXZpZXciIENoZWNrTW9kZT0iMCIgVGV4dD0iIiBJY29uPSJQcmVQcmludCIgVGlwcz0i5omT5Y2w6aKE6KeIIiAvPg0KDQogICAgICAgIDxCdG4gSUQ9IjUxMCIgTmFtZT0iU2F2ZUFzSW1nIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iU2F2ZUFzSW1hZ2UiIFRpcHM9IuS/neWtmOS4uuWbvueJhyIgLz4NCiAgICAgICAgPEJ0biBJRD0iNTExIiBOYW1lPSJTYXZlQXNUZW1wbCIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249IlNhdmVBc1RlbXBsIiBUaXBzPSLkv53lrZjkuLrmqKHmnb8iIC8+DQoNCiAgICAgICAgPCEtLSDljovlipvmtYHph4/nvJbovpEgLS0+DQogICAgICAgIDxCdG4gSUQ9IjYwMCIgTmFtZT0iVGhpbm5pbmciIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJUaGlubmluZyIgVGlwcz0i5oq956iAIiAvPg0KICAgICAgICA8QnRuIElEPSI2MDEiIE5hbWU9IlNtb290aCIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249IlNtb290aCIgVGlwcz0i5YWJ5ruRIiAvPg0KICAgICAgICA8QnRuIElEPSI2MDIiIE5hbWU9Ikluc2VydFJhdGUiIFRleHQ9IiIgQ2hlY2tNb2RlPSIzIiBJY29uPSJSYXRlUG9pbnQiIFRpcHM9IuaPkuWFpea1gemHj+eCuSIgLz4NCiAgICAgICAgPEJ0biBJRD0iNjAzIiBOYW1lPSJQcmV2aWV3QnlDdXIiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJQcmV2aWV3QnlDdXIiIFRpcHM9IumihOiniOW9k+WJjemAieS4rSIgLz4NCiAgICAgICAgPEJ0biBJRD0iNjA0IiBOYW1lPSJTd2FwUEYiIFRleHQ9IiIgQ2hlY2tNb2RlPSIwIiBJY29uPSJQRiIgVGlwcz0i6YCJ5oup5Y6L5Yqb5rWB6YePIiAvPg0KDQoNCiAgICAgICAgPCEtLSDmlbDlgLzor5XkupXnm7jlhbPlip/og70gLS0+DQogICAgICAgIDxCdG4gSUQ9IjcwMCIgTmFtZT0ibm1JbnNlcnRPYmpQb2ludCIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249Ikluc2VydFBvaW50IiBUaXBzPSJb5qC35L6LXeaPkuWFpeeCuSIgLz4NCiAgICAgICAgPEJ0biBJRD0iNzAxIiBOYW1lPSJubUluc2VydE9ialBvaW50V2VsbCIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249Ikluc2VydFBvaW50IiBUaXBzPSLmsrnkupUiIC8+DQogICAgICAgIDxCdG4gSUQ9IjcwMiIgTmFtZT0ibm1JbnNlcnRPYmpMaW5lIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iSW5zZXJ0TGluZSIgVGlwcz0iW+agt+S+i13mj5LlhaXnur8iIC8+DQogICAgICAgIDxCdG4gSUQ9IjcwMyIgTmFtZT0ibm1JbnNlcnRPYmpQb2x5Z29uIiBUZXh0PSIiIENoZWNrTW9kZT0iMCIgSWNvbj0iSW5zZXJ0UG9seWdvbiIgVGlwcz0iW+agt+S+i13mj5LlhaXlpJrovrnlvaIiIC8+DQogICAgICAgIDxCdG4gSUQ9IjcwNCIgTmFtZT0ibm1JbnNlcnRPYmpQb2x5Z29uT3V0bGluZSIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249Ikluc2VydFBvbHlnb24iIFRpcHM9Iui+ueeVjCIgLz4NCiAgICAgICAgPEJ0biBJRD0iNzA1IiBOYW1lPSJubUluc2VydE9iakxpbmVDcmFjayIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249Ikluc2VydExpbmUiIFRpcHM9Iuijgue8nSIgLz4NCiAgICAgICAgPEJ0biBJRD0iNzA2IiBOYW1lPSJubUluc2VydE9iakxpbmVGYXVsdCIgVGV4dD0iIiBDaGVja01vZGU9IjAiIEljb249Ikluc2VydExpbmUiIFRpcHM9IuaWreWxgiIgLz4NCg0KICAgICAgICA8IS0tIFBWVOebuOWFsyAtLT4NCiAgICAgICAgPEJ0biBJRD0iODAwIiBOYW1lPSJCYXNpY09wdGlvbiIgVGV4dD0iIiBJY29uPSJQdnRCYXNpY09wdGlvbiIgVGlwcz0i5Z+656GA6YCJ6aG5IiAvPg0KICAgICAgICA8QnRuIElEPSI4MDEiIE5hbWU9IlBoYXNlT2lsIiBUZXh0PSIiIEljb249IlBoYXNlT2lsIiBUaXBzPSLmsrnnm7giIC8+DQogICAgICAgIDxCdG4gSUQ9IjgwMiIgTmFtZT0iUGhhc2VHYXMiIFRleHQ9IiIgSWNvbj0iUGhhc2VHYXMiIFRpcHM9IuawlOebuCIgLz4NCiAgICAgICAgPEJ0biBJRD0iODAzIiBOYW1lPSJQaGFzZVdhdGVyIiBUZXh0PSIiIEljb249IlBoYXNlV2F0ZXIiIFRpcHM9IuawtOebuCIgLz4NCiAgICAgICAgPEJ0biBJRD0iODA0IiBOYW1lPSJTYXZlUHZ0IiBUZXh0PSIiIEljb249IlNhdmVQdnQiIFRpcHM9IuS/neWtmFB2dCIgLz4NCiAgICAgICAgPEJ0biBJRD0iODA1IiBOYW1lPSJMb2FkUHZ0IiBUZXh0PSIiIEljb249IkxvYWRQdnQiIFRpcHM9IuWKoOi9vVB2dCIgLz4NCiAgICAgICAgPEJ0biBJRD0iODA2IiBOYW1lPSJQc2V1UHJlc3N1cmUiIFRleHQ9IiIgSWNvbj0iUHNlZG9QIiBUaXBzPSLorqHnrpfmi5/ljovlipsiIC8+DQogICAgICAgIDxCdG4gSUQ9IjgwNyIgTmFtZT0iUHNldVByZXNzdXJlMyIgVGV4dD0iIiBJY29uPSJQc2Vkb1AzIiBUaXBzPSLorqHnrpfkuInljLrmi5/ljovlipsiIC8+DQogICAgICAgIDxCdG4gSUQ9IjgwOCIgTmFtZT0iUHNldVByZXNzdXJlQyIgVGV4dD0iIiBJY29uPSJQc2Vkb1BDIiBUaXBzPSLnu4TliIblkKvph4/orqHnrpfmi5/ljovlipsiIC8+DQoNCiAgICAgICAgPCEtLSDkuqfmtrLmrrXlm77lvaLnm7jlhbMgLS0+DQogICAgICAgIDxCdG4gSUQ9IjkwMCIgTmFtZT0iRXF1TGF5b3V0IiBUZXh0PSIiIEljb249IkVxdUxheW91dCIgVGlwcz0i562J6Ze06ZqU5biD5bGAIiAvPg0KICAgICAgICA8QnRuIElEPSI5MDEiIE5hbWU9IkFsbFNlZyIgVGV4dD0iIiBJY29uPSJBbGxTZWciIFRpcHM9IuS6p+a2suauteaVtOS9k+aTjeS9nCIgLz4NCiAgICAgICAgPEJ0biBJRD0iOTAyIiBOYW1lPSJUb3RhbFNlZyIgVGV4dD0iIiBDaGVja01vZGUgPSAiNCIgSWNvbj0iVG90YWxTZWciIFRpcHM9IuS6pOS6kuaVtOS9k+aTjeS9nCIgLz4NCg0KICAgICAgICA8IS0tIOWFtuWugyAtLT4NCiAgICAgICAgPEJ0biBJRD0iOTk5IiBOYW1lPSJIZWxwIiBUZXh0PSIiIEljb249IkhlbHAiIFRpcHM9IuW4ruWKqSIgLz4NCg0KICAgIDwvQnV0dG9ucz4NCg0KICAgIDwhLS0g5ZG95Luk5YWz6IGUIC0tPg0KICAgIDxDb21tYW5kcyBOYW1lPSIxIiA+DQoNCiAgICAgICAgPCEtLSDlm77nsbvlnovlkb3ku6TnmoTphY3nva7vvIzmr5TlpoLljYrlr7nmlbDjgIHlj4zlr7nmlbDlpoLmnpzmjInpkq7kuI3kuIDoh7TvvIzlj6/ku6XlnKjmraTphY3nva4gLS0+DQoNCiAgICAgICAgPCEtLSBQbG90QmFzaWNUeXBl5Li65Z+656GA57G75Z6L77yM6buY6K6k55qE5Zu+5b2i6YWN572uIC0tPg0KICAgICAgICA8Q2hhcnQgVHlwZT0iUGxvdEJhc2ljVHlwZSI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwMDs1MDEiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjEwMDsxMDE7MTAyOzEwMzsxMDQ7MTA1OzEwNjsxMDc7MTA4IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDA7MjAxOzsyMDg7MjA5OzIwMzsyMDQ7MjA1OzIwNiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMTUwOzE1MTsxNTI7MTUzOzE1NDsxNTU7MTU2OzI1IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAyOzMwMzszMDA7MzEwOzMwNCIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNDAxOzQwMjs0MDM7NDA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDg7NTA5OzUxMDs1MTE7OTk5IiAvPiAgICAgICAgICAgIA0KICAgICAgICA8L0NoYXJ0Pg0KDQogICAgICAgIDwhLS0g5Y6L5Yqb57yW6L6R5qih5byPIC0tPg0KICAgICAgICA8Q2hhcnQgVHlwZT0iUF9UeXBlX0VkaXQiPg0KICAgICAgICAgICAgPENtZHMgSURzPSI2MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwNiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjA4OzEwMjsxMDU7MTA2OzIwNSIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjAwOzIwMSIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMzAxOzMwMjszMDM7MjA2OzMwMDszMTA7MzA0OzMwNSIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNDAxOzQwMjs0MDM7NDA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDU7NTA4OzUwOTs1MTAiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQoNCiAgICAgICAgPCEtLSDmtYHph4/nvJbovpHmqKHlvI8gLS0+DQogICAgICAgIDxDaGFydCBUeXBlPSJGX1R5cGVfRWRpdCI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwNyIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjA4OzYwMiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjAwOzIwMSIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMzAxOzMwMjszMDM7MjA2OzMwMDszMTA7MzA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI0MDE7NDAyOzQwMzs0MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwNTs1MDg7NTA5OzUxMCIgLz4NCiAgICAgICAgPC9DaGFydD4NCg0KICAgICAgICA8IS0tIOWOi+WKmyvmtYHph4/nu5/kuIDmqKHlvI8gLS0+DQogICAgICAgIDxDaGFydCBUeXBlPSJQRl9UeXBlX01FUkdFIj4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNjA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDY7NTA3IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI2MDIiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjIwODsxMDI7MTA1OzEwNjsyMDUiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjMwMTszMDI7MzAzOzIwNjszMDA7MzEwOzMwNDszMDUiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjQwMTs0MDI7NDAzOzQwNCIgLz4NCiAgICAgICAgPC9DaGFydD4NCg0KDQogICAgICAgIDwhLS0g5Y6L5Yqb57yW6L6R5qih5byPW+WinuWKoOWbnuW9kueCuV0gLS0+DQogICAgICAgIDxDaGFydCBUeXBlPSJQX1R5cGVfRWRpdF9FWCI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjYwNCIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNTA2IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDg7MTAyOzEwNTsxMDY7MjA1IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDA7MjAxIiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAyOzMwMzsyMDY7MzAwOzMxMDszMDQ7MzA1IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI0MDE7NDAyOzQwMzs0MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwNTs1MDg7NTA5OzUxMCIgLz4NCiAgICAgICAgPC9DaGFydD4NCg0KICAgICAgICA8IS0tIElQUuaooeW8jyAtLT4NCiAgICAgICAgPENoYXJ0IFR5cGU9IklQUl9UeXBlX0VkaXQiPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDk7MjA4OzsyMDA7MjAxIiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAyOzMwMzsyMDY7MzAwOzMxMDszMDQ7MzA1IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI0MDE7NDAyOzQwMzs0MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwODs1MDk7NTEwIiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KICAgICAgICA8IS0tIOa1gemHj+WOi+WKmyjlpITnkIbnu5PmnpznmoTljoblj7Lmm7Lnur/vvIzkuIrkuIvmqKHlvI8pIC0tPg0KICAgICAgICA8Q2hhcnQgVHlwZT0iSElTVF9UeXBlX1BGIj4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMTAwOzEwMTsxMDI7MTAzOzEwNDsxMDU7MTA2OzEwNzsxMDgiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjIwMDsyMDEiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjMwMTszMDI7MzAzOzMwMDszMTA7MzA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI0MDE7NDAyOzQwMzs0MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwODs1MDk7NTEwIiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KICAgICAgICA8IS0tIOa1gemHj+WOi+WKm+mdnue8lui+keaooeW8jyAtLT4NCiAgICAgICAgPENoYXJ0IFR5cGU9IkZfVHlwZV9VbkVkaXQiPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDc7NTA4OzUwOTs1MTAiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQogICAgICAgIDxDaGFydCBUeXBlPSJQX1R5cGVfVW5FZGl0Ij4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNTA2OzUwODs1MDk7NTEwIiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KDQogICAgICAgIDxDaGFydCBUeXBlPSJMb2dfVHlwZV9FZGl0Ij4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjA5OzUwNjs1MDg7NTA5OzUxMCIgLz4NCiAgICAgICAgPC9DaGFydD4NCg0KICAgICAgICA8IS0tIFBsb3RTcXVhcmVHcmlk5Li65pa55b2i572R5qC877yM5Y+M5a+55pWw5LiT5bGeIC0tPg0KICAgICAgICA8Q2hhcnQgVHlwZT0iUGxvdFNxdWFyZUdyaWQiPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDA7NTAxIiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDA7MjAxOzsyMDg7MjA5OzIwMzsyMDQ7MjA1OzIwNiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMTU3OzE1MDsxNTE7MTUyOzE1MzsxNTQ7MTU1OzE1NiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMTAwOzEwMTsxMDI7MTAzOzEwNDsxMDU7MTA2OzEwNzsxMDgiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjMwMTszMDA7MzEwOzMwNCIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNDAxOzQwMjs0MDM7NDA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDg7NTA5OzUxMDs1MTE7OTk5IiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KDQogICAgICAgIDwhLS0gUGxvdFRhYmxlSGVscGVy5Li6UGxvdOeahOi+heWKqeihqOagvOS4iuS+p+eahOmFjee9riAtLT4NCiAgICAgICAgPENoYXJ0IFR5cGU9IlBsb3RUYWJsZUhlbHBlciI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwMzs1MDUiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQoNCiAgICAgICAgPCEtLSDmlbDmja7nrqHnkIbnsbvnmoTlt6XlhbfmoI/phY3nva4gLS0+DQogICAgICAgIDxDaGFydCBUeXBlPSJTdWJXbmREYXRhIj4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNTAzOzUwNSIgLz4NCiAgICAgICAgPC9DaGFydD4NCiAgICAgICAgPENoYXJ0IFR5cGU9IlN1YlduZERhdGFQRiI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwNjs1MDc7OzUwMzs1MDUiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQoNCiAgICAgICAgPCEtLSBXZWxsTWFwMkTnu5jlm77phY3nva4gLS0+DQogICAgICAgIDxDaGFydCBUeXBlPSJXZWxsTWFwMkRUeXBlIj4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMTgwOzE4MTsxODIiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjIwMDsyMDE7OzIwODsyMDYiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjMwMTszMDI7MzAzOzMwMDszMTA7MzA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI0MDE7NDAyOzQwMzs0MDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwODs1MDk7NTEwOzUxMTs5OTkiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQoNCiAgICAgICAgPCEtLSDmlbDlgLzor5XkupUyROe7mOWbvuagt+S+i+mFjee9riAtLT4NCiAgICAgICAgPENoYXJ0IFR5cGU9Ik5tRGVtbzJEVHlwZSI+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjcwMDs3MDE7NzAyOzcwMzs3MDQ7NzA1OzcwNiIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iMjAwOzIwMTs7MjA4IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAyOzMwMzszMDA7MzEwOzMwNCIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNDAxOzQwMjs0MDM7NDA0IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSI1MDg7NTA5OzUxMDs1MTE7OTk5IiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KDQogICAgICAgIDwhLS0gUnN0IEZpdOmFjee9riAtLT4NCiAgICAgICAgPENoYXJ0IFR5cGU9IlJzdEZpdFR5cGUiPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAwOzMxMDszMDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjUwODs1MDk7NTEwIiAvPg0KICAgICAgICA8L0NoYXJ0Pg0KICAgICAgICAgPCEtLSBTZWdNb3Jl5Lqn5ray5q615pWw6YWN572uIC0tPg0KICAgICAgICA8Q2hhcnQgVHlwZT0iU2VnTW9yZVR5cGUiPg0KICAgICAgICAgICAgPENtZHMgSURzPSIyMDA7MjAxOzsyMDg7MjA2IiAvPg0KICAgICAgICAgICAgPENtZHMgSURzPSIzMDE7MzAwOzMxMDszMDQiIC8+DQogICAgICAgICAgICA8Q21kcyBJRHM9IjQwMTs0MDI7NDAzOzQwNCIgLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iOTAwOzkwMTs5MDIiLz4NCiAgICAgICAgICAgIDxDbWRzIElEcz0iNTA4OzUwOTs1MTAiIC8+DQogICAgICAgIDwvQ2hhcnQ+DQoNCiAgICA8L0NvbW1hbmRzPg0KDQo8L1Jvb3Q+DQo= \ No newline at end of file diff --git a/Bin/XmlFiles/BtnCmds.xml b/Bin/XmlFiles/BtnCmds.xml index f094cb9..df98f8d 100644 --- a/Bin/XmlFiles/BtnCmds.xml +++ b/Bin/XmlFiles/BtnCmds.xml @@ -115,12 +115,12 @@ - - - - - - + + + + + + diff --git a/Include/nmNum/nmSubWnd/nmSubWndMain.h b/Include/nmNum/nmSubWnd/nmSubWndMain.h index 460bec2..287e3a5 100644 --- a/Include/nmNum/nmSubWnd/nmSubWndMain.h +++ b/Include/nmNum/nmSubWnd/nmSubWndMain.h @@ -143,6 +143,9 @@ private: void identificationRegion(); // 网格生成 void generationMesh(); + + // 从菜单点击绘制,除非ToolBar上的点击 + void triggerToolBarAction(int index); private: // 绘图相关 diff --git a/Src/nmNum/nmPlot/nmGuiPlot.cpp b/Src/nmNum/nmPlot/nmGuiPlot.cpp index 593373b..952a660 100644 --- a/Src/nmNum/nmPlot/nmGuiPlot.cpp +++ b/Src/nmNum/nmPlot/nmGuiPlot.cpp @@ -127,11 +127,13 @@ nmObjBase* nmGuiPlot::_createOneObj(NM_Obj_Type o, QString& sName) listOlds << m_pPlot->getObjByIndex(i)->getName(); } sName = ZxBaseUtil::getNextOneName(listOlds, sName); - nmDataLogFile::getInstance()->writeLog(sName + " " + QString::number(o)); + nmDataLogFile::getInstance()->writeLog(sName + " ------ " + QString::number(o)); // 创建,此处代码为了简洁,作了非规范性书写 nmObjBase* pObj = NULL; if (o == NOT_Point) { pObj = new nmObjPoint(sName, NULL, NULL); + } else if (o == NOT_Point_Well) { + pObj = new nmObjPointWell(sName, NULL, NULL); } else if (o == NOT_Line) { pObj = new nmObjLine(sName, NULL, NULL); } else if (o == NOT_Polygon) { @@ -142,10 +144,9 @@ nmObjBase* nmGuiPlot::_createOneObj(NM_Obj_Type o, QString& sName) pObj = new nmObjLineCrack(sName, NULL, NULL); } else if (o == NOT_Line_Fault) { pObj = new nmObjLineFault(sName, NULL, NULL); - } else if (o == NOT_Point_Well) { - pObj = new nmObjPointWell(sName, NULL, NULL); } else { zxLogRunW(tr("Type '%1' not supported.").arg((int)o)); + nmDataLogFile::getInstance()->writeLog(tr("Type '%1' not supported.").arg((int)o)); return NULL; } Q_ASSERT (NULL != pObj); diff --git a/Src/nmNum/nmPlot/nmGuiPlotCmdHelper.cpp b/Src/nmNum/nmPlot/nmGuiPlotCmdHelper.cpp index 4bd6b7b..b947b9e 100644 --- a/Src/nmNum/nmPlot/nmGuiPlotCmdHelper.cpp +++ b/Src/nmNum/nmPlot/nmGuiPlotCmdHelper.cpp @@ -31,6 +31,7 @@ bool nmGuiPlotCmdHelper::runAction(QString sAction) Q_ASSERT (NULL != m_pGuiPlot); ZxPlot* pPlot = m_pGuiPlot->m_pPlot; Q_ASSERT (NULL != pPlot); + nmDataLogFile::getInstance()->writeLog(" cmdHelper " + sAction); // 鼠标交互,插入数值试井绘图对象 的例子:点、线、多边形 if (_isSame(sAction, "nmInsertObjPoint")) { nmObjToolBase* pObjTool = new nmObjPointTool(); @@ -39,6 +40,14 @@ bool nmGuiPlotCmdHelper::runAction(QString sAction) connect(pObjTool, SIGNAL(sigPtsFinished(QVector&)), \ this, SLOT(slotObjPtsFinished(QVector&))); return true; + } else if (_isSame(sAction, "nmInsertObjPointWell")) { + nmObjToolBase* pObjTool = new nmObjPointWellTool(); + nmDataLogFile::getInstance()->writeLog("in nmGuiPlotCmdHelper " + QString::number(pObjTool->getNOT())); + Q_ASSERT (NULL != pObjTool); + pPlot->appendTools(pObjTool); + connect(pObjTool, SIGNAL(sigPtsFinished(QVector&)), \ + this, SLOT(slotObjPtsFinished(QVector&))); + return true; } else if (_isSame(sAction, "nmInsertObjLine")) { nmObjToolBase* pObjTool = new nmObjLineTool(); Q_ASSERT (NULL != pObjTool); @@ -76,14 +85,6 @@ bool nmGuiPlotCmdHelper::runAction(QString sAction) connect(pObjTool, SIGNAL(sigPtsFinished(QVector&)), \ this, SLOT(slotObjPtsFinished(QVector&))); return true; - } else if (_isSame(sAction, "nmInsertObjPointWell")) { - nmObjToolBase* pObjTool = new nmObjPointWellTool(); - nmDataLogFile::getInstance()->writeLog("in nmGuiPlotCmdHelper " + QString::number(pObjTool->getNOT())); - Q_ASSERT (NULL != pObjTool); - pPlot->appendTools(pObjTool); - connect(pObjTool, SIGNAL(sigPtsFinished(QVector&)), \ - this, SLOT(slotObjPtsFinished(QVector&))); - return true; } else { // 其它Action } diff --git a/Src/nmNum/nmPlot/nmObjLineCrack.cpp b/Src/nmNum/nmPlot/nmObjLineCrack.cpp index a4495d1..234e9a2 100644 --- a/Src/nmNum/nmPlot/nmObjLineCrack.cpp +++ b/Src/nmNum/nmPlot/nmObjLineCrack.cpp @@ -48,8 +48,8 @@ nmObjLineCrack::~nmObjLineCrack() void nmObjLineCrack::initTools() { - m_pTool = new nmObjLineCrackTool(); ZxObjBase::initTools(); + m_pTool = new nmObjLineCrackTool(); } void nmObjLineCrack::initSubObjs() diff --git a/Src/nmNum/nmPlot/nmObjLineCrackTool.cpp b/Src/nmNum/nmPlot/nmObjLineCrackTool.cpp index 2bc3da4..ccbbf34 100644 --- a/Src/nmNum/nmPlot/nmObjLineCrackTool.cpp +++ b/Src/nmNum/nmPlot/nmObjLineCrackTool.cpp @@ -2,11 +2,13 @@ #include "nmObjLine.h" #include "nmObjLineCrackTool.h" +#include "nmDataLogFile.h" nmObjLineCrackTool::nmObjLineCrackTool() { setText(tr("nObjLineCrackTool")); m_oNot = NOT_Line_Crack; + nmDataLogFile::getInstance()->writeLog(" nmObjLineCrackTool ++++++++ " + QString::number(m_oNot)); } diff --git a/Src/nmNum/nmPlot/nmObjLineFaultTool.cpp b/Src/nmNum/nmPlot/nmObjLineFaultTool.cpp index b98ce15..564effa 100644 --- a/Src/nmNum/nmPlot/nmObjLineFaultTool.cpp +++ b/Src/nmNum/nmPlot/nmObjLineFaultTool.cpp @@ -2,11 +2,13 @@ #include "nmObjLine.h" #include "nmObjLineFaultTool.h" +#include "nmDataLogFile.h" nmObjLineFaultTool::nmObjLineFaultTool() { setText(tr("nObjLineFaultTool")); m_oNot = NOT_Line_Fault; + nmDataLogFile::getInstance()->writeLog(" nmObjLineCrackTool ++++++++ " + QString::number(m_oNot)); } diff --git a/Src/nmNum/nmPlot/nmObjLineTool.cpp b/Src/nmNum/nmPlot/nmObjLineTool.cpp index 75a881e..07d773f 100644 --- a/Src/nmNum/nmPlot/nmObjLineTool.cpp +++ b/Src/nmNum/nmPlot/nmObjLineTool.cpp @@ -3,7 +3,7 @@ #include "nmObjLine.h" #include "nmObjLineTool.h" -nmObjLineTool::nmObjLineTool() : nmObjPointTool() +nmObjLineTool::nmObjLineTool() { setText(tr("nObjLineTool")); m_oNot = NOT_Line; diff --git a/Src/nmNum/nmSubWnd/nmSubWndMain.cpp b/Src/nmNum/nmSubWnd/nmSubWndMain.cpp index 842ca08..394b295 100644 --- a/Src/nmNum/nmSubWnd/nmSubWndMain.cpp +++ b/Src/nmNum/nmSubWnd/nmSubWndMain.cpp @@ -672,11 +672,12 @@ void nmSubWndMain::drawPolygonOutline() { // 获取多边形边界的绘制,并模拟触发点击操作 // 目前多边形边界绘制是工具栏的第4个,所以用 3 - QList actions = m_pPlotToolBar->actions(); - if (!actions.isEmpty()) { - QAction *action = actions[3]; - action->trigger(); - } +// QList actions = m_pPlotToolBar->actions(); +// if (!actions.isEmpty()) { +// QAction *action = actions[3]; +// action->trigger(); +// } + this->triggerToolBarAction(NOT_PolygonOutline); } void nmSubWndMain::drawSquareOutline() @@ -689,21 +690,24 @@ void nmSubWndMain::drawRoundOutline() void nmSubWndMain::drawFault() { + this->triggerToolBarAction(NOT_Line_Fault); } void nmSubWndMain::drawWell() { // 获取多边形边界的绘制,并模拟触发点击操作 // 目前多边形边界绘制是工具栏的第4个,所以用 3 - QList actions = m_pPlotToolBar->actions(); - if (!actions.isEmpty()) { - QAction *action = actions[0]; - action->trigger(); - } +// QList actions = m_pPlotToolBar->actions(); +// if (!actions.isEmpty()) { +// QAction *action = actions[0]; +// action->trigger(); +// } + this->triggerToolBarAction(NOT_Point_Well); } void nmSubWndMain::drawCrack() { + this->triggerToolBarAction(NOT_Line_Crack); } void nmSubWndMain::drawRegion() @@ -730,7 +734,18 @@ void nmSubWndMain::generationMesh() //// gridWindow->resize(1200, 800); //// gridWindow->show(); // gridWindow->initialize(); -// gridWindow->render(); + // gridWindow->render(); +} + +void nmSubWndMain::triggerToolBarAction(int index) +{ + // 获取多边形边界的绘制,并模拟触发点击操作 + // 目前多边形边界绘制是工具栏的第4个,所以用 3 + QList actions = m_pPlotToolBar->actions(); + if (!actions.isEmpty() && index >= 0 && index < actions.count()) { + QAction *action = actions[index]; + action->trigger(); + } } bool nmSubWndMain::onConfirmClosing()