@ -8,16 +8,20 @@ import com.fr.chart.chartglyph.ConditionAttr;
import com.fr.chart.chartglyph.ConditionCollection ;
import com.fr.chart.chartglyph.ConditionCollection ;
import com.fr.chartx.attr.LargeDataModeType ;
import com.fr.chartx.attr.LargeDataModeType ;
import com.fr.design.formula.TinyFormulaPane ;
import com.fr.design.formula.TinyFormulaPane ;
import com.fr.design.gui.frpane.UINumberDragPane ;
import com.fr.design.gui.frpane.UINumberDragPaneWithPercent ;
import com.fr.design.gui.ibutton.UIButtonGroup ;
import com.fr.design.gui.ibutton.UIButtonGroup ;
import com.fr.design.gui.ibutton.UIToggleButton ;
import com.fr.design.gui.ibutton.UIToggleButton ;
import com.fr.design.gui.icheckbox.UICheckBox ;
import com.fr.design.gui.icheckbox.UICheckBox ;
import com.fr.design.gui.icombobox.UIComboBox ;
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.ispinner.UISpinner ;
import com.fr.design.gui.ispinner.UISpinner ;
import com.fr.design.gui.ispinner.UnsignedIntUISpinner ;
import com.fr.design.i18n.Toolkit ;
import com.fr.design.i18n.Toolkit ;
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.design.mainframe.chart.mode.ChartEditContext ;
import com.fr.design.mainframe.chart.mode.ChartEditContext ;
import com.fr.design.widget.FRWidgetFactory ;
import com.fr.plugin.chart.attr.axis.VanChartAxis ;
import com.fr.plugin.chart.attr.axis.VanChartAxis ;
import com.fr.plugin.chart.attr.plot.VanChartPlot ;
import com.fr.plugin.chart.attr.plot.VanChartPlot ;
import com.fr.plugin.chart.attr.plot.VanChartRectanglePlot ;
import com.fr.plugin.chart.attr.plot.VanChartRectanglePlot ;
@ -33,6 +37,8 @@ import com.fr.plugin.chart.base.VanChartZoom;
import com.fr.plugin.chart.gantt.attr.AttrGanttLabel ;
import com.fr.plugin.chart.gantt.attr.AttrGanttLabel ;
import com.fr.plugin.chart.map.line.condition.AttrLineEffect ;
import com.fr.plugin.chart.map.line.condition.AttrLineEffect ;
import com.fr.plugin.chart.scatter.attr.ScatterAttrLabel ;
import com.fr.plugin.chart.scatter.attr.ScatterAttrLabel ;
import com.fr.plugin.chart.type.AxisType ;
import com.fr.plugin.chart.type.ControlType ;
import com.fr.plugin.chart.vanchart.VanChart ;
import com.fr.plugin.chart.vanchart.VanChart ;
import com.fr.stable.StableUtils ;
import com.fr.stable.StableUtils ;
import com.fr.van.chart.custom.component.VanChartHyperLinkPane ;
import com.fr.van.chart.custom.component.VanChartHyperLinkPane ;
@ -46,14 +52,15 @@ import javax.swing.JPanel;
import javax.swing.event.ChangeEvent ;
import javax.swing.event.ChangeEvent ;
import javax.swing.event.ChangeListener ;
import javax.swing.event.ChangeListener ;
import java.awt.BorderLayout ;
import java.awt.BorderLayout ;
import java.awt.CardLayout ;
import java.awt.Component ;
import java.awt.Component ;
import java.awt.event.ActionEvent ;
import java.awt.Dimension ;
import java.awt.event.ActionListener ;
public class VanChartInteractivePane extends AbstractVanChartScrollPane < Chart > {
public class VanChartInteractivePane extends AbstractVanChartScrollPane < Chart > {
private static final long serialVersionUID = 8135452818502145597L ;
private static final long serialVersionUID = 8135452818502145597L ;
private static final int AUTO_REFRESH_LEFT_GAP = 18 ;
private static final int AUTO_REFRESH_LEFT_GAP = 18 ;
private static final double PERCENT = 100 . 0 ;
protected UICheckBox isSort ;
protected UICheckBox isSort ;
protected UICheckBox exportImages ;
protected UICheckBox exportImages ;
@ -73,15 +80,20 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
private AutoRefreshPane autoRefreshPane ;
private AutoRefreshPane autoRefreshPane ;
//图表缩放新设计 恢复用注释。删除下面八行代码。
//图表缩放新设计 恢复用注释。删除下面八行代码。
private UIButtonGroup zoomWidget ;
private UICheckBox zoomWidget ;
protected UIButtonGroup zoomGesture ; //地图手势缩放
protected UIButtonGroup zoomGesture ; //地图手势缩放
private UIButtonGroup zoomResize ;
private TinyFormulaPane from ;
private TinyFormulaPane to ;
private UIButtonGroup < String > zoomType ;
private UIButtonGroup < String > zoomType ;
private JPanel changeEnablePane ;
private JPanel changeEnablePane ;
private JPanel zoomTypePane ;
private JPanel zoomTypePane ;
private UIButtonGroup < ControlType > controlType ;
protected JPanel centerPane ;
private UISpinner categoryNum ;
private UINumberDragPane scaling ;
private UIButtonGroup zoomResize ;
private TinyFormulaPane from ;
private TinyFormulaPane to ;
//图表缩放新设计 恢复用注释。取消注释。
//图表缩放新设计 恢复用注释。取消注释。
//private ZoomPane zoomPane;
//private ZoomPane zoomPane;
@ -127,14 +139,14 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
//new Component[]{createLargeDataModePane(), null},
//new Component[]{createLargeDataModePane(), null},
new Component [ ] { createAnimationPane ( ) , null } ,
new Component [ ] { createAnimationPane ( ) , null } ,
new Component [ ] { createAxisRotationPane ( new double [ ] { p , p } , columnSize , plot ) , null } ,
new Component [ ] { createAxisRotationPane ( new double [ ] { p , p } , columnSize , plot ) , null } ,
new Component [ ] { createZoomPane ( new double [ ] { p , p , p } , columnSize , plot ) , null } ,
new Component [ ] { createZoomPane ( plot ) , null } ,
new Component [ ] { createAutoRefreshPane ( plot ) , null } ,
new Component [ ] { createAutoRefreshPane ( plot ) , null } ,
new Component [ ] { createHyperlinkPane ( ) , null }
new Component [ ] { createHyperlinkPane ( ) , null }
} : new Component [ ] [ ] {
} : new Component [ ] [ ] {
new Component [ ] { createToolBarPane ( getToolBarRowSize ( ) , columnSize ) , null } ,
new Component [ ] { createToolBarPane ( getToolBarRowSize ( ) , columnSize ) , null } ,
new Component [ ] { createAnimationPane ( ) , null } ,
new Component [ ] { createAnimationPane ( ) , null } ,
new Component [ ] { createAxisRotationPane ( new double [ ] { p , p } , columnSize , plot ) , null } ,
new Component [ ] { createAxisRotationPane ( new double [ ] { p , p } , columnSize , plot ) , null } ,
new Component [ ] { createZoomPane ( new double [ ] { p , p , p } , columnSize , plot ) , null }
new Component [ ] { createZoomPane ( plot ) , null }
} ;
} ;
return TableLayoutHelper . createTableLayoutPane ( components , rowSize , columnSize ) ;
return TableLayoutHelper . createTableLayoutPane ( components , rowSize , columnSize ) ;
@ -178,7 +190,7 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
return false ;
return false ;
}
}
protected JPanel createZoomPane ( double [ ] row , double [ ] col , VanChartPlot plot ) {
protected JPanel createZoomPane ( VanChartPlot plot ) {
//图表缩放新设计 恢复用注释。取消注释。
//图表缩放新设计 恢复用注释。取消注释。
// zoomPane = createZoomPane();
// zoomPane = createZoomPane();
// if (zoomPane == null) {
// if (zoomPane == null) {
@ -190,47 +202,118 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
if ( ! plot . isSupportZoomDirection ( ) ) {
if ( ! plot . isSupportZoomDirection ( ) ) {
return null ;
return null ;
}
}
zoomWidget = new UIButtonGroup ( new String [ ] { com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Open" ) , com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Close" ) } ) ;
zoomWidget = new UICheckBox ( Toolkit . i18nText ( "Fine-Design_Chart_Open_Zoom_Control" ) ) ;
zoomResiz e = new UIButtonGroup ( new String [ ] { com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Change " ) , com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Non_Adjustment " ) } ) ;
zoomGestur e = new UIButtonGroup ( new String [ ] { Toolkit . i18nText ( "Fine-Design_Chart_Open " ) , Toolkit . i18nText ( "Fine-Design_Chart_Close " ) } ) ;
from = new TinyFormulaPane ( ) ;
JPanel zoomWidgetPane = TableLayout4VanChartHelper . createGapTableLayoutPaneWithoutTop ( Toolkit . i18nText ( "Fine-Design_Chart_Zoom_Widget" ) , zoomWidget ) ;
to = new TinyFormulaPane ( ) ;
JPanel zoomGesturePane = TableLayout4VanChartHelper . createGapTableLayoutPaneWithoutTop ( Toolkit . i18nText ( "Fine-Design_Chart_ZoomGesture" ) , zoomGesture ) ;
zoomType = new UIButtonGroup ( getNameArray ( ) , getValueArray ( ) ) ;
zoomType = new UIButtonGroup ( getNameArray ( ) , getValueArray ( ) ) ;
zoomGesture = new UIButtonGroup ( new String [ ] { com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Open" ) , com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Close" ) } ) ;
zoomTypePane = getZoomTypePane ( zoomType ) ;
JPanel panel = createZoomPaneContent ( zoomWidgetPane , zoomGesturePane , plot ) ;
zoomWidget . addActionListener ( ( event ) - > checkZoomPane ( ) ) ;
return TableLayout4VanChartHelper . createExpandablePaneWithTitle ( Toolkit . i18nText ( "Fine-Design_Chart_Use_Zoom" ) , panel ) ;
}
JPanel zoomWidgetPane = TableLayout4VanChartHelper . createGapTableLayoutPane ( com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Zoom_Widget" ) , zoomWidget ) ;
private void createChangeEnablePane ( VanChartRectanglePlot plot ) {
JPanel zoomGesturePane = TableLayout4VanChartHelper . createGapTableLayoutPane ( com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_ZoomGesture" ) , zoomGesture ) ;
String scroll = Toolkit . i18nText ( "Fine-Design_Chart_Scroll" ) ;
String scaleAxis = Toolkit . i18nText ( "Fine-Design_Chart_Scale_Axis" ) ;
controlType = new UIButtonGroup < > ( new String [ ] { scroll , scaleAxis } , ControlType . values ( ) ) ;
JPanel scaleAxisPane = createScaleAxisPane ( ) ;
JPanel scrollPane = createScrollPane ( plot ) ;
Component [ ] [ ] components = new Component [ ] [ ] {
centerPane = new JPanel ( new CardLayout ( ) ) {
new Component [ ] { new UILabel ( com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Widget_Boundary" ) ) , zoomResize } ,
@Override
new Component [ ] { new UILabel ( com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_From" ) ) , from } ,
public Dimension getPreferredSize ( ) {
new Component [ ] { new UILabel ( com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_To" ) ) , to } ,
if ( controlType . getSelectedItem ( ) = = ControlType . ZOOM ) {
return scaleAxisPane . getPreferredSize ( ) ;
} else {
return scrollPane . getPreferredSize ( ) ;
}
}
} ;
} ;
centerPane . add ( scaleAxisPane , scroll ) ;
centerPane . add ( scrollPane , scaleAxis ) ;
double p = TableLayout . PREFERRED ;
double f = TableLayout . FILL ;
double f = TableLayout . FILL ;
double e = TableLayout4VanChartHelper . SECOND_EDIT_AREA_WIDTH ;
double e = TableLayout4VanChartHelper . SECOND_EDIT_AREA_WIDTH ;
double [ ] columnSize = { f , e } ;
double [ ] columnSize = { f , e } ;
double [ ] row = { p , p } ;
Component [ ] [ ] components = new Component [ ] [ ] {
new Component [ ] { new UILabel ( Toolkit . i18nText ( "Fine-Design_Chart_Control_Type" ) ) , controlType } ,
new Component [ ] { centerPane , null }
} ;
changeEnablePane = TableLayout4VanChartHelper . createGapTableLayoutPane ( components , row , columnSize ) ;
changeEnablePane = TableLayout4VanChartHelper . createGapTableLayoutPane ( components , row , columnSize ) ;
changeEnablePane . setBorder ( BorderFactory . createEmptyBorder ( 10 , 12 , 0 , 0 ) ) ;
changeEnablePane . setBorder ( BorderFactory . createEmptyBorder ( 5 , 12 , 0 , 0 ) ) ;
zoomTypePane = getzoomTypePane ( zoomType ) ;
JPanel panel = createZoomPaneContent ( zoomWidgetPane , zoomGesturePane , changeEnablePane , zoomTypePane , plot ) ;
controlType . addActionListener ( ( event ) - > checkCardPane ( ) ) ;
zoomWidget . addActionListener ( new ActionListener ( ) {
}
@Override
public void actionPerformed ( ActionEvent e ) {
private JPanel createScaleAxisPane ( ) {
checkZoomPane ( ) ;
zoomResize = new UIButtonGroup ( new String [ ] { Toolkit . i18nText ( "Fine-Design_Chart_Change" ) , Toolkit . i18nText ( "Fine-Design_Chart_Non_Adjustment" ) } ) ;
from = new TinyFormulaPane ( ) ;
to = new TinyFormulaPane ( ) ;
Component [ ] [ ] components = new Component [ ] [ ] {
new Component [ ] { new UILabel ( Toolkit . i18nText ( "Fine-Design_Chart_Widget_Boundary" ) ) , zoomResize } ,
new Component [ ] { new UILabel ( Toolkit . i18nText ( "Fine-Design_Chart_From" ) ) , from } ,
new Component [ ] { new UILabel ( Toolkit . i18nText ( "Fine-Design_Chart_To" ) ) , to } ,
} ;
double p = TableLayout . PREFERRED ;
double f = TableLayout . FILL ;
double e = TableLayout4VanChartHelper . SECOND_EDIT_AREA_WIDTH ;
double [ ] columnSize = { f , e } ;
double [ ] row = { p , p , p } ;
JPanel resizePane = TableLayout4VanChartHelper . createGapTableLayoutPane ( components , row , columnSize ) ;
return resizePane ;
}
private JPanel createScrollPane ( VanChartRectanglePlot plot ) {
VanChartAxis vanChartAxis = plot . getCategoryAxisList ( ) . get ( 0 ) ;
AxisType axisType = vanChartAxis . getAxisType ( ) ;
double p = TableLayout . PREFERRED ;
double f = TableLayout . FILL ;
double e = TableLayout4VanChartHelper . SECOND_EDIT_AREA_WIDTH ;
double [ ] columnSize = { f , e } ;
double [ ] row = { p } ;
Component [ ] [ ] components ;
if ( axisType = = AxisType . AXIS_CATEGORY ) {
categoryNum = new UnsignedIntUISpinner ( 1 , Double . MAX_VALUE , 1 ) ;
components = new Component [ ] [ ] {
new Component [ ] { FRWidgetFactory . createLineWrapLabel ( Toolkit . i18nText ( "Fine-Design_Chart_Initial_Cate_Num" ) ) , categoryNum } ,
} ;
} else {
scaling = new UINumberDragPaneWithPercent ( 1 , 100 , 1 ) ;
components = new Component [ ] [ ] {
new Component [ ] { FRWidgetFactory . createLineWrapLabel ( Toolkit . i18nText ( "Fine-Design_Chart_Scaling" ) ) , scaling } ,
} ;
}
return TableLayout4VanChartHelper . createGapTableLayoutPane ( components , row , columnSize ) ;
}
protected void checkCardPane ( ) {
if ( centerPane ! = null & & controlType ! = null ) {
CardLayout cardLayout = ( CardLayout ) centerPane . getLayout ( ) ;
if ( controlType . getSelectedItem ( ) = = ControlType . ZOOM ) {
cardLayout . show ( centerPane , Toolkit . i18nText ( "Fine-Design_Chart_Scroll" ) ) ;
} else {
cardLayout . show ( centerPane , Toolkit . i18nText ( "Fine-Design_Chart_Scale_Axis" ) ) ;
}
}
} ) ;
}
return TableLayout4VanChartHelper . createExpandablePaneWithTitle ( com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Use_Zoom" ) , panel ) ;
}
}
//图表缩放新设计 恢复用注释。删除下面八个方法getzoomTypePane createZoomPaneContent
//图表缩放新设计 恢复用注释。删除下面八个方法getzoomTypePane createZoomPaneContent
// checkZoomEnabled getNameArray getValueArray checkZoomPane populateChartZoom updateChartZoom。
// checkZoomEnabled getNameArray getValueArray checkZoomPane populateChartZoom updateChartZoom。
protected JPanel getzoomTypePane ( UIButtonGroup zoomType ) {
protected JPanel getZ oomTypePane ( UIButtonGroup zoomType ) {
return TableLayout4VanChartHelper . createGapTableLayoutPane ( com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Zoom_Direction" ) , zoomType ) ;
return TableLayout4VanChartHelper . createGapTableLayoutPaneWithoutTop ( Toolkit . i18nText ( "Fine-Design_Chart_Zoom_Direction" ) , zoomType ) ;
}
}
protected JPanel createZoomPaneContent ( JPanel zoomWidgetPane , JPanel zoomGesturePane , JPanel changeEnablePane , JPanel zoomTypePane , VanChartPlot plot ) {
protected JPanel createZoomPaneContent ( JPanel zoomWidgetPane , JPanel zoomGesturePane , VanChartPlot plot ) {
JPanel panel = new JPanel ( new BorderLayout ( 0 , 4 ) ) ;
JPanel panel = new JPanel ( new BorderLayout ( 0 , 4 ) ) ;
if ( plot . isSupportZoomCategoryAxis ( ) ) { //支持缩放控件
if ( plot . isSupportZoomCategoryAxis ( ) ) { //支持缩放控件
createChangeEnablePane ( ( VanChartRectanglePlot ) plot ) ;
panel . add ( zoomWidgetPane , BorderLayout . NORTH ) ;
panel . add ( zoomWidgetPane , BorderLayout . NORTH ) ;
panel . add ( changeEnablePane , BorderLayout . CENTER ) ;
panel . add ( changeEnablePane , BorderLayout . CENTER ) ;
}
}
@ -242,17 +325,18 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
if ( zoomWidget ! = null & & axisRotation ! = null ) {
if ( zoomWidget ! = null & & axisRotation ! = null ) {
if ( axisRotation . getSelectedIndex ( ) = = 0 ) {
if ( axisRotation . getSelectedIndex ( ) = = 0 ) {
//只有开启坐标轴翻转,才需要将缩放控件强制关闭。
//只有开启坐标轴翻转,才需要将缩放控件强制关闭。
zoomWidget . setSelectedIndex ( 1 ) ;
zoomWidget . setSelected ( false ) ;
}
}
checkZoomPane ( ) ;
checkZoomPane ( ) ;
zoomWidget . setEnabled ( axisRotation . getSelectedIndex ( ) = = 1 ) ;
zoomWidget . setEnabled ( axisRotation . getSelectedIndex ( ) = = 1 ) ;
}
}
checkCardPane ( ) ;
}
}
protected String [ ] getNameArray ( ) {
protected String [ ] getNameArray ( ) {
return new String [ ] { com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_X_Axis" ) , com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Y_Axis" )
return new String [ ] { Toolkit . i18nText ( "Fine-Design_Chart_X_Axis" ) , Toolkit . i18nText ( "Fine-Design_Chart_Y_Axis" )
, com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_XY_Axis" ) , com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Use_None" ) } ;
, Toolkit . i18nText ( "Fine-Design_Chart_XY_Axis" ) , Toolkit . i18nText ( "Fine-Design_Chart_Use_None" ) } ;
}
}
protected String [ ] getValueArray ( ) {
protected String [ ] getValueArray ( ) {
@ -262,9 +346,11 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
}
}
private void checkZoomPane ( ) {
private void checkZoomPane ( ) {
boolean zoomWidgetEnabled = zoomWidget . getSelectedIndex ( ) = = 0 ;
boolean zoomWidgetEnabled = zoomWidget . isSelected ( ) ;
changeEnablePane . setVisible ( zoomWidgetEnabled ) ;
if ( changeEnablePane ! = null ) {
zoomType . setEnabled ( ! zoomWidgetEnabled ) ;
changeEnablePane . setVisible ( zoomWidgetEnabled ) ;
}
zoomTypePane . setVisible ( ! zoomWidgetEnabled ) ;
}
}
private void populateChartZoom ( VanChart chart ) {
private void populateChartZoom ( VanChart chart ) {
@ -272,20 +358,31 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
if ( zoom = = null ) {
if ( zoom = = null ) {
zoom = new VanChartZoom ( ) ;
zoom = new VanChartZoom ( ) ;
}
}
zoomWidget . setSelectedIndex ( zoom . isZoomVisible ( ) ? 0 : 1 ) ;
zoomWidget . setSelected ( zoom . isZoomVisible ( ) ) ;
zoomGesture . setSelectedIndex ( zoom . isZoomGesture ( ) ? 0 : 1 ) ;
zoomGesture . setSelectedIndex ( zoom . isZoomGesture ( ) ? 0 : 1 ) ;
zoomResize . setSelectedIndex ( zoom . isZoomResize ( ) ? 0 : 1 ) ;
if ( zoom . getFrom ( ) instanceof BaseFormula ) {
from . populateBean ( ( ( BaseFormula ) zoom . getFrom ( ) ) . getContent ( ) ) ;
} else {
from . populateBean ( Utils . objectToString ( zoom . getFrom ( ) ) ) ;
}
if ( zoom . getTo ( ) instanceof BaseFormula ) {
to . populateBean ( ( ( BaseFormula ) zoom . getTo ( ) ) . getContent ( ) ) ;
} else {
to . populateBean ( Utils . objectToString ( zoom . getTo ( ) ) ) ;
}
zoomType . setSelectedItem ( zoom . getZoomType ( ) ) ;
zoomType . setSelectedItem ( zoom . getZoomType ( ) ) ;
if ( changeEnablePane ! = null ) {
controlType . setSelectedItem ( zoom . getControlType ( ) ) ;
zoomResize . setSelectedIndex ( zoom . isZoomResize ( ) ? 0 : 1 ) ;
if ( zoom . getFrom ( ) instanceof BaseFormula ) {
from . populateBean ( ( ( BaseFormula ) zoom . getFrom ( ) ) . getContent ( ) ) ;
} else {
from . populateBean ( Utils . objectToString ( zoom . getFrom ( ) ) ) ;
}
if ( zoom . getTo ( ) instanceof BaseFormula ) {
to . populateBean ( ( ( BaseFormula ) zoom . getTo ( ) ) . getContent ( ) ) ;
} else {
to . populateBean ( Utils . objectToString ( zoom . getTo ( ) ) ) ;
}
if ( categoryNum ! = null ) {
categoryNum . setValue ( zoom . getCategoryNum ( ) ) ;
}
if ( scaling ! = null ) {
scaling . populateBean ( zoom . getScaling ( ) * PERCENT ) ;
}
}
}
}
private void updateChartZoom ( VanChart chart ) {
private void updateChartZoom ( VanChart chart ) {
@ -294,26 +391,38 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
zoom = new VanChartZoom ( ) ;
zoom = new VanChartZoom ( ) ;
chart . setVanChartZoom ( zoom ) ;
chart . setVanChartZoom ( zoom ) ;
}
}
zoom . setZoomVisible ( zoomWidget . getSelectedIndex ( ) = = 0 ) ;
zoom . setZoomVisible ( zoomWidget . isSelected ( ) ) ;
zoom . setZoomGesture ( zoomGesture . getSelectedIndex ( ) = = 0 ) ;
zoom . setZoomGesture ( zoomGesture . getSelectedIndex ( ) = = 0 ) ;
zoom . setZoomResize ( zoomResize . getSelectedIndex ( ) = = 0 ) ;
String fromString = from . updateBean ( ) ;
Object fromObject ;
if ( StableUtils . maybeFormula ( fromString ) ) {
fromObject = BaseFormula . createFormulaBuilder ( ) . build ( fromString ) ;
} else {
fromObject = fromString ;
}
zoom . setFrom ( fromObject ) ;
String toString = to . updateBean ( ) ;
Object toObject ;
if ( StableUtils . maybeFormula ( toString ) ) {
toObject = BaseFormula . createFormulaBuilder ( ) . build ( toString ) ;
} else {
toObject = toString ;
}
zoom . setTo ( toObject ) ;
zoom . setZoomType ( zoomType . getSelectedItem ( ) ) ;
zoom . setZoomType ( zoomType . getSelectedItem ( ) ) ;
if ( changeEnablePane ! = null ) {
zoom . setControlType ( controlType . getSelectedItem ( ) ) ;
if ( zoom . getControlType ( ) = = ControlType . ZOOM ) {
zoom . setZoomResize ( zoomResize . getSelectedIndex ( ) = = 0 ) ;
String fromString = from . updateBean ( ) ;
Object fromObject ;
if ( StableUtils . maybeFormula ( fromString ) ) {
fromObject = BaseFormula . createFormulaBuilder ( ) . build ( fromString ) ;
} else {
fromObject = fromString ;
}
zoom . setFrom ( fromObject ) ;
String toString = to . updateBean ( ) ;
Object toObject ;
if ( StableUtils . maybeFormula ( toString ) ) {
toObject = BaseFormula . createFormulaBuilder ( ) . build ( toString ) ;
} else {
toObject = toString ;
}
zoom . setTo ( toObject ) ;
} else {
if ( categoryNum ! = null ) {
zoom . setCategoryNum ( ( int ) categoryNum . getValue ( ) ) ;
}
if ( scaling ! = null ) {
zoom . setScaling ( scaling . updateBean ( ) / PERCENT ) ;
}
}
}
}
}
protected ZoomPane createZoomPane ( ) {
protected ZoomPane createZoomPane ( ) {
@ -386,12 +495,12 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
double f = TableLayout . FILL ;
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 } ;
double [ ] rowSize = { p , p } ;
Component [ ] [ ] components = new Component [ ] [ ] {
Component [ ] [ ] components = new Component [ ] [ ] {
new Component [ ] { null , null } ,
new Component [ ] { null , null } ,
new Component [ ] { chartAnimationLabel , isChartAnimation }
new Component [ ] { chartAnimationLabel , isChartAnimation }
} ;
} ;
JPanel panel = TableLayout4VanChartHelper . createGapTableLayoutPane ( components , rowSize , columnSize ) ;
JPanel panel = TableLayout4VanChartHelper . createGapTableLayoutPane ( components , rowSize , columnSize ) ;
return TableLayout4VanChartHelper . createExpandablePaneWithTitle ( com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Animation" ) , panel ) ;
return TableLayout4VanChartHelper . createExpandablePaneWithTitle ( com . fr . design . i18n . Toolkit . i18nText ( "Fine-Design_Chart_Animation" ) , panel ) ;
}
}
@ -473,7 +582,6 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane<Chart> {
//图表缩放新设计 恢复用注释。删除下面三行代码。
//图表缩放新设计 恢复用注释。删除下面三行代码。
if ( plot . isSupportZoomDirection ( ) ) { //支持缩放方向=方向+控件
if ( plot . isSupportZoomDirection ( ) ) { //支持缩放方向=方向+控件
populateChartZoom ( ( VanChart ) chart ) ;
populateChartZoom ( ( VanChart ) chart ) ;
checkZoomPane ( ) ;
}
}
if ( plot . getAxisPlotType ( ) = = AxisPlotType . RECTANGLE ) {
if ( plot . getAxisPlotType ( ) = = AxisPlotType . RECTANGLE ) {