Browse Source

Pull request #14894: REPORT-135476 & REPORT-135417 fix: newui 网格线适配及数据集分组面板

Merge in DESIGN/design from ~LEVY.XIE/design:fbp/release to fbp/release

* commit '324814795607ef4d1f5c016bd2654d414240c2eb':
  REPORT-135417 fix:数据集分组面板翻新
  REPORT-135476 fix:NewUI恢复网格线功能
fbp/merge
Levy.Xie-解安森 4 months ago
parent
commit
c209014d0c
  1. 10
      designer-base/src/main/java/com/fr/design/DesignerEnvManager.java
  2. 30
      designer-realize/src/main/java/com/fr/design/dscolumn/SpecifiedGroupAttrPane.java
  3. 6
      designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePane.java

10
designer-base/src/main/java/com/fr/design/DesignerEnvManager.java

@ -159,7 +159,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada
private boolean rowHeaderVisible = true; private boolean rowHeaderVisible = true;
private boolean verticalScrollBarVisible = true; private boolean verticalScrollBarVisible = true;
private boolean horizontalScrollBarVisible = true; private boolean horizontalScrollBarVisible = true;
private Color gridLineColor = Color.lightGray; // line color. private Color gridLineColor = new Color(230, 233, 239); // line color.
private Color paginationLineColor = Color.black; // line color of paper private Color paginationLineColor = Color.black; // line color of paper
private boolean supportCellEditorDef = false; private boolean supportCellEditorDef = false;
private boolean isDragPermited = false; private boolean isDragPermited = false;
@ -2167,10 +2167,10 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada
this.setUndoLimit(reader.getAttrAsInt("undoLimit", 5)); this.setUndoLimit(reader.getAttrAsInt("undoLimit", 5));
this.setStartWithEmptyFile(reader.getAttrAsBoolean("startWithEmptyFile", false)); this.setStartWithEmptyFile(reader.getAttrAsBoolean("startWithEmptyFile", false));
this.setDefaultStringToFormula(reader.getAttrAsBoolean("defaultStringToFormula", false)); this.setDefaultStringToFormula(reader.getAttrAsBoolean("defaultStringToFormula", false));
if ((tmpVal = reader.getAttrAsString("gridLineColor", null)) != null) { if ((tmpVal = reader.getAttrAsString("uiGridLineColor", null)) != null) {
this.setGridLineColor(new Color(Integer.parseInt(tmpVal))); this.setGridLineColor(new Color(Integer.parseInt(tmpVal)));
} }
if ((tmpVal = reader.getAttrAsString("paginationLineColor", null)) != null) { if ((tmpVal = reader.getAttrAsString("uiPaginationLineColor", null)) != null) {
this.setPaginationLineColor(new Color(Integer.parseInt(tmpVal))); this.setPaginationLineColor(new Color(Integer.parseInt(tmpVal)));
} }
} }
@ -2602,8 +2602,8 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada
.attr("horizontalScrollBarVisible", this.isHorizontalScrollBarVisible()) .attr("horizontalScrollBarVisible", this.isHorizontalScrollBarVisible())
.attr("supportCellEditorDef", this.isSupportCellEditorDef()) .attr("supportCellEditorDef", this.isSupportCellEditorDef())
.attr("isDragPermited", this.isDragPermited()) .attr("isDragPermited", this.isDragPermited())
.attr("gridLineColor", this.getGridLineColor().getRGB()) .attr("uiGridLineColor", this.getGridLineColor().getRGB())
.attr("paginationLineColor", this.getPaginationLineColor().getRGB()) .attr("uiPaginationLineColor", this.getPaginationLineColor().getRGB())
.attr("undoLimit", this.getUndoLimit()) .attr("undoLimit", this.getUndoLimit())
.attr("startWithEmptyFile", this.isStartWithEmptyFile()) .attr("startWithEmptyFile", this.isStartWithEmptyFile())
.end(); .end();

30
designer-realize/src/main/java/com/fr/design/dscolumn/SpecifiedGroupAttrPane.java

@ -1,5 +1,7 @@
package com.fr.design.dscolumn; package com.fr.design.dscolumn;
import com.fine.theme.utils.FineLayoutBuilder;
import com.fine.theme.utils.FineUIUtils;
import com.fr.base.BaseFormula; import com.fr.base.BaseFormula;
import com.fr.design.beans.BasicBeanPane; import com.fr.design.beans.BasicBeanPane;
import com.fr.design.condition.DSColumnLiteConditionPane; import com.fr.design.condition.DSColumnLiteConditionPane;
@ -36,6 +38,9 @@ import java.awt.event.ItemEvent;
import java.awt.event.ItemListener; import java.awt.event.ItemListener;
import java.util.ArrayList; import java.util.ArrayList;
import static com.fine.theme.utils.FineClientProperties.ADAPTIVE_COMBO_BOX;
import static com.fine.theme.utils.FineClientProperties.COMBO_BOX_TYPE;
/** /**
* SpecifiedGroupAttrDialog * SpecifiedGroupAttrDialog
*/ */
@ -86,10 +91,11 @@ public class SpecifiedGroupAttrPane extends BasicPane {
} }
protected void initComponents() { protected void initComponents() {
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 10));
specifiedComboBox = new UIComboBox(new String[] { specifiedComboBox = new UIComboBox(new String[] {
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Condition_Group"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Formula_Group") com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Condition_Group"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Formula_Group")
}); });
specifiedComboBox.putClientProperty(COMBO_BOX_TYPE, ADAPTIVE_COMBO_BOX);
specifiedComboBox.addItemListener(new ItemListener() { specifiedComboBox.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) { public void itemStateChanged(ItemEvent e) {
@ -101,9 +107,8 @@ public class SpecifiedGroupAttrPane extends BasicPane {
} }
}); });
JPanel northPane = GUICoreUtils.createFlowPane( JPanel northPane = FineLayoutBuilder.createHorizontalLayout(10,
new JComponent[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Select_Specified_Grouping") + ":"), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Select_Specified_Grouping") + ":"), specifiedComboBox);
specifiedComboBox}, FlowLayout.LEFT);
this.add(northPane, BorderLayout.NORTH); this.add(northPane, BorderLayout.NORTH);
cardLayout = new CardLayout(); cardLayout = new CardLayout();
@ -124,6 +129,7 @@ public class SpecifiedGroupAttrPane extends BasicPane {
otherComboBox = new UIComboBox(new String[] {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_SpecifiedG-Discard_All_Others"), otherComboBox = new UIComboBox(new String[] {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_SpecifiedG-Discard_All_Others"),
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_SpecifiedG_Leave_In_Their_Own_Groups"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_SpecifiedG_Put_All_Others_Together")}); com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_SpecifiedG_Leave_In_Their_Own_Groups"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_SpecifiedG_Put_All_Others_Together")});
otherComboBox.addItemListener(otherItemListener); otherComboBox.addItemListener(otherItemListener);
UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_OtherGroup_Name") + ":"); UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_OtherGroup_Name") + ":");
otherTextField = new UITextField(8); otherTextField = new UITextField(8);
southPane.add(otherComboBox); southPane.add(otherComboBox);
@ -132,9 +138,9 @@ public class SpecifiedGroupAttrPane extends BasicPane {
// 公式分组 // 公式分组
formulaGroupPane = new FormulaGroupPane(); formulaGroupPane = new FormulaGroupPane();
centerCardPane.add("Condition", conditionsGroupPane); centerCardPane.add("Condition", conditionsGroupPane);
centerCardPane.add("Formula", formulaGroupPane); centerCardPane.add("Formula", FineUIUtils.wrapComponentWithTitle(formulaGroupPane,
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_D_Dispaly_Divide_Result_Set_into_Groups")));
this.add(centerCardPane, BorderLayout.CENTER); this.add(centerCardPane, BorderLayout.CENTER);
} }
@ -310,7 +316,6 @@ public class SpecifiedGroupAttrPane extends BasicPane {
private JPanel southPane; private JPanel southPane;
public FormulaGroupPane() { public FormulaGroupPane() {
this.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_D_Dispaly_Divide_Result_Set_into_Groups")));
this.setLayout(FRGUIPaneFactory.createM_BorderLayout()); this.setLayout(FRGUIPaneFactory.createM_BorderLayout());
JPanel contentPane = FRGUIPaneFactory.createNColumnGridInnerContainer_S_Pane(1); JPanel contentPane = FRGUIPaneFactory.createNColumnGridInnerContainer_S_Pane(1);
this.add(contentPane, BorderLayout.NORTH); this.add(contentPane, BorderLayout.NORTH);
@ -319,10 +324,10 @@ public class SpecifiedGroupAttrPane extends BasicPane {
northPane.setLayout(FRGUIPaneFactory.createBorderLayout()); northPane.setLayout(FRGUIPaneFactory.createBorderLayout());
contentPane.add(northPane); contentPane.add(northPane);
modeComboBox = new UIComboBox(displayModeNames); modeComboBox = new UIComboBox(displayModeNames);
modeComboBox.putClientProperty(COMBO_BOX_TYPE, ADAPTIVE_COMBO_BOX);
northPane.add(FineLayoutBuilder.createHorizontalLayout(10,
new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Display_Modes") + ":"), modeComboBox));
northPane.add(GUICoreUtils.createFlowPane(new JComponent[] { new UILabel(InsertText), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Display_Modes") + ": "),
modeComboBox }, FlowLayout.LEFT), BorderLayout.WEST);
UILabel label = new UILabel("="); UILabel label = new UILabel("=");
label.setFont(new Font("Dialog", Font.BOLD, 12)); label.setFont(new Font("Dialog", Font.BOLD, 12));
valueField = new UITextField(16); valueField = new UITextField(16);
@ -330,7 +335,6 @@ public class SpecifiedGroupAttrPane extends BasicPane {
UIButton formulaButton = new UIButton("..."); UIButton formulaButton = new UIButton("...");
formulaButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Formula") + "..."); formulaButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Formula") + "...");
formulaButton.setPreferredSize(new Dimension(25, valueField.getPreferredSize().height));
formulaButton.addActionListener(new ActionListener() { formulaButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) { public void actionPerformed(ActionEvent evt) {
BaseFormula valueFormula = BaseFormula.createFormulaBuilder().build(); BaseFormula valueFormula = BaseFormula.createFormulaBuilder().build();
@ -358,8 +362,8 @@ public class SpecifiedGroupAttrPane extends BasicPane {
} }
}); });
southPane = GUICoreUtils.createFlowPane(new JComponent[] {new UILabel(InsertText), //new UILabel(com.fr.design.i18n.Toolkit.i18nText("I-Message_FunctionGrouper_2")), southPane = FineLayoutBuilder.createHorizontalLayout(10,
new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Custom_Value") + ": "), label, valueField, formulaButton}, FlowLayout.LEFT); new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Custom_Value") + ": "), label, valueField, formulaButton);
contentPane.add(southPane); contentPane.add(southPane);
} }

6
designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePane.java

@ -4,7 +4,6 @@
package com.fr.design.mainframe; package com.fr.design.mainframe;
import com.fine.theme.icon.LazyIcon; import com.fine.theme.icon.LazyIcon;
import com.formdev.flatlaf.ui.FlatUIUtils;
import com.fr.base.BaseFormula; import com.fr.base.BaseFormula;
import com.fr.base.DynamicUnitList; import com.fr.base.DynamicUnitList;
import com.fr.base.Formula; import com.fr.base.Formula;
@ -410,9 +409,8 @@ public abstract class ElementCasePane<T extends TemplateElementCase> extends Tar
grid.setDefaultFloatEditor(CellImagePainter.class, new ImageFloatEditor()); grid.setDefaultFloatEditor(CellImagePainter.class, new ImageFloatEditor());
DesignerEnvManager designerEnvManager = DesignerEnvManager.getEnvManager(); DesignerEnvManager designerEnvManager = DesignerEnvManager.getEnvManager();
// todo: 主题化与env.xml内定义的属性优先级问题 grid.setGridLineColor(designerEnvManager.getGridLineColor());
grid.setGridLineColor(FlatUIUtils.getUIColor("Center.ZoneBorderColor", designerEnvManager.getGridLineColor())); grid.setPaginationLineColor(designerEnvManager.getPaginationLineColor());
grid.setPaginationLineColor(FlatUIUtils.getUIColor("Center.PageLineColor", designerEnvManager.getPaginationLineColor()));
} }
private void addExtraCellEditor(Grid grid) { private void addExtraCellEditor(Grid grid) {

Loading…
Cancel
Save