diff --git a/pom.xml b/pom.xml index bba9648..5c01230 100644 --- a/pom.xml +++ b/pom.xml @@ -20,8 +20,8 @@ org.apache.maven.plugins maven-compiler-plugin - 8 - 8 + 6 + 6 diff --git a/src/main/java/com/fr/solution/plugin/design/formula/compat/FunctionConstants.java b/src/main/java/com/fr/solution/plugin/design/formula/compat/FunctionConstants.java index 866c5e5..9cb0a8e 100644 --- a/src/main/java/com/fr/solution/plugin/design/formula/compat/FunctionConstants.java +++ b/src/main/java/com/fr/solution/plugin/design/formula/compat/FunctionConstants.java @@ -1,11 +1,9 @@ package com.fr.solution.plugin.design.formula.compat; -import com.fanruan.api.design.util.FunctionDefNAD; -import com.fanruan.api.design.util.FunctionManagerKit; -import com.fanruan.api.design.util.NameAndFunctionList; -import com.fanruan.api.design.util.NameAndTypeAndFunctionList; +import com.fanruan.api.function.FunctionKit; +import com.fanruan.api.function.shell.FineFunc; import com.fanruan.api.macro.EncodeConstants; -import com.fanruan.api.macro.OperatingSystemKit; +import com.fanruan.api.macro.OperatingSystem; import com.fanruan.api.util.GeneralKit; import com.fanruan.api.util.StringKit; import com.fanruan.api.util.TypeKit; @@ -159,7 +157,7 @@ public final class FunctionConstants { @Override public NameAndDescription[] getDescriptions() { - FunctionDef[] fs = container.getFunctionDefs(); + FineFunc[] fs = container.getFunctionDefs(); int count = fs.length; FunctionDefNAD[] nads = new FunctionDefNAD[count]; for (int i = 0; i < count; i ++) { @@ -184,7 +182,7 @@ public final class FunctionConstants { if(classPath.endsWith("/")){ classPath = classPath.substring(0, classPath.length() - 1); } - if (!OperatingSystemKit.isWindows()){ + if (!OperatingSystem.isWindows()){ //windows里substring后是d:\123\456, mac下substring后是Application/123/456 jarPath = StringKit.perfectStart(jarPath, "/"); } @@ -254,10 +252,9 @@ public final class FunctionConstants { @Override public NameAndDescription[] getDescriptions() { - FunctionManagerProvider funtionManager = FunctionManagerKit.getInstance(); + FunctionManagerProvider funtionManager = FunctionKit.getInstance(); if (funtionManager != null) { int functionDefCount = funtionManager.getFunctionDefCount(); - FunctionDefNAD[] nads = new FunctionDefNAD[functionDefCount]; for (int i = 0; i < functionDefCount; i++) { nads[i] = new FunctionDefNAD(funtionManager.getFunctionDef(i)); diff --git a/src/main/java/com/fr/solution/plugin/design/formula/compat/FunctionDefNAD.java b/src/main/java/com/fr/solution/plugin/design/formula/compat/FunctionDefNAD.java new file mode 100644 index 0000000..20de8ab --- /dev/null +++ b/src/main/java/com/fr/solution/plugin/design/formula/compat/FunctionDefNAD.java @@ -0,0 +1,15 @@ +package com.fr.solution.plugin.design.formula.compat; + +import com.fr.stable.script.FunctionDef; + +/** + * 函数名和描述 + * @author Kalven + * @version 10.0 + * Created by Kalven on 2019/8/31 + */ +public class FunctionDefNAD extends com.fr.design.formula.FunctionDefNAD { + public FunctionDefNAD(FunctionDef functionDef) { + super(functionDef); + } +} diff --git a/src/main/java/com/fr/solution/plugin/design/formula/compat/NameAndFunctionList.java b/src/main/java/com/fr/solution/plugin/design/formula/compat/NameAndFunctionList.java new file mode 100644 index 0000000..e7e46be --- /dev/null +++ b/src/main/java/com/fr/solution/plugin/design/formula/compat/NameAndFunctionList.java @@ -0,0 +1,17 @@ +package com.fr.solution.plugin.design.formula.compat; + +import com.fr.stable.script.Function; + +import java.util.Arrays; + +/** + * 名称对应的函数列表 + * @author Kalven + * @version 10.0 + * Created by Kalven on 2019/8/31 + */ +public class NameAndFunctionList extends com.fr.design.formula.NameAndFunctionList { + public NameAndFunctionList(String name, Function[] fns) { + super(name, fns); + } +} diff --git a/src/main/java/com/fr/solution/plugin/design/formula/compat/NameAndTypeAndFunctionList.java b/src/main/java/com/fr/solution/plugin/design/formula/compat/NameAndTypeAndFunctionList.java new file mode 100644 index 0000000..f8220ce --- /dev/null +++ b/src/main/java/com/fr/solution/plugin/design/formula/compat/NameAndTypeAndFunctionList.java @@ -0,0 +1,15 @@ +package com.fr.solution.plugin.design.formula.compat; + +import com.fr.stable.script.Function; + +/** + * 名字和类型对应的函数列表 + * @author Kalven + * @version 10.0 + * Created by Kalven on 2019/8/31 + */ +public class NameAndTypeAndFunctionList extends com.fr.design.formula.NameAndTypeAndFunctionList { + public NameAndTypeAndFunctionList(String name, Function.Type type) { + super(name, type); + } +} diff --git a/src/main/java/com/fr/solution/plugin/design/formula/ui/GroupFormulaPane.java b/src/main/java/com/fr/solution/plugin/design/formula/ui/GroupFormulaPane.java index 1b1b30d..ca5f8e6 100644 --- a/src/main/java/com/fr/solution/plugin/design/formula/ui/GroupFormulaPane.java +++ b/src/main/java/com/fr/solution/plugin/design/formula/ui/GroupFormulaPane.java @@ -3,14 +3,14 @@ package com.fr.solution.plugin.design.formula.ui; import com.fanruan.api.cal.CalculatorKit; import com.fanruan.api.cal.ParameterKit; import com.fanruan.api.design.DesignKit; -import com.fanruan.api.design.ui.container.DialogActionAdapter; +//import com.fanruan.api.design.ui.container.DialogActionAdapter; import com.fanruan.api.design.ui.component.*; import com.fanruan.api.design.ui.container.BasicPane; import com.fanruan.api.design.ui.action.UpdateAction; import com.fanruan.api.design.ui.container.HistoryTemplateListPane; -import com.fanruan.api.design.ui.container.ParameterInputPane; +import com.fanruan.api.design.work.ParameterInputPane; import com.fanruan.api.design.ui.container.UIScrollPane; -import com.fanruan.api.design.ui.component.QuickList; +import com.fanruan.api.design.ui.component.UIQuickList; import com.fanruan.api.macro.EncodeConstants; import com.fanruan.api.util.IOKit; import com.fanruan.api.design.util.GUICoreKit; @@ -22,6 +22,7 @@ import com.fanruan.api.util.*; import com.fr.base.BaseFormula; import com.fr.data.TableDataSource; import com.fr.design.constants.UIConstants; +import com.fr.design.dialog.DialogActionAdapter; import com.fr.design.formula.UIFormula; import com.fr.design.formula.VariableResolver; import com.fr.design.layout.FRGUIPaneFactory; @@ -95,7 +96,7 @@ public class GroupFormulaPane extends BasicPane implements UIFormula, OperateLis private DefaultListModel listModel = new DefaultListModel(); private DefaultListModel functionTypeListModel = new DefaultListModel(); - private QuickList functionTypeList; + private UIQuickList functionTypeList; private DefaultListModel functionNameModel; private JList functionNameList; @@ -377,7 +378,7 @@ public class GroupFormulaPane extends BasicPane implements UIFormula, OperateLis } private void initFunctionTypeList(JPanel functionPane) { - functionTypeList = new QuickList(functionTypeListModel); + functionTypeList = new UIQuickList(functionTypeListModel); UIScrollPane functionTypeScrollPane = new UIScrollPane(functionTypeList); functionTypeScrollPane.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, UIConstants.ARC)); functionTypeScrollPane.setPreferredSize(new Dimension(140, 200)); diff --git a/src/main/java/com/fr/solution/plugin/design/formula/ui/type/BaseFormulaPane.java b/src/main/java/com/fr/solution/plugin/design/formula/ui/type/BaseFormulaPane.java index 6b742e8..10557d3 100644 --- a/src/main/java/com/fr/solution/plugin/design/formula/ui/type/BaseFormulaPane.java +++ b/src/main/java/com/fr/solution/plugin/design/formula/ui/type/BaseFormulaPane.java @@ -3,11 +3,12 @@ package com.fr.solution.plugin.design.formula.ui.type; import com.fanruan.api.design.ui.component.code.UISyntaxTextArea; import com.fanruan.api.i18n.I18nKit; import com.fr.base.BaseFormula; -import com.fanruan.api.design.ui.container.FurtherBasicBeanPane; +//import com.fanruan.api.design.ui.container.FurtherBasicBeanPane; import com.fanruan.api.macro.ProductConstants; import com.fanruan.api.util.StringKit; import com.fanruan.api.design.ui.container.UIScrollPane; +import com.fr.design.beans.FurtherBasicBeanPane; import com.fr.solution.plugin.design.formula.ui.evt.OperateListener; import javax.swing.*; diff --git a/src/main/java/com/fr/solution/plugin/design/formula/ui/type/impl/BasicFormulaPane.java b/src/main/java/com/fr/solution/plugin/design/formula/ui/type/impl/BasicFormulaPane.java index 71118d8..97f519f 100644 --- a/src/main/java/com/fr/solution/plugin/design/formula/ui/type/impl/BasicFormulaPane.java +++ b/src/main/java/com/fr/solution/plugin/design/formula/ui/type/impl/BasicFormulaPane.java @@ -3,19 +3,19 @@ package com.fr.solution.plugin.design.formula.ui.type.impl; import com.fanruan.api.cal.CalculatorKit; import com.fanruan.api.cal.FormulaKit; import com.fanruan.api.design.ui.component.code.UISyntaxTextArea; -import com.fanruan.api.structure.Parameter; import com.fanruan.api.util.StringKit; -import com.fanruan.api.structure.Formula; -import com.fanruan.api.structure.Expression; - +//import com.fanruan.api.structure.Formula; +import com.fr.base.Formula; import com.fr.design.gui.syntax.ui.rsyntaxtextarea.SyntaxConstants; import com.fr.solution.plugin.design.formula.ui.type.BaseFormulaPane; import com.fr.stable.ParameterProvider; import com.fr.stable.script.CalculatorProvider; //有问题 +import com.fr.stable.xml.XMLPrintWriter; +import com.fr.stable.xml.XMLableReader; import com.fr.third.antlr.ANTLRException; import com.fr.general.FRLogger; @@ -86,7 +86,79 @@ public class BasicFormulaPane extends BaseFormulaPane { String[] arr = formula.dependence(calculator); ParameterProvider[] parameters = new ParameterProvider[arr.length]; for (int i = 0, len = arr.length; i < len; i ++) { - parameters[i] = new Parameter(arr[i]); + parameters[i] = new ParameterProvider() { + @Override + public Object getValue() { + return null; + } + + @Override + public void setValue(Object o) { + + } + + @Override + public String valueToString() { + return null; + } + + @Override + public String xmlTag() { + return null; + } + + @Override + public String arrayXMLTag() { + return null; + } + + @Override + public T newInstance() { + return null; + } + + @Override + public String[] dependence(CalculatorProvider calculatorProvider) { + return new String[0]; + } + + @Override + public String getName() { + return null; + } + + @Override + public void setName(String s) { + + } + + @Override + public int currentAPILevel() { + return 0; + } + + @Override + public String mark4Provider() { + return null; + } + + @Override + public void readXML(XMLableReader xmLableReader) { + + } + + @Override + public void writeXML(XMLPrintWriter xmlPrintWriter) { + + } + + @Override + public Object clone() throws CloneNotSupportedException { + return null; + } + }; + parameters[i].setName(arr[i]); + parameters[i].setValue(""); } return parameters; } diff --git a/src/main/java/com/fr/solution/plugin/design/formula/ui/type/impl/ScriptFormulaPane.java b/src/main/java/com/fr/solution/plugin/design/formula/ui/type/impl/ScriptFormulaPane.java index 4868706..a32cff7 100644 --- a/src/main/java/com/fr/solution/plugin/design/formula/ui/type/impl/ScriptFormulaPane.java +++ b/src/main/java/com/fr/solution/plugin/design/formula/ui/type/impl/ScriptFormulaPane.java @@ -1,6 +1,6 @@ package com.fr.solution.plugin.design.formula.ui.type.impl; ; -import com.fanruan.api.base.ScriptFormula; +//import com.fanruan.api.base.ScriptFormula; import com.fanruan.api.cal.CalculatorKit; import com.fanruan.api.cal.ParameterKit; import com.fanruan.api.design.ui.component.code.UISyntaxTextArea; @@ -10,6 +10,7 @@ import com.fanruan.api.util.StringKit; import com.fanruan.api.util.RenderKit; +import com.fr.base.ScriptFormula; import com.fr.design.gui.syntax.ui.rsyntaxtextarea.SyntaxConstants; import com.fr.general.FRLogger; import com.fr.solution.plugin.design.formula.ui.type.BaseFormulaPane;