Browse Source

Merge branch 'release/9.0' of http://www.finedevelop.com:2015/scm/~plough/design into release/9.0

master
plough 7 years ago
parent
commit
17b133f214
  1. 4
      designer/src/com/fr/design/widget/ui/ParameterTreeComboBox.java
  2. 38
      designer/src/com/fr/poly/PolyDesignUI.java
  3. 9
      designer/src/com/fr/poly/PolyUtils.java
  4. 1
      designer/src/com/fr/poly/creator/ECBlockEditor.java
  5. 18
      designer_base/src/com/fr/design/gui/style/FormatPane.java
  6. 2
      designer_base/src/com/fr/design/locale/designer_zh_CN.properties
  7. 5
      designer_base/src/com/fr/design/mainframe/widget/accessibles/AccessibleIconEditor.java
  8. 13
      designer_base/src/com/fr/design/mainframe/widget/accessibles/BaseAccessibleEditor.java
  9. 2
      designer_base/src/com/fr/design/scrollruler/HorizontalRulerUI.java
  10. 2
      designer_base/src/com/fr/design/scrollruler/VerticalRulerUI.java
  11. 15
      designer_base/src/com/fr/design/widget/component/DateValuePane.java
  12. 74
      designer_base/src/com/fr/design/widget/component/NumberEditorValidatePane.java
  13. 15
      designer_base/src/com/fr/start/BaseDesigner.java
  14. 1
      designer_chart/src/com/fr/design/chart/javascript/ChartEmailPane.java
  15. 34
      designer_chart/src/com/fr/design/mainframe/chart/gui/ChangeConfigPane.java
  16. 1
      designer_chart/src/com/fr/design/mainframe/chart/gui/data/report/AbstractReportDataContentPane.java
  17. 4
      designer_chart/src/com/fr/design/mainframe/chart/gui/data/table/AbstractTableDataContentPane.java
  18. 19
      designer_chart/src/com/fr/design/mainframe/chart/gui/style/ChartTextAttrPane.java
  19. 8
      designer_chart/src/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane.java
  20. 2
      designer_chart/src/com/fr/design/mainframe/chart/gui/type/ChartTabPane.java
  21. 16
      designer_chart/src/com/fr/plugin/chart/bubble/VanChartBubbleSeriesPane.java
  22. 4
      designer_chart/src/com/fr/plugin/chart/bubble/data/VanChartBubblePlotTableDataContentPane.java
  23. 6
      designer_chart/src/com/fr/plugin/chart/column/VanChartColumnSeriesPane.java
  24. 50
      designer_chart/src/com/fr/plugin/chart/column/VanChartCustomStackAndAxisConditionPane.java
  25. 2
      designer_chart/src/com/fr/plugin/chart/designer/AbstractVanChartScrollPane.java
  26. 1
      designer_chart/src/com/fr/plugin/chart/designer/PlotFactory.java
  27. 5
      designer_chart/src/com/fr/plugin/chart/designer/TableLayout4VanChartHelper.java
  28. 16
      designer_chart/src/com/fr/plugin/chart/designer/component/VanChartTrendLinePane.java
  29. 24
      designer_chart/src/com/fr/plugin/chart/designer/component/background/VanChartBackgroundPaneWithOutImageAndShadow.java
  30. 13
      designer_chart/src/com/fr/plugin/chart/designer/component/format/FormatPaneWithOutFont.java
  31. 20
      designer_chart/src/com/fr/plugin/chart/designer/component/marker/VanChartImageMarkerPane.java
  32. 5
      designer_chart/src/com/fr/plugin/chart/designer/other/VanChartConditionAttrContentPane.java
  33. 6
      designer_chart/src/com/fr/plugin/chart/designer/other/VanChartConditionListControlPane.java
  34. 9
      designer_chart/src/com/fr/plugin/chart/designer/other/VanChartInteractivePane.java
  35. 2
      designer_chart/src/com/fr/plugin/chart/designer/style/axis/VanChartBaseAxisPane.java
  36. 8
      designer_chart/src/com/fr/plugin/chart/designer/style/datasheet/VanChartDataSheetPane.java
  37. 1
      designer_chart/src/com/fr/plugin/chart/designer/style/label/VanChartPlotLabelDetailPane.java
  38. 50
      designer_chart/src/com/fr/plugin/chart/designer/style/series/StackedAndAxisNameObjectCreator.java
  39. 24
      designer_chart/src/com/fr/plugin/chart/designer/style/series/VanChartAbstractPlotSeriesPane.java
  40. 111
      designer_chart/src/com/fr/plugin/chart/designer/style/series/VanChartCustomStackAndAxisEditPane.java
  41. 10
      designer_chart/src/com/fr/plugin/chart/designer/style/series/VanChartEffectPane.java
  42. 104
      designer_chart/src/com/fr/plugin/chart/designer/style/series/VanChartStackedAndAxisListControlPane.java
  43. 7
      designer_chart/src/com/fr/plugin/chart/designer/style/tooltip/VanChartPlotRefreshTooltipPane.java
  44. 56
      designer_chart/src/com/fr/plugin/chart/drillmap/designer/data/comp/DrillMapLayerPane.java
  45. 44
      designer_chart/src/com/fr/plugin/chart/drillmap/designer/other/VanChartDrillMapInteractivePane.java
  46. 15
      designer_chart/src/com/fr/plugin/chart/gauge/VanChartGaugeSeriesPane.java
  47. 10
      designer_chart/src/com/fr/plugin/chart/map/designer/data/contentpane/report/VanAreaMapPlotReportDataContentPane.java
  48. 2
      designer_chart/src/com/fr/plugin/chart/map/designer/data/contentpane/report/VanPointMapPlotReportDataContentPane.java
  49. 29
      designer_chart/src/com/fr/plugin/chart/map/line/VanChartLineMapEffectPane.java
  50. 4
      designer_chart/src/com/fr/plugin/chart/multilayer/data/MultiPiePlotReportDataContentPane.java
  51. 5
      designer_chart/src/com/fr/plugin/chart/multilayer/data/MultiPiePlotTableDataContentPane.java
  52. 6
      designer_chart/src/com/fr/plugin/chart/pie/RadiusCardLayoutPane.java
  53. 9
      designer_chart/src/com/fr/plugin/chart/pie/VanChartPieSeriesPane.java
  54. 1
      designer_chart/src/com/fr/plugin/chart/radar/VanChartRadarSeriesPane.java
  55. 7
      designer_chart/src/com/fr/plugin/chart/range/component/LegendLabelFormatPane.java
  56. 10
      designer_chart/src/com/fr/plugin/chart/scatter/VanChartScatterSeriesPane.java
  57. 13
      designer_chart/src/com/fr/plugin/chart/treemap/style/VanChartTreeMapSeriesPane.java
  58. 8
      designer_chart/src/com/fr/plugin/chart/wordcloud/designer/WordCloudIndependentVanChartInterface.java
  59. 2
      designer_chart/src/com/fr/plugin/chart/wordcloud/designer/data/WordCloudPlotReportDataContentPane.java
  60. 7
      designer_chart/src/com/fr/plugin/chart/wordcloud/designer/data/WordCloudPlotTableDataContentPane.java
  61. 4
      designer_form/src/com/fr/design/mainframe/widget/accessibles/AccessibleWLayoutBorderStyleEditor.java
  62. 4
      designer_form/src/com/fr/design/widget/ui/designer/LabelDefinePane.java

4
designer/src/com/fr/design/widget/ui/ParameterTreeComboBox.java

@ -15,6 +15,7 @@ import com.fr.general.Inter;
import com.fr.script.Calculator; import com.fr.script.Calculator;
import com.fr.stable.ArrayUtils; import com.fr.stable.ArrayUtils;
import com.fr.stable.ParameterProvider; import com.fr.stable.ParameterProvider;
import com.fr.stable.StringUtils;
import javax.swing.*; import javax.swing.*;
import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.DefaultMutableTreeNode;
@ -76,7 +77,8 @@ public class ParameterTreeComboBox extends FRTreeComboBox {
if (obj instanceof TreePath) { if (obj instanceof TreePath) {
return ((Parameter)((ExpandMutableTreeNode)((TreePath)obj).getLastPathComponent()).getUserObject()).getName(); return ((Parameter)((ExpandMutableTreeNode)((TreePath)obj).getLastPathComponent()).getUserObject()).getName();
} }
return (String)obj; Object item = this.getEditor().getItem();
return item == null ? StringUtils.EMPTY : item.toString();
} }
@Override @Override

38
designer/src/com/fr/poly/PolyDesignUI.java

@ -3,12 +3,7 @@
*/ */
package com.fr.poly; package com.fr.poly;
import java.awt.Color; import java.awt.*;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.geom.Rectangle2D; import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage; import java.awt.image.BufferedImage;
import java.text.DecimalFormat; import java.text.DecimalFormat;
@ -29,6 +24,7 @@ import com.fr.page.PaperSettingProvider;
import com.fr.page.ReportSettingsProvider; import com.fr.page.ReportSettingsProvider;
import com.fr.poly.creator.BlockCreator; import com.fr.poly.creator.BlockCreator;
import com.fr.poly.creator.ECBlockCreator; import com.fr.poly.creator.ECBlockCreator;
import com.fr.poly.creator.ECBlockEditor;
import com.fr.poly.model.AddedData; import com.fr.poly.model.AddedData;
import com.fr.poly.model.AddingData; import com.fr.poly.model.AddingData;
import com.fr.report.report.Report; import com.fr.report.report.Report;
@ -101,6 +97,7 @@ public class PolyDesignUI extends ComponentUI {
paintAddingData(g2d, addData); paintAddingData(g2d, addData);
} }
paintPaginateLine(g2d); paintPaginateLine(g2d);
designer.repaint();
} }
private void paintAddedData(Graphics g) { private void paintAddedData(Graphics g) {
@ -109,8 +106,8 @@ public class PolyDesignUI extends ComponentUI {
BlockCreator creator = addedData.getAddedAt(i); BlockCreator creator = addedData.getAddedAt(i);
// richer:如果当前这个组件正在编辑,那么他是完全被他的编辑器所遮挡的,不需要画出来 // richer:如果当前这个组件正在编辑,那么他是完全被他的编辑器所遮挡的,不需要画出来
if (creator == designer.getSelection()) { if (creator == designer.getSelection()) {
paintPositionLine(g, creator.getX(time), creator.getY(time), paintPositionLine(g, Math.round(creator.getX() * time), Math.round(creator.getY() * time),
(int) (designer.getHorizontalValue()*time), (int) (designer.getVerticalValue()*time)); Math.round(designer.getHorizontalValue()*time), Math.round(designer.getVerticalValue()*time));
if (creator.getEditor().isDragging()) { if (creator.getEditor().isDragging()) {
creator.getEditor().paintAbsorptionline(g); creator.getEditor().paintAbsorptionline(g);
//如果与其他块重合了, 需要画出提示禁止重叠 //如果与其他块重合了, 需要画出提示禁止重叠
@ -121,8 +118,8 @@ public class PolyDesignUI extends ComponentUI {
creator.getEditor().hideForbiddenWindow(); creator.getEditor().hideForbiddenWindow();
} }
} else { } else {
paintCreator(g, creator, (int) (creator.getX()*time - designer.getHorizontalValue()*time), (int) (creator.getY()*time - designer.getVerticalValue()*time), paintCreator(g, creator, creator.getX() - designer.getHorizontalValue(), creator.getY() - designer.getVerticalValue(),
(int) (creator.getWidth()*time), (int) (creator.getHeight()*time)); creator.getWidth(), creator.getHeight());
} }
} }
} }
@ -223,16 +220,19 @@ public class PolyDesignUI extends ComponentUI {
ArrayList<JComponent> dbcomponents = new ArrayList<JComponent>(); ArrayList<JComponent> dbcomponents = new ArrayList<JComponent>();
// richer:禁止双缓冲行为,否则会出现两个图像 // richer:禁止双缓冲行为,否则会出现两个图像
ComponentUtils.disableBuffer(comp, dbcomponents); ComponentUtils.disableBuffer(comp, dbcomponents);
// Graphics clipg = g.create(x, y, width*resolution/ScreenResolution.getScreenResolution(), height*resolution/ScreenResolution.getScreenResolution()); if (comp instanceof ECBlockCreator) {
// Graphics clipg = g.create((int) (x * time), (int) (y * time), (int) (width * time), (int) (height * time));
BufferedImage img = CoreGraphHelper.createBufferedImage(comp.getWidth(), comp.getHeight(), BufferedImage.TYPE_INT_RGB); comp.paint(clipg);
Graphics2D g2d = img.createGraphics(); clipg.dispose();
comp.printAll(g2d); }else {
g2d.dispose(); BufferedImage img = CoreGraphHelper.createBufferedImage(comp.getWidth(), comp.getHeight(), BufferedImage.TYPE_INT_RGB);
g.drawImage(img,x,y,width,height,null); Graphics2D g2d = img.createGraphics();
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
comp.printAll(g2d);
g2d.dispose();
g.drawImage(img, (int) (x * time), (int) (y * time), (int) (width * time), (int) (height * time),null);
}
// comp.paint(clipg);
// clipg.dispose();
ComponentUtils.resetBuffer(dbcomponents); ComponentUtils.resetBuffer(dbcomponents);
} }

9
designer/src/com/fr/poly/PolyUtils.java

@ -115,11 +115,10 @@ public class PolyUtils {
AddedData addedData = designer.getAddedData(); AddedData addedData = designer.getAddedData();
for (int count = addedData.getAddedCount() - 1; count >= 0; count--) { for (int count = addedData.getAddedCount() - 1; count >= 0; count--) {
BlockCreator creator = addedData.getAddedAt(count); BlockCreator creator = addedData.getAddedAt(count);
float times = (float) designer.getResolution()/ScreenResolution.getScreenResolution(); int cx = creator.getX();
int cx = (int) (creator.getX() * times); int cy = creator.getY();
int cy = (int) (creator.getY() * times); int cw = creator.getWidth();
int cw = (int) (creator.getWidth() * times); int ch = creator.getHeight();
int ch = (int) (creator.getHeight() * times);
if (x >= cx && x <= (cx + cw)) { if (x >= cx && x <= (cx + cw)) {
if(y >= cy && y <= (cy + ch)) { if(y >= cy && y <= (cy + ch)) {
return creator; return creator;

1
designer/src/com/fr/poly/creator/ECBlockEditor.java

@ -34,6 +34,7 @@ import java.awt.*;
*/ */
public class ECBlockEditor extends BlockEditor<ECBlockPane, PolyECBlock> { public class ECBlockEditor extends BlockEditor<ECBlockPane, PolyECBlock> {
private static final int HEIGHT_MORE = 5; private static final int HEIGHT_MORE = 5;
private int resolution = ScreenResolution.getScreenResolution();
public ECBlockEditor(PolyDesigner designer, ECBlockCreator creator) { public ECBlockEditor(PolyDesigner designer, ECBlockCreator creator) {
super(designer, creator); super(designer, creator);

18
designer_base/src/com/fr/design/gui/style/FormatPane.java

@ -9,7 +9,9 @@ import com.fr.data.core.FormatField.FormatContents;
import com.fr.design.border.UIRoundedBorder; import com.fr.design.border.UIRoundedBorder;
import com.fr.design.constants.LayoutConstants; import com.fr.design.constants.LayoutConstants;
import com.fr.design.constants.UIConstants; import com.fr.design.constants.UIConstants;
import com.fr.design.gui.icombobox.*; import com.fr.design.gui.icombobox.TextFontComboBox;
import com.fr.design.gui.icombobox.UIComboBox;
import com.fr.design.gui.icombobox.UIComboBoxRenderer;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper; import com.fr.design.layout.TableLayoutHelper;
@ -21,8 +23,6 @@ import javax.swing.*;
import javax.swing.border.Border; import javax.swing.border.Border;
import javax.swing.border.TitledBorder; import javax.swing.border.TitledBorder;
import java.awt.*; import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent; import java.awt.event.ItemEvent;
import java.awt.event.ItemListener; import java.awt.event.ItemListener;
import java.text.Format; import java.text.Format;
@ -108,8 +108,7 @@ public class FormatPane extends AbstractBasicStylePane {
UILabel font = new UILabel(Inter.getLocText("FR-Designer_FRFont"), SwingConstants.LEFT); UILabel font = new UILabel(Inter.getLocText("FR-Designer_FRFont"), SwingConstants.LEFT);
JPanel fontPane = new JPanel(new BorderLayout()); JPanel fontPane = new JPanel(new BorderLayout());
fontPane.add(font, BorderLayout.NORTH); fontPane.add(font, BorderLayout.NORTH);
double f = TableLayout.FILL;
double p = TableLayout.PREFERRED;
typeComboBox.setPreferredSize(new Dimension(155,20)); typeComboBox.setPreferredSize(new Dimension(155,20));
JPanel typePane = new JPanel(new BorderLayout()); JPanel typePane = new JPanel(new BorderLayout());
typePane.add(typeComboBox, BorderLayout.CENTER); typePane.add(typeComboBox, BorderLayout.CENTER);
@ -118,11 +117,16 @@ public class FormatPane extends AbstractBasicStylePane {
frFontPane.setBorder(LEFT_BORDER); frFontPane.setBorder(LEFT_BORDER);
Component[][] components = getComponent(fontPane, centerPane, typePane); Component[][] components = getComponent(fontPane, centerPane, typePane);
this.add(createContentPane(components), BorderLayout.CENTER);
}
protected JPanel createContentPane (Component[][] components) {
double f = TableLayout.FILL;
double p = TableLayout.PREFERRED;
double[] rowSize = {p, p, p, p, p}; double[] rowSize = {p, p, p, p, p};
double[] columnSize = {p, f}; double[] columnSize = {p, f};
int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}; int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}};
JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_LARGE, LayoutConstants.VGAP_MEDIUM); return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_LARGE, LayoutConstants.VGAP_MEDIUM);
this.add(panel, BorderLayout.CENTER);
} }

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

@ -951,7 +951,7 @@ zeroMarginWarn=\u7531\u4E8E\u6253\u5370\u673A\u5B58\u5728\u7269\u7406\u8FB9\u8DD
Widget-Date_Selector_Return_Type=\u8FD4\u56DE\u503C\u7C7B\u578B Widget-Date_Selector_Return_Type=\u8FD4\u56DE\u503C\u7C7B\u578B
Utils-Switch_To_Template_Reportlet=\u5207\u6362\u5230\u6A21\u677F\u7F51\u7EDC\u62A5\u8868 Utils-Switch_To_Template_Reportlet=\u5207\u6362\u5230\u6A21\u677F\u7F51\u7EDC\u62A5\u8868
satisfy=\u6EE1\u8DB3\u6761\u4EF6 satisfy=\u6EE1\u8DB3\u6761\u4EF6
FR-Designer_WidgetDisplyPosition=\u63A7\u4EF6\u663E\u793A\u4F4D\u7F6E FR-Designer_WidgetDisplyPosition=\u663E\u793A\u4F4D\u7F6E
FR-Base_Top=\u4E0A FR-Base_Top=\u4E0A
FR-Designer_Form-CheckBox=\u590D\u9009\u6846 FR-Designer_Form-CheckBox=\u590D\u9009\u6846
Reportlet-Parameter_Type=\u53C2\u6570\u4F20\u9012\u65B9\u5F0F Reportlet-Parameter_Type=\u53C2\u6570\u4F20\u9012\u65B9\u5F0F

5
designer_base/src/com/fr/design/mainframe/widget/accessibles/AccessibleIconEditor.java

@ -27,11 +27,6 @@ public class AccessibleIconEditor extends UneditableAccessibleEditor {
return new RendererField(new IconCellRenderer()); return new RendererField(new IconCellRenderer());
} }
protected void setBorderVisible(){
this.setBorder(BorderFactory.createLineBorder(Color.lightGray));
}
@Override @Override
protected void showEditorPane() { protected void showEditorPane() {
if (customIconPane == null) { if (customIconPane == null) {

13
designer_base/src/com/fr/design/mainframe/widget/accessibles/BaseAccessibleEditor.java

@ -1,9 +1,6 @@
package com.fr.design.mainframe.widget.accessibles; package com.fr.design.mainframe.widget.accessibles;
import java.awt.BorderLayout; import java.awt.*;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Insets;
import java.awt.event.ActionEvent; import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import java.awt.event.ActionListener;
import java.util.ArrayList; import java.util.ArrayList;
@ -45,11 +42,9 @@ public class BaseAccessibleEditor extends BasicPane implements AccessibleEditor
this.decoder = dec; this.decoder = dec;
initComponents(); initComponents();
txtValue.setEditable(dec != null); txtValue.setEditable(dec != null);
setBorderVisible(); ((JComponent) txtValue).setOpaque(true);
} ((JComponent) txtValue).setBorder(BorderFactory.createLineBorder(Color.lightGray));
((JComponent) txtValue).setBackground(Color.WHITE);
protected void setBorderVisible(){
((JComponent) txtValue).setBorder(null);
} }
@Override @Override

2
designer_base/src/com/fr/design/scrollruler/HorizontalRulerUI.java

@ -27,7 +27,7 @@ public class HorizontalRulerUI extends RulerUI {
g.setColor(BaseRuler.UNIT_SIGN_COLOR); g.setColor(BaseRuler.UNIT_SIGN_COLOR);
if (i % BaseRuler.SCALE_10 == 0) { if (i % BaseRuler.SCALE_10 == 0) {
double times = (double)HistoryTemplateListPane.getInstance().getCurrentEditingTemplate().getJTemplateResolution() / ScreenResolution.getScreenResolution(); double times = (double)HistoryTemplateListPane.getInstance().getCurrentEditingTemplate().getJTemplateResolution() / ScreenResolution.getScreenResolution();
String text = Utils.convertNumberStringToString(Math.round(i / times)); String text = Utils.convertNumberStringToString(Math.round((i / times) / showText));
Graphics2D gg = (Graphics2D) g.create((int) (toPX(i) / ratio) - extra + 1, 0, BaseRuler.NUMBER_100, size.height); Graphics2D gg = (Graphics2D) g.create((int) (toPX(i) / ratio) - extra + 1, 0, BaseRuler.NUMBER_100, size.height);
BaseUtils.drawStringStyleInRotation(gg, BaseRuler.NUMBER_100, BaseRuler.NUMBER_14, text, Style.getInstance().deriveHorizontalAlignment( BaseUtils.drawStringStyleInRotation(gg, BaseRuler.NUMBER_100, BaseRuler.NUMBER_14, text, Style.getInstance().deriveHorizontalAlignment(
Style.LEFT_TO_RIGHT).deriveFRFont(BaseRuler.TEXT_FONT), ScreenResolution.getScreenResolution()); Style.LEFT_TO_RIGHT).deriveFRFont(BaseRuler.TEXT_FONT), ScreenResolution.getScreenResolution());

2
designer_base/src/com/fr/design/scrollruler/VerticalRulerUI.java

@ -24,7 +24,7 @@ public class VerticalRulerUI extends RulerUI{
g.setColor(BaseRuler.UNIT_SIGN_COLOR); g.setColor(BaseRuler.UNIT_SIGN_COLOR);
if (i % BaseRuler.SCALE_10 == 0) { if (i % BaseRuler.SCALE_10 == 0) {
double times = (double) HistoryTemplateListPane.getInstance().getCurrentEditingTemplate().getJTemplateResolution() / ScreenResolution.getScreenResolution(); double times = (double) HistoryTemplateListPane.getInstance().getCurrentEditingTemplate().getJTemplateResolution() / ScreenResolution.getScreenResolution();
String text = Utils.convertNumberStringToString(Math.round(i / times)); String text = Utils.convertNumberStringToString(Math.round((i / times) / showText));
GraphHelper.drawLine(g, size.width, toPX(i) / ratio - extra, 0, toPX(i) / ratio - extra); GraphHelper.drawLine(g, size.width, toPX(i) / ratio - extra, 0, toPX(i) / ratio - extra);
Graphics2D gg = (Graphics2D) g.create(0, (int) (toPX(i) / ratio - extra + 1), size.width, BaseRuler.NUMBER_99); Graphics2D gg = (Graphics2D) g.create(0, (int) (toPX(i) / ratio - extra + 1), size.width, BaseRuler.NUMBER_99);
BaseUtils.drawStringStyleInRotation(gg, BaseRuler.NUMBER_11, BaseRuler.NUMBER_100, text, Style.getInstance().deriveVerticalAlignment(1).deriveRotation( BaseUtils.drawStringStyleInRotation(gg, BaseRuler.NUMBER_11, BaseRuler.NUMBER_100, text, Style.getInstance().deriveVerticalAlignment(1).deriveRotation(

15
designer_base/src/com/fr/design/widget/component/DateValuePane.java

@ -1,11 +1,12 @@
package com.fr.design.widget.component; package com.fr.design.widget.component;
import com.fr.base.Formula;
import com.fr.design.constants.LayoutConstants; import com.fr.design.constants.LayoutConstants;
import com.fr.design.editor.editor.*; import com.fr.design.editor.editor.*;
import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ibutton.UIButtonGroup;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.stable.StringUtils;
import javax.swing.*; import javax.swing.*;
import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener; import javax.swing.event.ChangeListener;
@ -17,13 +18,16 @@ import java.awt.*;
public class DateValuePane extends JPanel { public class DateValuePane extends JPanel {
private UIButtonGroup widgetValueHead; private UIButtonGroup widgetValueHead;
private Editor[] editor; private Editor[] editor;
private static final String NONE_EDITOR_NAME = Inter.getLocText("None");
private static final String DATE_EDITOR_NAME = Inter.getLocText("Date");
private static final String FORMULA_EDITOR_NAME = Inter.getLocText("Parameter-Formula");
public DateValuePane() { public DateValuePane() {
editor = new Editor[]{ editor = new Editor[]{
new NoneEditor(null, Inter.getLocText("None")), new NoneEditor(null, NONE_EDITOR_NAME),
new DateEditor(true, Inter.getLocText("Date")), new DateEditor(true, DATE_EDITOR_NAME),
new FormulaEditor(Inter.getLocText("Parameter-Formula")) new FormulaEditor(FORMULA_EDITOR_NAME)
}; };
this.setLayout(new BorderLayout(0, LayoutConstants.VGAP_SMALL)); this.setLayout(new BorderLayout(0, LayoutConstants.VGAP_SMALL));
final CardLayout cardLayout = new CardLayout(); final CardLayout cardLayout = new CardLayout();
@ -56,6 +60,9 @@ public class DateValuePane extends JPanel {
int index = widgetValueHead.getSelectedIndex(); int index = widgetValueHead.getSelectedIndex();
Editor e = editor[index]; Editor e = editor[index];
Object value = e.getValue(); Object value = e.getValue();
if(value == null && ComparatorUtils.equals(FORMULA_EDITOR_NAME, e.getName())){
value = new Formula(StringUtils.EMPTY);
}
return value; return value;
} }

74
designer_base/src/com/fr/design/widget/component/NumberEditorValidatePane.java

@ -1,7 +1,6 @@
package com.fr.design.widget.component; package com.fr.design.widget.component;
import com.fr.design.designer.IntervalConstants; import com.fr.design.designer.IntervalConstants;
import com.fr.design.dialog.BasicPane;
import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.icheckbox.UICheckBox;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.ispinner.UIBasicSpinner; import com.fr.design.gui.ispinner.UIBasicSpinner;
@ -12,6 +11,7 @@ import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper; import com.fr.design.layout.TableLayoutHelper;
import com.fr.form.ui.NumberEditor; import com.fr.form.ui.NumberEditor;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.stable.StringUtils;
import javax.swing.*; import javax.swing.*;
import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeEvent;
@ -35,10 +35,8 @@ public class NumberEditorValidatePane extends JPanel {
private SpinnerNumberModel minValueModel; private SpinnerNumberModel minValueModel;
private UISpinner decimalLength; private UISpinner decimalLength;
private JPanel limitNumberPane; private JPanel limitNumberPane;
private UITextField maxValueErrorTextField; private UITextField errorMsgTextField;
private UITextField minValueErrorTextField; private JPanel errorMsgTextFieldPane;
private JPanel maxValueFieldPane;
private JPanel minValueFieldPane;
private ActionListener allowDecimalsListener; private ActionListener allowDecimalsListener;
@ -79,13 +77,10 @@ public class NumberEditorValidatePane extends JPanel {
this.setMinValueCheckBox.addActionListener(setMinListener); this.setMinValueCheckBox.addActionListener(setMinListener);
this.minValueSpinner.addChangeListener(minValueChangeListener); this.minValueSpinner.addChangeListener(minValueChangeListener);
setMinValueCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0)); setMinValueCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
initMaxMinValueFieldPane(); initErrorMsgPane();
JPanel maxValueBorderPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); JPanel errorMsgBorderPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
maxValueBorderPane.setBorder(BorderFactory.createEmptyBorder(0, IntervalConstants.INTERVAL_L5, 0, 0)); errorMsgBorderPane.setBorder(BorderFactory.createEmptyBorder(0, IntervalConstants.INTERVAL_L5, IntervalConstants.INTERVAL_L1, 0));
maxValueBorderPane.add(maxValueFieldPane, BorderLayout.CENTER); errorMsgBorderPane.add(errorMsgTextFieldPane, BorderLayout.CENTER);
JPanel minValueBorderPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
minValueBorderPane.setBorder(BorderFactory.createEmptyBorder(0, IntervalConstants.INTERVAL_L5, IntervalConstants.INTERVAL_L1, 0));
minValueBorderPane.add(minValueFieldPane, BorderLayout.CENTER);
UILabel numberLabel = new UILabel(Inter.getLocText(new String[]{"FR-Designer_Double", "Numbers"})); UILabel numberLabel = new UILabel(Inter.getLocText(new String[]{"FR-Designer_Double", "Numbers"}));
limitNumberPane = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{new Component[]{numberLabel, decimalLength}}, TableLayoutHelper.FILL_LASTCOLUMN, 18, 7); limitNumberPane = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{new Component[]{numberLabel, decimalLength}}, TableLayoutHelper.FILL_LASTCOLUMN, 18, 7);
limitNumberPane.setBorder(BorderFactory.createEmptyBorder(0, IntervalConstants.INTERVAL_L5, 0, 0)); limitNumberPane.setBorder(BorderFactory.createEmptyBorder(0, IntervalConstants.INTERVAL_L5, 0, 0));
@ -96,37 +91,20 @@ public class NumberEditorValidatePane extends JPanel {
new Component[]{limitNumberPane, null}, new Component[]{limitNumberPane, null},
new Component[]{allowNegativeCheckBox, null}, new Component[]{allowNegativeCheckBox, null},
new Component[]{setMaxValueCheckBox, maxValueSpinner}, new Component[]{setMaxValueCheckBox, maxValueSpinner},
new Component[]{maxValueBorderPane, null},
new Component[]{setMinValueCheckBox, minValueSpinner}, new Component[]{setMinValueCheckBox, minValueSpinner},
new Component[]{minValueBorderPane, null}, new Component[]{errorMsgBorderPane, null},
}; };
double[] rowSize = {p, p, p, p, p, p, p}; double[] rowSize = {p, p, p, p, p, p};
double[] columnSize = {p, f}; double[] columnSize = {p, f};
int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}; int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}};
JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, 10, 7); JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_L2, IntervalConstants.INTERVAL_L1);
this.add(panel); this.add(panel);
} }
private void initMaxMinValueFieldPane() { private void initErrorMsgPane() {
maxValueErrorTextField = new UITextField(); errorMsgTextField = new UITextField();
minValueErrorTextField = new UITextField(); errorMsgTextFieldPane = TableLayoutHelper.createGapTableLayoutPane(
new Component[][]{new Component[]{new UILabel(Inter.getLocText("FR-Designer_Widget_Error_Tip")), errorMsgTextField}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_L2, IntervalConstants.INTERVAL_L1);
maxValueFieldPane = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{new Component[]{new UILabel(Inter.getLocText("FR-Designer_Widget_Error_Tip")), maxValueErrorTextField}}, TableLayoutHelper.FILL_LASTCOLUMN, 18, 7);
setMaxValueCheckBox.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
maxValueFieldPane.setVisible(setMaxValueCheckBox.isSelected());
}
});
minValueFieldPane = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{new Component[]{new UILabel(Inter.getLocText("FR-Designer_Widget_Error_Tip")), minValueErrorTextField}}, TableLayoutHelper.FILL_LASTCOLUMN, 18, 7);
setMinValueCheckBox.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
minValueFieldPane.setVisible(setMinValueCheckBox.isSelected());
}
});
} }
@ -257,28 +235,31 @@ public class NumberEditorValidatePane extends JPanel {
allowNegativeCheckBox.setSelected(e.isAllowNegative()); allowNegativeCheckBox.setSelected(e.isAllowNegative());
if (e.getMaxValue() == Double.MAX_VALUE) { if (e.getMaxValue() == Double.MAX_VALUE) {
setMaxValueCheckBox.setSelected(false); setMaxValueCheckBox.setSelected(false);
maxValueFieldPane.setVisible(false); // maxValueFieldPane.setVisible(false);
maxValueSpinner.setValue(new Double(Double.MAX_VALUE)); maxValueSpinner.setValue(new Double(Double.MAX_VALUE));
maxValueSpinner.setEnabled(false); maxValueSpinner.setEnabled(false);
} else { } else {
setMaxValueCheckBox.setSelected(true); setMaxValueCheckBox.setSelected(true);
maxValueSpinner.setEnabled(true); maxValueSpinner.setEnabled(true);
maxValueFieldPane.setVisible(true);
maxValueSpinner.setValue(new Double(e.getMaxValue())); maxValueSpinner.setValue(new Double(e.getMaxValue()));
} }
if (e.getMinValue() == -Double.MAX_VALUE) { if (e.getMinValue() == -Double.MAX_VALUE) {
setMinValueCheckBox.setSelected(false); setMinValueCheckBox.setSelected(false);
minValueFieldPane.setVisible(false);
minValueSpinner.setValue(new Double(-Double.MAX_VALUE)); minValueSpinner.setValue(new Double(-Double.MAX_VALUE));
minValueSpinner.setEnabled(false); minValueSpinner.setEnabled(false);
} else { } else {
setMinValueCheckBox.setSelected(true); setMinValueCheckBox.setSelected(true);
minValueFieldPane.setVisible(true);
minValueSpinner.setEnabled(true); minValueSpinner.setEnabled(true);
minValueSpinner.setValue(new Double(e.getMinValue())); minValueSpinner.setValue(new Double(e.getMinValue()));
} }
errorMsgTextField.setText(e.getRegErrorMessage());
if(e.getMaxValue() == Double.MAX_VALUE || e.getMinValue() == -Double.MAX_VALUE){
errorMsgTextFieldPane.setVisible(true);
}else{
errorMsgTextFieldPane.setVisible(false);
}
} }
public void update(NumberEditor ob) { public void update(NumberEditor ob) {
@ -289,15 +270,22 @@ public class NumberEditorValidatePane extends JPanel {
ob.setAllowNegative(allowNegativeCheckBox.isSelected()); ob.setAllowNegative(allowNegativeCheckBox.isSelected());
if (setMaxValueCheckBox.isSelected()) { if (setMaxValueCheckBox.isSelected()) {
ob.setMaxValue(Double.parseDouble("" + maxValueSpinner.getValue())); ob.setMaxValue(Double.parseDouble(StringUtils.EMPTY + maxValueSpinner.getValue()));
} else { } else {
ob.setMaxValue(Double.MAX_VALUE); ob.setMaxValue(Double.MAX_VALUE);
} }
if (setMinValueCheckBox.isSelected()) { if (setMinValueCheckBox.isSelected()) {
ob.setMinValue(Double.parseDouble("" + minValueSpinner.getValue())); ob.setMinValue(Double.parseDouble(StringUtils.EMPTY + minValueSpinner.getValue()));
} else { } else {
ob.setMinValue(-Double.MAX_VALUE); ob.setMinValue(-Double.MAX_VALUE);
} }
if(setMinValueCheckBox.isSelected() || setMaxValueCheckBox.isSelected()){
errorMsgTextFieldPane.setVisible(true);
}else{
errorMsgTextFieldPane.setVisible(false);
errorMsgTextField.setText(StringUtils.EMPTY);
}
ob.setRegErrorMessage(errorMsgTextField.getText());
} }
} }

15
designer_base/src/com/fr/start/BaseDesigner.java

@ -22,10 +22,19 @@ import com.fr.env.SignIn;
import com.fr.file.FILE; import com.fr.file.FILE;
import com.fr.file.FILEFactory; import com.fr.file.FILEFactory;
import com.fr.file.FileFILE; import com.fr.file.FileFILE;
import com.fr.general.*; import com.fr.general.ComparatorUtils;
import com.fr.general.FRLogger;
import com.fr.general.GeneralContext;
import com.fr.general.Inter;
import com.fr.general.ModuleContext;
import com.fr.plugin.PluginCollector; import com.fr.plugin.PluginCollector;
import com.fr.plugin.manage.PluginManager; import com.fr.plugin.manage.PluginManager;
import com.fr.stable.*; import com.fr.plugin.manage.PluginStartup;
import com.fr.stable.ArrayUtils;
import com.fr.stable.BuildContext;
import com.fr.stable.OperatingSystem;
import com.fr.stable.ProductConstants;
import com.fr.stable.StableUtils;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
@ -84,7 +93,7 @@ public abstract class BaseDesigner extends ToolBarMenuDock {
DesignUtils.creatListeningServer(getStartPort(), startFileSuffix()); DesignUtils.creatListeningServer(getStartPort(), startFileSuffix());
//初始化插件引擎 //初始化插件引擎
PluginManager.init(); PluginStartup.start();
// 初始化Log Handler // 初始化Log Handler
DesignerEnvManager.loadLogSetting(); DesignerEnvManager.loadLogSetting();
DesignerFrame df = createDesignerFrame(); DesignerFrame df = createDesignerFrame();

1
designer_chart/src/com/fr/design/chart/javascript/ChartEmailPane.java

@ -45,7 +45,6 @@ public class ChartEmailPane extends EmailPane{
} else { } else {
double[] rSizes = { preferred, preferred, preferred, preferred, preferred, fill, preferred}; double[] rSizes = { preferred, preferred, preferred, preferred, preferred, fill, preferred};
contentPane = TableLayoutHelper.createCommonTableLayoutPane(new JComponent[][]{ contentPane = TableLayoutHelper.createCommonTableLayoutPane(new JComponent[][]{
{new UILabel(Inter.getLocText("Name") + ":", SwingConstants.RIGHT), itemNameTextField},
{new UILabel(), tipsPane1}, {new UILabel(), tipsPane1},
createLinePane(Inter.getLocText("HJS-Mail_to"), maitoEditor = new UITextField()), createLinePane(Inter.getLocText("HJS-Mail_to"), maitoEditor = new UITextField()),
createLinePane(Inter.getLocText("HJS-CC_to"), ccEditor = new UITextField()), createLinePane(Inter.getLocText("HJS-CC_to"), ccEditor = new UITextField()),

34
designer_chart/src/com/fr/design/mainframe/chart/gui/ChangeConfigPane.java

@ -9,7 +9,6 @@ import com.fr.chart.base.AttrChangeType;
import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.chartattr.ChartCollection;
import com.fr.design.beans.BasicBeanPane; import com.fr.design.beans.BasicBeanPane;
import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ibutton.UIButtonGroup;
import com.fr.design.gui.icheckbox.UICheckBox;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.gui.ispinner.UISpinner;
import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayout;
@ -28,6 +27,8 @@ import java.awt.event.ActionListener;
*/ */
public class ChangeConfigPane extends BasicBeanPane<ChartCollection> { public class ChangeConfigPane extends BasicBeanPane<ChartCollection> {
private static final int WIDTH = 100; private static final int WIDTH = 100;
private static final int EDIT_AREA_WIDTH = 180;
private static final int LABEL_WIDTH = 20;
private static final int MIN_TIME = 0; private static final int MIN_TIME = 0;
private static final int MAX_TIME = Integer.MAX_VALUE; private static final int MAX_TIME = Integer.MAX_VALUE;
private static final int CONSTANT_TEN = 10; private static final int CONSTANT_TEN = 10;
@ -97,38 +98,47 @@ public class ChangeConfigPane extends BasicBeanPane<ChartCollection> {
private JPanel createCarouseConfigPane() { private JPanel createCarouseConfigPane() {
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize = {p, f}; double[] columnSize = {p, f, p};
double[] rowSize = {p, p, p}; double[] rowSize = {p, p, p};
timeInterval = new UISpinner(MIN_TIME, MAX_TIME, 1, 0); timeInterval = new UISpinner(MIN_TIME, MAX_TIME, 1, 0);
colorSelectBox4carousel = new ColorSelectBoxWithOutTransparent(WIDTH); colorSelectBox4carousel = new ColorSelectBoxWithOutTransparent(WIDTH);
switchStyleGroup = new UIButtonGroup(new String[]{Inter.getLocText("FR-Designer_Show"), Inter.getLocText("FR-Designer_Hide")}); switchStyleGroup = new UIButtonGroup(new String[]{Inter.getLocText("FR-Designer_Show"), Inter.getLocText("FR-Designer_Hide")});
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Arrow_Style")), switchStyleGroup}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Arrow_Style")), switchStyleGroup, null},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Time_Interval")), timeInterval}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Time_Interval")), timeInterval, new UILabel(Inter.getLocText("FR-Base-Time_Second"))},
new Component[]{new UILabel(Inter.getLocText("Background")),colorSelectBox4carousel} new Component[]{new UILabel(Inter.getLocText("Background")),colorSelectBox4carousel, null}
}; };
return TableLayout4VanChartHelper.createGapTableLayoutPane(components, rowSize, columnSize); return TableLayout4VanChartHelper.createGapTableLayoutPane(components, rowSize, columnSize);
} }
private JPanel createTitleStylePane(){ private JPanel createTitleStylePane() {
styleAttrPane = new ChartTextAttrPane(){ UILabel text = new UILabel(Inter.getLocText("Plugin-Chart_Character"), SwingConstants.LEFT);
styleAttrPane = new ChartTextAttrPane() {
protected JPanel getContentPane(JPanel buttonPane) {
double p = TableLayout.PREFERRED;
double f = TableLayout.FILL;
double[] columnSize = {f, EDIT_AREA_WIDTH};
double[] rowSize = {p, p};
return TableLayout4VanChartHelper.createGapTableLayoutPane(getComponents(buttonPane), rowSize, columnSize);
}
protected Component[][] getComponents(JPanel buttonPane) { protected Component[][] getComponents(JPanel buttonPane) {
return new Component[][]{ return new Component[][]{
new Component[]{fontNameComboBox, null}, new Component[]{text, fontNameComboBox},
new Component[]{buttonPane, null} new Component[]{null, buttonPane}
}; };
} }
}; };
styleAttrPane.setPreferredSize(new Dimension(WIDTH, (int) styleAttrPane.getPreferredSize().getHeight())); return styleAttrPane;
return TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-Chart_Character"), styleAttrPane);
} }
private JPanel createButtonBackgroundColorPane(){ private JPanel createButtonBackgroundColorPane(){
colorSelectBox4button = new ColorSelectBoxWithOutTransparent(WIDTH); colorSelectBox4button = new ColorSelectBoxWithOutTransparent(WIDTH);
return TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Background"), colorSelectBox4button); return TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Background"), colorSelectBox4button, EDIT_AREA_WIDTH);
} }
private JPanel createButtonConfigPane() { private JPanel createButtonConfigPane() {

1
designer_chart/src/com/fr/design/mainframe/chart/gui/data/report/AbstractReportDataContentPane.java

@ -30,6 +30,7 @@ import java.util.List;
*/ */
public abstract class AbstractReportDataContentPane extends BasicBeanPane<ChartCollection>{ public abstract class AbstractReportDataContentPane extends BasicBeanPane<ChartCollection>{
private static final double ROW = 6; private static final double ROW = 6;
protected static final double COMPONENT_WIDTH = 124;
protected UICorrelationPane seriesPane; protected UICorrelationPane seriesPane;

4
designer_chart/src/com/fr/design/mainframe/chart/gui/data/table/AbstractTableDataContentPane.java

@ -13,7 +13,9 @@ import java.util.List;
public abstract class AbstractTableDataContentPane extends BasicBeanPane<ChartCollection>{ public abstract class AbstractTableDataContentPane extends BasicBeanPane<ChartCollection>{
private boolean isNeedSummaryCaculateMethod = true; protected static final double COMPONENT_WIDTH = 124;
private boolean isNeedSummaryCaculateMethod = true;
public abstract void updateBean(ChartCollection ob); public abstract void updateBean(ChartCollection ob);

19
designer_chart/src/com/fr/design/mainframe/chart/gui/style/ChartTextAttrPane.java

@ -134,9 +134,6 @@ public class ChartTextAttrPane extends BasicPane {
bold = new UIToggleButton(BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/bold.png")); bold = new UIToggleButton(BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/bold.png"));
italic = new UIToggleButton(BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/italic.png")); italic = new UIToggleButton(BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/italic.png"));
double p = TableLayout.PREFERRED;
double f = TableLayout.FILL;
Component[] components1 = new Component[]{ Component[] components1 = new Component[]{
fontColor, italic, bold fontColor, italic, bold
}; };
@ -144,16 +141,20 @@ public class ChartTextAttrPane extends BasicPane {
buttonPane.add(fontSizeComboBox, BorderLayout.CENTER); buttonPane.add(fontSizeComboBox, BorderLayout.CENTER);
buttonPane.add(GUICoreUtils.createFlowPane(components1, FlowLayout.LEFT, LayoutConstants.HGAP_LARGE), BorderLayout.EAST); buttonPane.add(GUICoreUtils.createFlowPane(components1, FlowLayout.LEFT, LayoutConstants.HGAP_LARGE), BorderLayout.EAST);
this.setLayout(new BorderLayout());
this.add(getContentPane(buttonPane), BorderLayout.CENTER);
populate(FRFont.getInstance());
}
protected JPanel getContentPane (JPanel buttonPane) {
double p = TableLayout.PREFERRED;
double f = TableLayout.FILL;
double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH;
double[] columnSize = {f,e}; double[] columnSize = {f,e};
double[] rowSize = {p, p, p}; double[] rowSize = {p, p, p};
return TableLayout4VanChartHelper.createGapTableLayoutPane(getComponents(buttonPane), rowSize, columnSize);
JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(getComponents(buttonPane), rowSize, columnSize);
this.setLayout(new BorderLayout());
this.add(panel, BorderLayout.CENTER);
populate(FRFont.getInstance());
} }
protected Component[][] getComponents(JPanel buttonPane) { protected Component[][] getComponents(JPanel buttonPane) {

8
designer_chart/src/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane.java

@ -259,9 +259,9 @@ public class UIColorPickerPane extends BasicPane implements UIObserver {
if (designTypeButtonGroup.getSelectedIndex() == 0) { if (designTypeButtonGroup.getSelectedIndex() == 0) {
return new Dimension(colorGroup.getPreferredSize().width + textGroup.getPreferredSize().width, upControlPane.getPreferredSize().height + MARGIN_TOP); return new Dimension(colorGroup.getPreferredSize().width + textGroup.getPreferredSize().width, upControlPane.getPreferredSize().height + MARGIN_TOP);
} else { } else {
int extra = stagePanel == null ? 0 : stagePanel.getPreferredSize().height + this.MARGIN_TOP; int extra = stagePanel == null ? 0 : stagePanel.getPreferredSize().height + MARGIN_TOP;
return new Dimension(colorGroup.getPreferredSize().width + textGroup.getPreferredSize().width, return new Dimension(colorGroup.getPreferredSize().width + textGroup.getPreferredSize().width,
extra + textGroup.getPreferredSize().height + upControlPane.getPreferredSize().height + OFF_HEIGHT); extra + textGroup.getPreferredSize().height + upControlPane.getPreferredSize().height + OFF_HEIGHT + MARGIN_TOP);
} }
} }
@ -616,8 +616,8 @@ public class UIColorPickerPane extends BasicPane implements UIObserver {
@Override @Override
public void layoutContainer(Container parent) { public void layoutContainer(Container parent) {
upControlPane.setBounds(MARGIN_LEFT, MARGIN_TOP, UPCONTROLPANE_WIDTH, upControlPane.getPreferredSize().height); upControlPane.setBounds(MARGIN_LEFT, MARGIN_TOP, UPCONTROLPANE_WIDTH, upControlPane.getPreferredSize().height);
colorGroup.setBounds(COLORGROUP_MARGIN_LEFT, MARGIN_TOP + upControlPane.getPreferredSize().height + LAYOUR_DET, colorGroup.getPreferredSize().width, colorGroup.getPreferredSize().height + upControlPane.getPreferredSize().height); colorGroup.setBounds(COLORGROUP_MARGIN_LEFT, 2 * MARGIN_TOP + upControlPane.getPreferredSize().height + LAYOUR_DET, colorGroup.getPreferredSize().width, colorGroup.getPreferredSize().height + upControlPane.getPreferredSize().height);
textGroup.setBounds(colorGroup.getPreferredSize().width + COLORGROUP_MARGIN_LEFT, upControlPane.getPreferredSize().height + LAYOUR_DET, textGroup.getPreferredSize().width, textGroup.getPreferredSize().height); textGroup.setBounds(colorGroup.getPreferredSize().width + COLORGROUP_MARGIN_LEFT, MARGIN_TOP + upControlPane.getPreferredSize().height + LAYOUR_DET, textGroup.getPreferredSize().width, textGroup.getPreferredSize().height);
} }
@Override @Override

2
designer_chart/src/com/fr/design/mainframe/chart/gui/type/ChartTabPane.java

@ -21,7 +21,7 @@ public abstract class ChartTabPane extends MultiTabPane<Chart> {
@Override @Override
protected void initLayout() { protected void initLayout() {
JPanel tabPanel = new JPanel(new BorderLayout()); JPanel tabPanel = new JPanel(new BorderLayout());
tabPanel.setBorder(BorderFactory.createMatteBorder(0, 0, 0, 10, getBackground())); tabPanel.setBorder(BorderFactory.createMatteBorder(0, 5, 0, 10, getBackground()));
tabPanel.add(tabPane, BorderLayout.CENTER); tabPanel.add(tabPane, BorderLayout.CENTER);
this.setLayout(new BorderLayout(0, 4)); this.setLayout(new BorderLayout(0, 4));
this.add(tabPanel, BorderLayout.NORTH); this.add(tabPanel, BorderLayout.NORTH);

16
designer_chart/src/com/fr/plugin/chart/bubble/VanChartBubbleSeriesPane.java

@ -12,7 +12,7 @@ import com.fr.plugin.chart.bubble.component.VanChartBubblePane;
import com.fr.plugin.chart.custom.component.VanChartCustomAxisConditionPane; import com.fr.plugin.chart.custom.component.VanChartCustomAxisConditionPane;
import com.fr.plugin.chart.designer.TableLayout4VanChartHelper; import com.fr.plugin.chart.designer.TableLayout4VanChartHelper;
import com.fr.plugin.chart.designer.style.series.VanChartAbstractPlotSeriesPane; import com.fr.plugin.chart.designer.style.series.VanChartAbstractPlotSeriesPane;
import com.fr.plugin.chart.designer.style.series.VanChartCustomStackAndAxisEditPane; import com.fr.plugin.chart.designer.style.series.VanChartStackedAndAxisListControlPane;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
@ -39,10 +39,13 @@ public class VanChartBubbleSeriesPane extends VanChartAbstractPlotSeriesPane {
new Component[]{getColorPane()}, new Component[]{getColorPane()},
new Component[]{createBubblePane()}, new Component[]{createBubblePane()},
new Component[]{createStackedAndAxisPane()}, new Component[]{createStackedAndAxisPane()},
new Component[]{createLargeDataModelPane()} new Component[]{null}
}; };
if (!((VanChartBubblePlot)plot).isForceBubble()) {
components[3] = new Component[]{createLargeDataModelPane()};
}
contentPane = TableLayoutHelper.createTableLayoutPane(components, row, col); contentPane = TableLayoutHelper.createTableLayoutPane(components, row, col);
return contentPane; return contentPane;
} }
@ -56,18 +59,19 @@ public class VanChartBubbleSeriesPane extends VanChartAbstractPlotSeriesPane {
@Override @Override
//堆积和坐标轴设置(自定义柱形图等用到) //堆积和坐标轴设置(自定义柱形图等用到)
protected JPanel createStackedAndAxisPane() { protected JPanel createStackedAndAxisPane() {
stackAndAxisEditPane = new VanChartCustomStackAndAxisEditPane(){ stackAndAxisEditPane = new VanChartStackedAndAxisListControlPane(){
@Override @Override
protected Class<? extends BasicBeanPane> getStackAndAxisPaneClass() { protected Class<? extends BasicBeanPane> getStackAndAxisPaneClass() {
return VanChartCustomAxisConditionPane.class; return VanChartCustomAxisConditionPane.class;
} }
@Override @Override
protected String getPaneTitle(){ public String getPaneTitle(){
return Inter.getLocText("Plugin-ChartF_Custom_Axis"); return Inter.getLocText("Plugin-ChartF_Custom_Axis");
} }
}; };
return stackAndAxisEditPane; stackAndAxisEditExpandablePane = TableLayout4VanChartHelper.createExpandablePaneWithTitle(stackAndAxisEditPane.getPaneTitle(), stackAndAxisEditPane);
return stackAndAxisEditExpandablePane;
} }
private JPanel createBubblePane() { private JPanel createBubblePane() {

4
designer_chart/src/com/fr/plugin/chart/bubble/data/VanChartBubblePlotTableDataContentPane.java

@ -48,10 +48,8 @@ public class VanChartBubblePlotTableDataContentPane extends AbstractTableDataCon
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize = {f};
double[] rowSize = {p, p};
double[] columnSize_north = {p, f}; double[] columnSize_north = {f, COMPONENT_WIDTH};
double[] rowSize_north = {p, p, p, p}; double[] rowSize_north = {p, p, p, p};
Component[][] components_north = new Component[][]{ Component[][] components_north = new Component[][]{

6
designer_chart/src/com/fr/plugin/chart/column/VanChartColumnSeriesPane.java

@ -69,13 +69,17 @@ public class VanChartColumnSeriesPane extends VanChartAbstractPlotSeriesPane {
private JPanel createSeriesStylePane(double[] row, double[] col) { private JPanel createSeriesStylePane(double[] row, double[] col) {
isFixedWidth = new UIButtonGroup<Integer>(new String[]{Inter.getLocText("Plugin-ChartF_YES"), Inter.getLocText("Plugin-ChartF_NO")}); isFixedWidth = new UIButtonGroup<Integer>(new String[]{Inter.getLocText("Plugin-ChartF_YES"), Inter.getLocText("Plugin-ChartF_NO")});
columnWidth = new UISpinner(0,1000,1,0); columnWidth = new UISpinner(0,1000,1,0);
columnWidth.setBorder(BorderFactory.createEmptyBorder(0, (int)TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH + TableLayout4VanChartHelper.COMPONENT_INTERVAL,0,0));
seriesGap = new UINumberDragPane(-100, 100); seriesGap = new UINumberDragPane(-100, 100);
categoryGap = new UINumberDragPane(0, 100); categoryGap = new UINumberDragPane(0, 100);
isFillWithImage = new UIButtonGroup<Integer>(new String[]{Inter.getLocText("Plugin-ChartF_YES"), Inter.getLocText("Plugin-ChartF_NO")}); isFillWithImage = new UIButtonGroup<Integer>(new String[]{Inter.getLocText("Plugin-ChartF_YES"), Inter.getLocText("Plugin-ChartF_NO")});
imagePane = new ImageBackgroundQuickPane(false); imagePane = new ImageBackgroundQuickPane(false);
imagePane.setBorder(BorderFactory.createEmptyBorder(0,(int)TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH + TableLayout4VanChartHelper.COMPONENT_INTERVAL,0,0));
JPanel panel1 = new JPanel(new BorderLayout()); JPanel panel1 = new JPanel(new BorderLayout());
panel1.add(TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-ChartF_Fixed_Column_Width"),isFixedWidth), BorderLayout.NORTH); JPanel isFixedWidthPane = TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-ChartF_Fixed_Column_Width"),isFixedWidth);
isFixedWidthPane.setBorder(BorderFactory.createEmptyBorder(0,0,6,0));
panel1.add(isFixedWidthPane, BorderLayout.NORTH);
panel1.add(columnWidth, BorderLayout.CENTER); panel1.add(columnWidth, BorderLayout.CENTER);
Component[][] components2 = new Component[][]{ Component[][] components2 = new Component[][]{

50
designer_chart/src/com/fr/plugin/chart/column/VanChartCustomStackAndAxisConditionPane.java

@ -33,12 +33,13 @@ public class VanChartCustomStackAndAxisConditionPane extends BasicBeanPane<Condi
private LiteConditionPane liteConditionPane; private LiteConditionPane liteConditionPane;
public VanChartCustomStackAndAxisConditionPane(){ public VanChartCustomStackAndAxisConditionPane() {
} }
private void doLayoutPane(){ private void doLayoutPane() {
this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS)); this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
this.removeAll();
//配置界面 //配置界面
JPanel deployPane = FRGUIPaneFactory.createBorderLayout_L_Pane(); JPanel deployPane = FRGUIPaneFactory.createBorderLayout_L_Pane();
@ -56,23 +57,22 @@ public class VanChartCustomStackAndAxisConditionPane extends BasicBeanPane<Condi
liteConditionPane.setPreferredSize(new Dimension(300, 300)); liteConditionPane.setPreferredSize(new Dimension(300, 300));
} }
private JPanel createDeployPane() private JPanel createDeployPane() {
{
isStacked = new UIButtonGroup<Integer>(new String[]{Inter.getLocText("Plugin-ChartF_YES"), Inter.getLocText("Plugin-ChartF_NO")}); isStacked = new UIButtonGroup<Integer>(new String[]{Inter.getLocText("Plugin-ChartF_YES"), Inter.getLocText("Plugin-ChartF_NO")});
isPercentStacked = new UIButtonGroup<Integer>(new String[]{Inter.getLocText("Plugin-ChartF_YES"), Inter.getLocText("Plugin-ChartF_NO")}); isPercentStacked = new UIButtonGroup<Integer>(new String[]{Inter.getLocText("Plugin-ChartF_YES"), Inter.getLocText("Plugin-ChartF_NO")});
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double[] columnSize = {p,p}; double[] columnSize = {p, p};
double[] rowSize = {p,p,p,p}; double[] rowSize = {p, p, p, p};
return TableLayoutHelper.createTableLayoutPane(getDeployComponents(), rowSize, columnSize); return TableLayoutHelper.createTableLayoutPane(getDeployComponents(), rowSize, columnSize);
} }
protected Component[][] getDeployComponents() { protected Component[][] getDeployComponents() {
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{new UILabel(Inter.getLocText("ChartF-X_Axis")),XAxis}, new Component[]{new UILabel(Inter.getLocText("ChartF-X_Axis")), XAxis},
new Component[]{new UILabel(Inter.getLocText("ChartF-Y_Axis")),YAxis}, new Component[]{new UILabel(Inter.getLocText("ChartF-Y_Axis")), YAxis},
new Component[]{new UILabel(Inter.getLocText("FR-Chart-Type_Stacked")),isStacked}, new Component[]{new UILabel(Inter.getLocText("FR-Chart-Type_Stacked")), isStacked},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_PercentStacked")),isPercentStacked}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_PercentStacked")), isPercentStacked},
}; };
isStacked.addActionListener(new ActionListener() { isStacked.addActionListener(new ActionListener() {
@ -93,8 +93,8 @@ public class VanChartCustomStackAndAxisConditionPane extends BasicBeanPane<Condi
isPercentStacked.setEnabled(isStacked.getSelectedIndex() == 0); isPercentStacked.setEnabled(isStacked.getSelectedIndex() == 0);
} }
public void populateBean(ConditionAttr conditionAttr){ public void populateBean(ConditionAttr conditionAttr) {
AttrSeriesStackAndAxis seriesStackAndAxis = (AttrSeriesStackAndAxis)conditionAttr.getExisted(AttrSeriesStackAndAxis.class); AttrSeriesStackAndAxis seriesStackAndAxis = (AttrSeriesStackAndAxis) conditionAttr.getExisted(AttrSeriesStackAndAxis.class);
XAxis = new UIButtonGroup<Integer>(seriesStackAndAxis.getXAxisNamesArray()); XAxis = new UIButtonGroup<Integer>(seriesStackAndAxis.getXAxisNamesArray());
YAxis = new UIButtonGroup<Integer>(seriesStackAndAxis.getYAxisNameArray()); YAxis = new UIButtonGroup<Integer>(seriesStackAndAxis.getYAxisNameArray());
@ -113,30 +113,26 @@ public class VanChartCustomStackAndAxisConditionPane extends BasicBeanPane<Condi
checkBox(); checkBox();
} }
public void updateBean(ConditionAttr conditionAttr){
AttrSeriesStackAndAxis seriesStackAndAxis = (AttrSeriesStackAndAxis)conditionAttr.getExisted(AttrSeriesStackAndAxis.class);
seriesStackAndAxis.setXAxisIndex(XAxis.getSelectedIndex());
seriesStackAndAxis.setYAxisIndex(YAxis.getSelectedIndex());
updateStackAndPercent(seriesStackAndAxis);
AbstractCondition con = (AbstractCondition) this.liteConditionPane.updateBean();
conditionAttr.setCondition(con);
}
protected void updateStackAndPercent(AttrSeriesStackAndAxis seriesStackAndAxis) { protected void updateStackAndPercent(AttrSeriesStackAndAxis seriesStackAndAxis) {
seriesStackAndAxis.setStacked(isStacked.getSelectedIndex() == 0); seriesStackAndAxis.setStacked(isStacked.getSelectedIndex() == 0);
if(seriesStackAndAxis.isStacked()){ if (seriesStackAndAxis.isStacked()) {
seriesStackAndAxis.setPercentStacked(isPercentStacked.getSelectedIndex() == 0); seriesStackAndAxis.setPercentStacked(isPercentStacked.getSelectedIndex() == 0);
} else { } else {
seriesStackAndAxis.setPercentStacked(false); seriesStackAndAxis.setPercentStacked(false);
} }
} }
public ConditionAttr updateBean(){ public ConditionAttr updateBean() {
ConditionAttr conditionAttr = new ConditionAttr(); ConditionAttr conditionAttr = new ConditionAttr();
updateBean(conditionAttr); AttrSeriesStackAndAxis seriesStackAndAxis = new AttrSeriesStackAndAxis();
seriesStackAndAxis.setXAxisIndex(XAxis.getSelectedIndex());
seriesStackAndAxis.setYAxisIndex(YAxis.getSelectedIndex());
updateStackAndPercent(seriesStackAndAxis);
conditionAttr.addDataSeriesCondition(seriesStackAndAxis);
AbstractCondition con = (AbstractCondition) this.liteConditionPane.updateBean();
conditionAttr.setCondition(con);
return conditionAttr; return conditionAttr;
} }

2
designer_chart/src/com/fr/plugin/chart/designer/AbstractVanChartScrollPane.java

@ -13,7 +13,7 @@ public abstract class AbstractVanChartScrollPane<T> extends BasicScrollPane<T> {
protected void layoutContentPane() { protected void layoutContentPane() {
leftcontentPane = createContentPane(); leftcontentPane = createContentPane();
leftcontentPane.setBorder(BorderFactory.createMatteBorder(0, 5, 0, 5, original)); leftcontentPane.setBorder(BorderFactory.createMatteBorder(0, 5, 0, 10, original));
this.add(leftcontentPane); this.add(leftcontentPane);
} }

1
designer_chart/src/com/fr/plugin/chart/designer/PlotFactory.java

@ -327,6 +327,7 @@ public class PlotFactory {
public static FormatPane createAutoFormatPane(){ public static FormatPane createAutoFormatPane(){
FormatPane formatPane = new FormatPane(){ FormatPane formatPane = new FormatPane(){
protected Component[][] getComponent (JPanel fontPane, JPanel centerPane, JPanel typePane) { protected Component[][] getComponent (JPanel fontPane, JPanel centerPane, JPanel typePane) {
typePane.setBorder(BorderFactory.createEmptyBorder());
return new Component[][]{ return new Component[][]{
new Component[]{typePane,null}, new Component[]{typePane,null},
new Component[]{centerPane, null}, new Component[]{centerPane, null},

5
designer_chart/src/com/fr/plugin/chart/designer/TableLayout4VanChartHelper.java

@ -5,7 +5,6 @@ import com.fr.design.foldablepane.UIExpandablePane;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper; import com.fr.design.layout.TableLayoutHelper;
import com.fr.general.Inter;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
@ -42,9 +41,11 @@ public class TableLayout4VanChartHelper {
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize = {f, componentWidth}; double[] columnSize = {f, componentWidth};
double[] rowSize = {p, p}; double[] rowSize = {p, p};
UILabel label = new UILabel(title);
label.setVerticalAlignment(SwingConstants.TOP);
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{null, null}, new Component[]{null, null},
new Component[]{new UILabel(Inter.getLocText(title)), component}, new Component[]{label, component},
}; };
return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, COMPONENT_INTERVAL, LayoutConstants.VGAP_LARGE); return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, COMPONENT_INTERVAL, LayoutConstants.VGAP_LARGE);
} }

16
designer_chart/src/com/fr/plugin/chart/designer/component/VanChartTrendLinePane.java

@ -47,16 +47,18 @@ public class VanChartTrendLinePane extends BasicPane{
trendLineStyle = new LineComboBox(VanChartConstants.ALERT_LINE_STYLE); trendLineStyle = new LineComboBox(VanChartConstants.ALERT_LINE_STYLE);
trendLineType = new UIComboBox(TYPES); trendLineType = new UIComboBox(TYPES);
prePeriod = new UISpinner(0,Integer.MAX_VALUE,1,0); prePeriod = new UISpinner(0, Integer.MAX_VALUE, 1, 0);
afterPeriod = new UISpinner(0,Integer.MAX_VALUE,1,0); afterPeriod = new UISpinner(0, Integer.MAX_VALUE, 1, 0);
double[] r = {p,p}; double[] r = {p, p};
double[] c = {p,f,p}; double[] c = {f, p, f, p};
Component[][] periodComps = new Component[][]{ Component[][] periodComps = new Component[][]{
new Component[]{new UILabel(Inter.getLocText("Chart_TrendLine_Forward")), prePeriod, new UILabel(Inter.getLocText("Plugin-ChartF_Cycle"))}, new Component[]{prePeriod, new UILabel(Inter.getLocText("Plugin-ChartF_Cycle")), afterPeriod, new UILabel(Inter.getLocText("Plugin-ChartF_Cycle"))},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_After_Period")), afterPeriod, new UILabel(Inter.getLocText("Plugin-ChartF_Cycle"))}, new Component[]{new UILabel(Inter.getLocText("Chart_TrendLine_Forward")), null, new UILabel(Inter.getLocText("Plugin-ChartF_After_Period")), null},
}; };
JPanel periodPane = TableLayoutHelper.createTableLayoutPane(periodComps, r, c); JPanel periodPane = TableLayoutHelper.createTableLayoutPane(periodComps, r, c);
UILabel label = new UILabel(Inter.getLocText("Plugin-ChartF_Period"));
label.setVerticalAlignment(SwingConstants.TOP);
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{null, null}, new Component[]{null, null},
@ -64,7 +66,7 @@ public class VanChartTrendLinePane extends BasicPane{
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_LineStyle")), trendLineStyle}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_LineStyle")), trendLineStyle},
new Component[]{new UILabel(Inter.getLocText("FR-Chart-Color_Color")), trendLineColor}, new Component[]{new UILabel(Inter.getLocText("FR-Chart-Color_Color")), trendLineColor},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_type")), trendLineType}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_type")), trendLineType},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Period")), periodPane} new Component[]{label, periodPane}
}; };
JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(components, row, col); JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(components, row, col);

24
designer_chart/src/com/fr/plugin/chart/designer/component/background/VanChartBackgroundPaneWithOutImageAndShadow.java

@ -16,23 +16,20 @@ import java.awt.*;
*/ */
public class VanChartBackgroundPaneWithOutImageAndShadow extends VanChartBackgroundPane { public class VanChartBackgroundPaneWithOutImageAndShadow extends VanChartBackgroundPane {
public VanChartBackgroundPaneWithOutImageAndShadow() { @Override
initComponents(); protected JPanel initContentPanel() {
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize = {p, f}; double[] columnSize = {p, f};
double[] rowSize = { p,p,p,p,p}; double[] rowSize = { p,p,p};
JPanel panel = TableLayoutHelper.createTableLayoutPane(getPaneComponents(),rowSize,columnSize); return TableLayoutHelper.createTableLayoutPane(getPaneComponents(),rowSize,columnSize);
this.setLayout(new BorderLayout());
this.add(panel,BorderLayout.CENTER);
} }
@Override @Override
protected void initList() { protected void initList() {
paneList.add(new NullBackgroundQuickPane(){ paneList.add(new NullBackgroundQuickPane() {
/** /**
* 名称 * 名称
* *
@ -46,14 +43,15 @@ public class VanChartBackgroundPaneWithOutImageAndShadow extends VanChartBackgro
paneList.add(new ColorBackgroundQuickPane()); paneList.add(new ColorBackgroundQuickPane());
} }
@Override @Override
protected Component[][] getPaneComponents() { protected Component[][] getPaneComponents() {
return new Component[][]{ return new Component[][]{
new Component[]{null, null}, new Component[]{typeComboBox, null},
new Component[]{new UILabel(Inter.getLocText("FR-Chart-Shape_Fill")), typeComboBox}, new Component[]{centerPane, null},
new Component[]{null, centerPane}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Alpha")), transparent},
new Component[]{new UILabel(Inter.getLocText("Plugin-Chart_Alpha")), transparent},
}; };
} }
} }

13
designer_chart/src/com/fr/plugin/chart/designer/component/format/FormatPaneWithOutFont.java

@ -2,7 +2,9 @@ package com.fr.plugin.chart.designer.component.format;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.style.FormatPane; import com.fr.design.gui.style.FormatPane;
import com.fr.design.layout.TableLayout;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.plugin.chart.designer.TableLayout4VanChartHelper;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
@ -14,12 +16,21 @@ import java.awt.*;
public class FormatPaneWithOutFont extends FormatPane { public class FormatPaneWithOutFont extends FormatPane {
private static final int HEIGHT = 30; private static final int HEIGHT = 30;
protected JPanel createContentPane(Component[][] components) {
double f = TableLayout.FILL;
double p = TableLayout.PREFERRED;
double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH;
double[] rowSize = {p, p, p};
double[] columnSize = {f, e};
return TableLayout4VanChartHelper.createGapTableLayoutPane(components, rowSize, columnSize);
}
protected Component[][] getComponent (JPanel fontPane, JPanel centerPane, JPanel typePane) { protected Component[][] getComponent (JPanel fontPane, JPanel centerPane, JPanel typePane) {
typePane.setBorder(BorderFactory.createEmptyBorder());
return new Component[][]{ return new Component[][]{
new Component[]{null, null}, new Component[]{null, null},
new Component[]{new UILabel(Inter.getLocText("FR-Base_Format"), SwingConstants.LEFT), typePane}, new Component[]{new UILabel(Inter.getLocText("FR-Base_Format"), SwingConstants.LEFT), typePane},
new Component[]{centerPane, null}, new Component[]{null, centerPane},
}; };
} }

20
designer_chart/src/com/fr/plugin/chart/designer/component/marker/VanChartImageMarkerPane.java

@ -26,14 +26,14 @@ public class VanChartImageMarkerPane extends BasicBeanPane<VanChartAttrMarker> {
public VanChartImageMarkerPane() { public VanChartImageMarkerPane() {
imageBackgroundPane = new ImageBackgroundQuickPane(false); imageBackgroundPane = new ImageBackgroundQuickPane(false);
imageBackgroundPane.setPreferredSize(new Dimension((int)TableLayout4VanChartHelper.EDIT_AREA_WIDTH, (int)imageBackgroundPane.getPreferredSize().getHeight())); imageBackgroundPane.setPreferredSize(getImageBackgroundPreferredSize(imageBackgroundPane.getPreferredSize()));
width = new UISpinner(0, 100, 0.5, 30); width = new UISpinner(0, 100, 0.5, 30);
height = new UISpinner(0, 100, 0.5, 30); height = new UISpinner(0, 100, 0.5, 30);
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] row = {p,p,p}; double[] row = {p, p, p};
double[] col = {p,f}; double[] col = {p, f};
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Width")), width}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Width")), width},
@ -43,11 +43,15 @@ public class VanChartImageMarkerPane extends BasicBeanPane<VanChartAttrMarker> {
JPanel sizePanel = TableLayoutHelper.createTableLayoutPane(components, row, col); JPanel sizePanel = TableLayoutHelper.createTableLayoutPane(components, row, col);
JPanel panel = createContentPane(imageBackgroundPane, sizePanel); JPanel panel = createContentPane(imageBackgroundPane, sizePanel);
panel.setBorder(BorderFactory.createEmptyBorder(0,72,0,0)); panel.setBorder(BorderFactory.createEmptyBorder(0, 72, 0, 0));
this.add(panel); this.add(panel);
} }
protected Dimension getImageBackgroundPreferredSize(Dimension dimension) {
return new Dimension((int) TableLayout4VanChartHelper.EDIT_AREA_WIDTH, (int) dimension.getHeight());
}
protected JPanel createContentPane(ImageBackgroundQuickPane imageBackgroundPane, JPanel sizePanel) { protected JPanel createContentPane(ImageBackgroundQuickPane imageBackgroundPane, JPanel sizePanel) {
JPanel panel = new JPanel(new BorderLayout(0, 4)); JPanel panel = new JPanel(new BorderLayout(0, 4));
panel.add(imageBackgroundPane, BorderLayout.CENTER); panel.add(imageBackgroundPane, BorderLayout.CENTER);
@ -67,11 +71,11 @@ public class VanChartImageMarkerPane extends BasicBeanPane<VanChartAttrMarker> {
@Override @Override
public void populateBean(VanChartAttrMarker marker) { public void populateBean(VanChartAttrMarker marker) {
if(marker == null){ if (marker == null) {
marker = new VanChartAttrMarker(); marker = new VanChartAttrMarker();
marker.setCommon(false); marker.setCommon(false);
} }
if(marker.getImageBackground() != null){ if (marker.getImageBackground() != null) {
imageBackgroundPane.populateBean(marker.getImageBackground()); imageBackgroundPane.populateBean(marker.getImageBackground());
} }
width.setValue(marker.getWidth()); width.setValue(marker.getWidth());
@ -88,10 +92,10 @@ public class VanChartImageMarkerPane extends BasicBeanPane<VanChartAttrMarker> {
return marker; return marker;
} }
public void updateBean(VanChartAttrMarker marker){ public void updateBean(VanChartAttrMarker marker) {
marker.setCommon(false); marker.setCommon(false);
marker.setMarkerType(MarkerType.MARKER_NULL); marker.setMarkerType(MarkerType.MARKER_NULL);
ImageBackground background = (ImageBackground)imageBackgroundPane.updateBean(); ImageBackground background = (ImageBackground) imageBackgroundPane.updateBean();
background.setLayout(Constants.IMAGE_EXTEND); background.setLayout(Constants.IMAGE_EXTEND);
marker.setImageBackground(background); marker.setImageBackground(background);
marker.setWidth(width.getValue()); marker.setWidth(width.getValue());

5
designer_chart/src/com/fr/plugin/chart/designer/other/VanChartConditionAttrContentPane.java

@ -4,7 +4,6 @@ import com.fr.chart.chartattr.Plot;
import com.fr.chart.chartglyph.ConditionAttr; import com.fr.chart.chartglyph.ConditionAttr;
import com.fr.chart.chartglyph.ConditionCollection; import com.fr.chart.chartglyph.ConditionCollection;
import com.fr.design.condition.ConditionAttributesPane; import com.fr.design.condition.ConditionAttributesPane;
import com.fr.design.gui.controlpane.UIListControlPane;
import com.fr.general.NameObject; import com.fr.general.NameObject;
import com.fr.stable.Nameable; import com.fr.stable.Nameable;
@ -17,7 +16,7 @@ import java.awt.*;
public class VanChartConditionAttrContentPane extends AbstractConditionAttrContentPane{ public class VanChartConditionAttrContentPane extends AbstractConditionAttrContentPane{
private static final Dimension DIALOG_SIZE = new Dimension(500, 600); private static final Dimension DIALOG_SIZE = new Dimension(500, 600);
private UIListControlPane conditionPane; private VanChartConditionListControlPane conditionPane;
public VanChartConditionAttrContentPane() { public VanChartConditionAttrContentPane() {
} }
@ -43,7 +42,7 @@ public class VanChartConditionAttrContentPane extends AbstractConditionAttrConte
nameables[i]=(new NameObject(collection.getConditionAttr(i).getName(),collection.getConditionAttr(i))); nameables[i]=(new NameObject(collection.getConditionAttr(i).getName(),collection.getConditionAttr(i)));
} }
conditionPane.populate(nameables); conditionPane.populate(nameables, showPane);
conditionPane.doLayout(); conditionPane.doLayout();
} }

6
designer_chart/src/com/fr/plugin/chart/designer/other/VanChartConditionListControlPane.java

@ -6,6 +6,7 @@ import com.fr.chart.chartglyph.ConditionAttr;
import com.fr.chart.chartglyph.ConditionCollection; import com.fr.chart.chartglyph.ConditionCollection;
import com.fr.design.ChartTypeInterfaceManager; import com.fr.design.ChartTypeInterfaceManager;
import com.fr.design.beans.BasicBeanPane; import com.fr.design.beans.BasicBeanPane;
import com.fr.design.condition.ConditionAttributesPane;
import com.fr.design.gui.controlpane.NameObjectCreator; import com.fr.design.gui.controlpane.NameObjectCreator;
import com.fr.design.gui.controlpane.NameableCreator; import com.fr.design.gui.controlpane.NameableCreator;
import com.fr.general.Inter; import com.fr.general.Inter;
@ -26,9 +27,10 @@ public class VanChartConditionListControlPane extends VanChartUIListControlPane
super(plot); super(plot);
} }
@Override public void populate(Nameable[] nameableArray, Class<? extends ConditionAttributesPane> showPane) {
public void populate(Nameable[] nameableArray) {
initComponentPane(); initComponentPane();
NameObjectCreator[] creators = new NameObjectCreator[]{new NameObjectCreator(Inter.getLocText("Condition_Attributes"), ConditionAttr.class, showPane)};
refreshNameableCreator(creators);
super.populate(nameableArray); super.populate(nameableArray);
} }

9
designer_chart/src/com/fr/plugin/chart/designer/other/VanChartInteractivePane.java

@ -131,8 +131,7 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
double[] columnSize = {f, e}; double[] columnSize = {f, e};
changeEnablePane = TableLayout4VanChartHelper.createGapTableLayoutPane(components, row, columnSize); changeEnablePane = TableLayout4VanChartHelper.createGapTableLayoutPane(components, row, columnSize);
changeEnablePane.setBorder(BorderFactory.createEmptyBorder(10,12,0,0)); changeEnablePane.setBorder(BorderFactory.createEmptyBorder(10,12,0,0));
zoomTypePane = TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-ChartF_ZoomType"), zoomType, TableLayout4VanChartHelper.SECOND_EDIT_AREA_WIDTH); zoomTypePane = getzoomTypePane(zoomType);
zoomTypePane.setBorder(BorderFactory.createEmptyBorder(0,12,0,0));
JPanel panel = createZoomPaneContent(zoomWidgetPane, zoomGesturePane, changeEnablePane, zoomTypePane, plot); JPanel panel = createZoomPaneContent(zoomWidgetPane, zoomGesturePane, changeEnablePane, zoomTypePane, plot);
zoomWidget.addActionListener(new ActionListener() { zoomWidget.addActionListener(new ActionListener() {
@Override @Override
@ -143,6 +142,12 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
return TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("Chart-Use_Zoom"), panel); return TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("Chart-Use_Zoom"), panel);
} }
protected JPanel getzoomTypePane(UIButtonGroup zoomType) {
JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-ChartF_ZoomType"), zoomType, TableLayout4VanChartHelper.SECOND_EDIT_AREA_WIDTH);
panel.setBorder(BorderFactory.createEmptyBorder(0,12,0,0));
return panel;
}
protected JPanel createZoomPaneContent(JPanel zoomWidgetPane, JPanel zoomGesturePane, JPanel changeEnablePane, JPanel zoomTypePane, VanChartPlot plot) { protected JPanel createZoomPaneContent(JPanel zoomWidgetPane, JPanel zoomGesturePane, JPanel changeEnablePane, JPanel zoomTypePane, VanChartPlot plot) {
JPanel panel = new JPanel(new BorderLayout(0, 4)); JPanel panel = new JPanel(new BorderLayout(0, 4));
if (plot.isSupportZoomCategoryAxis()) {//支持缩放控件 if (plot.isSupportZoomCategoryAxis()) {//支持缩放控件

2
designer_chart/src/com/fr/plugin/chart/designer/style/axis/VanChartBaseAxisPane.java

@ -176,7 +176,7 @@ public class VanChartBaseAxisPane extends FurtherBasicBeanPane<VanChartAxis> {
}; };
JPanel showLabelPane = TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-ChartF_AxisLabel"),showLabel); JPanel showLabelPane = TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-ChartF_AxisLabel"),showLabel);
labelPanel = TableLayoutHelper.createTableLayoutPane(components, row, col); labelPanel = TableLayout4VanChartHelper.createGapTableLayoutPane(components, row, col);
labelPanel.setBorder(BorderFactory.createEmptyBorder(0,10,0,0)); labelPanel.setBorder(BorderFactory.createEmptyBorder(0,10,0,0));
showLabel.addActionListener(new ActionListener() { showLabel.addActionListener(new ActionListener() {
@Override @Override

8
designer_chart/src/com/fr/plugin/chart/designer/style/datasheet/VanChartDataSheetPane.java

@ -4,7 +4,6 @@ import com.fr.base.FRContext;
import com.fr.chart.chartattr.Chart; import com.fr.chart.chartattr.Chart;
import com.fr.chart.chartattr.Plot; import com.fr.chart.chartattr.Plot;
import com.fr.chart.chartglyph.DataSheet; import com.fr.chart.chartglyph.DataSheet;
import com.fr.design.constants.LayoutConstants;
import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.icheckbox.UICheckBox;
import com.fr.design.gui.style.FormatPane; import com.fr.design.gui.style.FormatPane;
import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayout;
@ -89,8 +88,9 @@ public class VanChartDataSheetPane extends AbstractVanChartScrollPane<Chart> {
borderPane = new VanChartBorderPane(); borderPane = new VanChartBorderPane();
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH;
double[] columnSize = {LayoutConstants.CHART_ATTR_TOMARGIN, f}; double d = TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH;
double[] columnSize = {d, e};
double[] rowSize = {p,p,p}; double[] rowSize = {p,p,p};
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("FR-Base_Format"),formatPane),null}, new Component[]{TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("FR-Base_Format"),formatPane),null},
@ -98,7 +98,7 @@ public class VanChartDataSheetPane extends AbstractVanChartScrollPane<Chart> {
new Component[]{TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("Plugin-ChartF_Border"),borderPane),null}, new Component[]{TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("Plugin-ChartF_Border"),borderPane),null},
}; };
return TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize); return TableLayout4VanChartHelper.createGapTableLayoutPane(components,rowSize,columnSize);
} }
@Override @Override

1
designer_chart/src/com/fr/plugin/chart/designer/style/label/VanChartPlotLabelDetailPane.java

@ -205,6 +205,7 @@ public class VanChartPlotLabelDetailPane extends BasicPane {
private void checkStyleUse() { private void checkStyleUse() {
textFontPane.setVisible(style.getSelectedIndex() == 1); textFontPane.setVisible(style.getSelectedIndex() == 1);
textFontPane.setPreferredSize(style.getSelectedIndex() == 1 ? new Dimension(0, 60) : new Dimension(0, 0));
} }
private void checkPosition() { private void checkPosition() {

50
designer_chart/src/com/fr/plugin/chart/designer/style/series/StackedAndAxisNameObjectCreator.java

@ -0,0 +1,50 @@
package com.fr.plugin.chart.designer.style.series;
import com.fr.chart.chartglyph.ConditionAttr;
import com.fr.design.beans.BasicBeanPane;
import com.fr.design.gui.controlpane.UnrepeatedNameHelper;
import com.fr.general.FRLogger;
import com.fr.general.NameObject;
import com.fr.plugin.chart.base.AttrSeriesStackAndAxis;
import com.fr.plugin.chart.designer.style.background.ChartNameObjectCreator;
import com.fr.stable.Nameable;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
/**
* Created by mengao on 2017/9/11.
*/
public class StackedAndAxisNameObjectCreator extends ChartNameObjectCreator {
public StackedAndAxisNameObjectCreator(Object object, String menuName, Class clazz, Class<? extends BasicBeanPane> updatePane) {
super(object, menuName, clazz, updatePane);
}
/**
* create Nameable
*
* @param helper
* @return
*/
public Nameable createNameable(UnrepeatedNameHelper helper) {
Constructor<? extends ConditionAttr> constructor = null;
try {
constructor = clazzOfInitCase.getConstructor();
ConditionAttr conditionAttr = constructor.newInstance();
conditionAttr.addDataSeriesCondition((AttrSeriesStackAndAxis) object);
return new NameObject(helper.createUnrepeatedName(this.menuName()), conditionAttr);
} catch (NoSuchMethodException e) {
FRLogger.getLogger().error(e.getMessage(), e);
} catch (IllegalAccessException e) {
FRLogger.getLogger().error(e.getMessage(), e);
} catch (InstantiationException e) {
FRLogger.getLogger().error(e.getMessage(), e);
} catch (InvocationTargetException e) {
FRLogger.getLogger().error(e.getMessage(), e);
}
return null;
}
}

24
designer_chart/src/com/fr/plugin/chart/designer/style/series/VanChartAbstractPlotSeriesPane.java

@ -64,9 +64,11 @@ public abstract class VanChartAbstractPlotSeriesPane extends AbstractPlotSeriesP
private UINumberDragPane transparent;//不透明度 private UINumberDragPane transparent;//不透明度
protected VanChartCustomStackAndAxisEditPane stackAndAxisEditPane;//堆積和坐標軸 protected VanChartStackedAndAxisListControlPane stackAndAxisEditPane;//堆積和坐標軸
protected JPanel stackAndAxisEditExpandablePane;//堆積和坐標軸展开面板
private RadiusCardLayoutPane radiusPane;//半径设置界面 private RadiusCardLayoutPane radiusPane;//半径设置界面
private JPanel radiusPaneWithTitle;
private UIButtonGroup<DataProcessor> largeDataModelGroup;//大数据模式 private UIButtonGroup<DataProcessor> largeDataModelGroup;//大数据模式
@ -157,9 +159,10 @@ public abstract class VanChartAbstractPlotSeriesPane extends AbstractPlotSeriesP
} }
//半径界面 //半径界面
protected RadiusCardLayoutPane createRadiusPane() { protected JPanel createRadiusPane() {
radiusPane = initRadiusPane(); radiusPane = initRadiusPane();
return radiusPane; radiusPaneWithTitle = TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-ChartF_Radius_Set"), radiusPane);
return ((VanChartPlot)plot).isInCustom() ? null : radiusPaneWithTitle;
} }
protected JPanel createLargeDataModelPane() { protected JPanel createLargeDataModelPane() {
@ -251,13 +254,14 @@ public abstract class VanChartAbstractPlotSeriesPane extends AbstractPlotSeriesP
//堆积和坐标轴设置(自定义柱形图等用到) //堆积和坐标轴设置(自定义柱形图等用到)
protected JPanel createStackedAndAxisPane() { protected JPanel createStackedAndAxisPane() {
stackAndAxisEditPane = new VanChartCustomStackAndAxisEditPane(); stackAndAxisEditPane = new VanChartStackedAndAxisListControlPane();
return stackAndAxisEditPane; stackAndAxisEditExpandablePane = TableLayout4VanChartHelper.createExpandablePaneWithTitle(stackAndAxisEditPane.getPaneTitle(), stackAndAxisEditPane);
return stackAndAxisEditExpandablePane;
} }
//界面上删除堆积和坐标轴设置 //界面上删除堆积和坐标轴设置
protected void removeStackWholePane() { protected void removeStackWholePane() {
contentPane.remove(stackAndAxisEditPane); contentPane.remove(stackAndAxisEditExpandablePane);
contentPane.repaint(); contentPane.repaint();
} }
@ -284,7 +288,7 @@ public abstract class VanChartAbstractPlotSeriesPane extends AbstractPlotSeriesP
if(stackAndAxisEditPane != null && plot instanceof VanChartRectanglePlot){//堆积和坐标轴 if(stackAndAxisEditPane != null && plot instanceof VanChartRectanglePlot){//堆积和坐标轴
VanChartRectanglePlot rectanglePlot = (VanChartRectanglePlot)plot; VanChartRectanglePlot rectanglePlot = (VanChartRectanglePlot)plot;
if(rectanglePlot.isCustomChart()){ if(rectanglePlot.isCustomChart()){
stackAndAxisEditPane.populateBean(rectanglePlot); stackAndAxisEditPane.populate(rectanglePlot);
} else { } else {
removeStackWholePane(); removeStackWholePane();
} }
@ -307,10 +311,10 @@ public abstract class VanChartAbstractPlotSeriesPane extends AbstractPlotSeriesP
* @param plot * @param plot
*/ */
private void checkRadiusPane(Plot plot) { private void checkRadiusPane(Plot plot) {
radiusPane.setVisible(true); radiusPaneWithTitle.setVisible(true);
if (plot instanceof VanChartPlot){ if (plot instanceof VanChartPlot){
if (((VanChartPlot) plot).isInCustom()){ if (((VanChartPlot) plot).isInCustom()){
radiusPane.setVisible(false); radiusPaneWithTitle.setVisible(false);
} }
} }
} }
@ -339,7 +343,7 @@ public abstract class VanChartAbstractPlotSeriesPane extends AbstractPlotSeriesP
if(stackAndAxisEditPane != null && plot instanceof VanChartRectanglePlot){//堆积和坐标轴 if(stackAndAxisEditPane != null && plot instanceof VanChartRectanglePlot){//堆积和坐标轴
VanChartRectanglePlot rectanglePlot = (VanChartRectanglePlot)plot; VanChartRectanglePlot rectanglePlot = (VanChartRectanglePlot)plot;
if(rectanglePlot.isCustomChart()){ if(rectanglePlot.isCustomChart()){
stackAndAxisEditPane.updateBean(rectanglePlot); stackAndAxisEditPane.update(rectanglePlot);
} }
} }

111
designer_chart/src/com/fr/plugin/chart/designer/style/series/VanChartCustomStackAndAxisEditPane.java

@ -1,111 +0,0 @@
package com.fr.plugin.chart.designer.style.series;
import com.fr.chart.chartglyph.ConditionAttr;
import com.fr.chart.chartglyph.ConditionCollection;
import com.fr.design.beans.BasicBeanPane;
import com.fr.design.gui.frpane.UICorrelationComboBoxPane;
import com.fr.design.gui.imenutable.UIMenuNameableCreator;
import com.fr.general.Inter;
import com.fr.plugin.chart.attr.DefaultAxisHelper;
import com.fr.plugin.chart.attr.axis.VanChartAxis;
import com.fr.plugin.chart.attr.plot.VanChartRectanglePlot;
import com.fr.plugin.chart.base.AttrSeriesStackAndAxis;
import com.fr.plugin.chart.column.VanChartCustomStackAndAxisConditionPane;
import com.fr.plugin.chart.designer.TableLayout4VanChartHelper;
import com.fr.plugin.chart.designer.component.VanChartUIMenuNameableCreator;
import javax.swing.*;
import java.awt.*;
import java.util.ArrayList;
/**
* Created by Fangjie on 2016/4/28.
*/
public class VanChartCustomStackAndAxisEditPane extends BasicBeanPane<VanChartRectanglePlot> {
//堆积和坐标轴
protected UICorrelationComboBoxPane stackAndAxisPane;
protected JPanel stackAndAxisWholePane;
public VanChartCustomStackAndAxisEditPane() {
initStackedAndAxisPane();
initContentPane();
}
private void initContentPane() {
this.setLayout(new BorderLayout(0, 5));
this.add(stackAndAxisWholePane, BorderLayout.CENTER);
}
//堆积和坐标轴设置(自定义柱形图等用到)
protected JPanel initStackedAndAxisPane() {
stackAndAxisPane = new UICorrelationComboBoxPane();
stackAndAxisWholePane = TableLayout4VanChartHelper.createExpandablePaneWithTitle(getPaneTitle(), stackAndAxisPane);
return stackAndAxisWholePane;
}
@Override
public void populateBean(VanChartRectanglePlot plot) {
java.util.List<VanChartAxis> xAxisList = plot.getXAxisList();
java.util.List<VanChartAxis> yAxisList = plot.getYAxisList();
String[] axisXNames = DefaultAxisHelper.getAxisNames(xAxisList);
String[] axisYNames = DefaultAxisHelper.getAxisNames(yAxisList);
java.util.List<UIMenuNameableCreator> menuList = new ArrayList<UIMenuNameableCreator>();
ConditionAttr demo = new ConditionAttr();
AttrSeriesStackAndAxis seriesStackAndAxis = new AttrSeriesStackAndAxis();
seriesStackAndAxis.setXAxisNamesArray(axisXNames);
seriesStackAndAxis.setYAxisNameArray(axisYNames);
demo.addDataSeriesCondition(seriesStackAndAxis);
menuList.add(new VanChartUIMenuNameableCreator(getPaneTitle(), demo, getStackAndAxisPaneClass()));
stackAndAxisPane.refreshMenuAndAddMenuAction(menuList);
java.util.List<UIMenuNameableCreator> list = new ArrayList<UIMenuNameableCreator>();
ConditionCollection stackAndAxisCondition = plot.getStackAndAxisCondition();
for(int i = 0, len = stackAndAxisCondition.getConditionAttrSize(); i < len; i++){
ConditionAttr conditionAttr = stackAndAxisCondition.getConditionAttr(i);
AttrSeriesStackAndAxis stackAndAxis = (AttrSeriesStackAndAxis)conditionAttr.getExisted(AttrSeriesStackAndAxis.class);
stackAndAxis.setXAxisNamesArray(axisXNames);
stackAndAxis.setYAxisNameArray(axisYNames);
list.add(new VanChartUIMenuNameableCreator(conditionAttr.getName(), conditionAttr, getStackAndAxisPaneClass()));
}
stackAndAxisPane.populateBean(list);
stackAndAxisPane.doLayout();
}
@Override
public VanChartRectanglePlot updateBean() {
return null;
}
@Override
public void updateBean(VanChartRectanglePlot plot){
ConditionCollection stackAndAxisCondition = plot.getStackAndAxisCondition();
stackAndAxisCondition.clearConditionAttr();
java.util.List<UIMenuNameableCreator> list = stackAndAxisPane.updateBean();
for(UIMenuNameableCreator creator : list){
ConditionAttr conditionAttr = (ConditionAttr)creator.getObj();
conditionAttr.setName(creator.getName());
AttrSeriesStackAndAxis seriesStackAndAxis = (AttrSeriesStackAndAxis)conditionAttr.getExisted(AttrSeriesStackAndAxis.class);
seriesStackAndAxis.setStackID(creator.getName());
stackAndAxisCondition.addConditionAttr(conditionAttr);
}
}
@Override
protected String title4PopupWindow() {
return null;
}
protected Class<? extends BasicBeanPane> getStackAndAxisPaneClass() {
return VanChartCustomStackAndAxisConditionPane.class;
}
protected String getPaneTitle(){
return Inter.getLocText("Plugin-ChartF_StackAndSeries");
}
}

10
designer_chart/src/com/fr/plugin/chart/designer/style/series/VanChartEffectPane.java

@ -42,11 +42,15 @@ public class VanChartEffectPane extends BasicBeanPane<AttrEffect> {
this.setLayout(new BorderLayout(0, 5)); this.setLayout(new BorderLayout(0, 5));
if(hasEnabledChoose) { if(hasEnabledChoose) {
this.add(panel, BorderLayout.NORTH); this.add(panel, BorderLayout.NORTH);
content.setBorder(BorderFactory.createEmptyBorder(10,25,0,15)); setContentPaneBorder();
} }
this.add(content, BorderLayout.CENTER); this.add(content, BorderLayout.CENTER);
} }
protected void setContentPaneBorder() {
content.setBorder(BorderFactory.createEmptyBorder(10,25,0,15));
}
protected JPanel createContentPane() { protected JPanel createContentPane() {
JPanel panel = createPeriodPane(); JPanel panel = createPeriodPane();
return panel; return panel;
@ -55,7 +59,9 @@ public class VanChartEffectPane extends BasicBeanPane<AttrEffect> {
protected JPanel createPeriodPane(){ protected JPanel createPeriodPane(){
JPanel periodPane = new JPanel(); JPanel periodPane = new JPanel();
periodPane.setLayout(new BorderLayout(5, 0)); periodPane.setLayout(new BorderLayout(5, 0));
periodPane.add(new UILabel(Inter.getLocText("Plugin-ChartF_Flash_Period")), BorderLayout.WEST); UILabel label1= new UILabel(Inter.getLocText("Plugin-ChartF_Flash_Period"));
label1.setPreferredSize(new Dimension((int)TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH, 20));
periodPane.add(label1, BorderLayout.WEST);
periodPane.add(period, BorderLayout.CENTER); periodPane.add(period, BorderLayout.CENTER);
periodPane.add(new UILabel(Inter.getLocText("FR-Base-Time_Second")), BorderLayout.EAST); periodPane.add(new UILabel(Inter.getLocText("FR-Base-Time_Second")), BorderLayout.EAST);
return periodPane; return periodPane;

104
designer_chart/src/com/fr/plugin/chart/designer/style/series/VanChartStackedAndAxisListControlPane.java

@ -0,0 +1,104 @@
package com.fr.plugin.chart.designer.style.series;
import com.fr.chart.chartattr.Plot;
import com.fr.chart.chartglyph.ConditionAttr;
import com.fr.chart.chartglyph.ConditionCollection;
import com.fr.design.beans.BasicBeanPane;
import com.fr.design.gui.controlpane.NameableCreator;
import com.fr.design.gui.controlpane.ShortCut4JControlPane;
import com.fr.general.Inter;
import com.fr.general.NameObject;
import com.fr.plugin.chart.attr.DefaultAxisHelper;
import com.fr.plugin.chart.attr.axis.VanChartAxis;
import com.fr.plugin.chart.attr.plot.VanChartRectanglePlot;
import com.fr.plugin.chart.base.AttrSeriesStackAndAxis;
import com.fr.plugin.chart.column.VanChartCustomStackAndAxisConditionPane;
import com.fr.plugin.chart.designer.component.VanChartUIListControlPane;
import com.fr.stable.Nameable;
import java.util.ArrayList;
/**
* Created by mengao on 2017/9/11.
* 堆积和坐标轴面板
*/
public class VanChartStackedAndAxisListControlPane extends VanChartUIListControlPane {
@Override
public NameableCreator[] createNameableCreators() {
return new StackedAndAxisNameObjectCreator[]{new StackedAndAxisNameObjectCreator(new AttrSeriesStackAndAxis(), getPaneTitle(), ConditionAttr.class, getStackAndAxisPaneClass())};
}
@Override
protected String title4PopupWindow() {
return Inter.getLocText("Plugin-ChartF_StackAndSeries");
}
protected String getAddItemText() {
return Inter.getLocText("Plugin-ChartF_Add");
}
protected ShortCut4JControlPane[] createShortcuts() {
return new ShortCut4JControlPane[]{
moveUpItemShortCut(),
moveDownItemShortCut(),
removeItemShortCut()
};
}
public void populate(VanChartRectanglePlot plot) {
this.plot = plot;
java.util.List<VanChartAxis> xAxisList = plot.getXAxisList();
java.util.List<VanChartAxis> yAxisList = plot.getYAxisList();
String[] axisXNames = DefaultAxisHelper.getAxisNames(xAxisList);
String[] axisYNames = DefaultAxisHelper.getAxisNames(yAxisList);
java.util.List<StackedAndAxisNameObjectCreator> menuList = new ArrayList<StackedAndAxisNameObjectCreator>();
AttrSeriesStackAndAxis seriesStackAndAxis = new AttrSeriesStackAndAxis();
seriesStackAndAxis.setXAxisNamesArray(axisXNames);
seriesStackAndAxis.setYAxisNameArray(axisYNames);
menuList.add(new StackedAndAxisNameObjectCreator(seriesStackAndAxis, getPaneTitle(), ConditionAttr.class, getStackAndAxisPaneClass()));
refreshNameableCreator(menuList.toArray(new StackedAndAxisNameObjectCreator[menuList.size()]));
java.util.List<NameObject> nameObjects = new ArrayList<NameObject>();
ConditionCollection stackAndAxisCondition = plot.getStackAndAxisCondition();
for (int i = 0, len = stackAndAxisCondition.getConditionAttrSize(); i < len; i++) {
ConditionAttr conditionAttr = stackAndAxisCondition.getConditionAttr(i);
AttrSeriesStackAndAxis stackAndAxis = (AttrSeriesStackAndAxis) conditionAttr.getExisted(AttrSeriesStackAndAxis.class);
stackAndAxis.setXAxisNamesArray(axisXNames);
stackAndAxis.setYAxisNameArray(axisYNames);
nameObjects.add(new NameObject(conditionAttr.getName(), conditionAttr));
}
populate(nameObjects.toArray(new NameObject[nameObjects.size()]));
doLayout();
}
@Override
protected void update(Plot plot) {
VanChartRectanglePlot rectanglePlot = (VanChartRectanglePlot) plot;
ConditionCollection stackAndAxisCondition = rectanglePlot.getStackAndAxisCondition();
stackAndAxisCondition.clearConditionAttr();
Nameable[] nameables = this.update();
for (Nameable nameable : nameables) {
ConditionAttr conditionAttr = (ConditionAttr) ((NameObject) nameable).getObject();
conditionAttr.setName(nameable.getName());
AttrSeriesStackAndAxis seriesStackAndAxis = (AttrSeriesStackAndAxis) conditionAttr.getExisted(AttrSeriesStackAndAxis.class);
seriesStackAndAxis.setStackID(nameable.getName());
stackAndAxisCondition.addConditionAttr(conditionAttr);
}
}
protected Class<? extends BasicBeanPane> getStackAndAxisPaneClass() {
return VanChartCustomStackAndAxisConditionPane.class;
}
public String getPaneTitle() {
return Inter.getLocText("Plugin-ChartF_StackAndSeries");
}
}

7
designer_chart/src/com/fr/plugin/chart/designer/style/tooltip/VanChartPlotRefreshTooltipPane.java

@ -76,15 +76,16 @@ public class VanChartPlotRefreshTooltipPane extends VanChartPlotTooltipNoCheckPa
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize = {p, f}; double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH;
double[] columnSize = {f, e};
double[] rowSize = {p}; double[] rowSize = {p};
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Duration_Time")), duration}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Duration_Time")), duration},
}; };
JPanel temp = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); JPanel temp = TableLayout4VanChartHelper.createGapTableLayoutPane(components, rowSize, columnSize);
return TableLayout4VanChartHelper.createTableLayoutPaneWithTitle(Inter.getLocText("Plugin-ChartF_Duration_Time"), temp); return TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("Plugin-ChartF_Time"), temp);
} }

56
designer_chart/src/com/fr/plugin/chart/drillmap/designer/data/comp/DrillMapLayerPane.java

@ -8,12 +8,13 @@ import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper; import com.fr.design.layout.TableLayoutHelper;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.plugin.chart.designer.TableLayout4VanChartHelper;
import com.fr.plugin.chart.drillmap.DrillMapHelper; import com.fr.plugin.chart.drillmap.DrillMapHelper;
import com.fr.plugin.chart.drillmap.VanChartDrillMapPlot; import com.fr.plugin.chart.drillmap.VanChartDrillMapPlot;
import com.fr.plugin.chart.type.MapType;
import com.fr.plugin.chart.type.ZoomLevel;
import com.fr.plugin.chart.map.designer.type.VanChartMapSourceChoosePane; import com.fr.plugin.chart.map.designer.type.VanChartMapSourceChoosePane;
import com.fr.plugin.chart.map.server.CompatibleGeoJSONTreeHelper; import com.fr.plugin.chart.map.server.CompatibleGeoJSONTreeHelper;
import com.fr.plugin.chart.type.MapType;
import com.fr.plugin.chart.type.ZoomLevel;
import javax.swing.*; import javax.swing.*;
import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.DefaultMutableTreeNode;
@ -48,29 +49,28 @@ public class DrillMapLayerPane extends BasicScrollPane<ChartCollection> {
@Override @Override
protected void layoutContentPane() { protected void layoutContentPane() {
leftcontentPane = createContentPane(); leftcontentPane = createContentPane();
leftcontentPane.setBorder(BorderFactory.createEmptyBorder(10, 10, 0, 10)); leftcontentPane.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
this.add(leftcontentPane); this.add(leftcontentPane);
} }
@Override @Override
protected JPanel createContentPane() { protected JPanel createContentPane() {
if(mapDataTree == null){ if (mapDataTree == null) {
mapDataTree = new MapDataTree(CompatibleGeoJSONTreeHelper.getRootNodeWithoutPara(oldGeoUrl)); mapDataTree = new MapDataTree(CompatibleGeoJSONTreeHelper.getRootNodeWithoutPara(oldGeoUrl));
mapDataTree.setRootVisible(true); mapDataTree.setRootVisible(true);
} }
JPanel mapDataTreePanel = new JPanel(new BorderLayout());
mapDataTreePanel.add(mapDataTree);
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize = {f}; double[] columnSize = {f};
double[] rowSize = {p,p,p,p,p,p}; double[] rowSize = {p, p};
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Layer_Tree"))}, new Component[]{createTitlePane(Inter.getLocText("Plugin-ChartF_Layer_Tree"), mapDataTreePanel)},
new Component[]{new JSeparator()}, new Component[]{createTitlePane(Inter.getLocText("Plugin-ChartF_Layer_Detail"), createLayerDetailPane())}
new Component[]{mapDataTree},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Layer_Detail"))},
new Component[]{new JSeparator()},
new Component[]{createLayerDetailPane()}
}; };
JPanel contentPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); JPanel contentPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize);
@ -79,21 +79,29 @@ public class DrillMapLayerPane extends BasicScrollPane<ChartCollection> {
return panel; return panel;
} }
private JPanel createTitlePane (String title, JPanel panel) {
JPanel jPanel = TableLayout4VanChartHelper.createExpandablePaneWithTitle(title, panel);
panel.setBorder(BorderFactory.createEmptyBorder(10,5,0,0));
jPanel.setBorder(BorderFactory.createEmptyBorder(0,5,0,0));
return jPanel;
}
private JPanel createLayerDetailPane() { private JPanel createLayerDetailPane() {
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double[] columnSize = {p,p,p}; double f = TableLayout.FILL;
double[] columnSize = {f, p, p};
double[] rowSize = new double[depth + 1]; double[] rowSize = new double[depth + 1];
detailComps = new Component[depth + 1][3]; detailComps = new Component[depth + 1][3];
rowSize[0] = p; rowSize[0] = p;
detailComps[0] = new Component[]{ detailComps[0] = new Component[]{
new UILabel(Inter.getLocText("Plugin-Chart_Descriptor")), new UILabel(Inter.getLocText("Plugin-Chart_Descriptor")),
new UILabel(Inter.getLocText("Plugin-ChartF_Layer_Zoom_Level")), new UILabel(Inter.getLocText("Plugin-ChartF_Zoom_Layer")),
new UILabel(Inter.getLocText("Plugin-ChartF_Layer_Map_Type")) new UILabel(Inter.getLocText("Plugin-ChartF_Layer_Map_Type"))
}; };
for(int i = 0; i < depth; i++){ for (int i = 0; i < depth; i++) {
rowSize[i + 1] = p; rowSize[i + 1] = p;
int d = i + 1; int d = i + 1;
UILabel label = new UILabel(String.format("%s%d%s",Inter.getLocText("Plugin-ChartF_Index1"), d, Inter.getLocText("Plugin-ChartF_Index3"))); UILabel label = new UILabel(String.format("%s%d%s", Inter.getLocText("Plugin-ChartF_Index1"), d, Inter.getLocText("Plugin-ChartF_Index3")));
UIComboBox level = new UIComboBox(VanChartMapSourceChoosePane.ZOOM_LEVELS); UIComboBox level = new UIComboBox(VanChartMapSourceChoosePane.ZOOM_LEVELS);
level.setEnabled(i != 0); level.setEnabled(i != 0);
UIComboBox type = new UIComboBox(TEMP.get(oldMapType)); UIComboBox type = new UIComboBox(TEMP.get(oldMapType));
@ -112,16 +120,16 @@ public class DrillMapLayerPane extends BasicScrollPane<ChartCollection> {
public void populateBean(ChartCollection ob) { public void populateBean(ChartCollection ob) {
VanChartDrillMapPlot drillMapPlot = DrillMapHelper.getDrillMapPlot(ob); VanChartDrillMapPlot drillMapPlot = DrillMapHelper.getDrillMapPlot(ob);
if(drillMapPlot != null) { if (drillMapPlot != null) {
java.util.List<ZoomLevel> levelList = drillMapPlot.getLayerLevelList(); java.util.List<ZoomLevel> levelList = drillMapPlot.getLayerLevelList();
java.util.List<MapType> mapTypeList = drillMapPlot.getLayerMapTypeList(); java.util.List<MapType> mapTypeList = drillMapPlot.getLayerMapTypeList();
if(detailComps == null || drillMapPlot.getMapType() != oldMapType || !ComparatorUtils.equals(drillMapPlot.getGeoUrl(), oldGeoUrl)){ if (detailComps == null || drillMapPlot.getMapType() != oldMapType || !ComparatorUtils.equals(drillMapPlot.getGeoUrl(), oldGeoUrl)) {
oldMapType = drillMapPlot.getMapType(); oldMapType = drillMapPlot.getMapType();
oldGeoUrl = drillMapPlot.getGeoUrl(); oldGeoUrl = drillMapPlot.getGeoUrl();
DefaultMutableTreeNode root = CompatibleGeoJSONTreeHelper.getNodeByJSONPath(oldGeoUrl); DefaultMutableTreeNode root = CompatibleGeoJSONTreeHelper.getNodeByJSONPath(oldGeoUrl);
if(root != null){ if (root != null) {
mapDataTree.changeRootNode(root); mapDataTree.changeRootNode(root);
depth = root.getDepth() + 1;//根节点也算一层 depth = root.getDepth() + 1;//根节点也算一层
} }
@ -132,18 +140,18 @@ public class DrillMapLayerPane extends BasicScrollPane<ChartCollection> {
//根据层级初始属性,一切以json那边读到的层级为准 //根据层级初始属性,一切以json那边读到的层级为准
int levelSize = levelList.size(); int levelSize = levelList.size();
for(int i = levelSize; i < depth; i++){ for (int i = levelSize; i < depth; i++) {
levelList.add(ZoomLevel.AUTO); levelList.add(ZoomLevel.AUTO);
} }
MapType mapType = drillMapPlot.getMapType() == MapType.POINT ? MapType.POINT : MapType.AREA; MapType mapType = drillMapPlot.getMapType() == MapType.POINT ? MapType.POINT : MapType.AREA;
int typeSize = mapTypeList.size(); int typeSize = mapTypeList.size();
for(int j = typeSize; j < depth; j++){ for (int j = typeSize; j < depth; j++) {
mapTypeList.add(mapType); mapTypeList.add(mapType);
} }
for(int i = 0; i < depth; i++){ for (int i = 0; i < depth; i++) {
Component[] components = detailComps[i + 1]; Component[] components = detailComps[i + 1];
if(components != null) { if (components != null) {
UIComboBox level = (UIComboBox) components[1]; UIComboBox level = (UIComboBox) components[1];
UIComboBox type = (UIComboBox) components[2]; UIComboBox type = (UIComboBox) components[2];
if (level != null) { if (level != null) {
@ -168,11 +176,11 @@ public class DrillMapLayerPane extends BasicScrollPane<ChartCollection> {
@Override @Override
public void updateBean(ChartCollection ob) { public void updateBean(ChartCollection ob) {
VanChartDrillMapPlot drillMapPlot = DrillMapHelper.getDrillMapPlot(ob); VanChartDrillMapPlot drillMapPlot = DrillMapHelper.getDrillMapPlot(ob);
if(drillMapPlot != null && detailComps != null) { if (drillMapPlot != null && detailComps != null) {
java.util.List<ZoomLevel> levelList = new ArrayList<ZoomLevel>(); java.util.List<ZoomLevel> levelList = new ArrayList<ZoomLevel>();
java.util.List<MapType> mapTypeList = new ArrayList<MapType>(); java.util.List<MapType> mapTypeList = new ArrayList<MapType>();
for (Component[] com : detailComps) { for (Component[] com : detailComps) {
if(com[1] instanceof UIComboBox && com[2] instanceof UIComboBox) { if (com[1] instanceof UIComboBox && com[2] instanceof UIComboBox) {
UIComboBox level = (UIComboBox) com[1]; UIComboBox level = (UIComboBox) com[1];
UIComboBox type = (UIComboBox) com[2]; UIComboBox type = (UIComboBox) com[2];
levelList.add((ZoomLevel) level.getSelectedItem()); levelList.add((ZoomLevel) level.getSelectedItem());

44
designer_chart/src/com/fr/plugin/chart/drillmap/designer/other/VanChartDrillMapInteractivePane.java

@ -33,7 +33,8 @@ public class VanChartDrillMapInteractivePane extends VanChartInteractivePaneWith
protected JPanel getInteractivePane(VanChartPlot plot){ protected JPanel getInteractivePane(VanChartPlot plot){
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize = {p, f}; double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH;
double[] columnSize = {f, e};
double[] rowSize = {p, p, p, p, p, p, p, p, p, p, p}; double[] rowSize = {p, p, p, p, p, p, p, p, p, p, p};
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{createToolBarPane(new double[]{p, p, p}, columnSize),null}, new Component[]{createToolBarPane(new double[]{p, p, p}, columnSize),null},
@ -49,16 +50,29 @@ public class VanChartDrillMapInteractivePane extends VanChartInteractivePaneWith
private JPanel createDrillToolsPane() { private JPanel createDrillToolsPane() {
openOrClose = new UIButtonGroup(new String[]{Inter.getLocText("Plugin-ChartF_Open"), Inter.getLocText("Plugin-ChartF_Close")}); openOrClose = new UIButtonGroup(new String[]{Inter.getLocText("Plugin-ChartF_Open"), Inter.getLocText("Plugin-ChartF_Close")});
JPanel openOrClosePane = TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-ChartF_Drill_Dir"), openOrClose);
textAttrPane = new ChartTextAttrPane(){ textAttrPane = new ChartTextAttrPane(){
@Override
protected JPanel getContentPane (JPanel buttonPane) {
double p = TableLayout.PREFERRED;
double e = TableLayout4VanChartHelper.SECOND_EDIT_AREA_WIDTH;
double[] columnSize = {e};
double[] rowSize = {p, p};
return TableLayout4VanChartHelper.createGapTableLayoutPane(getComponents(buttonPane), rowSize, columnSize);
}
@Override
protected Component[][] getComponents(JPanel buttonPane) { protected Component[][] getComponents(JPanel buttonPane) {
return new Component[][]{ return new Component[][]{
new Component[]{fontNameComboBox, null}, new Component[]{fontNameComboBox},
new Component[]{buttonPane, null} new Component[]{buttonPane}
}; };
} }
}; };
backgroundPane = new VanChartBackgroundPane4DrillMap(); backgroundPane = new VanChartBackgroundPaneWithOutImageAndShadow();
selectBackgroundPane = new VanChartBackgroundPane4DrillMap(); selectBackgroundPane = new VanChartBackgroundPaneWithOutImageAndShadow();
catalogSuperLink = new VanChartCatalogHyperLinkPane(); catalogSuperLink = new VanChartCatalogHyperLinkPane();
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
@ -75,7 +89,7 @@ public class VanChartDrillMapInteractivePane extends VanChartInteractivePaneWith
drillPane = TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize); drillPane = TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize);
JPanel panel = new JPanel(new BorderLayout()); JPanel panel = new JPanel(new BorderLayout());
panel.add(openOrClose, BorderLayout.NORTH); panel.add(openOrClosePane, BorderLayout.NORTH);
panel.add(drillPane, BorderLayout.CENTER); panel.add(drillPane, BorderLayout.CENTER);
openOrClose.addChangeListener(new ChangeListener() { openOrClose.addChangeListener(new ChangeListener() {
@ -85,13 +99,15 @@ public class VanChartDrillMapInteractivePane extends VanChartInteractivePaneWith
} }
}); });
JPanel panel1 = TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("Plugin-ChartF_Drill_Dir"), panel); JPanel panel1 = TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("Plugin-ChartF_Drill"), panel);
panel.setBorder(BorderFactory.createEmptyBorder(10,5,0,0)); panel.setBorder(BorderFactory.createEmptyBorder(10,5,0,0));
return panel1; return panel1;
} }
private JPanel createTitlePane(String title, Component component) { private JPanel createTitlePane(String title, Component component) {
return TableLayout4VanChartHelper.createGapTableLayoutPane(title, component); JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(title, component, TableLayout4VanChartHelper.SECOND_EDIT_AREA_WIDTH);
panel.setBorder(BorderFactory.createEmptyBorder(0,12,0,0));
return panel;
} }
private void checkEnable() { private void checkEnable() {
@ -138,16 +154,4 @@ public class VanChartDrillMapInteractivePane extends VanChartInteractivePaneWith
catalogSuperLink.update(plot); catalogSuperLink.update(plot);
} }
} }
public class VanChartBackgroundPane4DrillMap extends VanChartBackgroundPaneWithOutImageAndShadow{
@Override
protected Component[][] getPaneComponents() {
return new Component[][]{
new Component[]{null},
new Component[]{typeComboBox},
new Component[]{centerPane},
new Component[]{transparent},
};
}
}
} }

15
designer_chart/src/com/fr/plugin/chart/gauge/VanChartGaugeSeriesPane.java

@ -13,11 +13,9 @@ import com.fr.design.style.color.ColorSelectBox;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.plugin.chart.attr.GaugeDetailStyle; import com.fr.plugin.chart.attr.GaugeDetailStyle;
import com.fr.plugin.chart.attr.plot.VanChartPlot;
import com.fr.plugin.chart.base.AttrLabel; import com.fr.plugin.chart.base.AttrLabel;
import com.fr.plugin.chart.designer.TableLayout4VanChartHelper; import com.fr.plugin.chart.designer.TableLayout4VanChartHelper;
import com.fr.plugin.chart.designer.style.series.VanChartAbstractPlotSeriesPane; import com.fr.plugin.chart.designer.style.series.VanChartAbstractPlotSeriesPane;
import com.fr.plugin.chart.pie.RadiusCardLayoutPane;
import com.fr.plugin.chart.type.GaugeStyle; import com.fr.plugin.chart.type.GaugeStyle;
import com.fr.stable.Constants; import com.fr.stable.Constants;
@ -119,21 +117,21 @@ public class VanChartGaugeSeriesPane extends VanChartAbstractPlotSeriesPane {
new Component[]{null, null}, new Component[]{null, null},
getPaneBackgroundColor(), getPaneBackgroundColor(),
getInnerPaneBackgroundColor(), getInnerPaneBackgroundColor(),
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Radius_Set")),createRadiusPane()} new Component[]{createRadiusPane(), null}
}; };
case SLOT: case SLOT:
return new Component[][]{ return new Component[][]{
new Component[]{null, null}, new Component[]{null, null},
getNeedleColor(), getNeedleColor(),
getSlotBackgroundColor(), getSlotBackgroundColor(),
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Radius_Set")),createRadiusPane()} new Component[]{createRadiusPane(), null}
}; };
case THERMOMETER: case THERMOMETER:
return new Component[][]{ return new Component[][]{
new Component[]{null, null}, new Component[]{null, null},
getNeedleColor(), getNeedleColor(),
getSlotBackgroundColor(), getSlotBackgroundColor(),
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Radius_Set")),createRadiusPane()} new Component[]{createRadiusPane(), null}
}; };
default: default:
return new Component[][]{ return new Component[][]{
@ -142,16 +140,11 @@ public class VanChartGaugeSeriesPane extends VanChartAbstractPlotSeriesPane {
getHingeBackgroundColor(), getHingeBackgroundColor(),
getNeedleColor(), getNeedleColor(),
getPaneBackgroundColor(), getPaneBackgroundColor(),
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Radius_Set")),createRadiusPane()} new Component[]{createRadiusPane(), null}
}; };
} }
} }
//半径界面
protected RadiusCardLayoutPane initRadiusPane() {
return ((VanChartPlot)plot).isInCustom() ? null : new RadiusCardLayoutPane();
}
private Component[] getHingeColor() { private Component[] getHingeColor() {
hingeColor = new ColorSelectBox(120); hingeColor = new ColorSelectBox(120);
return new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Hinge")),hingeColor}; return new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Hinge")),hingeColor};

10
designer_chart/src/com/fr/plugin/chart/map/designer/data/contentpane/report/VanAreaMapPlotReportDataContentPane.java

@ -23,9 +23,9 @@ public class VanAreaMapPlotReportDataContentPane extends AbstractReportDataConte
public VanAreaMapPlotReportDataContentPane(ChartDataPane parent) { public VanAreaMapPlotReportDataContentPane(ChartDataPane parent) {
initEveryPane(); initEveryPane();
initAreaName(); initAreaName();
JPanel panel = getContent();
this.add(getContent(), "0,0,2,0"); panel.setBorder(BorderFactory.createEmptyBorder(0,24,0,15));
this.setBorder(BorderFactory.createEmptyBorder(0,24,0,15)); this.add(panel, "0,0,2,0");
} }
protected void initAreaName() { protected void initAreaName() {
@ -45,11 +45,11 @@ public class VanAreaMapPlotReportDataContentPane extends AbstractReportDataConte
}; };
} }
protected Component getContent() { protected JPanel getContent() {
return getFormulaPane(); return getFormulaPane();
} }
protected Component getFormulaPane() { protected JPanel getFormulaPane() {
return areaName; return areaName;
} }

2
designer_chart/src/com/fr/plugin/chart/map/designer/data/contentpane/report/VanPointMapPlotReportDataContentPane.java

@ -28,7 +28,7 @@ public class VanPointMapPlotReportDataContentPane extends VanAreaMapPlotReportDa
} }
@Override @Override
protected Component getContent() { protected JPanel getContent() {
longLatReportFormulaPane = new LongLatReportFormulaPane(); longLatReportFormulaPane = new LongLatReportFormulaPane();
JPanel content = new JPanel(new BorderLayout(0, 4)); JPanel content = new JPanel(new BorderLayout(0, 4));
content.setBorder(BorderFactory.createEmptyBorder(0, 5, 5, 0)); content.setBorder(BorderFactory.createEmptyBorder(0, 5, 5, 0));

29
designer_chart/src/com/fr/plugin/chart/map/line/VanChartLineMapEffectPane.java

@ -19,7 +19,7 @@ import java.awt.event.ItemListener;
/** /**
* Created by hufan on 2016/12/20. * Created by hufan on 2016/12/20.
*/ */
public class VanChartLineMapEffectPane extends VanChartEffectPane{ public class VanChartLineMapEffectPane extends VanChartEffectPane {
//运动方式 //运动方式
private JPanel typeContentPane; private JPanel typeContentPane;
@ -45,27 +45,38 @@ public class VanChartLineMapEffectPane extends VanChartEffectPane{
panel.add(periodPane, BorderLayout.CENTER); panel.add(periodPane, BorderLayout.CENTER);
panel.add(animationTypePane, BorderLayout.SOUTH); panel.add(animationTypePane, BorderLayout.SOUTH);
panel.setBorder(BorderFactory.createEmptyBorder(0, 12, 0, 0));
return panel; return panel;
} }
protected void setContentPaneBorder() {
return;
}
private Component createAnimationSelectPane() { private Component createAnimationSelectPane() {
JPanel panel = new JPanel(new BorderLayout(5, 0)); JPanel panel = new JPanel(new BorderLayout(5, 0));
panel.add(new UILabel(Inter.getLocText("Plugin-ChartF_Animation_Type")), BorderLayout.WEST); UILabel label1 = new UILabel(Inter.getLocText("Plugin-ChartF_Animation_Type"));
label1.setPreferredSize(new Dimension((int) TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH, 20));
panel.add(label1, BorderLayout.WEST);
panel.add(animationType, BorderLayout.CENTER); panel.add(animationType, BorderLayout.CENTER);
return panel; return panel;
} }
private void initTypeContentPane() { private void initTypeContentPane() {
customContentPane = new VanChartImageMarkerPane(); customContentPane = new VanChartImageMarkerPane() {
protected Dimension getImageBackgroundPreferredSize(Dimension dimension) {
return new Dimension((int) TableLayout4VanChartHelper.SECOND_EDIT_AREA_WIDTH, (int) dimension.getHeight());
}
};
CardLayout cardLayout = new CardLayout(); CardLayout cardLayout = new CardLayout();
typeContentPane = new JPanel(cardLayout){ typeContentPane = new JPanel(cardLayout) {
@Override @Override
public Dimension getPreferredSize() { public Dimension getPreferredSize() {
if(ComparatorUtils.equals(animationType.getSelectedItem(), LineMapAnimationType.DEFAULT)){ if (ComparatorUtils.equals(animationType.getSelectedItem(), LineMapAnimationType.DEFAULT)) {
return new Dimension((int) customContentPane.getPreferredSize().getWidth(), 0); return new Dimension((int) customContentPane.getPreferredSize().getWidth(), 0);
}else { } else {
return customContentPane.getPreferredSize(); return customContentPane.getPreferredSize();
} }
} }
@ -84,15 +95,15 @@ public class VanChartLineMapEffectPane extends VanChartEffectPane{
}); });
} }
private void checkCardLayout(){ private void checkCardLayout() {
CardLayout cardLayout = (CardLayout) typeContentPane.getLayout(); CardLayout cardLayout = (CardLayout) typeContentPane.getLayout();
cardLayout.show(typeContentPane, LineMapAnimationType.getTypes()[animationType.getSelectedIndex()].getStringType()); cardLayout.show(typeContentPane, LineMapAnimationType.getTypes()[animationType.getSelectedIndex()].getStringType());
} }
@Override @Override
public void populateBean(AttrEffect ob) { public void populateBean(AttrEffect ob) {
super.populateBean(ob); super.populateBean(ob);
if (ob instanceof AttrLineEffect){ if (ob instanceof AttrLineEffect) {
animationType.setSelectedItem(((AttrLineEffect) ob).getAnimationType()); animationType.setSelectedItem(((AttrLineEffect) ob).getAnimationType());
customContentPane.populateBean(((AttrLineEffect) ob).getAttrMarker()); customContentPane.populateBean(((AttrLineEffect) ob).getAttrMarker());
} }

4
designer_chart/src/com/fr/plugin/chart/multilayer/data/MultiPiePlotReportDataContentPane.java

@ -61,7 +61,7 @@ public class MultiPiePlotReportDataContentPane extends AbstractReportDataContent
private JPanel createNorthPane() { private JPanel createNorthPane() {
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize_north = {p, f}; double[] columnSize_north = {f, COMPONENT_WIDTH};
double[] rowSize_north = {p, p, p}; double[] rowSize_north = {p, p, p};
levelNumEdit = new UISpinner(1, 15, 1, levelNum){ levelNumEdit = new UISpinner(1, 15, 1, levelNum){
@ -115,7 +115,7 @@ public class MultiPiePlotReportDataContentPane extends AbstractReportDataContent
private JPanel createCenterPane() { private JPanel createCenterPane() {
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize_center = {p, f}; double[] columnSize_center = {f, COMPONENT_WIDTH};
double[] rowSize_center = new double[levelNum + 2]; double[] rowSize_center = new double[levelNum + 2];
initLevelNameList(); initLevelNameList();

5
designer_chart/src/com/fr/plugin/chart/multilayer/data/MultiPiePlotTableDataContentPane.java

@ -33,6 +33,7 @@ import java.util.List;
public class MultiPiePlotTableDataContentPane extends AbstractTableDataContentPane implements UIObserver { public class MultiPiePlotTableDataContentPane extends AbstractTableDataContentPane implements UIObserver {
private static final int HT = 20; private static final int HT = 20;
private static final int WD = 100; private static final int WD = 100;
private UISpinner levelNumEdit; private UISpinner levelNumEdit;
private UITextField nameField; private UITextField nameField;
protected UIComboBox value; protected UIComboBox value;
@ -83,7 +84,7 @@ public class MultiPiePlotTableDataContentPane extends AbstractTableDataContentPa
private JPanel createCenterPane() { private JPanel createCenterPane() {
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize_center = {p, f}; double[] columnSize_center = {f, COMPONENT_WIDTH};
double[] rowSize_center = new double[levelNum + 3]; double[] rowSize_center = new double[levelNum + 3];
initLevelNameList(); initLevelNameList();
@ -147,7 +148,7 @@ public class MultiPiePlotTableDataContentPane extends AbstractTableDataContentPa
private JPanel createNorthPane() { private JPanel createNorthPane() {
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize_north = {p, f}; double[] columnSize_north = {f, COMPONENT_WIDTH};
double[] rowSize_north = {p, p, p}; double[] rowSize_north = {p, p, p};
levelNumEdit = new UISpinner(1, 15, 1, levelNum){ levelNumEdit = new UISpinner(1, 15, 1, levelNum){

6
designer_chart/src/com/fr/plugin/chart/pie/RadiusCardLayoutPane.java

@ -2,7 +2,7 @@ package com.fr.plugin.chart.pie;
import com.fr.chart.chartattr.Plot; import com.fr.chart.chartattr.Plot;
import com.fr.design.beans.BasicBeanPane; import com.fr.design.beans.BasicBeanPane;
import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ibutton.UIButtonGroup;
import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.gui.ispinner.UISpinner;
import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper; import com.fr.design.layout.TableLayoutHelper;
@ -24,7 +24,7 @@ public class RadiusCardLayoutPane extends BasicBeanPane<Plot> {
private static final double MIN_RADIUS = 0; private static final double MIN_RADIUS = 0;
private static final double MAX_RADIUS = Double.MAX_VALUE; private static final double MAX_RADIUS = Double.MAX_VALUE;
private UIComboBox radiusType;//半径类型 private UIButtonGroup radiusType;//半径类型
private JPanel radiusContent;//半径的布局界面 private JPanel radiusContent;//半径的布局界面
private UISpinner radius;//半径值 private UISpinner radius;//半径值
@ -37,7 +37,7 @@ public class RadiusCardLayoutPane extends BasicBeanPane<Plot> {
Map<String, Component> paneList = new HashMap<String, Component>(); Map<String, Component> paneList = new HashMap<String, Component>();
radiusType = new UIComboBox(new String[]{Inter.getLocText("Plugin-ChartF_Auto"), Inter.getLocText("Plugin-ChartF_Fixed_Radius")}); radiusType = new UIButtonGroup(new String[]{Inter.getLocText("Plugin-ChartF_Auto"), Inter.getLocText("Plugin-ChartF_Fixed")});
radius = new UISpinner(MIN_RADIUS, MAX_RADIUS, 1, 100); radius = new UISpinner(MIN_RADIUS, MAX_RADIUS, 1, 100);
radiusContent = new JPanel(new BorderLayout()); radiusContent = new JPanel(new BorderLayout());

9
designer_chart/src/com/fr/plugin/chart/pie/VanChartPieSeriesPane.java

@ -10,7 +10,6 @@ import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.design.mainframe.chart.gui.ChartStylePane;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.plugin.chart.PiePlot4VanChart; import com.fr.plugin.chart.PiePlot4VanChart;
import com.fr.plugin.chart.attr.plot.VanChartPlot;
import com.fr.plugin.chart.designer.TableLayout4VanChartHelper; import com.fr.plugin.chart.designer.TableLayout4VanChartHelper;
import com.fr.plugin.chart.designer.style.series.VanChartAbstractPlotSeriesPane; import com.fr.plugin.chart.designer.style.series.VanChartAbstractPlotSeriesPane;
@ -62,7 +61,7 @@ public class VanChartPieSeriesPane extends VanChartAbstractPlotSeriesPane {
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_StartAngle")),startAngle}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_StartAngle")),startAngle},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_EndAngle")),endAngle}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_EndAngle")),endAngle},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_InnerRadius")),innerRadius}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_InnerRadius")),innerRadius},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Radius_Set")), createRadiusPane()}, new Component[]{createRadiusPane(),null},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Rotation")),supportRotation} new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Rotation")),supportRotation}
}; };
@ -71,12 +70,6 @@ public class VanChartPieSeriesPane extends VanChartAbstractPlotSeriesPane {
return TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("FR-Designer-Widget_Style"), panel); return TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("FR-Designer-Widget_Style"), panel);
} }
//半径界面
protected RadiusCardLayoutPane initRadiusPane() {
return ((VanChartPlot)plot).isInCustom() ? null : new RadiusCardLayoutPane();
}
public void populateBean(Plot plot) { public void populateBean(Plot plot) {
if(plot == null) { if(plot == null) {
return; return;

1
designer_chart/src/com/fr/plugin/chart/radar/VanChartRadarSeriesPane.java

@ -44,7 +44,6 @@ public class VanChartRadarSeriesPane extends VanChartAbstractPlotSeriesPane {
new Component[]{getColorPane()}, new Component[]{getColorPane()},
new Component[]{createRadarTypePane()}, new Component[]{createRadarTypePane()},
new Component[]{createBorderPane()}, new Component[]{createBorderPane()},
new Component[]{createAlphaPane()}
}; };
} }

7
designer_chart/src/com/fr/plugin/chart/range/component/LegendLabelFormatPane.java

@ -33,6 +33,8 @@ public class LegendLabelFormatPane extends JPanel{
Inter.getLocText("Plugin-ChartF_Custom")}); Inter.getLocText("Plugin-ChartF_Custom")});
labelFormat = new FormatPaneWithOutFont(); labelFormat = new FormatPaneWithOutFont();
htmlLabelPane = new VanChartHtmlLabelPaneWithOutWidthAndHeight(); htmlLabelPane = new VanChartHtmlLabelPaneWithOutWidthAndHeight();
htmlLabelPane.setBorder(BorderFactory.createEmptyBorder(0, (int)TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH + TableLayout4VanChartHelper.COMPONENT_INTERVAL,0,0));
centerPane = new JPanel(new CardLayout()){ centerPane = new JPanel(new CardLayout()){
@Override @Override
@ -50,8 +52,9 @@ public class LegendLabelFormatPane extends JPanel{
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize = {p,f}; double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH;
double[] rowSize = {p,p,p}; double[] columnSize = {f, e};
double[] rowSize = {p, p, p};
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{null,null}, new Component[]{null,null},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Label_Format"), SwingConstants.LEFT), labelFormatStyle}, new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Label_Format"), SwingConstants.LEFT), labelFormatStyle},

10
designer_chart/src/com/fr/plugin/chart/scatter/VanChartScatterSeriesPane.java

@ -7,9 +7,10 @@ import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.design.mainframe.chart.gui.ChartStylePane;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.plugin.chart.custom.component.VanChartCustomAxisConditionPane; import com.fr.plugin.chart.custom.component.VanChartCustomAxisConditionPane;
import com.fr.plugin.chart.designer.TableLayout4VanChartHelper;
import com.fr.plugin.chart.designer.component.VanChartLineTypePane; import com.fr.plugin.chart.designer.component.VanChartLineTypePane;
import com.fr.plugin.chart.designer.style.series.VanChartAbstractPlotSeriesPane; import com.fr.plugin.chart.designer.style.series.VanChartAbstractPlotSeriesPane;
import com.fr.plugin.chart.designer.style.series.VanChartCustomStackAndAxisEditPane; import com.fr.plugin.chart.designer.style.series.VanChartStackedAndAxisListControlPane;
import com.fr.plugin.chart.scatter.component.VanChartScatterLineTypePane; import com.fr.plugin.chart.scatter.component.VanChartScatterLineTypePane;
import javax.swing.*; import javax.swing.*;
@ -54,18 +55,19 @@ public class VanChartScatterSeriesPane extends VanChartAbstractPlotSeriesPane{
@Override @Override
//堆积和坐标轴设置(自定义柱形图等用到) //堆积和坐标轴设置(自定义柱形图等用到)
protected JPanel createStackedAndAxisPane() { protected JPanel createStackedAndAxisPane() {
stackAndAxisEditPane = new VanChartCustomStackAndAxisEditPane(){ stackAndAxisEditPane = new VanChartStackedAndAxisListControlPane(){
@Override @Override
protected Class<? extends BasicBeanPane> getStackAndAxisPaneClass() { protected Class<? extends BasicBeanPane> getStackAndAxisPaneClass() {
return VanChartCustomAxisConditionPane.class; return VanChartCustomAxisConditionPane.class;
} }
@Override @Override
protected String getPaneTitle(){ public String getPaneTitle(){
return Inter.getLocText("Plugin-ChartF_Custom_Axis"); return Inter.getLocText("Plugin-ChartF_Custom_Axis");
} }
}; };
return stackAndAxisEditPane; stackAndAxisEditExpandablePane = TableLayout4VanChartHelper.createExpandablePaneWithTitle(stackAndAxisEditPane.getPaneTitle(), stackAndAxisEditPane);
return stackAndAxisEditExpandablePane;
} }
@Override @Override

13
designer_chart/src/com/fr/plugin/chart/treemap/style/VanChartTreeMapSeriesPane.java

@ -2,9 +2,6 @@ package com.fr.plugin.chart.treemap.style;
import com.fr.chart.chartattr.Plot; import com.fr.chart.chartattr.Plot;
import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ibutton.UIButtonGroup;
import com.fr.design.gui.ilable.UILabel;
import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.design.mainframe.chart.gui.ChartStylePane;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.plugin.chart.designer.TableLayout4VanChartHelper; import com.fr.plugin.chart.designer.TableLayout4VanChartHelper;
@ -12,7 +9,6 @@ import com.fr.plugin.chart.multilayer.style.VanChartMultiPieSeriesPane;
import com.fr.plugin.chart.treemap.VanChartTreeMapPlot; import com.fr.plugin.chart.treemap.VanChartTreeMapPlot;
import javax.swing.*; import javax.swing.*;
import java.awt.*;
/** /**
* Created by Fangjie on 2016/6/15. * Created by Fangjie on 2016/6/15.
@ -26,14 +22,7 @@ public class VanChartTreeMapSeriesPane extends VanChartMultiPieSeriesPane {
protected JPanel createSeriesStylePane(double[] row, double[] col) { protected JPanel createSeriesStylePane(double[] row, double[] col) {
supportDrill = new UIButtonGroup<Integer>(new String[]{Inter.getLocText("Plugin-ChartF_Open"), supportDrill = new UIButtonGroup<Integer>(new String[]{Inter.getLocText("Plugin-ChartF_Open"),
Inter.getLocText("Plugin-ChartF_Close")}); Inter.getLocText("Plugin-ChartF_Close")});
JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-ChartF_Drill"), supportDrill);
Component[][] components = new Component[][]{
new Component[]{null,null},
new Component[]{new UILabel(Inter.getLocText("Plugin-ChartF_Drill")),supportDrill},
};
double p = TableLayout.PREFERRED;
JPanel panel = TableLayoutHelper.createTableLayoutPane(components, new double[]{p,p}, col);
return TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("FR-Designer-Widget_Style"), panel); return TableLayout4VanChartHelper.createExpandablePaneWithTitle(Inter.getLocText("FR-Designer-Widget_Style"), panel);
} }

8
designer_chart/src/com/fr/plugin/chart/wordcloud/designer/WordCloudIndependentVanChartInterface.java

@ -6,6 +6,7 @@ import com.fr.design.beans.BasicBeanPane;
import com.fr.design.condition.ConditionAttributesPane; import com.fr.design.condition.ConditionAttributesPane;
import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.BasicPane;
import com.fr.design.gui.frpane.AttributeChangeListener; import com.fr.design.gui.frpane.AttributeChangeListener;
import com.fr.design.gui.ibutton.UIButtonGroup;
import com.fr.design.mainframe.chart.AbstractChartAttrPane; import com.fr.design.mainframe.chart.AbstractChartAttrPane;
import com.fr.design.mainframe.chart.gui.ChartDataPane; import com.fr.design.mainframe.chart.gui.ChartDataPane;
import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.design.mainframe.chart.gui.ChartStylePane;
@ -14,6 +15,7 @@ import com.fr.design.mainframe.chart.gui.data.table.AbstractTableDataContentPane
import com.fr.design.mainframe.chart.gui.type.AbstractChartTypePane; import com.fr.design.mainframe.chart.gui.type.AbstractChartTypePane;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.plugin.chart.base.VanChartConstants; import com.fr.plugin.chart.base.VanChartConstants;
import com.fr.plugin.chart.designer.TableLayout4VanChartHelper;
import com.fr.plugin.chart.designer.other.VanChartInteractivePaneWithOutSort; import com.fr.plugin.chart.designer.other.VanChartInteractivePaneWithOutSort;
import com.fr.plugin.chart.designer.other.VanChartOtherPane; import com.fr.plugin.chart.designer.other.VanChartOtherPane;
import com.fr.plugin.chart.designer.style.VanChartStylePane; import com.fr.plugin.chart.designer.style.VanChartStylePane;
@ -24,6 +26,7 @@ import com.fr.plugin.chart.wordcloud.designer.other.VanChartWordCloudConditionPa
import com.fr.plugin.chart.wordcloud.designer.style.VanChartWordCloudSeriesPane; import com.fr.plugin.chart.wordcloud.designer.style.VanChartWordCloudSeriesPane;
import com.fr.plugin.chart.wordcloud.designer.type.VanChartWordCloudTypePane; import com.fr.plugin.chart.wordcloud.designer.type.VanChartWordCloudTypePane;
import javax.swing.*;
import java.util.List; import java.util.List;
/** /**
@ -84,6 +87,11 @@ public class WordCloudIndependentVanChartInterface extends AbstractIndependentVa
@Override @Override
protected BasicBeanPane<Chart> createInteractivePane() { protected BasicBeanPane<Chart> createInteractivePane() {
return new VanChartInteractivePaneWithOutSort(){ return new VanChartInteractivePaneWithOutSort(){
@Override
protected JPanel getzoomTypePane(UIButtonGroup zoomType) {
JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(Inter.getLocText("Plugin-ChartF_ZoomType"), zoomType);
return panel;
}
@Override @Override
protected String[] getNameArray() { protected String[] getNameArray() {

2
designer_chart/src/com/fr/plugin/chart/wordcloud/designer/data/WordCloudPlotReportDataContentPane.java

@ -26,7 +26,7 @@ public class WordCloudPlotReportDataContentPane extends AbstractReportDataConten
public WordCloudPlotReportDataContentPane() { public WordCloudPlotReportDataContentPane() {
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize = { p, f }; double[] columnSize = {f, COMPONENT_WIDTH};
double[] rowSize = { p, p, p}; double[] rowSize = { p, p, p};
name = new UITextField(); name = new UITextField();

7
designer_chart/src/com/fr/plugin/chart/wordcloud/designer/data/WordCloudPlotTableDataContentPane.java

@ -7,10 +7,10 @@ import com.fr.design.gui.icombobox.UIComboBox;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.itextfield.UITextField; import com.fr.design.gui.itextfield.UITextField;
import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.mainframe.chart.gui.data.CalculateComboBox; import com.fr.design.mainframe.chart.gui.data.CalculateComboBox;
import com.fr.design.mainframe.chart.gui.data.table.AbstractTableDataContentPane; import com.fr.design.mainframe.chart.gui.data.table.AbstractTableDataContentPane;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.plugin.chart.designer.TableLayout4VanChartHelper;
import com.fr.plugin.chart.wordcloud.data.WordCloudTableDefinition; import com.fr.plugin.chart.wordcloud.data.WordCloudTableDefinition;
import javax.swing.*; import javax.swing.*;
@ -21,6 +21,7 @@ import java.util.List;
* Created by Mitisky on 16/11/29. * Created by Mitisky on 16/11/29.
*/ */
public class WordCloudPlotTableDataContentPane extends AbstractTableDataContentPane { public class WordCloudPlotTableDataContentPane extends AbstractTableDataContentPane {
private UITextField name; private UITextField name;
private UIComboBox wordName; private UIComboBox wordName;
private UIComboBox wordValue; private UIComboBox wordValue;
@ -29,7 +30,7 @@ public class WordCloudPlotTableDataContentPane extends AbstractTableDataContentP
public WordCloudPlotTableDataContentPane() { public WordCloudPlotTableDataContentPane() {
double p = TableLayout.PREFERRED; double p = TableLayout.PREFERRED;
double f = TableLayout.FILL; double f = TableLayout.FILL;
double[] columnSize = { p, f}; double[] columnSize = {f, COMPONENT_WIDTH};
double[] rowSize = { p, p, p, p}; double[] rowSize = { p, p, p, p};
name = new UITextField(); name = new UITextField();
@ -45,7 +46,7 @@ public class WordCloudPlotTableDataContentPane extends AbstractTableDataContentP
new Component[]{new UILabel(Inter.getLocText("Chart-Summary_Method")), calculateCombox} new Component[]{new UILabel(Inter.getLocText("Chart-Summary_Method")), calculateCombox}
}; };
JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components,rowSize,columnSize,24,6); JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(components,rowSize,columnSize);
this.setLayout(new BorderLayout()); this.setLayout(new BorderLayout());
panel.setBorder(BorderFactory.createEmptyBorder(0,24,0,15)); panel.setBorder(BorderFactory.createEmptyBorder(0,24,0,15));

4
designer_form/src/com/fr/design/mainframe/widget/accessibles/AccessibleWLayoutBorderStyleEditor.java

@ -27,10 +27,6 @@ public class AccessibleWLayoutBorderStyleEditor extends UneditableAccessibleEdit
return new RendererField(new LayoutBorderStyleRenderer()); return new RendererField(new LayoutBorderStyleRenderer());
} }
protected void setBorderVisible(){
this.setBorder(BorderFactory.createLineBorder(Color.lightGray));
}
@Override @Override
protected void showEditorPane() { protected void showEditorPane() {
if (borderPane == null) { if (borderPane == null) {

4
designer_form/src/com/fr/design/widget/ui/designer/LabelDefinePane.java

@ -82,7 +82,7 @@ public class LabelDefinePane extends AbstractDataModify<Label> {
@Override @Override
public void populateBean(Label ob) { public void populateBean(Label ob) {
formWidgetValuePane.populate(ob); formWidgetValuePane.populate(ob);
isStyleAlignmentWrapText.setSelected(ob.isAutoLine()); isStyleAlignmentWrapText.setSelected(ob.isWrap());
isPageSetupVertically.setSelected(ob.isVerticalCenter()); isPageSetupVertically.setSelected(ob.isVerticalCenter());
hAlignmentPane.setSelectedItem(ob.getTextalign()); hAlignmentPane.setSelectedItem(ob.getTextalign());
frFontPane.populateBean(ob.getFont()); frFontPane.populateBean(ob.getFont());
@ -93,7 +93,7 @@ public class LabelDefinePane extends AbstractDataModify<Label> {
public Label updateBean() { public Label updateBean() {
Label layout = (Label) creator.toData(); Label layout = (Label) creator.toData();
formWidgetValuePane.update(layout); formWidgetValuePane.update(layout);
layout.setAutoLine(isStyleAlignmentWrapText.isSelected()); layout.setWrap(isStyleAlignmentWrapText.isSelected());
layout.setVerticalCenter(isPageSetupVertically.isSelected()); layout.setVerticalCenter(isPageSetupVertically.isSelected());
layout.setTextalign((int) hAlignmentPane.getSelectedItem()); layout.setTextalign((int) hAlignmentPane.getSelectedItem());
layout.setFont(frFontPane.update(layout.getFont())); layout.setFont(frFontPane.update(layout.getFont()));

Loading…
Cancel
Save