From 9ca46fa431fd817cd38a2992b54eadb159909567 Mon Sep 17 00:00:00 2001 From: e <1151568399@qq.com> Date: Mon, 22 May 2023 10:44:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=BB=84=E4=BB=B6wrapper?= =?UTF-8?q?=E3=80=81=E5=A2=9E=E5=8A=A0=E6=94=B6=E8=B4=B9=E6=B3=A8=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 27 ++----------- build.gradle | 2 +- plugin.xml | 4 +- .../plugin/sqy/kj/calendar/FuncRecorder.java | 18 +++++++++ .../plugin/sqy/kj/calendar/JsFileHandler.java | 10 +++-- .../sqy/kj/calendar/form/FormXDateEditor.java | 35 ++++++++++++++++- .../parameter/ParameterXDateEditor.java | 39 ++++++++++++++++++- 7 files changed, 101 insertions(+), 34 deletions(-) create mode 100644 src/main/java/com/fr/plugin/sqy/kj/calendar/FuncRecorder.java diff --git a/.gitignore b/.gitignore index 84adb3f..9a8b1c6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,25 +1,4 @@ -# ---> Java -# Compiled class file -*.class - -# Log file -*.log - -# BlueJ files -*.ctxt - -# Mobile Tools for Java (J2ME) -.mtj.tmp/ - -# Package Files # -*.jar -*.war -*.nar -*.ear -*.zip -*.tar.gz -*.rar - -# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml -hs_err_pid* +/build +/classes +/transform-classes diff --git a/build.gradle b/build.gradle index 630cfac..a74f52c 100644 --- a/build.gradle +++ b/build.gradle @@ -14,7 +14,7 @@ ext { /** * 是否对插件的class进行加密保护,防止反编译 */ - guard = true + guard = false def pluginInfo = getPluginInfo() pluginPre = "fine-plugin" diff --git a/plugin.xml b/plugin.xml index 73b2b02..be28247 100644 --- a/plugin.xml +++ b/plugin.xml @@ -2,7 +2,7 @@ com.fr.plugin.sqy.kj.calendar yes - 1.1.1 + 1.1.2 10.0~11.0 yy 2021-05-26 @@ -11,7 +11,7 @@ com.fr.plugin.sqy - + diff --git a/src/main/java/com/fr/plugin/sqy/kj/calendar/FuncRecorder.java b/src/main/java/com/fr/plugin/sqy/kj/calendar/FuncRecorder.java new file mode 100644 index 0000000..4d3217f --- /dev/null +++ b/src/main/java/com/fr/plugin/sqy/kj/calendar/FuncRecorder.java @@ -0,0 +1,18 @@ +package com.fr.plugin.sqy.kj.calendar; + + +import com.fr.plugin.context.PluginContexts; +import com.fr.plugin.transform.ExecuteFunctionRecord; +import com.fr.plugin.transform.FunctionRecorder; +import com.fr.stable.fun.Authorize; + +//功能点注册 +@FunctionRecorder +@Authorize(callSignKey = PluginConstants.PLUGIN_ID) +public class FuncRecorder { + + + public static boolean execute(){ + return PluginContexts.currentContext() != null && PluginContexts.currentContext().isAvailable();//付费 + } +} diff --git a/src/main/java/com/fr/plugin/sqy/kj/calendar/JsFileHandler.java b/src/main/java/com/fr/plugin/sqy/kj/calendar/JsFileHandler.java index 8a84b63..1929c91 100644 --- a/src/main/java/com/fr/plugin/sqy/kj/calendar/JsFileHandler.java +++ b/src/main/java/com/fr/plugin/sqy/kj/calendar/JsFileHandler.java @@ -1,15 +1,19 @@ package com.fr.plugin.sqy.kj.calendar; +import com.fr.log.FineLoggerFactory; import com.fr.plugin.transform.ExecuteFunctionRecord; import com.fr.plugin.transform.FunctionRecorder; import com.fr.stable.fun.impl.AbstractJavaScriptFileHandler; -@FunctionRecorder + public class JsFileHandler extends AbstractJavaScriptFileHandler{ - @ExecuteFunctionRecord - @Override + public String[] pathsForFiles() { + if(!FuncRecorder.execute()){ + FineLoggerFactory.getLogger().error("[{}]插件未注册或已过期",PluginConstants.PLUGIN_ID); + return new String[]{}; + } return new String[]{ "com/fr/plugin/sqy/kj/calendar/js/plugin_main.js" }; diff --git a/src/main/java/com/fr/plugin/sqy/kj/calendar/form/FormXDateEditor.java b/src/main/java/com/fr/plugin/sqy/kj/calendar/form/FormXDateEditor.java index 1906d59..3e4708b 100644 --- a/src/main/java/com/fr/plugin/sqy/kj/calendar/form/FormXDateEditor.java +++ b/src/main/java/com/fr/plugin/sqy/kj/calendar/form/FormXDateEditor.java @@ -1,9 +1,10 @@ package com.fr.plugin.sqy.kj.calendar.form; -import com.fanruan.api.design.DesignKit; import com.fr.design.designer.creator.CRPropertyDescriptor; import com.fr.design.designer.creator.XDirectWriteEditor; +import com.fr.design.designer.creator.XLayoutContainer; +import com.fr.design.designer.creator.XWScaleLayout; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; @@ -108,7 +109,7 @@ public class FormXDateEditor extends XDirectWriteEditor { if (this.editor == null) { this.editor = FRGUIPaneFactory.createBorderLayout_S_Pane(); this.editor.add(this.textField = new UITextField(5), "Center"); - this.btn = new LimpidButton("", this.getIconPath(), this.toData().isVisible() ? 1.0F : 0.4F); + this.btn = new LimpidButton("sqy_form_calendar", this.getIconPath(), this.toData().isVisible() ? 1.0F : 0.4F); this.btn.setPreferredSize(new Dimension(21, 21)); this.editor.add(this.btn, "East"); this.textField.setOpaque(false); @@ -116,6 +117,36 @@ public class FormXDateEditor extends XDirectWriteEditor { } return this.editor; } + @Override + protected void initXCreatorProperties() { + super.initXCreatorProperties(); + this.initFieldText(); + } + + + @Override + protected void makeVisible(boolean visible) { + this.btn.makeVisible(visible); + } + + @Override + protected XLayoutContainer getCreatorWrapper(String widgetName) { + return new XWScaleLayout(); + } + + @Override + protected void addToWrapper(XLayoutContainer parentPanel, int width, int minHeight) { + this.setSize(width, minHeight); + parentPanel.add(this); + } + @Override + public boolean shouldScaleCreator() { + return true; + } + @Override + public void firePropertyChange() { + this.initFieldText(); + } } diff --git a/src/main/java/com/fr/plugin/sqy/kj/calendar/parameter/ParameterXDateEditor.java b/src/main/java/com/fr/plugin/sqy/kj/calendar/parameter/ParameterXDateEditor.java index 5dc5855..0244ce9 100644 --- a/src/main/java/com/fr/plugin/sqy/kj/calendar/parameter/ParameterXDateEditor.java +++ b/src/main/java/com/fr/plugin/sqy/kj/calendar/parameter/ParameterXDateEditor.java @@ -1,9 +1,10 @@ package com.fr.plugin.sqy.kj.calendar.parameter; -import com.fanruan.api.design.DesignKit; import com.fr.design.designer.creator.CRPropertyDescriptor; import com.fr.design.designer.creator.XDirectWriteEditor; +import com.fr.design.designer.creator.XLayoutContainer; +import com.fr.design.designer.creator.XWScaleLayout; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; @@ -103,12 +104,14 @@ public class ParameterXDateEditor extends XDirectWriteEditor { } + + @Override protected JComponent initEditor() { if (this.editor == null) { this.editor = FRGUIPaneFactory.createBorderLayout_S_Pane(); this.editor.add(this.textField = new UITextField(5), "Center"); - this.btn = new LimpidButton("", this.getIconPath(), this.toData().isVisible() ? 1.0F : 0.4F); + this.btn = new LimpidButton("sqy_form_calendar", this.getIconPath(), this.toData().isVisible() ? 1.0F : 0.4F); this.btn.setPreferredSize(new Dimension(21, 21)); this.editor.add(this.btn, "East"); this.textField.setOpaque(false); @@ -116,6 +119,38 @@ public class ParameterXDateEditor extends XDirectWriteEditor { } return this.editor; } + @Override + protected void initXCreatorProperties() { + super.initXCreatorProperties(); + this.initFieldText(); + } + + + @Override + protected void makeVisible(boolean visible) { + this.btn.makeVisible(visible); + } + + @Override + protected XLayoutContainer getCreatorWrapper(String widgetName) { + return new XWScaleLayout(); + } + + @Override + protected void addToWrapper(XLayoutContainer parentPanel, int width, int minHeight) { + this.setSize(width, minHeight); + parentPanel.add(this); + } + + @Override + public boolean shouldScaleCreator() { + return true; + } + + @Override + public void firePropertyChange() { + this.initFieldText(); + } }