Browse Source

REPORT-76259 【迭代】【数据连接面板为空】概率出现编辑数据集一直加载中

根据评审意见修改下,不特地分出两个方法了
release/11.0
Yvan 2 years ago
parent
commit
31c0eb2d15
  1. 25
      designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java

25
designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java

@ -402,17 +402,6 @@ public class TableDataTreePane extends BasicTableDataTreePane {
*/
@Override
public void dgEdit(final AbstractTableDataPane<?> tableDataPane, String originalName, boolean isUpdate) {
dgEdit(tableDataPane, originalName, isUpdate, false);
}
/**
* 编辑面板
* @param tableDataPane 面板
* @param originalName 原始名字
* @param isUpdate
* @param showLater 是否立刻打开面板
*/
public void dgEdit(final AbstractTableDataPane<?> tableDataPane, String originalName, boolean isUpdate, boolean showLater) {
// 编辑时如果正在搜索,跳回原树
if (TableDataTreeSearchManager.getInstance().isInSearchMode()) {
TableDataTreeSearchManager.getInstance().outOfSearchMode();
@ -498,15 +487,11 @@ public class TableDataTreePane extends BasicTableDataTreePane {
doPropertyChange(dg, tdNamePanel, oldName);
}
});
if (showLater) {
// 有些数据集(DBTableData)面板的初始化过程中是包含了SwingWorker处理(查询数据连接、查表等)的
// 如果这里直接setVisible,可能阻塞SwingWorker的done方法,导致面板渲染出现问题
SwingUtilities.invokeLater(() -> {
dg.setVisible(true);
});
} else {
// 有些数据集(DBTableData)面板的初始化过程中是包含了SwingWorker处理(查询数据连接、查表等)的
// 如果这里直接setVisible,可能阻塞SwingWorker的done方法,导致面板渲染出现问题
SwingUtilities.invokeLater(() -> {
dg.setVisible(true);
}
});
}
@Override
@ -1060,7 +1045,7 @@ public class TableDataTreePane extends BasicTableDataTreePane {
if (hasAuth) {
// 有权限时,关闭Loading面板,打开编辑面板
loadingDialog.setVisible(false);
dgEdit(tableDataPane, dsName, false, true);
dgEdit(tableDataPane, dsName, false);
} else {
// 无权限时,给出无权限提示
loadingPane.switchTo(TableDataLoadingPane.NO_AUTH_PANE_NAME);

Loading…
Cancel
Save