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
+
+ 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;