Browse Source

REPORT-41333 【冒烟】全局参数添加两个参数p1p2,将p2重命名为p1,不会有参数名重复的提醒

feature/big-screen
Yyming 4 years ago
parent
commit
9eb3b75397
  1. 13
      designer-base/src/main/java/com/fr/design/parameter/ParameterArrayPane.java

13
designer-base/src/main/java/com/fr/design/parameter/ParameterArrayPane.java

@ -7,7 +7,7 @@ import com.fr.design.gui.controlpane.JListControlPane;
import com.fr.design.gui.controlpane.NameableCreator;
import com.fr.design.gui.controlpane.NameableSelfCreator;
import com.fr.design.gui.controlpane.UnrepeatedNameHelper;
import com.fr.design.gui.ilist.ModNameActionListener;
import com.fr.design.i18n.Toolkit;
import com.fr.general.ComparatorUtils;
import com.fr.stable.Nameable;
import com.fr.stable.StringUtils;
@ -26,6 +26,7 @@ public class ParameterArrayPane extends JListControlPane {
this.addModNameActionListener((index, oldName, newName) -> populateSelectedValue());
this.addEditingListener(new PropertyChangeAdapter() {
public void propertyChange() {
Parameter[] parameters = ParameterConfig.getInstance().getGlobalParameters();
String[] allListNames = nameableList.getAllNames();
allListNames[editingIndex] = StringUtils.EMPTY;
String tempName = getEditingName();
@ -36,10 +37,10 @@ public class ParameterArrayPane extends JListControlPane {
return;
}
if (!ComparatorUtils.equals(tempName, selectedName)
&& isNameRepeated(new List[]{Arrays.asList(allListNames)}, tempName)) {
&& isNameRepeated(new List[]{Arrays.asList(parameters), Arrays.asList(allListNames)}, tempName)) {
nameableList.stopEditing();
FineJOptionPane.showMessageDialog(SwingUtilities.getWindowAncestor(ParameterArrayPane.this),
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Duplicate_Parameter_Name"));
Toolkit.i18nText("Fine-Design_Basic_Duplicate_Parameter_Name"));
setIllegalIndex(editingIndex);
}
}
@ -49,7 +50,7 @@ public class ParameterArrayPane extends JListControlPane {
@Override
protected String title4PopupWindow() {
return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Engine_Schedule_Template_Parameter");
return Toolkit.i18nText("Fine-Design_Basic_Engine_Schedule_Template_Parameter");
}
/**
@ -59,7 +60,7 @@ public class ParameterArrayPane extends JListControlPane {
*/
public NameableCreator[] createNameableCreators() {
return new NameableCreator[]{
new NameableSelfCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Engine_Parameter_Name"), Parameter.class, ParameterPane.class) {
new NameableSelfCreator(Toolkit.i18nText("Fine-Design_Basic_Engine_Parameter_Name"), Parameter.class, ParameterPane.class) {
public Parameter createNameable(UnrepeatedNameHelper helper) {
// 返回参数设置面板.
return new Parameter(helper.createUnrepeatedName("p"));
@ -83,7 +84,7 @@ public class ParameterArrayPane extends JListControlPane {
// Nameable[]居然不能强转成Parameter[],一定要这么写...
Nameable[] res = this.update();
Parameter[] res_array = new Parameter[res.length];
java.util.Arrays.asList(res).toArray(res_array);
Arrays.asList(res).toArray(res_array);
return res_array;
}

Loading…
Cancel
Save