Browse Source

Merge pull request #1326 in BA/design from ~MOMEAK/design9.0:release/9.0 to release/9.0

* commit 'a71f01976c475a4a39323f76ce24ec4448f87fc9':
  代码规范
  REPORT-4999 设计器界面的小问题-点击靠左或靠右等设置时,之前设置的地方会变成空白再显示
  REPORT-4888 设计器交互修改
  REPORT-4767 [9.0内测] 设置填报属性-设计提交条件,选择类型时,几个图标显示不全 REPORT-4604 设计器交互修改 插入悬浮元素 图表和图片都显示在中间
  代码规范
  代码规范
  REPORT-4604 设计器交互修改 单元格属性-其他-插入行策略 数字控件修改
  REPORT-4604 设计器交互修改 单元格属性-形态-数据字典-公式   最下面的文字颜色和内容修改
master
richie 7 years ago
parent
commit
ae95dc370c
  1. 4
      designer/src/com/fr/design/actions/ButtonGroupAction.java
  2. 40
      designer/src/com/fr/design/actions/cell/style/AlignmentAction.java
  3. 76
      designer/src/com/fr/design/actions/cell/style/ReportFontBoldAction.java
  4. 9
      designer/src/com/fr/design/actions/cell/style/ReportFontItalicAction.java
  5. 8
      designer/src/com/fr/design/actions/cell/style/ReportFontUnderlineAction.java
  6. 29
      designer/src/com/fr/design/actions/insert/flot/ChartFloatAction.java
  7. 31
      designer/src/com/fr/design/actions/insert/flot/ImageFloatAction.java
  8. 4
      designer_base/src/com/fr/design/actions/UpdateAction.java
  9. 3
      designer_base/src/com/fr/design/data/datapane/VerticalChoosePane.java
  10. 177
      designer_base/src/com/fr/design/editor/ValueEditorPaneFactory.java
  11. 2
      designer_base/src/com/fr/design/editor/editor/IntegerEditor.java
  12. 65
      designer_base/src/com/fr/design/editor/editor/SpinnerIntegerEditor.java
  13. 14
      designer_base/src/com/fr/design/gui/ibutton/UIToggleButton.java
  14. 14
      designer_base/src/com/fr/design/gui/style/AlignmentPane.java
  15. BIN
      designer_base/src/com/fr/design/images/buttonicon/type_bool.png
  16. BIN
      designer_base/src/com/fr/design/images/buttonicon/type_date.png
  17. BIN
      designer_base/src/com/fr/design/images/buttonicon/type_double.png
  18. BIN
      designer_base/src/com/fr/design/images/buttonicon/type_formula.png
  19. BIN
      designer_base/src/com/fr/design/images/buttonicon/type_int.png
  20. BIN
      designer_base/src/com/fr/design/images/buttonicon/type_string.png
  21. 5
      designer_base/src/com/fr/design/locale/designer.properties
  22. 5
      designer_base/src/com/fr/design/locale/designer_en_US.properties
  23. 5
      designer_base/src/com/fr/design/locale/designer_ja_JP.properties
  24. 5
      designer_base/src/com/fr/design/locale/designer_ko_KR.properties
  25. 5
      designer_base/src/com/fr/design/locale/designer_zh_CN.properties
  26. 5
      designer_base/src/com/fr/design/locale/designer_zh_TW.properties
  27. 6
      designer_base/src/com/fr/design/present/dict/FormulaDictPane.java
  28. 27
      designer_base/src/com/fr/design/utils/gui/GUICoreUtils.java

4
designer/src/com/fr/design/actions/ButtonGroupAction.java

@ -6,12 +6,12 @@ import com.fr.design.gui.ibutton.UIButtonGroup;
import com.fr.design.mainframe.ElementCasePane;
public abstract class ButtonGroupAction extends ElementCaseAction{
protected Icon[] iconArray;
protected Icon[][] iconArray;
protected Integer[] valueArray;
private UIButtonGroup<Integer> group;
protected ButtonGroupAction(ElementCasePane t, Icon[] iconArray, Integer[] valueArray) {
protected ButtonGroupAction(ElementCasePane t, Icon[][] iconArray, Integer[] valueArray) {
super(t);
this.iconArray = iconArray;
this.valueArray = valueArray;

40
designer/src/com/fr/design/actions/cell/style/AlignmentAction.java

@ -21,20 +21,16 @@ import javax.swing.*;
public class AlignmentAction extends ButtonGroupAction implements StyleActionInterface {
private static final Icon[] normalBlackIcon = new Icon[]{
BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal.png"),
BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal.png"),
BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_right_normal.png")};
private static final Icon[][] ICONS = new Icon[][]{
{BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal_white.png")},
{BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal_white.png")},
{BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_right_normal.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_right_normal_white.png")}};
private static final Icon[] toggleWhiteIcon = new Icon[]{
BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal_white.png"),
BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal_white.png"),
BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_right_normal_white.png")};
private static final Integer[] valueArray = new Integer[]{Constants.LEFT, Constants.CENTER, Constants.RIGHT};
public AlignmentAction(ElementCasePane t) {
super(t, normalBlackIcon, valueArray);
super(t, ICONS, valueArray);
}
@ -49,24 +45,14 @@ public class AlignmentAction extends ButtonGroupAction implements StyleActionInt
return style.deriveHorizontalAlignment(getSelectedValue());
}
/**
* 更新Style
*
* @param style style
*/
public void updateStyle(Style style) {
UIButtonGroup<Integer> buttonGroup = createToolBarComponent();
int selected = BaseUtils.getAlignment4Horizontal(style);
for (int i = 0; i < normalBlackIcon.length; i++) {
UIToggleButton button = buttonGroup.getButton(i);
Icon currentIcon = button.getIcon();
Icon newIcon = selected == valueArray[i] ? toggleWhiteIcon[i] : normalBlackIcon[i];
if (newIcon != currentIcon) {
button.setIcon(newIcon);
}
}
setSelectedIndex(selected);
}
/**
* 更新Style
*
* @param style style
*/
public void updateStyle(Style style) {
setSelectedIndex(BaseUtils.getAlignment4Horizontal(style));
}
/**
* executeActionReturnUndoRecordNeeded

76
designer/src/com/fr/design/actions/cell/style/ReportFontBoldAction.java

@ -21,42 +21,36 @@ import javax.swing.*;
public class ReportFontBoldAction extends AbstractStyleAction implements ToggleButtonUpdateAction {
private UIToggleButton button;
protected Style style;
private final static Icon blackIcon = BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/bold.png");
private final static Icon whiteIcon = BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/bold_white.png");
private final static Icon[] ICONS = {BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/bold.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/bold_white.png")};
public ReportFontBoldAction(ElementCasePane t) {
super(t);
this.setName(Inter.getLocText("FRFont-bold"));
this.setSmallIcon(blackIcon);
this.setSmallIcon(ICONS, true);
}
/**
* 根据按钮状态获取格式
*
* @param style
* @param defStyle
* @return
*/
@Override
public Style executeStyle(Style style, Style defStyle) {
button = createToolBarComponent();
button.setIcon(getToggleButtonIcon(button.isSelected()));
button.setSelected(!button.isSelected());
if (button.isSelected()) {
setSelectedFont(style);
button.setSelected(false);
} else {
setUnselectedFont(style);
button.setSelected(true);
}
/**
* 根据按钮状态获取格式
*
* @param style
* @param defStyle
* @return
*/
@Override
public Style executeStyle(Style style, Style defStyle) {
createToolBarComponent().setSelected(!createToolBarComponent().isSelected());
if (createToolBarComponent().isSelected()) {
setSelectedFont(style);
createToolBarComponent().setSelected(false);
} else {
setUnselectedFont(style);
createToolBarComponent().setSelected(true);
}
return this.style;
}
protected Icon getToggleButtonIcon(boolean isSelected) {
return isSelected ? blackIcon : whiteIcon;
}
protected void setSelectedFont(Style style) {
this.style = StyleUtils.boldReportFont(style);
@ -66,22 +60,20 @@ public class ReportFontBoldAction extends AbstractStyleAction implements ToggleB
this.style = StyleUtils.unBoldReportFont(style);
}
/**
* Update Style.
*/
@Override
public void updateStyle(Style style) {
if (style == null) {
return;
}
FRFont frFont = style.getFRFont();
if (frFont == null) {
return;
}
button = createToolBarComponent();
button.setSelected(isStyle(frFont));
button.setIcon(getToggleButtonIcon(!button.isSelected()));
}
/**
* Update Style.
*/
@Override
public void updateStyle(Style style) {
if (style == null) {
return;
}
FRFont frFont = style.getFRFont();
if (frFont == null) {
return;
}
createToolBarComponent().setSelected(isStyle(frFont));
}
protected boolean isStyle(FRFont frFont) {
return frFont.isBold();
@ -95,7 +87,7 @@ public class ReportFontBoldAction extends AbstractStyleAction implements ToggleB
@Override
public UIToggleButton createToolBarComponent() {
if (button == null) {
button = GUICoreUtils.createToolBarComponent(this);
button = GUICoreUtils.createToolBarComponentWhiteIcon(this);
button.setEventBannded(true);
}
return button;

9
designer/src/com/fr/design/actions/cell/style/ReportFontItalicAction.java

@ -17,14 +17,13 @@ import javax.swing.*;
*/
public class ReportFontItalicAction extends ReportFontBoldAction {
private final static Icon blackIcon = BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/italic.png");
private final static Icon whiteIcon = BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/italic_white.png");
private final static Icon[] ICONS = {BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/italic.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/italic_white.png")};
public ReportFontItalicAction(ElementCasePane t) {
super(t);
this.setName(Inter.getLocText("FRFont-italic"));
this.setSmallIcon(blackIcon);
this.setSmallIcon(ICONS, true);
}
@ -36,10 +35,6 @@ public class ReportFontItalicAction extends ReportFontBoldAction {
this.style = StyleUtils.unItalicReportFont(style);
}
protected Icon getToggleButtonIcon(boolean isSelected) {
return isSelected ? blackIcon : whiteIcon;
}
protected boolean isStyle(FRFont frFont) {
return frFont.isItalic();
}

8
designer/src/com/fr/design/actions/cell/style/ReportFontUnderlineAction.java

@ -18,14 +18,13 @@ import javax.swing.*;
*/
public class ReportFontUnderlineAction extends ReportFontBoldAction {
private final static Icon blackIcon = BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/underline.png");
private final static Icon whiteIcon = BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/underline_white.png");
private final static Icon[] ICONS = {BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/underline.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/underline_white.png")};
public ReportFontUnderlineAction(ElementCasePane t) {
super(t);
this.setName(Inter.getLocText("FRFont-Underline"));
this.setSmallIcon(blackIcon);
this.setSmallIcon(ICONS, true);
}
protected void setSelectedFont (Style style) {
@ -36,9 +35,6 @@ public class ReportFontUnderlineAction extends ReportFontBoldAction {
this.style = StyleUtils.setReportFontUnderline(style, false);
}
protected Icon getToggleButtonIcon(boolean isSelected) {
return isSelected ? blackIcon : whiteIcon;
}
protected boolean isStyle(FRFont frFont) {
return frFont.getUnderline() != Constants.LINE_NONE;

29
designer/src/com/fr/design/actions/insert/flot/ChartFloatAction.java

@ -4,6 +4,7 @@
package com.fr.design.actions.insert.flot;
import com.fr.base.BaseUtils;
import com.fr.base.DynamicUnitList;
import com.fr.base.Style;
import com.fr.base.chart.BaseChartCollection;
import com.fr.design.actions.ElementCaseAction;
@ -16,10 +17,14 @@ import com.fr.design.menu.MenuKeySet;
import com.fr.design.module.DesignModuleFactory;
import com.fr.general.FRLogger;
import com.fr.general.Inter;
import com.fr.grid.Grid;
import com.fr.grid.selection.FloatSelection;
import com.fr.report.ReportHelper;
import com.fr.report.cell.FloatElement;
import com.fr.report.elementcase.TemplateElementCase;
import com.fr.stable.Constants;
import com.fr.stable.bridge.StableFactory;
import com.fr.stable.unit.FU;
import com.fr.stable.unit.OLDPIX;
import javax.swing.*;
@ -85,11 +90,31 @@ public class ChartFloatAction extends ElementCaseAction {
FloatElement newFloatElement;
try {
newFloatElement = new FloatElement(chartDialog.getChartCollection().clone());
newFloatElement.setLeftDistance(new OLDPIX(20));
newFloatElement.setTopDistance(new OLDPIX(20));
newFloatElement.setWidth(new OLDPIX(BaseChartCollection.CHART_DEFAULT_WIDTH));
newFloatElement.setHeight(new OLDPIX(BaseChartCollection.CHART_DEFAULT_HEIGHT));
Grid grid = reportPane.getGrid();
TemplateElementCase report = reportPane.getEditingElementCase();
DynamicUnitList columnWidthList = ReportHelper.getColumnWidthList(report);
DynamicUnitList rowHeightList = ReportHelper.getRowHeightList(report);
int horizentalScrollValue = grid.getHorizontalValue();
int verticalScrollValue = grid.getVerticalValue();
int resolution = grid.getResolution();
int floatWdith = newFloatElement.getWidth().toPixI(resolution);
int floatHeight = newFloatElement.getWidth().toPixI(resolution);
int leftDifference = (grid.getWidth() - floatWdith) > 0 ? (grid.getWidth() - floatWdith) : 0;
int topDifference = (grid.getHeight() - floatHeight) > 0 ? (grid.getHeight() - floatHeight) : 0;
FU evtX_fu = FU.valueOfPix((leftDifference) / 2, resolution);
FU evtY_fu = FU.valueOfPix((topDifference) / 2, resolution);
FU leftDistance = FU.getInstance(evtX_fu.toFU() + columnWidthList.getRangeValue(0, horizentalScrollValue).toFU());
FU topDistance = FU.getInstance(evtY_fu.toFU() + rowHeightList.getRangeValue(0, verticalScrollValue).toFU());
newFloatElement.setLeftDistance(leftDistance);
newFloatElement.setTopDistance(topDistance);
Style style = newFloatElement.getStyle();
if (style != null) {
newFloatElement.setStyle(style.deriveBorder(Constants.LINE_NONE, Color.black, Constants.LINE_NONE, Color.black, Constants.LINE_NONE, Color.black, Constants.LINE_NONE, Color.black));

31
designer/src/com/fr/design/actions/insert/flot/ImageFloatAction.java

@ -4,6 +4,7 @@
package com.fr.design.actions.insert.flot;
import com.fr.base.BaseUtils;
import com.fr.base.DynamicUnitList;
import com.fr.base.ScreenResolution;
import com.fr.design.actions.ElementCaseAction;
import com.fr.design.dialog.BasicDialog;
@ -14,9 +15,12 @@ import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.menu.MenuKeySet;
import com.fr.design.report.SelectImagePane;
import com.fr.general.Inter;
import com.fr.grid.Grid;
import com.fr.grid.selection.FloatSelection;
import com.fr.report.ReportHelper;
import com.fr.report.cell.FloatElement;
import com.fr.report.cell.cellattr.CellImage;
import com.fr.report.elementcase.TemplateElementCase;
import com.fr.stable.CoreGraphHelper;
import com.fr.stable.unit.FU;
@ -87,12 +91,33 @@ public class ImageFloatAction extends ElementCaseAction {
CoreGraphHelper.waitForImage(image);
floatElement.setValue(image);
int resolution = ScreenResolution.getScreenResolution();
Grid grid = reportPane.getGrid();
int resolution = grid.getResolution();
floatElement.setWidth(FU.valueOfPix(image.getWidth(null), resolution));
floatElement.setHeight(FU.valueOfPix(image.getHeight(null), resolution));
TemplateElementCase report = reportPane.getEditingElementCase();
DynamicUnitList columnWidthList = ReportHelper.getColumnWidthList(report);
DynamicUnitList rowHeightList = ReportHelper.getRowHeightList(report);
int horizentalScrollValue = grid.getHorizontalValue();
int verticalScrollValue = grid.getVerticalValue();
int floatWdith = floatElement.getWidth().toPixI(resolution);
int floatHeight = floatElement.getHeight().toPixI(resolution);
int leftDifference = (grid.getWidth() - floatWdith) > 0 ? (grid.getWidth() - floatWdith) : 0;
int topDifference = (grid.getHeight() - floatHeight) > 0 ? (grid.getHeight() - floatHeight) : 0;
FU evtX_fu = FU.valueOfPix((leftDifference) / 2, resolution);
FU evtY_fu = FU.valueOfPix((topDifference) / 2, resolution);
FU leftDistance = FU.getInstance(evtX_fu.toFU() + columnWidthList.getRangeValue(0, horizentalScrollValue).toFU());
FU topDistance = FU.getInstance(evtY_fu.toFU() + rowHeightList.getRangeValue(0, verticalScrollValue).toFU());
floatElement.setLeftDistance(leftDistance);
floatElement.setTopDistance(topDistance);
floatElement.setStyle(cellImage.getStyle());
reportPane.addFloatElementToCenterOfElementPane(floatElement);
// reportPane.addFloatElementToCenterOfElementPane(floatElement);
reportPane.getEditingElementCase().addFloatElement(floatElement);
reportPane.setSelection(new FloatSelection(floatElement.getName()));
returnValue = true;

4
designer_base/src/com/fr/design/actions/UpdateAction.java

@ -139,6 +139,10 @@ public abstract class UpdateAction extends ShortCut implements Action {
this.putValue(Action.SMALL_ICON, smallIcon);
}
public void setSmallIcon(Icon[] smallIcon, boolean white) {
this.putValue(Action.SMALL_ICON, smallIcon);
}
/**
* Returns the mnemonic property setting.
*

3
designer_base/src/com/fr/design/data/datapane/VerticalChoosePane.java

@ -15,6 +15,7 @@ import javax.swing.*;
import java.awt.*;
public class VerticalChoosePane extends ChoosePane implements DesignerBean {
private static final int RIGHTBORDER = 5;
public VerticalChoosePane(Previewable previewable) {
this(previewable, -1);
@ -36,7 +37,7 @@ public class VerticalChoosePane extends ChoosePane implements DesignerBean {
JPanel rs = new JPanel(new BorderLayout(0, 0));
rs.add(tableNameComboBox, BorderLayout.CENTER);
rs.add(GUICoreUtils.createFlowPane(new Component[]{new RefreshLabel(this), previewLabel}, FlowLayout.LEFT, LayoutConstants.HGAP_LARGE), BorderLayout.EAST);
rs.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, -RIGHTBORDER));
UILabel l1 = new UILabel(Inter.getLocText("FR-Designer_Database"), UILabel.LEFT);
UILabel l2 = new UILabel(Inter.getLocText("FR-Designer_Model"), UILabel.LEFT);
UILabel l3 = new UILabel(Inter.getLocText(new String[]{"FR-Designer_Database", "FR-Designer_Table"}), UILabel.LEFT);

177
designer_base/src/com/fr/design/editor/ValueEditorPaneFactory.java

@ -65,9 +65,10 @@ public class ValueEditorPaneFactory {
* @return 返回公式编辑器面板
*/
public static ValueEditorPane createFormulaValueEditorPane() {
return createValueEditorPane(new Editor[]{new FormulaEditor(Inter.getLocText("Parameter-Formula"))},
return createValueEditorPane(new Editor[]{new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"))},
StringUtils.EMPTY, StringUtils.EMPTY);
}
/**
* 创建基本的值编辑器面板
*
@ -138,11 +139,13 @@ public class ValueEditorPaneFactory {
/**
* 创建不带公式面板的pane
*
* @return 编辑器面板
*/
public static ValueEditorPane createBasicEditorWithoutFormulaPane(){
public static ValueEditorPane createBasicEditorWithoutFormulaPane() {
return createValueEditorPane(basicEditorsWithoutFormula(), StringUtils.EMPTY, StringUtils.EMPTY);
}
/**
* 创建NoCRNoColumn
*
@ -154,19 +157,22 @@ public class ValueEditorPaneFactory {
/**
* 创建数值编辑器
*
* @return 值编辑器
*/
public static ValueEditorPane createNumberValueEditorPane(){
public static ValueEditorPane createNumberValueEditorPane() {
return createValueEditorPane(numberEditors(), StringUtils.EMPTY, StringUtils.EMPTY);
}
/**
* 创建日期编辑器
*
* @return 值编辑器
*/
public static ValueEditorPane createDateValueEditorPane(){
public static ValueEditorPane createDateValueEditorPane() {
return createValueEditorPane(dateEditors(), StringUtils.EMPTY, StringUtils.EMPTY);
}
/**
* 根据参数paraUseType 创建编辑器类型.
*
@ -199,12 +205,12 @@ public class ValueEditorPaneFactory {
* @return 值编辑器
*/
public static Editor<?>[] basicEditors() {
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("Parameter-Formula"));
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"));
return new Editor[]{
new TextEditor(),
new IntegerEditor(),
new SpinnerIntegerEditor(),
new DoubleEditor(),
new DateEditor(true, Inter.getLocText("Date")),
new DateEditor(true, Inter.getLocText("FR-Designer_Date")),
new BooleanEditor(),
formulaEditor
};
@ -216,12 +222,12 @@ public class ValueEditorPaneFactory {
* @return 值编辑器
*/
public static Editor<?>[] formEditors() {
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("Parameter-Formula"));
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"));
return new Editor[]{
new TextEditor(),
new IntegerEditor(),
new DoubleEditor(),
new DateEditor(true, Inter.getLocText("Date")),
new DateEditor(true, Inter.getLocText("FR-Designer_Date")),
new BooleanEditor(),
formulaEditor,
new WidgetNameEditor(Inter.getLocText("Widget"))
@ -234,48 +240,50 @@ public class ValueEditorPaneFactory {
* @return 值编辑器
*/
public static Editor<?>[] extendedEditors() {
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("Parameter-Formula"));
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"));
return new Editor[]{
new TextEditor(),
new IntegerEditor(),
new DoubleEditor(),
new DateEditor(true, Inter.getLocText("FR-Designer_Date")),
new BooleanEditor(),
formulaEditor,
new ParameterEditor(),
new ColumnRowEditor(Inter.getLocText("FR-Designer_Cell"))
};
}
/**
* 带单元格组的编辑器
*
* @return 值编辑器
*/
public static Editor<?>[] extendedCellGroupEditors() {
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"));
return new Editor[]{
new TextEditor(),
new IntegerEditor(),
new DoubleEditor(),
new DateEditor(true, Inter.getLocText("Date")),
new DateEditor(true, Inter.getLocText("FR-Designer_Date")),
new BooleanEditor(),
formulaEditor,
new ParameterEditor(),
new ColumnRowEditor(Inter.getLocText("Cell"))
new ColumnRowEditor(Inter.getLocText("FR-Designer_Cell")),
new ColumnRowGroupEditor(Inter.getLocText("FR-Designer-Cell_Group"))
};
}
/**
* 带单元格组的编辑器
* @return 值编辑器
*/
public static Editor<?>[] extendedCellGroupEditors() {
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("Parameter-Formula"));
return new Editor[]{
new TextEditor(),
new IntegerEditor(),
new DoubleEditor(),
new DateEditor(true, Inter.getLocText("Date")),
new BooleanEditor(),
formulaEditor,
new ParameterEditor(),
new ColumnRowEditor(Inter.getLocText("Cell")),
new ColumnRowGroupEditor(Inter.getLocText("Cell_Group"))
};
}
/**
* 只有单元格和单元格组的编辑器
* @return 编辑器b
*/
public static Editor<?>[] cellGroupEditor() {
return new Editor[] {
new ColumnRowEditor(Inter.getLocText("Cell")),
new ColumnRowGroupEditor(Inter.getLocText("Cell_Group"))
};
}
/**
* 只有单元格和单元格组的编辑器
*
* @return 编辑器b
*/
public static Editor<?>[] cellGroupEditor() {
return new Editor[]{
new ColumnRowEditor(Inter.getLocText("FR-Designer_Cell")),
new ColumnRowGroupEditor(Inter.getLocText("FR-Designer-Cell_Group"))
};
}
/**
* URL的一些编辑器.
@ -301,8 +309,8 @@ public class ValueEditorPaneFactory {
public static Editor<?>[] dateEditors(String popupName, String textEditorValue) {
return new Editor[]{
new NoneEditor(textEditorValue, StringUtils.isEmpty(popupName) ? Inter.getLocText("None") : popupName),
new DateEditor(true, Inter.getLocText("Date")),
new FormulaEditor(Inter.getLocText("Parameter-Formula"))
new DateEditor(true, Inter.getLocText("FR-Designer_Date")),
new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"))
};
}
@ -312,17 +320,17 @@ public class ValueEditorPaneFactory {
* @return 值编辑器
*/
public static Editor<?>[] allEditors() {
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("Parameter-Formula"));
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"));
// formulaEditor.setEnabled(true);
return new Editor[]{
new TextEditor(),
new IntegerEditor(),
new DoubleEditor(),
new DateEditor(true, Inter.getLocText("Date")),
new DateEditor(true, Inter.getLocText("FR-Designer_Date")),
new BooleanEditor(),
formulaEditor,
new ParameterEditor(),
new ColumnRowEditor(Inter.getLocText("Cell")),
new ColumnRowEditor(Inter.getLocText("FR-Designer_Cell")),
new ColumnSelectedEditor(),
//23328 allEditors中删除控件选项
// new WidgetNameEditor(Inter.getLocText("Widget"))
@ -331,14 +339,15 @@ public class ValueEditorPaneFactory {
/**
* 不带公式编辑器
*
* @return 编辑器不带公式
*/
public static Editor<?>[] basicEditorsWithoutFormula(){
public static Editor<?>[] basicEditorsWithoutFormula() {
return new Editor[]{
new TextEditor(),
new IntegerEditor(),
new DoubleEditor(),
new DateEditor(true, Inter.getLocText("Date")),
new DateEditor(true, Inter.getLocText("FR-Designer_Date")),
new BooleanEditor(),
};
}
@ -349,12 +358,12 @@ public class ValueEditorPaneFactory {
* @return 编辑器
*/
public static Editor<?>[] noCRnoColumnEditors() {
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("Parameter-Formula"));
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"));
return new Editor[]{
new TextEditor(),
new IntegerEditor(),
new DoubleEditor(),
new DateEditor(true, Inter.getLocText("Date")),
new DateEditor(true, Inter.getLocText("FR-Designer_Date")),
new BooleanEditor(),
formulaEditor,
new ParameterEditor(),
@ -363,10 +372,11 @@ public class ValueEditorPaneFactory {
/**
* 数值编辑器
* @return 编辑器
*
* @return 编辑器
*/
public static Editor<?>[] numberEditors() {
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("Parameter-Formula"));
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"));
return new Editor[]{
new IntegerEditor(),
new DoubleEditor(),
@ -377,12 +387,13 @@ public class ValueEditorPaneFactory {
/**
* 日期编辑器
*
* @return 编辑器
*/
public static Editor<?>[] dateEditors() {
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("Parameter-Formula"));
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"));
return new Editor[]{
new DateEditor(true, Inter.getLocText("Date")),
new DateEditor(true, Inter.getLocText("FR-Designer_Date")),
formulaEditor,
new ParameterEditor(),
};
@ -394,14 +405,14 @@ public class ValueEditorPaneFactory {
* @return 存储过程的编辑器
*/
public static Editor<?>[] StoreProcedureEditors() {
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("Parameter-Formula"));
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"));
formulaEditor.setEnabled(true);
return new Editor[]{
new CursorEditor(),
new TextEditor(),
new IntegerEditor(),
new DoubleEditor(),
new DateEditor(true, Inter.getLocText("Date")),
new DateEditor(true, Inter.getLocText("FR-Designer_Date")),
new BooleanEditor(),
formulaEditor
};
@ -419,10 +430,10 @@ public class ValueEditorPaneFactory {
list.add(new TextEditor());
list.add(new IntegerEditor());
list.add(new DoubleEditor());
list.add(new DateEditor(true, Inter.getLocText("Date")));
list.add(new DateEditor(true, Inter.getLocText("FR-Designer_Date")));
list.add(new BooleanEditor());
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("Parameter-Formula"));
FormulaEditor formulaEditor = new FormulaEditor(Inter.getLocText("FR-Designer_Parameter-Formula"));
formulaEditor.setEnabled(true);
list.add(formulaEditor);
@ -436,31 +447,31 @@ public class ValueEditorPaneFactory {
* @return 值编辑器
*/
private static List<Editor> createEditors4Chart(int paraUseType) {
if(paraUseType == ParameterTableModel.CHART_PIE_USE) {
return getPieEditor();
} else if(paraUseType == ParameterTableModel.CHART_MAP_USE) {
return getMapEditor();
} else if(paraUseType == ParameterTableModel.CHART_GIS_USE) {
return getGisEditor();
} else if(paraUseType == ParameterTableModel.CHART__XY_USE) {
return getXYEditor();
} else if(paraUseType == ParameterTableModel.CHART_BUBBLE_USE) {
return getBubbbleEdtor();
} else if(paraUseType == ParameterTableModel.CHART_NO_USE) {
return getChartNoUseEditor();
} else if(paraUseType == ParameterTableModel.CHART_METER_USE) {
return getMeterEditor();
} else if(paraUseType == ParameterTableModel.CHART_STOCK_USE) {
return getStockEditor();
} else if(paraUseType == ParameterTableModel.CHART_GANTT_USE) {
return getGanttEditor();
} else if(paraUseType == ParameterTableModel.FORM_ELEMENTCASE_USE) {
return getFormElementCaseEditor();
} else if(paraUseType == ParameterTableModel.FORM_CHART_USE) {
return getFormChartEditor();
}
else {
return getChartEditor();
switch (paraUseType) {
case ParameterTableModel.CHART_PIE_USE:
return getPieEditor();
case ParameterTableModel.CHART_MAP_USE:
return getMapEditor();
case ParameterTableModel.CHART_GIS_USE:
return getGisEditor();
case ParameterTableModel.CHART__XY_USE:
return getXYEditor();
case ParameterTableModel.CHART_BUBBLE_USE:
return getBubbbleEdtor();
case ParameterTableModel.CHART_NO_USE:
return getChartNoUseEditor();
case ParameterTableModel.CHART_METER_USE:
return getMeterEditor();
case ParameterTableModel.CHART_STOCK_USE:
return getStockEditor();
case ParameterTableModel.CHART_GANTT_USE:
return getGanttEditor();
case ParameterTableModel.FORM_ELEMENTCASE_USE:
return getFormElementCaseEditor();
case ParameterTableModel.FORM_CHART_USE:
return getFormChartEditor();
default:
return getChartEditor();
}
}

2
designer_base/src/com/fr/design/editor/editor/IntegerEditor.java

@ -18,7 +18,7 @@ public class IntegerEditor extends NumberEditor<Integer> {
}
public IntegerEditor(Integer value) {
super(value, Inter.getLocText("Parameter-Integer"));
super(value, Inter.getLocText("FR-Designer_Parameter_Integer"));
}
@Override

65
designer_base/src/com/fr/design/editor/editor/SpinnerIntegerEditor.java

@ -0,0 +1,65 @@
package com.fr.design.editor.editor;
import com.fr.base.Utils;
import com.fr.design.gui.ispinner.UISpinner;
import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.general.Inter;
import com.fr.stable.StringUtils;
import java.awt.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
public class SpinnerIntegerEditor extends Editor<Integer> {
private UISpinner spinner;
private String oldValue = StringUtils.EMPTY;
public SpinnerIntegerEditor(){
this.setLayout(FRGUIPaneFactory.createBorderLayout());
spinner = new UISpinner(-Integer.MAX_VALUE, Integer.MAX_VALUE, 1, 0);
this.add(spinner, BorderLayout.CENTER);
this.spinner.addKeyListener(textKeyListener);
this.setName(Inter.getLocText("FR-Designer_Parameter_Integer"));
}
@Override
public Integer getValue() {
return new Integer((int) this.spinner.getValue());
}
@Override
public void setValue(Integer value) {
if (value == null) {
value = new Integer(0);
}
this.spinner.setValue(value.intValue());
oldValue = Utils.objectToString(value);
}
@Override
public boolean accept(Object object) {
return object != null && object instanceof Integer;
}
public String getIconName() {
return "type_int";
}
KeyListener textKeyListener = new KeyAdapter() {
public void keyReleased(KeyEvent evt) {
int code = evt.getKeyCode();
if (code == KeyEvent.VK_ESCAPE) {
spinner.setValue(Double.parseDouble(oldValue));
}
if (code == KeyEvent.VK_ENTER) {
fireEditingStopped();
} else {
fireStateChanged();
}
}
};
}

14
designer_base/src/com/fr/design/gui/ibutton/UIToggleButton.java

@ -48,7 +48,7 @@ public class UIToggleButton extends UIButton implements GlobalNameObserver{
}
/**
* 需要反白的按钮接口
* 需要反白的按钮接口(组合按钮情况-UIButtonGroup)
* support icons[normalIcon, selectedIcon]
* @param icons
*/
@ -67,6 +67,18 @@ public class UIToggleButton extends UIButton implements GlobalNameObserver{
addMouseListener(getMouseListener());
}
/**
* 需要反白的按钮接口(单个按钮情况)-再次点击取消选中状态
* support icons[normalIcon, selectedIcon]
* @param icons
*/
public UIToggleButton(Icon[] icons, boolean needRelease) {
super(icons[0], null, icons[1]);
setSelectedIcon(icons[1]);
setExtraPainted(true);
addMouseListener(getMouseListener());
}
public void setGlobalName(String name){
toggleButtonName = name ;
}

14
designer_base/src/com/fr/design/gui/style/AlignmentPane.java

@ -80,11 +80,15 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO
imageLayoutComboBox = new UIComboBox(LAYOUT);
initTextRotationCombox();
Icon[] hAlignmentIconArray = {BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal.png"),
BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal.png"),
BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_right_normal.png"),
BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_s_normal.png"),
BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/defaultAlignment.png")};
Icon[][] hAlignmentIconArray = {{BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal_white.png")},
{BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal_white.png")},
{BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_right_normal.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_right_normal_white.png")},
{BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_s_normal.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_s_normal.png")},
{BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/defaultAlignment.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/defaultAlignment.png")}};
// BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal.png"),
// BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_right_normal.png"),
// BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_s_normal.png"),
// BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/defaultAlignment.png")};
Integer[] hAlignment = new Integer[]{Constants.LEFT, Constants.CENTER, Constants.RIGHT, Integer.valueOf(Constants.DISTRIBUTED), Constants.NULL};
hAlignmentPane = new UIButtonGroup<Integer>(hAlignmentIconArray, hAlignment);
hAlignmentPane.setAllToolTips(new String[]{Inter.getLocText("FR-Designer-StyleAlignment_Tooltips_Left"), Inter.getLocText("FR-Designer-StyleAlignment_Tooltips_Center"), Inter.getLocText("FR-Designer-StyleAlignment_Tooltips_Right"),

BIN
designer_base/src/com/fr/design/images/buttonicon/type_bool.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 362 B

After

Width:  |  Height:  |  Size: 440 B

BIN
designer_base/src/com/fr/design/images/buttonicon/type_date.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 310 B

After

Width:  |  Height:  |  Size: 317 B

BIN
designer_base/src/com/fr/design/images/buttonicon/type_double.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 468 B

After

Width:  |  Height:  |  Size: 522 B

BIN
designer_base/src/com/fr/design/images/buttonicon/type_formula.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 306 B

After

Width:  |  Height:  |  Size: 299 B

BIN
designer_base/src/com/fr/design/images/buttonicon/type_int.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 509 B

After

Width:  |  Height:  |  Size: 395 B

BIN
designer_base/src/com/fr/design/images/buttonicon/type_string.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 317 B

5
designer_base/src/com/fr/design/locale/designer.properties

@ -856,7 +856,7 @@ RP_Authority_Edit=Authority
Warnning=Warning
RoleName_Can_Not_Be_Null=RoleName_Can_Not_Be_Null
Application=Applications
Formula_Dictionary_Display_Examples_Html=<html>the real value is \
FR-Designer-Formula_Dictionary_Display_Examples_Html=<html>the real value is \=range(100), the real value($$$)'s display value is \=0 - $$$, <br>the result is 1, 2, ..., 100 and -1, -2, ..., -100.<br></html>
ECP-error_pwd=
FR-Hyperlink_ChartHyperlink=
M_Edit-FormatBrush=Format Painter
@ -1240,6 +1240,7 @@ Rose_Red=Rose Red
StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=The value of rotation must between -90 and 90 degrees
HF-Move_Left=To the left
Cell_Group=Cell Group
FR-Designer-Cell_Group=Cell Group
Week=Week
PageSetup-Orientation=Orientation
M-Open_Recent=Open Recent
@ -1425,7 +1426,7 @@ Out_Thick_Border_Line=Out Thick Border Line
FR-App-File_Lookup_range=
ReportColumns-Columns_to=Columns to
Transparent=Transparent
Parameter-Integer=Integer
FR-Designer_Parameter_Integer=Integer
PDF-Print_Setting=PDF Print Setting
Server-Embedded_Server=Embedded Server
M_Server-Server_Config_Manager=Server Configuration Manager

5
designer_base/src/com/fr/design/locale/designer_en_US.properties

@ -859,7 +859,7 @@ RP_Authority_Edit=Permission
Warnning=Warning
RoleName_Can_Not_Be_Null=Role name can not be null or duplicate
Application=Applications
Formula_Dictionary_Display_Examples_Html=<html>the real value is \=range(100), the real value($$$)'s display value is \=0 - $$$, <br>the result is 1, 2, ..., 100 and -1, -2, ..., -100.<br></html>
FR-Designer-Formula_Dictionary_Display_Examples_Html=<html>Tip: the real value is \=range(100), the real value($$$)'s display value is \=0 - $$$, <br>the result is 1, 2, ..., 100 and -1, -2, ..., -100.<br></html>
ECP-error_pwd=Password Error
FR-Hyperlink_ChartHyperlink=Chart Hyperlink
M_Edit-FormatBrush=Format Painter
@ -1242,6 +1242,7 @@ Rose_Red=Rose Red
StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=Rotation value must between -90 and 90 degrees
HF-Move_Left=Left shift
Cell_Group=Cell Group
FR-Designer-Cell_Group=Cell Group
Week=Week
PageSetup-Orientation=Orientation
M-Open_Recent=Open Recent
@ -1427,7 +1428,7 @@ Out_Thick_Border_Line=Thick Border
FR-App-File_Lookup_range=Search range
ReportColumns-Columns_to=Split To
Transparent=Transparent
Parameter-Integer=Integer
FR-Designer_Parameter_Integer=Integer
PDF-Print_Setting=PDF Print Setting
Server-Embedded_Server=Built-in server
M_Server-Server_Config_Manager=Server Configuration Manager

5
designer_base/src/com/fr/design/locale/designer_ja_JP.properties

@ -857,7 +857,7 @@ RP_Authority_Edit=\u6A29\u9650\u7DE8\u96C6
Warnning=\u30EA\u30DE\u30A4\u30F3\u30C9
RoleName_Can_Not_Be_Null=\u5F79\u5272\u540D\u306F\u7A7A\u6B04\u306B\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u305A\u3001\u91CD\u8907\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u305B\u3093
Application=\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3
Formula_Dictionary_Display_Examples_Html=<html>\u5B9F\u969B\u306E\u5024\u304C \=range(100)\u306E\u3068\u304D\u3001\u5B9F\u969B\u306E\u5024($$$)\u306E\u8868\u793A\u3059\u308B\u5024\u306E\u6570\u5F0F\u304C \= 0 - $$$\u306E\u3068\u304D\u3001\n\u6700\u7D42\u7684\u306A\u5B9F\u969B\u306E\u5024\u306F\u30011, 2, ..., 100\u3067\u3042\u308A\u3001\n\u305D\u306E\u8868\u793A\u7D50\u679C\u306F-1, -2, ..., -100\u3068\u306A\u308B\u3002<br></html>
FR-Designer-Formula_Dictionary_Display_Examples_Html=<html>\u30D2\u30F3\u30C8: \u5B9F\u969B\u306E\u5024\u304C \=range(100)\u306E\u3068\u304D\u3001\u5B9F\u969B\u306E\u5024($$$)\u306E\u8868\u793A\u3059\u308B\u5024\u306E\u6570\u5F0F\u304C \= 0 - $$$\u306E\u3068\u304D\u3001\n\u6700\u7D42\u7684\u306A\u5B9F\u969B\u306E\u5024\u306F\u30011, 2, ..., 100\u3067\u3042\u308A\u3001\n\u305D\u306E\u8868\u793A\u7D50\u679C\u306F-1, -2, ..., -100\u3068\u306A\u308B\u3002<br></html>
ECP-error_pwd=\u30D1\u30B9\u30EF\u30FC\u30C9\u30A8\u30E9\u30FC
FR-Hyperlink_ChartHyperlink=\u30B0\u30E9\u30D5\u30CF\u30A4\u30D1\u30FC\u30EA\u30F3\u30AF
M_Edit-FormatBrush=\u66F8\u5F0F\u30D6\u30E9\u30B7(B)
@ -1240,6 +1240,7 @@ Rose_Red=\u30ED\u30FC\u30BA\u30EC\u30C3\u30C9
StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=\u56DE\u8EE2\u5024\u306F-90\u304B\u308990\u5EA6
HF-Move_Left=\u5DE6\u3078\u79FB\u52D5\u3059\u308B
Cell_Group=\u30BB\u30EB\u7D44
FR-Designer-Cell_Group=\u30BB\u30EB\u7D44
Week=\u5468
PageSetup-Orientation=\u65B9\u5411
M-Open_Recent=\u6700\u8FD1\u958B\u3044\u305F\u3082\u306E
@ -1427,7 +1428,7 @@ Out_Thick_Border_Line=\u30DC\u30C3\u30AF\u30B9\u30D5\u30EC\u30FC\u30E0\u30E9\u30
FR-App-File_Lookup_range=\u691C\u7D22\u7BC4\u56F2
ReportColumns-Columns_to=\u306E\u3088\u3046\u306B\u6539\u5217\u3059\u308B
Transparent=\u900F\u660E
Parameter-Integer=\u6574\u6570\u578B
FR-Designer_Parameter_Integer=\u6574\u6570\u578B
PDF-Print_Setting=PDF\u5370\u5237\u8A2D\u5B9A
Server-Embedded_Server=\u5185\u8535\u30B5\u30FC\u30D0\u30FC
M_Server-Server_Config_Manager=\u30B5\u30FC\u30D0\u30FC\u914D\u7F6E(S)

5
designer_base/src/com/fr/design/locale/designer_ko_KR.properties

@ -857,7 +857,7 @@ RP_Authority_Edit=\uAD8C\uD55C\uD3B8\uC9D1
Warnning=\uC54C\uB9BC
RoleName_Can_Not_Be_Null=\uC5ED\uD560\uC774\uB984\uC740\uBE44\uC5B4\uC788\uAC70\uB098\uC911\uBCF5\uB418\uC5B4\uC11C\uB294\uC548\uB429\uB2C8\uB2E4.
Application=\uC560\uD50C\uB9AC\uCF00\uC774\uC158
Formula_Dictionary_Display_Examples_Html=<html>\uC2E4\uC81C\uAC12\uBC94\uC704:\=0 - $$$\uFF0C<br>\uCD5C\uC885\uACB0\uACFC\uC758\uC2E4\uC81C\uAC12: 1, 2, ..., 100,\uD45C\uC2DC\uAC12: -1, -2, ... , -100. <br>&nbsp;</html>
FR-Designer-Formula_Dictionary_Display_Examples_Html=<html>\uD301: \uC2E4\uC81C\uAC12\uBC94\uC704:\=0 - $$$\uFF0C<br>\uCD5C\uC885\uACB0\uACFC\uC758\uC2E4\uC81C\uAC12: 1, 2, ..., 100,\uD45C\uC2DC\uAC12: -1, -2, ... , -100. <br>&nbsp;</html>
ECP-error_pwd=\uBE44\uBC00\uBC88\uD638\uC785\uB825\uC624\uB958
FR-Hyperlink_ChartHyperlink=\uCC28\uD2B8\uD558\uC774\uD37C\uB9C1\uD06C
M_Edit-FormatBrush=\uC11C\uC2DD\uD504\uB9B0\uD2B8(B)
@ -1241,6 +1241,7 @@ Rose_Red=\uB85C\uC988\uBE68\uAC15
StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=\uD68C\uC804\uAC12\uC740-90\uB3C4\uC5D0\uC11C 90\uB3C4\uAE4C\uC9C0
HF-Move_Left=\uC67C\uCABD\uC73C\uB85C\uC774\uB3D9
Cell_Group=\uC140\uADF8\uB8F9
FR-Designer-Cell_Group=\uC140\uADF8\uB8F9
Week=\uC8FC
PageSetup-Orientation=\uBC29\uD5A5
M-Open_Recent=\uCD5C\uADFC\uC5F4\uC5B4\uBCF8
@ -1426,7 +1427,7 @@ Out_Thick_Border_Line=\uAD75\uC740\uBC14\uAE65\uCABD\uD14C\uB450\uB9AC\uC120
FR-App-File_Lookup_range=\uBC94\uC704\uAC80\uC0C9
ReportColumns-Columns_to=\uC140\uB098\uB204\uAE30
Transparent=\uD22C\uBA85
Parameter-Integer=\uC804\uCCB4\uD0C0\uC785
FR-Designer_Parameter_Integer=\uC804\uCCB4\uD0C0\uC785
PDF-Print_Setting=PDF\uC778\uC1C4\uC124\uC815
Server-Embedded_Server=\uB0B4\uC7A5\uB41C\uC11C\uBC84
M_Server-Server_Config_Manager=\uC11C\uBC84\uAD6C\uC131

5
designer_base/src/com/fr/design/locale/designer_zh_CN.properties

@ -860,7 +860,7 @@ RP_Authority_Edit=\u6743\u9650\u7F16\u8F91
Warnning=\u63D0\u9192
RoleName_Can_Not_Be_Null=\u89D2\u8272\u540D\u4E0D\u5141\u8BB8\u4E3A\u7A7A\u4E14\u4E0D\u80FD\u91CD\u590D
Application=\u5E94\u7528\u7A0B\u5E8F
Formula_Dictionary_Display_Examples_Html=<html>\u5B9E\u9645\u503C\u8303\u56F4\u4E3A \=range(100),\u5BF9\u5B9E\u9645\u503C\u8303\u56F4\u5185\u7684\u6BCF\u4E2A$$$\u7684\u663E\u793A\u516C\u5F0F\u4E3A \=0 - $$$\uFF0C<br>\u5219\u6700\u7EC8\u7684\u7ED3\u679C\u5B9E\u9645\u503C\u4E3A1, 2, ..., 100,\u663E\u793A\u503C\u4E3A-1, -2, ... , -100\u3002<br>&nbsp;</html>
FR-Designer-Formula_Dictionary_Display_Examples_Html=<html>\u63D0\u793A\uFF1A\u5B9E\u9645\u503C\u8303\u56F4\u4E3A \=range(100),\u5BF9\u5B9E\u9645\u503C\u8303\u56F4\u5185\u7684\u6BCF\u4E2A$$$\u7684\u663E\u793A\u516C\u5F0F\u4E3A \=0 - $$$\uFF0C\u5219\u6700\u7EC8\u7684\u7ED3\u679C\u5B9E\u9645\u503C\u4E3A1, 2, ..., 100,\u663E\u793A\u503C\u4E3A-1, -2, ... , -100\u3002<br>&nbsp;</html>
ECP-error_pwd=\u5BC6\u7801\u9519\u8BEF
FR-Hyperlink_ChartHyperlink=\u56FE\u8868\u8D85\u94FE
M_Edit-FormatBrush=\u683C\u5F0F\u5237(B)
@ -1243,6 +1243,7 @@ Rose_Red=\u73AB\u7470\u7EA2
StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=\u65CB\u8F6C\u503C\u5FC5\u987B\u5728\u8D1F90\u5EA6\u523090\u5EA6
HF-Move_Left=\u5DE6\u79FB
Cell_Group=\u5355\u5143\u683C\u7EC4
FR-Designer-Cell_Group=\u5355\u5143\u683C\u7EC4
Week=\u5468
PageSetup-Orientation=\u65B9\u5411
M-Open_Recent=\u6700\u8FD1\u6253\u5F00\u7684
@ -1428,7 +1429,7 @@ Out_Thick_Border_Line=\u7C97\u5323\u6846\u7EBF
FR-App-File_Lookup_range=\u67E5\u627E\u8303\u56F4
ReportColumns-Columns_to=\u5206\u680F\u6210
Transparent=\u900F\u660E
Parameter-Integer=\u6574\u578B
FR-Designer_Parameter_Integer=\u6574\u578B
PDF-Print_Setting=PDF\u6253\u5370\u8BBE\u7F6E
Server-Embedded_Server=\u5167\u7F6E\u7684\u670D\u52A1\u5668
M_Server-Server_Config_Manager=\u670D\u52A1\u5668\u914D\u7F6E

5
designer_base/src/com/fr/design/locale/designer_zh_TW.properties

@ -859,7 +859,7 @@ RP_Authority_Edit=\u6B0A\u9650\u7DE8\u8F2F
Warnning=\u63D0\u9192
RoleName_Can_Not_Be_Null=\u89D2\u8272\u540D\u4E0D\u5141\u8A31\u70BA\u7A7A\u4E14\u4E0D\u80FD\u91CD\u8907
Application=\u61C9\u7528\u7A0B\u5F0F
Formula_Dictionary_Display_Examples_Html=<html>\u5BE6\u969B\u503C\u7BC4\u570D\u70BA \=range(100),\u5C0D\u5BE6\u969B\u503C\u7BC4\u570D\u5167\u7684\u6BCF\u500B$$$\u7684\u986F\u793A\u516C\u5F0F\u70BA \=0 - $$$\uFF0C<br>\u5247\u6700\u7D42\u7684\u7D50\u679C\u5BE6\u969B\u503C\u70BA1, 2, ..., 100,\u986F\u793A\u503C\u70BA-1, -2, ... , -100\u3002<br>&nbsp;</html>
FR-Designer-Formula_Dictionary_Display_Examples_Html=<html>\u63D0\u793A\uFF1A\u5BE6\u969B\u503C\u7BC4\u570D\u70BA \=range(100),\u5C0D\u5BE6\u969B\u503C\u7BC4\u570D\u5167\u7684\u6BCF\u500B$$$\u7684\u986F\u793A\u516C\u5F0F\u70BA \=0 - $$$\uFF0C<br>\u5247\u6700\u7D42\u7684\u7D50\u679C\u5BE6\u969B\u503C\u70BA1, 2, ..., 100,\u986F\u793A\u503C\u70BA-1, -2, ... , -100\u3002<br>&nbsp;</html>
ECP-error_pwd=\u5BC6\u78BC\u932F\u8AA4
FR-Hyperlink_ChartHyperlink=\u5716\u8868\u8D85\u93C8
M_Edit-FormatBrush=\u8907\u88FD\u683C\u5F0F(B)
@ -1242,6 +1242,7 @@ Rose_Red=\u73AB\u7470\u7D05
StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=\u65CB\u8F49\u503C\u5FC5\u9808\u5728\u8CA090\u5EA6\u523090\u5EA6
HF-Move_Left=\u5DE6\u79FB
Cell_Group=\u5132\u5B58\u683C\u7D44
FR-Designer-Cell_Group=\u5132\u5B58\u683C\u7D44
Week=\u5468
PageSetup-Orientation=\u65B9\u5411
M-Open_Recent=\u958B\u555F\u6700\u8FD1\u4F7F\u7528\u6A94
@ -1426,7 +1427,7 @@ Out_Thick_Border_Line=\u7C97\u5323\u6846\u7DDA
FR-App-File_Lookup_range=\u67E5\u627E\u7BC4\u570D
ReportColumns-Columns_to=\u5206\u6B04\u6210
Transparent=\u900F\u660E
Parameter-Integer=\u6574\u578B
FR-Designer_Parameter_Integer=\u6574\u578B
PDF-Print_Setting=PDF\u5217\u5370\u8A2D\u5B9A
Server-Embedded_Server=\u5167\u7F6E\u7684\u4F3A\u670D\u5668
M_Server-Server_Config_Manager=\u4F3A\u670D\u5668\u914D\u7F6E(S)

6
designer_base/src/com/fr/design/present/dict/FormulaDictPane.java

@ -5,6 +5,7 @@ import com.fr.base.Formula;
import com.fr.data.impl.FormulaDictionary;
import com.fr.design.beans.FurtherBasicBeanPane;
import com.fr.design.constants.LayoutConstants;
import com.fr.design.constants.UIConstants;
import com.fr.design.editor.editor.FormulaEditor;
import com.fr.design.gui.ilable.UILabel;
import com.fr.design.layout.TableLayout;
@ -47,13 +48,14 @@ public class FormulaDictPane extends FurtherBasicBeanPane<FormulaDictionary> {
double[] rowSize = {p, p, p};
int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}};
UILabel tag = new UILabel(Inter.getLocText("Formula_Dictionary_Display_Examples_Html"));
UILabel tag = new UILabel(Inter.getLocText("FR-Designer-Formula_Dictionary_Display_Examples_Html"));
tag.setForeground(new Color(51, 51, 52));
tag.setPreferredSize(new Dimension(225, 80));
JPanel t = new JPanel(new BorderLayout());
t.add(tag, BorderLayout.CENTER);
Formula vf = new Formula("$$$");
valueFormulaEditor = new FormulaEditor("", vf);
valueFormulaEditor = new FormulaEditor(StringUtils.EMPTY, vf);
JPanel valueFormulaContainer = new JPanel(new FlowLayout(FlowLayout.RIGHT, LEFT_BORDER, 0));
valueFormulaContainer.setBorder(BorderFactory.createEmptyBorder(0, -LEFT_BORDER, 0, -LEFT_BORDER));

27
designer_base/src/com/fr/design/utils/gui/GUICoreUtils.java

@ -221,6 +221,33 @@ public abstract class GUICoreUtils{
return (UIToggleButton) object;
}
/**
* 创建工具栏组件-反白icon
* @param updateAction 更新动作
* @return UIToggleButton 按钮
*
*/
public static UIToggleButton createToolBarComponentWhiteIcon(UpdateAction updateAction) {
UIToggleButton button = new UIToggleButton((Icon[]) updateAction.getValue(Action.SMALL_ICON), true);
button.set4ToolbarButton();
Integer mnemonicInteger = (Integer) updateAction.getValue(Action.MNEMONIC_KEY);
if (mnemonicInteger != null) {
button.setMnemonic((char) mnemonicInteger.intValue());
}
button.addActionListener(updateAction);
button.registerKeyboardAction(updateAction, updateAction.getAccelerator(), JComponent.WHEN_IN_FOCUSED_WINDOW);
updateAction.putValue(UIToggleButton.class.getName(), button);
button.setText(StringUtils.EMPTY);
button.setEnabled(updateAction.isEnabled());
button.setToolTipText(ActionFactory.createButtonToolTipText(updateAction));
return button;
}
/**
* 设置一个窗口
*

Loading…
Cancel
Save