Browse Source

REPORT-69422 产品调整部分UI && 删除数据集没反应

【问题原因】1.搜索匹配文字高亮调整为匹配文字加粗;2.UIList获取选中对象的方法返回为空
【改动思路】1.改UI;2.自己写一下获取选中对象的逻辑
【review建议】无
new-design
Yvan 3 years ago
parent
commit
8062c66a8c
  1. 20
      designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java
  2. 2
      designer-base/src/main/java/com/fr/design/data/datapane/management/search/view/TreeSearchRendererHelper.java
  3. 9
      designer-base/src/main/java/com/fr/design/gui/ilist/CheckBoxListWithPartialSelect.java

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

@ -596,6 +596,7 @@ public class TableDataTreePane extends BasicTableDataTreePane {
int[] rows = tableDataTree.getSelectionRows(); int[] rows = tableDataTree.getSelectionRows();
tableDataTree.refreshChildByName(tdName); tableDataTree.refreshChildByName(tdName);
tableDataTree.setSelectionRows(rows); tableDataTree.setSelectionRows(rows);
FineLoggerFactory.getLogger().info("add table data succeeded for {}", tdName);
} }
@Override @Override
@ -1057,7 +1058,11 @@ public class TableDataTreePane extends BasicTableDataTreePane {
TableDataTreeSearchManager.getInstance().outOfSearchMode(); TableDataTreeSearchManager.getInstance().outOfSearchMode();
} }
for (Object toRemove : selectedValues) { for (Object toRemove : selectedValues) {
doRemove((NameObject) toRemove); try {
doRemove((String) toRemove);
} catch (Exception e) {
FineLoggerFactory.getLogger().error(e, "remove table data failed for {}", toRemove);
}
} }
} }
@ -1069,9 +1074,9 @@ public class TableDataTreePane extends BasicTableDataTreePane {
basicDialog.setVisible(true); basicDialog.setVisible(true);
} }
private void doRemove(NameObject selectedNO) { private void doRemove(String toRemove) throws Exception {
// richer:这个地方为什么要在DataSourceTree里面去remove呢?多此一举吧 // richer:这个地方为什么要在DataSourceTree里面去remove呢?多此一举吧
op.removeAction(selectedNO.getName()); op.removeAction(toRemove);
tableDataTree.refresh(); tableDataTree.refresh();
// Richie:默认最后一行获得焦点. // Richie:默认最后一行获得焦点.
tableDataTree.requestFocus(); tableDataTree.requestFocus();
@ -1080,14 +1085,15 @@ public class TableDataTreePane extends BasicTableDataTreePane {
checkButtonEnabled(); checkButtonEnabled();
//删掉缓存配置 //删掉缓存配置
StrategyConfigAttrUtils.removeStrategyConfig(selectedNO.getName()); StrategyConfigAttrUtils.removeStrategyConfig(toRemove);
// 如果一个模版是平台开启,这个数据集的配置不会存xml,预览模版时直接从全局配置copy,这样 // 如果一个模版是平台开启,这个数据集的配置不会存xml,预览模版时直接从全局配置copy,这样
// 导致删除的时候StrategyConfigsAttrSavedHook没有通过前后配置比较感知数据集被删除,因此不会发出事件让其失效 // 导致删除的时候StrategyConfigsAttrSavedHook没有通过前后配置比较感知数据集被删除,因此不会发出事件让其失效
// 这里额外发出一次数据集修改事件 // 这里额外发出一次数据集修改事件
StrategyEventsNotifier.modifyDataSet(new DSMapping(getTplPath(), new DsNameTarget(selectedNO.getName()))); StrategyEventsNotifier.modifyDataSet(new DSMapping(getTplPath(), new DsNameTarget(toRemove)));
DesignTableDataManager.removeSelectedColumnNames(selectedNO.getName()); DesignTableDataManager.removeSelectedColumnNames(toRemove);
DesignModelAdapter.getCurrentModelAdapter().removeTableDataParameters(selectedNO.getName()); DesignModelAdapter.getCurrentModelAdapter().removeTableDataParameters(toRemove);
FineLoggerFactory.getLogger().info("remove table data succeeded for {}", toRemove);
} }
} }

2
designer-base/src/main/java/com/fr/design/data/datapane/management/search/view/TreeSearchRendererHelper.java

@ -67,7 +67,7 @@ public class TreeSearchRendererHelper {
} }
private String getHighlightText(String text, String textToHighlight) { private String getHighlightText(String text, String textToHighlight) {
String highLightTemplate = "<font color=\"#419BF9\">$1</font>"; String highLightTemplate = "<strong>$1</strong>";
if (textToHighlight.length() == 0) { if (textToHighlight.length() == 0) {
return text; return text;
} }

9
designer-base/src/main/java/com/fr/design/gui/ilist/CheckBoxListWithPartialSelect.java

@ -16,6 +16,7 @@ import java.awt.Component;
import java.awt.event.MouseAdapter; import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent; import java.awt.event.MouseEvent;
import java.awt.event.MouseListener; import java.awt.event.MouseListener;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
@ -67,7 +68,13 @@ public class CheckBoxListWithPartialSelect extends JPanel {
} }
public List<Object> getSelectedObjects() { public List<Object> getSelectedObjects() {
return dataList.getSelectedValuesList(); List<Object> seleted = new ArrayList<>();
for (UICheckBox dataCheckBox : dataCheckBoxes) {
if (dataCheckBox.isSelected()) {
seleted.add(dataCheckBox.getText());
}
}
return seleted;
} }
protected MouseListener getDataListMouseListener() { protected MouseListener getDataListMouseListener() {

Loading…
Cancel
Save