Browse Source

Merge pull request #13058 in DESIGN/design from final/11.0 to persist/11.0

* commit '998c812745cc44aac07a9a0bda9873cfcad052f3':
  REPORT-107392 漏掉了数字控件 && 漏掉了文本控件的一个面板
  REPORT-107992 移动下单测位置
  REPORT-107992 改一下实现 & 格式优化
  REPORT-107992 【日志记录数据连接操作】设计器修改数据连接和数据集名称后操作日志会记录大片不好区分
  REPORT-104339 设计器国际化问题 处理一波弹出框标题为”删除“的场景
  REPORT-106402 websocket cbb ---报表适配 【问题原因】修改包名 【改动思路】rt
  REPORT-101549 【版本管理二期】迁移失败直接进入版本管理没有更新提示,二次进入就有了
  REPORT-102182 【版本管理三期】版本详情,批量删除,部分失败的场景,页面不会实时刷新
  REPORT-106402 websocket cbb ---报表适配 【问题原因】rt 【改动思路】websocket cbb 包名、方法适配 https://kms.fineres.com/pages/viewpage.action?pageId=905125265
  REPORT-105998 设计器缩放比例较小,在画布选中组件有偏差
  feat: fvs支持图表导出 #REPORT-106468
  REPORT-105775 【FR国际化】文字显示不全
  REPORT-105705 【FR国际化】文字显示不全,不更改布局,添加tooltips
  fix: fvs.ec.chart邮件超链没有勾选正文选项 默认走的emailpane fvs.ec.chart需要走refresh逻辑刷新成chartemailpane #REPORT-98438
  REPORT-105456 【BI国际化】英文显示不全
  REPORT-104339 设计器国际化问题,弹出提示框标题改为“提示”
  REPORT-106575 决策报表拖入的图表都报错
  feat: fvs支持图表导出 #REPORT-106468
  fix: 英文环境fvs模板显示不全 #REPORT-106352
fix-lag
superman 1 year ago
parent
commit
b1f5a2730e
  1. 2
      designer-base/src/main/java/com/fr/design/actions/file/export/AbstractExportAction.java
  2. 2
      designer-base/src/main/java/com/fr/design/condition/LiteConditionPane.java
  3. 93
      designer-base/src/main/java/com/fr/design/data/MapCompareUtils.java
  4. 31
      designer-base/src/main/java/com/fr/design/data/datapane/TableDataPaneListPane.java
  5. 2
      designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java
  6. 2
      designer-base/src/main/java/com/fr/design/dialog/FineJOptionPane.java
  7. 2
      designer-base/src/main/java/com/fr/design/editor/DoubleDeckValueEditorPane.java
  8. 2
      designer-base/src/main/java/com/fr/design/editor/ValueEditorPane.java
  9. 2
      designer-base/src/main/java/com/fr/design/file/MultiTemplateTabPane.java
  10. 4
      designer-base/src/main/java/com/fr/design/file/TemplateTreePane.java
  11. 2
      designer-base/src/main/java/com/fr/design/gui/frpane/EditingStringListPane.java
  12. 2
      designer-base/src/main/java/com/fr/design/gui/frpane/JTreeControlPane.java
  13. 8
      designer-base/src/main/java/com/fr/design/gui/frpane/RegPane.java
  14. 2
      designer-base/src/main/java/com/fr/design/gui/frpane/UITabbedPane.java
  15. 2
      designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDataControlPane.java
  16. 2
      designer-base/src/main/java/com/fr/design/gui/imenutable/UIMenuTableUI.java
  17. 2
      designer-base/src/main/java/com/fr/design/gui/itable/UITableUI.java
  18. 2
      designer-base/src/main/java/com/fr/design/gui/itableeditorpane/UITableModelAdapter.java
  19. 24
      designer-base/src/main/java/com/fr/design/login/socketio/LoginAuthServer.java
  20. 2
      designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java
  21. 2
      designer-base/src/main/java/com/fr/design/mainframe/guide/tip/BubbleTip.java
  22. 14
      designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsProcessFailedWrapper.java
  23. 2
      designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsCloseTemplateHelper.java
  24. 9
      designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/EditFileVersionDialog.java
  25. 4
      designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/RecyclePane.java
  26. 2
      designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsCenterPane.java
  27. 2
      designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsMovePanel.java
  28. 4
      designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsNewPane.java
  29. 2
      designer-base/src/main/java/com/fr/design/remote/ui/list/AddedMemberList.java
  30. 2
      designer-base/src/main/java/com/fr/design/remote/ui/list/AddingMemberList.java
  31. 2
      designer-base/src/main/java/com/fr/design/upm/UpmFinder.java
  32. 2
      designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java
  33. 2
      designer-base/src/main/java/com/fr/env/CheckServiceDialog.java
  34. 2
      designer-base/src/main/java/com/fr/file/FILEChooserPane.java
  35. 2
      designer-base/src/main/java/com/fr/start/server/FineEmbedServerActivator.java
  36. 57
      designer-base/src/test/java/com/fr/design/data/MapCompareUtilsTest.java
  37. 2
      designer-chart/src/main/java/com/fr/design/chartx/component/MatchResultTable.java
  38. 18
      designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/NormalChartDataPane.java
  39. 4
      designer-chart/src/main/java/com/fr/van/chart/DownloadOnlineSourcesHelper.java
  40. 4
      designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java
  41. 11
      designer-chart/src/main/java/com/fr/van/chart/designer/other/VanChartInteractivePane.java
  42. 3
      designer-form/src/main/java/com/fr/design/designer/creator/XCreatorUtils.java
  43. 4
      designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XCardSwitchButton.java
  44. 4
      designer-form/src/main/java/com/fr/design/fit/toolbar/SwitchAction.java
  45. 23
      designer-form/src/main/java/com/fr/design/mainframe/FormArea.java
  46. 2
      designer-form/src/main/java/com/fr/design/mainframe/FormEditToolBar.java
  47. 1
      designer-form/src/main/java/com/fr/design/mainframe/share/group/ui/GroupFileDialog.java
  48. 2
      designer-form/src/main/java/com/fr/design/mainframe/share/ui/actions/DownloadSuitableThemeAction.java
  49. 2
      designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/installation/TemplateThemeInstallation.java
  50. 2
      designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/widgetpackage/OnlineWidgetPackagesShowPane.java
  51. 1
      designer-form/src/main/java/com/fr/design/mainframe/share/ui/widgetfilter/FilterConfigPane.java
  52. 1
      designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/TextEditorMobileDefinePane.java
  53. 2
      designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java
  54. 2
      designer-realize/src/main/java/com/fr/design/mainframe/guide/creator/theme/DownloadComponentPackageGuide.java
  55. 2
      designer-realize/src/main/java/com/fr/design/report/LayerReportPane.java
  56. 2
      designer-realize/src/main/java/com/fr/design/report/ReportEnginePane.java
  57. 2
      designer-realize/src/main/java/com/fr/design/webattr/EditToolBar.java
  58. 2
      designer-realize/src/main/java/com/fr/design/webattr/EventPane.java
  59. 2
      designer-realize/src/main/java/com/fr/design/webattr/ServerPrinterPane.java

2
designer-base/src/main/java/com/fr/design/actions/file/export/AbstractExportAction.java

@ -136,7 +136,7 @@ public abstract class AbstractExportAction<E extends JTemplate<?, ?>> extends JT
int returnVal = FineJOptionPane.showConfirmDialog( int returnVal = FineJOptionPane.showConfirmDialog(
DesignerContext.getDesignerFrame(), DesignerContext.getDesignerFrame(),
Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Save") + " \"" + e.getEditingFILE() + "\" ?", Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Save") + " \"" + e.getEditingFILE() + "\" ?",
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE JOptionPane.QUESTION_MESSAGE
); );

2
designer-base/src/main/java/com/fr/design/condition/LiteConditionPane.java

@ -224,7 +224,7 @@ public abstract class LiteConditionPane<T extends Condition> extends BasicBeanPa
} }
int returnVal = FineJOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(LiteConditionPane.this), int returnVal = FineJOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(LiteConditionPane.this),
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.OK_CANCEL_OPTION); JOptionPane.OK_CANCEL_OPTION);
if (returnVal == JOptionPane.OK_OPTION) { if (returnVal == JOptionPane.OK_OPTION) {
DefaultTreeModel treeModel = (DefaultTreeModel) conditionsTree.getModel(); DefaultTreeModel treeModel = (DefaultTreeModel) conditionsTree.getModel();

93
designer-base/src/main/java/com/fr/design/data/MapCompareUtils.java

@ -1,93 +0,0 @@
package com.fr.design.data;
import org.jetbrains.annotations.NotNull;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* @author rinoux
* @version 10.0
* Created by rinoux on 2022/3/28
*/
public final class MapCompareUtils {
/**
* 对比两个map 查找出相比origother中有哪些是新增的删除的或者被修改的并分别进行处理
*
* 对比时默认用equals方法来判断是否为 EntryEventKind#UPDATED
*
* @param orig 原始map
* @param other 参考的新map
* @param eventHandler 有区别时的事件处理器
* @param <K> K
* @param <V> V
*/
public static <K, V> void contrastMapEntries(@NotNull Map<K, V> orig, @NotNull Map<K, V> other, @NotNull EventHandler<K, V> eventHandler) {
contrastMapEntries(orig, other, eventHandler, UpdateRule.DEFAULT);
}
/**
* 对比两个map 查找出相比origother中有哪些是新增的删除的或者被修改的并分别进行处理
*
* 对比时用自定义的规则来判断是否为 EntryEventKind#UPDATED
*
* @param orig 原始map
* @param other 参考的新map
* @param eventHandler 有区别时的事件处理器
* @param updateRule 自定义的Update事件判定规则
* @param <K>
* @param <V>
*/
public static <K, V> void contrastMapEntries(@NotNull Map<K, V> orig, @NotNull Map<K, V> other, @NotNull EventHandler<K, V> eventHandler, @NotNull UpdateRule<K, V> updateRule) {
Map<K, V> copiedOrig = new LinkedHashMap<>(orig);
other.forEach((k, v) -> {
V existedV = copiedOrig.remove(k);
if (existedV != null) {
if (updateRule.needUpdate(existedV, v)) {
eventHandler.on(EntryEventKind.UPDATED, k, v);
}
} else {
eventHandler.on(EntryEventKind.ADDED, k, v);
}
});
copiedOrig.forEach((k, v) -> eventHandler.on(EntryEventKind.REMOVED, k, v));
}
/**
* 事件处理器对应比较后的三种结果的事件处理
* @param <K>
* @param <V>
*/
public interface EventHandler<K, V> {
void on(EntryEventKind entryEventKind, K k, V v);
}
/**
* 数据被修改(EntryEventKind.UPDATED) 的判定规则
* @param <K>
* @param <V>
*/
public interface UpdateRule<K, V> {
EntryEventKind eventKind = EntryEventKind.UPDATED;
UpdateRule DEFAULT = new UpdateRule() {};
default boolean needUpdate(V origin, V v) {
return !v.equals(origin);
}
}
public enum EntryEventKind {
ADDED,
REMOVED,
UPDATED;
}
}

31
designer-base/src/main/java/com/fr/design/data/datapane/TableDataPaneListPane.java

@ -236,17 +236,7 @@ public class TableDataPaneListPane extends JListControlPane implements TableData
@Override @Override
public void update(TableDataConfig tableDataConfig) { public void update(TableDataConfig tableDataConfig) {
Nameable[] tableDataArray = this.update(); List<TableDataBean> tableDataBeans = getUpdateTableDataBeans();
List<TableDataBean> tableDataBeans = new ArrayList<>();
Map<String, String> map = MapUtils.invertMap(getDsNameChangedMap());
for (int i = 0; i < tableDataArray.length; i++) {
NameObject nameObject = (NameObject) tableDataArray[i];
String oldName = map.get(nameObject.getName());
if (oldName == null) {
oldName = StringUtils.EMPTY;
}
tableDataBeans.add(new TableDataBean(nameObject.getName(), oldName, (TableData) nameObject.getObject()));
}
try { try {
WorkContext.getCurrent().get(TableDataOperator.class, new ExceptionHandler() { WorkContext.getCurrent().get(TableDataOperator.class, new ExceptionHandler() {
@Override @Override
@ -263,6 +253,25 @@ public class TableDataPaneListPane extends JListControlPane implements TableData
} }
} }
/**
* 获取更新时的数据集快照
*
* @return 快照
*/
private List<TableDataBean> getUpdateTableDataBeans() {
Nameable[] tableDataArray = this.update();
List<TableDataBean> tableDataBeans = new ArrayList<>();
Map<String, String> map = MapUtils.invertMap(getDsNameChangedMap());
for (Nameable nameable : tableDataArray) {
NameObject nameObject = (NameObject) nameable;
String oldName = map.get(nameObject.getName());
if (oldName == null) {
oldName = StringUtils.EMPTY;
}
tableDataBeans.add(new TableDataBean(nameObject.getName(), oldName, (TableData) nameObject.getObject()));
}
return tableDataBeans;
}
private boolean saveByOldWay(List<TableDataBean> tableDataBean) { private boolean saveByOldWay(List<TableDataBean> tableDataBean) {
try { try {
return TableDataOperatorImpl.getInstance().saveTableData(tableDataBean); return TableDataOperatorImpl.getInstance().saveTableData(tableDataBean);

2
designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java

@ -9,7 +9,7 @@ import com.fr.data.impl.JNDIDatabaseConnection;
import com.fr.data.metric.utils.DatabaseConnectionMetricHandler; import com.fr.data.metric.utils.DatabaseConnectionMetricHandler;
import com.fr.data.operator.DataOperator; import com.fr.data.operator.DataOperator;
import com.fr.design.ExtraDesignClassManager; import com.fr.design.ExtraDesignClassManager;
import com.fr.design.data.MapCompareUtils; import com.fr.general.MapCompareUtils;
import com.fr.design.dialog.BasicDialog; import com.fr.design.dialog.BasicDialog;
import com.fr.design.fun.ConnectionProvider; import com.fr.design.fun.ConnectionProvider;
import com.fr.design.gui.controlpane.JListControlPane; import com.fr.design.gui.controlpane.JListControlPane;

2
designer-base/src/main/java/com/fr/design/dialog/FineJOptionPane.java

@ -39,7 +39,7 @@ public class FineJOptionPane extends JOptionPane {
} }
private final static String MESSAGE_DIALOG_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Message"); private final static String MESSAGE_DIALOG_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Message");
private final static String CONFIRM_DIALOG_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"); private final static String CONFIRM_DIALOG_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt");
private final static String INPUT_DIALOG_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tool_Tips"); private final static String INPUT_DIALOG_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tool_Tips");
/** /**

2
designer-base/src/main/java/com/fr/design/editor/DoubleDeckValueEditorPane.java

@ -304,7 +304,7 @@ public class DoubleDeckValueEditorPane extends BasicPane implements UIObserver,
if (designerEnvManager.isSupportStringToFormula()) { if (designerEnvManager.isSupportStringToFormula()) {
if (!designerEnvManager.isDefaultStringToFormula()) { if (!designerEnvManager.isDefaultStringToFormula()) {
int returnValue = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Edit_String_To_Formula") int returnValue = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Edit_String_To_Formula")
+ "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION); + "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION);
if (returnValue == JOptionPane.OK_OPTION) { if (returnValue == JOptionPane.OK_OPTION) {
setCurrentEditor(j); setCurrentEditor(j);

2
designer-base/src/main/java/com/fr/design/editor/ValueEditorPane.java

@ -285,7 +285,7 @@ public class ValueEditorPane extends BasicPane implements UIObserver, GlobalName
if (designerEnvManager.isSupportStringToFormula()) { if (designerEnvManager.isSupportStringToFormula()) {
if (!designerEnvManager.isDefaultStringToFormula()) { if (!designerEnvManager.isDefaultStringToFormula()) {
int returnValue = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Edit_String_To_Formula") int returnValue = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Edit_String_To_Formula")
+ "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION); + "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION);
if (returnValue == JOptionPane.OK_OPTION) { if (returnValue == JOptionPane.OK_OPTION) {
setCurrentEditor(j); setCurrentEditor(j);

2
designer-base/src/main/java/com/fr/design/file/MultiTemplateTabPane.java

@ -1000,7 +1000,7 @@ public class MultiTemplateTabPane extends JComponent {
if (!specifiedTemplate.isALLSaved() && !DesignerMode.isVcsMode()) { if (!specifiedTemplate.isALLSaved() && !DesignerMode.isVcsMode()) {
specifiedTemplate.stopEditing(); specifiedTemplate.stopEditing();
int returnVal = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Save") + " \"" + specifiedTemplate.getEditingFILE() + "\" ?", int returnVal = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Save") + " \"" + specifiedTemplate.getEditingFILE() + "\" ?",
Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (returnVal == JOptionPane.YES_OPTION) { if (returnVal == JOptionPane.YES_OPTION) {
CallbackSaveWorker worker = specifiedTemplate.save(); CallbackSaveWorker worker = specifiedTemplate.save();
worker.addSuccessCallback(new Runnable() { worker.addSuccessCallback(new Runnable() {

4
designer-base/src/main/java/com/fr/design/file/TemplateTreePane.java

@ -353,7 +353,7 @@ public class TemplateTreePane extends JPanel implements FileOperations {
if (FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), if (FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(),
tipContent, tipContent,
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
YES_NO_OPTION) YES_NO_OPTION)
== JOptionPane.YES_OPTION) { == JOptionPane.YES_OPTION) {
// 删除所有选中的即可 // 删除所有选中的即可
@ -378,7 +378,7 @@ public class TemplateTreePane extends JPanel implements FileOperations {
if (FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), if (FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(),
tipContent, tipContent,
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
YES_NO_OPTION) YES_NO_OPTION)
== JOptionPane.YES_OPTION) { == JOptionPane.YES_OPTION) {
// 删除其他 // 删除其他

2
designer-base/src/main/java/com/fr/design/gui/frpane/EditingStringListPane.java

@ -153,7 +153,7 @@ public abstract class EditingStringListPane extends BasicBeanPane<List<String>>
if (selected != null) { if (selected != null) {
int re = FineJOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(EditingStringListPane.this), int re = FineJOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(EditingStringListPane.this),
Toolkit.i18nText("Fine-Design_Basic_Sure_To_Delete") + selected.toString() + "?", Toolkit.i18nText("Fine-Design_Basic_Sure_To_Delete") + selected.toString() + "?",
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.OK_CANCEL_OPTION); JOptionPane.OK_CANCEL_OPTION);
if (re == JOptionPane.OK_OPTION) { if (re == JOptionPane.OK_OPTION) {
JListUtils.removeSelectedListItems(jlist); JListUtils.removeSelectedListItems(jlist);

2
designer-base/src/main/java/com/fr/design/gui/frpane/JTreeControlPane.java

@ -215,7 +215,7 @@ public class JTreeControlPane extends ControlPane {
public void actionPerformed(ActionEvent e) { public void actionPerformed(ActionEvent e) {
// TODO remove tree node // TODO remove tree node
int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?", int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (val != JOptionPane.OK_OPTION) { if (val != JOptionPane.OK_OPTION) {
return; return;
} }

8
designer-base/src/main/java/com/fr/design/gui/frpane/RegPane.java

@ -394,6 +394,7 @@ public class RegPane extends BasicPane {
private static class RegLengthPane extends DisplayPane { private static class RegLengthPane extends DisplayPane {
private UISpinner minLenSpinner; private UISpinner minLenSpinner;
private UISpinner maxLenSpinner; private UISpinner maxLenSpinner;
private final int DEFAULT_WIDTH = 60;
public RegLengthPane(){ public RegLengthPane(){
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());
@ -403,8 +404,11 @@ public class RegPane extends BasicPane {
maxLenSpinner = new UISpinner(0, Integer.MAX_VALUE, 1, 0); maxLenSpinner = new UISpinner(0, Integer.MAX_VALUE, 1, 0);
UILabel minLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Reg_Min_Length")); UILabel minLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Reg_Min_Length"));
UILabel maxLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Reg_Max_Length")); UILabel maxLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Reg_Max_Length"));
minLabel.setPreferredSize(new Dimension(60, 20)); int minLabelWidth = Math.max(minLabel.getPreferredSize().width, DEFAULT_WIDTH);
maxLabel.setPreferredSize(new Dimension(60, 20)); int maxLabelWidth = Math.max(maxLabel.getPreferredSize().width, DEFAULT_WIDTH);
minLabel.setPreferredSize(new Dimension(minLabelWidth, 20));
maxLabel.setPreferredSize(new Dimension(maxLabelWidth, 20));
double f = TableLayout.FILL; double f = TableLayout.FILL;
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{

2
designer-base/src/main/java/com/fr/design/gui/frpane/UITabbedPane.java

@ -126,7 +126,7 @@ public class UITabbedPane extends JTabbedPane{
* @param i tab索引 * @param i tab索引
*/ */
public void doRemoveTab(int i){ public void doRemoveTab(int i){
int re = FineJOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(UITabbedPane.this), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Sure_To_Delete")+ "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove") int re = FineJOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(UITabbedPane.this), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Sure_To_Delete")+ "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt")
, JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE); , JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
if (re == JOptionPane.OK_OPTION) { if (re == JOptionPane.OK_OPTION) {
super.removeTabAt(i); super.removeTabAt(i);

2
designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDataControlPane.java

@ -179,7 +179,7 @@ public class LayerDataControlPane extends ControlPane {
public void actionPerformed(ActionEvent e) { public void actionPerformed(ActionEvent e) {
// TODO remove tree node // TODO remove tree node
int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?", int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (val != JOptionPane.OK_OPTION) { if (val != JOptionPane.OK_OPTION) {
return; return;
} }

2
designer-base/src/main/java/com/fr/design/gui/imenutable/UIMenuTableUI.java

@ -76,7 +76,7 @@ public class UIMenuTableUI extends UITableUI{
public void mousePressed(MouseEvent e) { public void mousePressed(MouseEvent e) {
if (e.getX() >= table.getWidth() - 20) { if (e.getX() >= table.getWidth() - 20) {
int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?", int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (val == JOptionPane.OK_OPTION) { if (val == JOptionPane.OK_OPTION) {
uiTable.removeLine(table.rowAtPoint(e.getPoint())); uiTable.removeLine(table.rowAtPoint(e.getPoint()));
uiTable.fireTargetChanged(); uiTable.fireTargetChanged();

2
designer-base/src/main/java/com/fr/design/gui/itable/UITableUI.java

@ -134,7 +134,7 @@ public class UITableUI extends BasicTableUI {
} }
if (!table.isEditing()) { if (!table.isEditing()) {
int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?", int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (val == JOptionPane.OK_OPTION) { if (val == JOptionPane.OK_OPTION) {
((UITable) table).removeLine(table.rowAtPoint(e.getPoint())); ((UITable) table).removeLine(table.rowAtPoint(e.getPoint()));
((UITable) table).fireTargetChanged(); ((UITable) table).fireTargetChanged();

2
designer-base/src/main/java/com/fr/design/gui/itableeditorpane/UITableModelAdapter.java

@ -271,7 +271,7 @@ public abstract class UITableModelAdapter<T> extends AbstractTableModel implemen
component = DesignerContext.getDesignerFrame(); component = DesignerContext.getDesignerFrame();
} }
int val = FineJOptionPane.showConfirmDialog(component, getDeleteTipText() int val = FineJOptionPane.showConfirmDialog(component, getDeleteTipText()
, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), , com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (val != JOptionPane.OK_OPTION) { if (val != JOptionPane.OK_OPTION) {
return; return;

24
designer-base/src/main/java/com/fr/design/login/socketio/LoginAuthServer.java

@ -1,5 +1,12 @@
package com.fr.design.login.socketio; package com.fr.design.login.socketio;
import com.fr.cbb.websocket.core.WebSocketAckRequest;
import com.fr.cbb.websocket.core.WebSocketClientProvider;
import com.fr.cbb.websocket.core.WebSocketConfiguration;
import com.fr.cbb.websocket.core.WebSocketServerFactory;
import com.fr.cbb.websocket.core.WebSocketServerProvider;
import com.fr.cbb.websocket.holder.EventHolder;
import com.fr.cbb.websocket.listener.SocketDataListener;
import com.fr.concurrent.NamedThreadFactory; import com.fr.concurrent.NamedThreadFactory;
import com.fr.design.DesignerEnvManager; import com.fr.design.DesignerEnvManager;
import com.fr.design.login.DesignerLoginType; import com.fr.design.login.DesignerLoginType;
@ -7,11 +14,6 @@ import com.fr.design.login.bean.BBSAccountLogin;
import com.fr.design.upm.event.CertificateEvent; import com.fr.design.upm.event.CertificateEvent;
import com.fr.event.EventDispatcher; import com.fr.event.EventDispatcher;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.third.socketio.AckRequest;
import com.fr.third.socketio.Configuration;
import com.fr.third.socketio.SocketIOClient;
import com.fr.third.socketio.SocketIOServer;
import com.fr.third.socketio.listener.DataListener;
import java.net.URLDecoder; import java.net.URLDecoder;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
@ -27,7 +29,7 @@ public class LoginAuthServer {
private AtomicBoolean started = new AtomicBoolean(false); private AtomicBoolean started = new AtomicBoolean(false);
private SocketIOServer server; private WebSocketServerProvider server;
private static final String HOSTNAME = "localhost"; private static final String HOSTNAME = "localhost";
private static final int PORT = 41925; private static final int PORT = 41925;
@ -46,10 +48,10 @@ public class LoginAuthServer {
} }
private LoginAuthServer() { private LoginAuthServer() {
Configuration config = new Configuration(); WebSocketConfiguration config = new WebSocketConfiguration();
config.setHostname(HOSTNAME); config.setHostname(HOSTNAME);
config.setPort(PORT); config.setPort(PORT);
server = new SocketIOServer(config); server = WebSocketServerFactory.registerWebSocketServer(config);
initEventListener(); initEventListener();
} }
@ -87,9 +89,9 @@ public class LoginAuthServer {
} }
private void initEventListener() { private void initEventListener() {
server.addEventListener("bbsAccountLogin", BBSAccountLogin.class, new DataListener<BBSAccountLogin>() { server.addEventListener(EventHolder.build("bbsAccountLogin", BBSAccountLogin.class, new SocketDataListener<BBSAccountLogin>() {
@Override @Override
public void onData(SocketIOClient client, BBSAccountLogin data, AckRequest ackRequest) throws Exception { public void onData(WebSocketClientProvider client, BBSAccountLogin data, WebSocketAckRequest ackRequest) throws Exception {
// 保存登录信息到.FineReport100配置中 // 保存登录信息到.FineReport100配置中
int uid = data.getUid(); int uid = data.getUid();
if (uid > 0) { if (uid > 0) {
@ -106,6 +108,6 @@ public class LoginAuthServer {
EventDispatcher.fire(CertificateEvent.LOGIN, username); EventDispatcher.fire(CertificateEvent.LOGIN, username);
} }
} }
}); }));
} }
} }

2
designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java

@ -797,7 +797,7 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta
if (!editingTemplate.getEditingFILE().exists()) { if (!editingTemplate.getEditingFILE().exists()) {
int returnVal = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), int returnVal = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(),
Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Save") + " \"" + editingTemplate.getEditingFILE() Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Save") + " \"" + editingTemplate.getEditingFILE()
+ "\" ?", Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION, + "\" ?", Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION,
JOptionPane.QUESTION_MESSAGE); JOptionPane.QUESTION_MESSAGE);
if (returnVal == JOptionPane.YES_OPTION && editingTemplate.saveTemplate()) { if (returnVal == JOptionPane.YES_OPTION && editingTemplate.saveTemplate()) {
editingTemplate.saveTemplate(); editingTemplate.saveTemplate();

2
designer-base/src/main/java/com/fr/design/mainframe/guide/tip/BubbleTip.java

@ -37,7 +37,7 @@ public class BubbleTip implements GuideTip {
int returnVal = FineJOptionPane.showConfirmDialog( int returnVal = FineJOptionPane.showConfirmDialog(
currentGuide.getGuideView(), currentGuide.getGuideView(),
Toolkit.i18nText("Fine-Design_Guide_Option_Warning_Terminal"), Toolkit.i18nText("Fine-Design_Guide_Option_Warning_Terminal"),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.YES_NO_OPTION, JOptionPane.YES_NO_OPTION,
JOptionPane.QUESTION_MESSAGE); JOptionPane.QUESTION_MESSAGE);
if (returnVal == JOptionPane.YES_OPTION) { if (returnVal == JOptionPane.YES_OPTION) {

14
designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsProcessFailedWrapper.java

@ -1,6 +1,7 @@
package com.fr.design.mainframe.vcs; package com.fr.design.mainframe.vcs;
import com.fr.report.entity.VcsEntity; import com.fr.report.entity.VcsEntity;
import com.fr.stable.StringUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -51,6 +52,19 @@ public class VcsProcessFailedWrapper {
return detailList; return detailList;
} }
/**
* 是否失败
*/
public boolean isFalse(VcsTableEntity entity) {
for (VcsEntity vcsEntity : failedList) {
if (StringUtils.equals(vcsEntity.getFilename(), entity.getFilename())
&& vcsEntity.getVersion() == entity.getEntity().getVersion()) {
return true;
}
}
return false;
}
/** /**
* 处理是否全部成功 * 处理是否全部成功
*/ */

2
designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsCloseTemplateHelper.java

@ -88,7 +88,7 @@ public class VcsCloseTemplateHelper {
specifiedTemplate.stopEditing(); specifiedTemplate.stopEditing();
int returnVal = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), int returnVal = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(),
String.format("%s\"%s\" ?",Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Save"), specifiedTemplate.getEditingFILE()), String.format("%s\"%s\" ?",Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Save"), specifiedTemplate.getEditingFILE()),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (returnVal == JOptionPane.YES_OPTION) { if (returnVal == JOptionPane.YES_OPTION) {
CallbackSaveWorker worker = specifiedTemplate.save(); CallbackSaveWorker worker = specifiedTemplate.save();
worker.addSuccessCallback(() -> { worker.addSuccessCallback(() -> {

9
designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/EditFileVersionDialog.java

@ -5,6 +5,7 @@ import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.icontainer.UIScrollPane;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.itextarea.UITextArea; import com.fr.design.gui.itextarea.UITextArea;
import com.fr.design.i18n.Toolkit;
import com.fr.design.layout.TableLayoutHelper; import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerContext;
import com.fr.design.mainframe.DesignerFrameFileDealerPane; import com.fr.design.mainframe.DesignerFrameFileDealerPane;
@ -55,13 +56,17 @@ public class EditFileVersionDialog extends UIDialog {
private void initComponents() { private void initComponents() {
JPanel fontPane = new JPanel(new BorderLayout()); JPanel fontPane = new JPanel(new BorderLayout());
fontPane.add(new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Vcs_Version_Message") + ":"), BorderLayout.NORTH); UILabel fontLabel = new UILabel(" " + Toolkit.i18nText("Fine-Design_Vcs_Version_Message") + ":");
fontLabel.setToolTipText(Toolkit.i18nText("Fine-Design_Vcs_Version_Message"));
fontPane.add(fontLabel, BorderLayout.NORTH);
msgTestArea.setBorder(null); msgTestArea.setBorder(null);
UIScrollPane scrollPane = new UIScrollPane(msgTestArea); UIScrollPane scrollPane = new UIScrollPane(msgTestArea);
UILabel versionTip = new UILabel(" " + Toolkit.i18nText("Fine-Design_Vcs_Version_Number") + ":");
versionTip.setToolTipText(Toolkit.i18nText("Fine-Design_Vcs_Version_Number"));
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Vcs_Version_Number") + ":"), versionLabel}, new Component[]{versionTip, versionLabel},
new Component[]{fontPane, scrollPane} new Component[]{fontPane, scrollPane}
}; };
double[] rowSizes = new double[]{25, 100}; double[] rowSizes = new double[]{25, 100};

4
designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/RecyclePane.java

@ -222,7 +222,7 @@ public class RecyclePane extends AbstractSupportSelectTablePane<VcsTableEntity>
int selVal = FineJOptionPane.showConfirmDialog( int selVal = FineJOptionPane.showConfirmDialog(
RecyclePane.this, RecyclePane.this,
isDelete ? getDeleteTip(selectList.size()) : getRestoreTip(selectList.size()), isDelete ? getDeleteTip(selectList.size()) : getRestoreTip(selectList.size()),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.OK_CANCEL_OPTION, JOptionPane.OK_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE); JOptionPane.QUESTION_MESSAGE);
if (selVal == JOptionPane.YES_OPTION) { if (selVal == JOptionPane.YES_OPTION) {
@ -232,7 +232,7 @@ public class RecyclePane extends AbstractSupportSelectTablePane<VcsTableEntity>
} }
private void updateVcsUI(VcsProcessFailedWrapper wrapper) { private void updateVcsUI(VcsProcessFailedWrapper wrapper) {
tableEntities = model.getList().stream().filter(tableEntity -> !tableEntity.isSelect() || wrapper.getFailedNameList().contains(tableEntity.getFilename())).collect(Collectors.toList()); tableEntities = model.getList().stream().filter(tableEntity -> !tableEntity.isSelect() || wrapper.isFalse(tableEntity)).collect(Collectors.toList());
model.setList(new ArrayList<>(tableEntities)); model.setList(new ArrayList<>(tableEntities));
model.fireTableDataChanged(); model.fireTableDataChanged();
fireVcsListener(model.getList()); fireVcsListener(model.getList());

2
designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsCenterPane.java

@ -120,7 +120,7 @@ public class VcsCenterPane extends VcsNewPane {
int selVal = FineJOptionPane.showConfirmDialog( int selVal = FineJOptionPane.showConfirmDialog(
VcsCenterPane.this, VcsCenterPane.this,
Toolkit.i18nText("Fine-Design_Vcs_Center_Delete", fileName), Toolkit.i18nText("Fine-Design_Vcs_Center_Delete", fileName),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.OK_CANCEL_OPTION, JOptionPane.OK_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE); JOptionPane.QUESTION_MESSAGE);
if (selVal == JOptionPane.YES_OPTION) { if (selVal == JOptionPane.YES_OPTION) {

2
designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsMovePanel.java

@ -371,7 +371,7 @@ public class VcsMovePanel extends BasicPane {
private void doAfterMove() { private void doAfterMove() {
visible = !VcsHelper.getInstance().isLegacyMode(); visible = !VcsHelper.getInstance().isLegacyMode();
initVcsLabel(updatePane); initVcsLabel(updatePane);
updatePane.setVisible(visible); updatePane.setVisible(!visible);
callBack.doCallBack(visible); callBack.doCallBack(visible);
parentCard.show(parentPane, SETTING); parentCard.show(parentPane, SETTING);
} }

4
designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsNewPane.java

@ -168,7 +168,7 @@ public class VcsNewPane extends RecyclePane {
int selVal = FineJOptionPane.showConfirmDialog( int selVal = FineJOptionPane.showConfirmDialog(
VcsNewPane.this, VcsNewPane.this,
Toolkit.i18nText("Fine-Design_Vcs_Restore_This_Version_Tips"), Toolkit.i18nText("Fine-Design_Vcs_Restore_This_Version_Tips"),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.OK_CANCEL_OPTION, JOptionPane.OK_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE); JOptionPane.QUESTION_MESSAGE);
if (selVal == JOptionPane.YES_OPTION) { if (selVal == JOptionPane.YES_OPTION) {
@ -255,7 +255,7 @@ public class VcsNewPane extends RecyclePane {
int selVal = FineJOptionPane.showConfirmDialog( int selVal = FineJOptionPane.showConfirmDialog(
VcsNewPane.this, VcsNewPane.this,
Toolkit.i18nText("Fine-Design_Vcs_Delete_This_Version_Tips"), Toolkit.i18nText("Fine-Design_Vcs_Delete_This_Version_Tips"),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.OK_CANCEL_OPTION, JOptionPane.OK_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE); JOptionPane.QUESTION_MESSAGE);
if (selVal == JOptionPane.YES_OPTION) { if (selVal == JOptionPane.YES_OPTION) {

2
designer-base/src/main/java/com/fr/design/remote/ui/list/AddedMemberList.java

@ -37,7 +37,7 @@ public class AddedMemberList extends MemberList {
"Fine-Design_Basic_Utils_Are_You_Sure_To_Delete_The_User_And_Its_Design_Authorities"; "Fine-Design_Basic_Utils_Are_You_Sure_To_Delete_The_User_And_Its_Design_Authorities";
if (member.isSelected() && member.hasAuthority()){ if (member.isSelected() && member.hasAuthority()){
int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), Toolkit.i18nText(keyTitle), int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), Toolkit.i18nText(keyTitle),
Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (val == JOptionPane.OK_OPTION) { if (val == JOptionPane.OK_OPTION) {
member.setSelected(!member.isSelected()); member.setSelected(!member.isSelected());
((DefaultListModel<RemoteDesignMember>) getModel()).removeElement(member); ((DefaultListModel<RemoteDesignMember>) getModel()).removeElement(member);

2
designer-base/src/main/java/com/fr/design/remote/ui/list/AddingMemberList.java

@ -39,7 +39,7 @@ public class AddingMemberList extends MemberList {
"Fine-Design_Basic_Utils_Are_You_Sure_To_Delete_The_User_And_Its_Design_Authorities"; "Fine-Design_Basic_Utils_Are_You_Sure_To_Delete_The_User_And_Its_Design_Authorities";
if (member.isSelected() && member.hasAuthority()){ if (member.isSelected() && member.hasAuthority()){
int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), Toolkit.i18nText(keyTitle), int val = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), Toolkit.i18nText(keyTitle),
Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (val == JOptionPane.OK_OPTION) { if (val == JOptionPane.OK_OPTION) {
member.setSelected(!member.isSelected()); member.setSelected(!member.isSelected());
} }

2
designer-base/src/main/java/com/fr/design/upm/UpmFinder.java

@ -84,7 +84,7 @@ public class UpmFinder {
if (!checkUPMResourcesExist()) { if (!checkUPMResourcesExist()) {
// upm下载 // upm下载
int val = FineJOptionPane.showConfirmDialog(null, Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Need_Install"), int val = FineJOptionPane.showConfirmDialog(null, Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Need_Install"),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE); Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);
if (val == JOptionPane.OK_OPTION) { if (val == JOptionPane.OK_OPTION) {
try { try {
UpmResourceLoader.INSTANCE.download(); UpmResourceLoader.INSTANCE.download();

2
designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java

@ -792,7 +792,7 @@ public final class GUICoreUtils {
return false; return false;
} }
int returnVal = FineJOptionPane.showConfirmDialog(ancestorWindow, com.fr.design.i18n.Toolkit.i18nText(key), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), int returnVal = FineJOptionPane.showConfirmDialog(ancestorWindow, com.fr.design.i18n.Toolkit.i18nText(key), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (returnVal == JOptionPane.OK_OPTION) { if (returnVal == JOptionPane.OK_OPTION) {
int minSelectedIndex = nodeList.getMinSelectionIndex(); int minSelectedIndex = nodeList.getMinSelectionIndex();

2
designer-base/src/main/java/com/fr/env/CheckServiceDialog.java vendored

@ -332,7 +332,7 @@ public class CheckServiceDialog extends JDialog implements ActionListener {
String[] option = {Toolkit.i18nText("Fine-Design_Report_Yes"), Toolkit.i18nText("Fine-Design_Report_No")}; String[] option = {Toolkit.i18nText("Fine-Design_Report_Yes"), Toolkit.i18nText("Fine-Design_Report_No")};
if (!jarConsistency) { if (!jarConsistency) {
int a = FineJOptionPane.showOptionDialog(getParent(), Toolkit.i18nText("Fine-Design_Basic_Sync_Info_Information"), int a = FineJOptionPane.showOptionDialog(getParent(), Toolkit.i18nText("Fine-Design_Basic_Sync_Info_Information"),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION, QUESTION_MESSAGE, IOUtils.readIcon("com/fr/design/icon/versioncheck/question.png"), option, 1); Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION, QUESTION_MESSAGE, IOUtils.readIcon("com/fr/design/icon/versioncheck/question.png"), option, 1);
if (0 == a) { if (0 == a) {
progressBar.setVisible(true); progressBar.setVisible(true);
progressBar.setString(Toolkit.i18nText("Fine-Design_Update_Info_Wait_Message")); progressBar.setString(Toolkit.i18nText("Fine-Design_Update_Info_Wait_Message"));

2
designer-base/src/main/java/com/fr/file/FILEChooserPane.java

@ -950,7 +950,7 @@ public class FILEChooserPane extends BasicPane {
if (access(selectedFile) && access(currentDirectory)) { if (access(selectedFile) && access(currentDirectory)) {
if (selectedFile.exists()) { if (selectedFile.exists()) {
int selVal = FineJOptionPane.showConfirmDialog(dialog, Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Cover_The_Current_File") + " ?", int selVal = FineJOptionPane.showConfirmDialog(dialog, Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Cover_The_Current_File") + " ?",
Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE); Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
if (selVal == JOptionPane.YES_OPTION) { if (selVal == JOptionPane.YES_OPTION) {
option = JOPTIONPANE_OK_OPTION; option = JOPTIONPANE_OK_OPTION;
saveDictionary(); saveDictionary();

2
designer-base/src/main/java/com/fr/start/server/FineEmbedServerActivator.java

@ -1,5 +1,6 @@
package com.fr.start.server; package com.fr.start.server;
import com.fr.cbb.websocket.core.WebSocketEndpoint;
import com.fr.design.DesignerEnvManager; import com.fr.design.DesignerEnvManager;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.module.Activator; import com.fr.module.Activator;
@ -11,7 +12,6 @@ import com.fr.startup.FineWebApplicationInitializer;
import com.fr.third.guava.collect.Sets; import com.fr.third.guava.collect.Sets;
import com.fr.third.springframework.web.SpringServletContainerInitializer; import com.fr.third.springframework.web.SpringServletContainerInitializer;
import com.fr.third.springframework.web.context.support.AnnotationConfigWebApplicationContext; import com.fr.third.springframework.web.context.support.AnnotationConfigWebApplicationContext;
import com.fr.web.socketio.WebSocketEndpoint;
import com.fr.workspace.WorkContext; import com.fr.workspace.WorkContext;
import org.apache.catalina.Context; import org.apache.catalina.Context;
import org.apache.catalina.LifecycleException; import org.apache.catalina.LifecycleException;

57
designer-base/src/test/java/com/fr/design/data/MapCompareUtilsTest.java

@ -1,57 +0,0 @@
package com.fr.design.data;
import org.junit.Assert;
import org.junit.Test;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* @author rinoux
* @version 10.0
* Created by rinoux on 2022/3/28
*/
public class MapCompareUtilsTest {
@Test
public void contrastMapEntries() {
Map<String, String> orig = new LinkedHashMap<>();
orig.put("aaa", "aaa");
orig.put("bbb", "bbb");
orig.put("ccc", "ccc");
orig.put("ddd", "ddd");
Map<String, String> other = new LinkedHashMap<>();
other.put("aaa", "111");
other.put("bbb", "bbb");
other.put("ccc", "ccc");
other.put("eee", "eee");
MapCompareUtils.contrastMapEntries(orig, other, new MapCompareUtils.EventHandler<String, String>() {
@Override
public void on(MapCompareUtils.EntryEventKind entryEventKind, String s, String s2) {
switch (entryEventKind) {
case UPDATED:
Assert.assertEquals(s, "aaa");
Assert.assertEquals(s2, "111");
break;
case REMOVED:
Assert.assertEquals(s, "ddd");
break;
case ADDED:
Assert.assertEquals(s, "eee");
Assert.assertEquals(s2, "eee");
break;
default:
Assert.fail();
}
}
});
}
}

2
designer-chart/src/main/java/com/fr/design/chartx/component/MatchResultTable.java

@ -139,7 +139,7 @@ public class MatchResultTable extends JTable {
if (mouseEntered) { if (mouseEntered) {
MatchResultTable.this.getCellEditor().stopCellEditing(); MatchResultTable.this.getCellEditor().stopCellEditing();
int val = JOptionPane.showConfirmDialog(MatchResultTable.this, Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?", int val = JOptionPane.showConfirmDialog(MatchResultTable.this, Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?",
Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (val == JOptionPane.OK_OPTION) { if (val == JOptionPane.OK_OPTION) {
DefaultTableModel model = (DefaultTableModel) MatchResultTable.this.getModel(); DefaultTableModel model = (DefaultTableModel) MatchResultTable.this.getModel();
Object areaName = MatchResultTable.this.getValueAt(row, 0); Object areaName = MatchResultTable.this.getValueAt(row, 0);

18
designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/NormalChartDataPane.java

@ -64,17 +64,15 @@ public class NormalChartDataPane extends DataContentsPane {
protected void initLayout() { protected void initLayout() {
this.setLayout(new BorderLayout(ChartEditContext.normalMode() ? LayoutConstants.HGAP_LARGE : 0,6)); this.setLayout(new BorderLayout(ChartEditContext.normalMode() ? LayoutConstants.HGAP_LARGE : 0,6));
if (ChartEditContext.supportReportData()) { if (ChartEditContext.supportReportData()) {
JPanel northPane; JPanel northPane = new JPanel(new BorderLayout(LayoutConstants.HGAP_LARGE, 0));
if (ChartEditContext.normalMode()) { northPane.add(jcb, BorderLayout.CENTER);
northPane = new JPanel(new BorderLayout(LayoutConstants.HGAP_LARGE, 0)); UILabel label1 = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source"));
northPane.add(jcb, BorderLayout.CENTER); label1.setPreferredSize(new Dimension(ChartDataPane.LABEL_WIDTH, ChartDataPane.LABEL_HEIGHT));
UILabel label1 = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source")); northPane.add(GUICoreUtils.createBorderLayoutPane(new Component[]{jcb, null, null, label1, null}));
label1.setPreferredSize(new Dimension(ChartDataPane.LABEL_WIDTH,ChartDataPane.LABEL_HEIGHT)); if (ChartEditContext.normalMode()) {
northPane.add(GUICoreUtils.createBorderLayoutPane(new Component[]{jcb, null, null, label1, null})); northPane.setBorder(BorderFactory.createEmptyBorder(0, 5, 0, 8));
northPane.setBorder(BorderFactory.createEmptyBorder(0,5,0,8));
} else { } else {
northPane = DataLayoutHelper.createDataLayoutPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source"), jcb); northPane.setBorder(BorderFactory.createEmptyBorder(0, 20, 0, 20));
northPane.setBorder(BorderFactory.createEmptyBorder(0, DataLayoutHelper.LEFT_GAP, 0, DataLayoutHelper.RIGHT_GAP));
} }
this.add(northPane, BorderLayout.NORTH); this.add(northPane, BorderLayout.NORTH);
} }

4
designer-chart/src/main/java/com/fr/van/chart/DownloadOnlineSourcesHelper.java

@ -104,7 +104,7 @@ public class DownloadOnlineSourcesHelper implements DownloadSourcesEvent {
public void installOnline() { public void installOnline() {
int choose = JOptionPane.showConfirmDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Download_Online_Sources"), int choose = JOptionPane.showConfirmDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Download_Online_Sources"),
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION);
if (choose == JOptionPane.OK_OPTION) { if (choose == JOptionPane.OK_OPTION) {
initDialog(); initDialog();
@ -237,7 +237,7 @@ public class DownloadOnlineSourcesHelper implements DownloadSourcesEvent {
if (result) { if (result) {
int choose = FineJOptionPane.showConfirmDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Work_After_Restart_Designer"), int choose = FineJOptionPane.showConfirmDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Work_After_Restart_Designer"),
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION);
if (choose == JOptionPane.OK_OPTION) { if (choose == JOptionPane.OK_OPTION) {
RestartHelper.restart(); RestartHelper.restart();

4
designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java

@ -6,7 +6,6 @@ import com.fr.chart.web.ChartHyperPoplink;
import com.fr.chart.web.ChartHyperRelateCellLink; import com.fr.chart.web.ChartHyperRelateCellLink;
import com.fr.chart.web.ChartHyperRelateFloatLink; import com.fr.chart.web.ChartHyperRelateFloatLink;
import com.fr.design.ExtraDesignClassManager; import com.fr.design.ExtraDesignClassManager;
import com.fr.design.base.mode.DesignModeContext;
import com.fr.design.beans.BasicBeanPane; import com.fr.design.beans.BasicBeanPane;
import com.fr.design.chart.javascript.ChartEmailPane; import com.fr.design.chart.javascript.ChartEmailPane;
import com.fr.design.chart.series.SeriesCondition.impl.ChartHyperPoplinkPane; import com.fr.design.chart.series.SeriesCondition.impl.ChartHyperPoplinkPane;
@ -25,6 +24,7 @@ import com.fr.design.javascript.JavaScriptImplPane;
import com.fr.design.javascript.ParameterJavaScriptPane; import com.fr.design.javascript.ParameterJavaScriptPane;
import com.fr.design.mainframe.BaseJForm; import com.fr.design.mainframe.BaseJForm;
import com.fr.design.mainframe.JTemplate; import com.fr.design.mainframe.JTemplate;
import com.fr.design.mainframe.chart.mode.ChartEditContext;
import com.fr.design.module.DesignModuleFactory; import com.fr.design.module.DesignModuleFactory;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
import com.fr.general.NameObject; import com.fr.general.NameObject;
@ -149,7 +149,7 @@ public class VanChartHyperLinkPane extends VanChartUIListControlPane {
} }
private void refreshNameableCreator() { private void refreshNameableCreator() {
if (DesignModeContext.isDuchampMode()) { if (ChartEditContext.duchampMode()) {
return; return;
} }
HashMap paneMap = getHyperlinkMap(); HashMap paneMap = getHyperlinkMap();

11
designer-chart/src/main/java/com/fr/van/chart/designer/other/VanChartInteractivePane.java

@ -472,11 +472,7 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
} }
protected Component[][] createToolBarComponents() { protected Component[][] createToolBarComponents() {
return ChartEditContext.duchampMode() ? new Component[][]{ return new Component[][]{
new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Content")), isSort},
new Component[]{null, fullScreenDisplay},
new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Layout")), collapse},
} : new Component[][]{
new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Content")), isSort}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Content")), isSort},
new Component[]{null, exportImages}, new Component[]{null, exportImages},
new Component[]{null, fullScreenDisplay}, new Component[]{null, fullScreenDisplay},
@ -485,10 +481,7 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
} }
protected Component[][] createToolBarComponentsWithOutSort() { protected Component[][] createToolBarComponentsWithOutSort() {
return ChartEditContext.duchampMode() ? new Component[][]{ return new Component[][]{
new Component[]{null, fullScreenDisplay},
new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Layout")), collapse}
} : new Component[][]{
new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Content")), exportImages}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Content")), exportImages},
new Component[]{null, fullScreenDisplay}, new Component[]{null, fullScreenDisplay},
new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Layout")), collapse} new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Layout")), collapse}

3
designer-form/src/main/java/com/fr/design/designer/creator/XCreatorUtils.java

@ -33,6 +33,7 @@ import com.fr.form.ui.AbstractBorderStyleWidget;
import com.fr.form.ui.Button; import com.fr.form.ui.Button;
import com.fr.form.ui.CardAddButton; import com.fr.form.ui.CardAddButton;
import com.fr.form.ui.CardSwitchButton; import com.fr.form.ui.CardSwitchButton;
import com.fr.form.ui.ChartEditor;
import com.fr.form.ui.CheckBox; import com.fr.form.ui.CheckBox;
import com.fr.form.ui.CheckBoxGroup; import com.fr.form.ui.CheckBoxGroup;
import com.fr.form.ui.ComboBox; import com.fr.form.ui.ComboBox;
@ -201,6 +202,8 @@ public class XCreatorUtils {
private static void putExtraEditor() { private static void putExtraEditor() {
if (DesignModuleFactory.getChartEditorClass() != null) { if (DesignModuleFactory.getChartEditorClass() != null) {
objectMap.put(DesignModuleFactory.getChartEditorClass(), XChartEditor.class); objectMap.put(DesignModuleFactory.getChartEditorClass(), XChartEditor.class);
} else {
objectMap.put(ChartEditor.class, XChartEditor.class);
} }
} }

4
designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XCardSwitchButton.java

@ -221,7 +221,7 @@ public class XCardSwitchButton extends XButton {
private void deleteCard(XCardSwitchButton button, int index){ private void deleteCard(XCardSwitchButton button, int index){
String titleName = button.getContentLabel().getText(); String titleName = button.getContentLabel().getText();
int value = FineJOptionPane.showConfirmDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Confirm_Dialog_Content") + "“" + titleName + "”", int value = FineJOptionPane.showConfirmDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Confirm_Dialog_Content") + "“" + titleName + "”",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION);
if (value != JOptionPane.OK_OPTION) { if (value != JOptionPane.OK_OPTION) {
return; return;
} }
@ -402,7 +402,7 @@ public class XCardSwitchButton extends XButton {
private void deleteTabLayout(SelectionModel selectionModel, FormDesigner designer){ private void deleteTabLayout(SelectionModel selectionModel, FormDesigner designer){
String titleName = this.getContentLabel().getText(); String titleName = this.getContentLabel().getText();
int value = FineJOptionPane.showConfirmDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Confirm_Dialog_Content") + "“" + titleName + "”", int value = FineJOptionPane.showConfirmDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Confirm_Dialog_Content") + "“" + titleName + "”",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION);
if (value != JOptionPane.OK_OPTION) { if (value != JOptionPane.OK_OPTION) {
return; return;
} }

4
designer-form/src/main/java/com/fr/design/fit/toolbar/SwitchAction.java

@ -233,7 +233,7 @@ public class SwitchAction extends UpdateAction {
int returnVal = FineJOptionPane.showConfirmDialog( int returnVal = FineJOptionPane.showConfirmDialog(
DesignerContext.getDesignerFrame(), DesignerContext.getDesignerFrame(),
message, message,
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
YES_NO_OPTION); YES_NO_OPTION);
return returnVal == JOptionPane.YES_OPTION; return returnVal == JOptionPane.YES_OPTION;
} }
@ -249,7 +249,7 @@ public class SwitchAction extends UpdateAction {
int returnVal = FineJOptionPane.showConfirmDialog( int returnVal = FineJOptionPane.showConfirmDialog(
DesignerContext.getDesignerFrame(), DesignerContext.getDesignerFrame(),
Toolkit.i18nText("Fine-Designer_Fit_Cover_File_Switch"), Toolkit.i18nText("Fine-Designer_Fit_Cover_File_Switch"),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
YES_NO_OPTION); YES_NO_OPTION);
return returnVal == JOptionPane.YES_OPTION; return returnVal == JOptionPane.YES_OPTION;
} }

23
designer-form/src/main/java/com/fr/design/mainframe/FormArea.java

@ -8,11 +8,11 @@ import com.fr.design.designer.creator.XCreatorUtils;
import com.fr.design.designer.creator.XLayoutContainer; import com.fr.design.designer.creator.XLayoutContainer;
import com.fr.design.designer.creator.XWBorderLayout; import com.fr.design.designer.creator.XWBorderLayout;
import com.fr.design.designer.creator.XWFitLayout; import com.fr.design.designer.creator.XWFitLayout;
import com.fr.design.designer.creator.XWParameterLayout;
import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.gui.ibutton.UIButtonUI; import com.fr.design.gui.ibutton.UIButtonUI;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.imenu.UIPopupMenu; import com.fr.design.gui.imenu.UIPopupMenu;
import com.fr.design.designer.creator.XWParameterLayout;
import com.fr.design.gui.itextfield.UINumberField; import com.fr.design.gui.itextfield.UINumberField;
import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayout;
@ -540,21 +540,26 @@ public class FormArea extends JComponent implements ScrollRulerComponent {
} }
//获取在容器的绝对位置 //获取在容器的绝对位置
Rectangle rec = ComponentUtils.getRelativeBounds(creator); Rectangle rec = ComponentUtils.getRelativeBounds(creator);
// 组件实际大小、位置要考虑缩放
int dWidth = getDesignerWidth(); int dWidth = getDesignerWidth();
if (rec.width <= dWidth && rec.x < getHorizontalValue()) { double recRealWidth = rec.width * designer.getScale();
double recRealX = rec.x * designer.getScale();
if (recRealWidth <= dWidth && recRealX < getHorizontalValue()) {
//在边界内部且x位置小于水平滚动条的值 //在边界内部且x位置小于水平滚动条的值
horScrollBar.setValue(rec.x); horScrollBar.setValue((int) recRealX);
} else if (rec.x + rec.width > dWidth + horizontalValue) { } else if (recRealX + recRealWidth > dWidth + horizontalValue) {
//超出边界宽度 //超出边界宽度
horScrollBar.setValue(rec.x + rec.width - dWidth); horScrollBar.setValue((int) (recRealX + recRealWidth - dWidth));
} }
int dHeight = getDesignerHeight(); int dHeight = getDesignerHeight();
if (rec.height < dHeight && rec.y < getVerticalValue()) { double recRealHeight = rec.height * designer.getScale();
double recRealY = rec.y * designer.getScale();
if (recRealHeight < dHeight && recRealY < getVerticalValue()) {
//在边界内部且y位置小于竖直滚动条的值 //在边界内部且y位置小于竖直滚动条的值
verScrollBar.setValue(rec.y); verScrollBar.setValue((int) recRealY);
} else if (rec.y + rec.height > dHeight + verticalValue) { } else if (recRealY + recRealHeight > dHeight + verticalValue) {
//超出边界高度 //超出边界高度
verScrollBar.setValue(rec.y + rec.height - dHeight); verScrollBar.setValue((int) (recRealY + recRealHeight - dHeight));
} }
} }

2
designer-form/src/main/java/com/fr/design/mainframe/FormEditToolBar.java

@ -289,7 +289,7 @@ public class FormEditToolBar extends BasicPane {
return; return;
} }
int val = FineJOptionPane.showConfirmDialog(FormEditToolBar.this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Are_You_Sure_To_Delete_The_Data") + "?", int val = FineJOptionPane.showConfirmDialog(FormEditToolBar.this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Are_You_Sure_To_Delete_The_Data") + "?",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION);
if (val != JOptionPane.YES_OPTION) { if (val != JOptionPane.YES_OPTION) {
return; return;
} }

1
designer-form/src/main/java/com/fr/design/mainframe/share/group/ui/GroupFileDialog.java

@ -123,6 +123,7 @@ abstract public class GroupFileDialog extends BaseGroupDialog {
private UILabel creteNewNameLabel() { private UILabel creteNewNameLabel() {
// 输入框前提示 // 输入框前提示
UILabel newNameLabel = new UILabel(Toolkit.i18nText("Fine-Design_Share_Group_Enter_New_Folder_Name")); UILabel newNameLabel = new UILabel(Toolkit.i18nText("Fine-Design_Share_Group_Enter_New_Folder_Name"));
newNameLabel.setToolTipText(Toolkit.i18nText("Fine-Design_Share_Group_Enter_New_Folder_Name"));
newNameLabel.setHorizontalAlignment(SwingConstants.RIGHT); newNameLabel.setHorizontalAlignment(SwingConstants.RIGHT);
newNameLabel.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 10)); newNameLabel.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 10));
newNameLabel.setPreferredSize(new Dimension(84, 16)); newNameLabel.setPreferredSize(new Dimension(84, 16));

2
designer-form/src/main/java/com/fr/design/mainframe/share/ui/actions/DownloadSuitableThemeAction.java

@ -209,7 +209,7 @@ public class DownloadSuitableThemeAction extends SharedComponentPopupAction {
int returnVal = FineJOptionPane.showConfirmDialog( int returnVal = FineJOptionPane.showConfirmDialog(
window, window,
Toolkit.i18nText("Fine-Design_Share_Apply_Suitable_Theme_Tip"), Toolkit.i18nText("Fine-Design_Share_Apply_Suitable_Theme_Tip"),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
FineJOptionPane.OK_CANCEL_OPTION); FineJOptionPane.OK_CANCEL_OPTION);
if (returnVal == JOptionPane.YES_OPTION) { if (returnVal == JOptionPane.YES_OPTION) {
applyTheme(currentTemplate, theme.getName(), window); applyTheme(currentTemplate, theme.getName(), window);

2
designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/installation/TemplateThemeInstallation.java

@ -199,7 +199,7 @@ public class TemplateThemeInstallation extends AsyncInstallation {
int returnVal = FineJOptionPane.showConfirmDialog( int returnVal = FineJOptionPane.showConfirmDialog(
window, window,
Toolkit.i18nText("Fine-Design_Share_Apply_Suitable_Theme_Tip"), Toolkit.i18nText("Fine-Design_Share_Apply_Suitable_Theme_Tip"),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
FineJOptionPane.OK_CANCEL_OPTION); FineJOptionPane.OK_CANCEL_OPTION);
if (returnVal == JOptionPane.YES_OPTION) { if (returnVal == JOptionPane.YES_OPTION) {
applyTheme(currentFormTemplate, theme.getName(), window); applyTheme(currentFormTemplate, theme.getName(), window);

2
designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/widgetpackage/OnlineWidgetPackagesShowPane.java

@ -82,7 +82,7 @@ public class OnlineWidgetPackagesShowPane extends AbstractOnlineWidgetShowPane {
+ Toolkit.i18nText("Fine-Design_Share_Total") + Toolkit.i18nText("Fine-Design_Share_Total")
+ onlineWidgetSelectPane.getSharableWidgetNum() + onlineWidgetSelectPane.getSharableWidgetNum()
+ Toolkit.i18nText("Fine-Design_Share_Piece"); + Toolkit.i18nText("Fine-Design_Share_Piece");
int returnValue = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), message, Toolkit.i18nText("Fine-Design_Basic_Confirm"), FineJOptionPane.YES_NO_OPTION); int returnValue = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), message, Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), FineJOptionPane.YES_NO_OPTION);
if (returnValue == FineJOptionPane.OK_OPTION && onlineWidgetSelectPane.getSharableWidgetNum() != 0) { if (returnValue == FineJOptionPane.OK_OPTION && onlineWidgetSelectPane.getSharableWidgetNum() != 0) {
downLoadPackage(); downLoadPackage();
} }

1
designer-form/src/main/java/com/fr/design/mainframe/share/ui/widgetfilter/FilterConfigPane.java

@ -149,6 +149,7 @@ public abstract class FilterConfigPane extends JPanel {
private FilterCheckBox createCheckBox(WidgetFilterInfo filterInfo) { private FilterCheckBox createCheckBox(WidgetFilterInfo filterInfo) {
final FilterCheckBox checkBox = new FilterCheckBox(filterInfo.getName(), filterInfo); final FilterCheckBox checkBox = new FilterCheckBox(filterInfo.getName(), filterInfo);
checkBox.setToolTipText(filterInfo.getName());
checkBox.setBackground(Color.WHITE); checkBox.setBackground(Color.WHITE);
checkBox.addItemListener(new ItemListener() { checkBox.addItemListener(new ItemListener() {
@Override @Override

1
designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/TextEditorMobileDefinePane.java

@ -33,6 +33,7 @@ public class TextEditorMobileDefinePane extends BaseTextEditorMobileDefinePane {
inputSettingPane = new MobileTextFieldInputSettingPane(); inputSettingPane = new MobileTextFieldInputSettingPane();
textSettingPane = new MobileTextEditSettingPane(); textSettingPane = new MobileTextEditSettingPane();
container.add(inputSettingPane); container.add(inputSettingPane);
container.add(textSettingPane);
} }

2
designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java

@ -906,7 +906,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
return; return;
} }
int returnValue = FineJOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(reportComposite), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Des_Remove_Work_Sheet"), int returnValue = FineJOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(reportComposite), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Des_Remove_Work_Sheet"),
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.OK_CANCEL_OPTION); JOptionPane.OK_CANCEL_OPTION);
if (returnValue == JOptionPane.OK_OPTION) { if (returnValue == JOptionPane.OK_OPTION) {
if (DesignerContext.getFormatState() != DesignerContext.FORMAT_STATE_NULL) { if (DesignerContext.getFormatState() != DesignerContext.FORMAT_STATE_NULL) {

2
designer-realize/src/main/java/com/fr/design/mainframe/guide/creator/theme/DownloadComponentPackageGuide.java

@ -238,7 +238,7 @@ public class DownloadComponentPackageGuide {
themeConfirmDialog = GuideCreateUtils.showConfirmDialog( themeConfirmDialog = GuideCreateUtils.showConfirmDialog(
DesignerContext.getDesignerFrame(), DesignerContext.getDesignerFrame(),
Toolkit.i18nText("Fine-Design_Share_Apply_Suitable_Theme_Tip"), Toolkit.i18nText("Fine-Design_Share_Apply_Suitable_Theme_Tip"),
Toolkit.i18nText("Fine-Design_Basic_Confirm"), Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
FineJOptionPane.OK_CANCEL_OPTION); FineJOptionPane.OK_CANCEL_OPTION);
return true; return true;
} }

2
designer-realize/src/main/java/com/fr/design/report/LayerReportPane.java

@ -152,7 +152,7 @@ public class LayerReportPane extends BasicBeanPane<LayerReportAttr> {
if (isLayerReportBox.isSelected()) { if (isLayerReportBox.isSelected()) {
if (!ReportUtils.isLayerReportUsable(worksheet)) { if (!ReportUtils.isLayerReportUsable(worksheet)) {
int value = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_After_Changed_Some_Attributes_Are_Different") + "?", int value = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_After_Changed_Some_Attributes_Are_Different") + "?",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION);
if (value != JOptionPane.YES_OPTION) { if (value != JOptionPane.YES_OPTION) {
isLayerReportBox.setSelected(false); isLayerReportBox.setSelected(false);
} }

2
designer-realize/src/main/java/com/fr/design/report/ReportEnginePane.java

@ -298,7 +298,7 @@ public class ReportEnginePane extends BasicBeanPane<LayerReportAttr> {
if (clientPaging.isSelected()) { if (clientPaging.isSelected()) {
if (!ReportUtils.isLayerReportUsable(worksheet)) { if (!ReportUtils.isLayerReportUsable(worksheet)) {
int value = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_After_Changed_Some_Attributes_Are_Different") + "?", int value = FineJOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_After_Changed_Some_Attributes_Are_Different") + "?",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION);
if (value != JOptionPane.YES_OPTION) { if (value != JOptionPane.YES_OPTION) {
clientPaging.setSelected(false); clientPaging.setSelected(false);
} }

2
designer-realize/src/main/java/com/fr/design/webattr/EditToolBar.java

@ -332,7 +332,7 @@ public class EditToolBar extends BasicPane {
return; return;
} }
int val = FineJOptionPane.showConfirmDialog(EditToolBar.this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Are_You_Sure_To_Delete_The_Data") + "?", int val = FineJOptionPane.showConfirmDialog(EditToolBar.this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Are_You_Sure_To_Delete_The_Data") + "?",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), JOptionPane.YES_NO_OPTION); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.YES_NO_OPTION);
if (val != JOptionPane.YES_OPTION) { if (val != JOptionPane.YES_OPTION) {
return; return;
} }

2
designer-realize/src/main/java/com/fr/design/webattr/EventPane.java

@ -173,7 +173,7 @@ public class EventPane extends BasicPane {
} }
int val = FineJOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(EventPane.this), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Are_You_Sure_To_Delete_The_Data") + "?", int val = FineJOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(EventPane.this), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Are_You_Sure_To_Delete_The_Data") + "?",
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"),
JOptionPane.YES_NO_OPTION); JOptionPane.YES_NO_OPTION);
if (val != JOptionPane.YES_OPTION) { if (val != JOptionPane.YES_OPTION) {
return; return;

2
designer-realize/src/main/java/com/fr/design/webattr/ServerPrinterPane.java

@ -163,7 +163,7 @@ public class ServerPrinterPane extends BasicPane {
} }
int returnVal = FineJOptionPane.showConfirmDialog(ServerPrinterPane.this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ReportServerP_Are_You_Sure_To_Delete_The_Selected_Printer") int returnVal = FineJOptionPane.showConfirmDialog(ServerPrinterPane.this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ReportServerP_Are_You_Sure_To_Delete_The_Selected_Printer")
+ "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); + "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (returnVal == JOptionPane.OK_OPTION) { if (returnVal == JOptionPane.OK_OPTION) {
((DefaultListModel) printerList.getModel()).remove(selectedIndex); ((DefaultListModel) printerList.getModel()).remove(selectedIndex);

Loading…
Cancel
Save