forked from fanruan/design
Browse Source
* commit 'bb72abe56cbed1ba4cf106177241d99c6a89afce': CHART-10227 地图 钻取地图 热力地图 数据配置界面persist/11.0
zheng
5 years ago
57 changed files with 1341 additions and 2819 deletions
@ -1,52 +0,0 @@ |
|||||||
package com.fr.design.chartx; |
|
||||||
|
|
||||||
import com.fr.chartx.data.GanttChartDataDefinition; |
|
||||||
import com.fr.design.chartx.fields.diff.MultiCategoryCellDataFieldsPane; |
|
||||||
import com.fr.design.chartx.fields.diff.MultiCategoryDataSetFieldsPane; |
|
||||||
import com.fr.design.chartx.single.SingleDataPane; |
|
||||||
import com.fr.design.gui.frpane.AttributeChangeListener; |
|
||||||
import com.fr.van.chart.map.designer.VanChartGroupPane; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by shine on 2019/5/22. |
|
||||||
*/ |
|
||||||
public class GanttChartDataPane extends AbstractChartDataPane<GanttChartDataDefinition> { |
|
||||||
|
|
||||||
private AbstractVanSingleDataPane dataPane; |
|
||||||
private AbstractVanSingleDataPane linkPane; |
|
||||||
|
|
||||||
@Override |
|
||||||
protected JPanel createContentPane() { |
|
||||||
dataPane = new AbstractVanSingleDataPane(listener) { |
|
||||||
@Override |
|
||||||
protected SingleDataPane createSingleDataPane() { |
|
||||||
return new SingleDataPane(new MultiCategoryDataSetFieldsPane(), new MultiCategoryCellDataFieldsPane()); |
|
||||||
} |
|
||||||
}; |
|
||||||
linkPane = new AbstractVanSingleDataPane(listener) { |
|
||||||
@Override |
|
||||||
protected SingleDataPane createSingleDataPane() { |
|
||||||
return new SingleDataPane(new MultiCategoryDataSetFieldsPane(), new MultiCategoryCellDataFieldsPane()); |
|
||||||
} |
|
||||||
}; |
|
||||||
return new VanChartGroupPane(new String[]{"data", "link"}, new JPanel[]{dataPane, linkPane}) { |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
public GanttChartDataPane(AttributeChangeListener listener) { |
|
||||||
super(listener); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populate(GanttChartDataDefinition ganttChartDataDefinition) { |
|
||||||
dataPane.populate(ganttChartDataDefinition.getDataDefinition()); |
|
||||||
linkPane.populate(ganttChartDataDefinition.getLinkDefinition()); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public GanttChartDataDefinition update() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
} |
|
@ -0,0 +1,76 @@ |
|||||||
|
package com.fr.design.chartx.data.drillMap; |
||||||
|
|
||||||
|
import com.fr.chartx.data.DrillMapChartDataDefinition; |
||||||
|
import com.fr.design.chartx.AbstractChartDataPane; |
||||||
|
import com.fr.design.gui.frpane.AttributeChangeListener; |
||||||
|
import com.fr.design.i18n.Toolkit; |
||||||
|
import com.fr.plugin.chart.drillmap.VanChartDrillMapPlot; |
||||||
|
import com.fr.van.chart.map.designer.VanChartGroupPane; |
||||||
|
|
||||||
|
import javax.swing.JPanel; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/13 |
||||||
|
*/ |
||||||
|
public class DrillMapChartDataPane extends AbstractChartDataPane<DrillMapChartDataDefinition> { |
||||||
|
private DrillMapLayerPane layerPane; |
||||||
|
private DrillMapDataPane dataPane; |
||||||
|
|
||||||
|
public DrillMapChartDataPane(AttributeChangeListener listener) { |
||||||
|
super(listener); |
||||||
|
} |
||||||
|
|
||||||
|
private VanChartDrillMapPlot getDrillMapPlot() { |
||||||
|
if (getVanChart() != null) { |
||||||
|
return getVanChart().getPlot(); |
||||||
|
} |
||||||
|
return null; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createContentPane() { |
||||||
|
VanChartDrillMapPlot drillMapPlot = getDrillMapPlot(); |
||||||
|
if (drillMapPlot == null) { |
||||||
|
return new JPanel(); |
||||||
|
} |
||||||
|
|
||||||
|
layerPane = new DrillMapLayerPane(drillMapPlot); |
||||||
|
dataPane = new DrillMapDataPane(drillMapPlot); |
||||||
|
return new VanChartGroupPane(new String[]{Toolkit.i18nText("Fine-Design_Chart_Map_Drill_Level"), Toolkit.i18nText("Fine-Design_Chart_Use_Data")}, |
||||||
|
new JPanel[]{layerPane, dataPane}) { |
||||||
|
@Override |
||||||
|
protected void tabChanged(int index) { |
||||||
|
if (index == 0) { |
||||||
|
return; |
||||||
|
} |
||||||
|
dataPane.fireMapTypeChanged(); |
||||||
|
} |
||||||
|
}; |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
protected void populate(DrillMapChartDataDefinition drillMapChartDataDefinition) { |
||||||
|
if (drillMapChartDataDefinition == null) { |
||||||
|
return; |
||||||
|
} |
||||||
|
VanChartDrillMapPlot drillMapPlot = getDrillMapPlot(); |
||||||
|
|
||||||
|
layerPane.populateBean(drillMapPlot); |
||||||
|
dataPane.populateBean(drillMapChartDataDefinition); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected DrillMapChartDataDefinition update() { |
||||||
|
VanChartDrillMapPlot drillMapPlot = getDrillMapPlot(); |
||||||
|
|
||||||
|
layerPane.updateBean(drillMapPlot); |
||||||
|
|
||||||
|
DrillMapChartDataDefinition definition = new DrillMapChartDataDefinition(); |
||||||
|
dataPane.updateBean(definition); |
||||||
|
|
||||||
|
return definition; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,120 @@ |
|||||||
|
package com.fr.design.chartx.data.drillMap; |
||||||
|
|
||||||
|
import com.fr.chartx.data.DrillMapChartDataDefinition; |
||||||
|
import com.fr.design.beans.BasicBeanPane; |
||||||
|
import com.fr.design.beans.FurtherBasicBeanPane; |
||||||
|
import com.fr.design.chartx.fields.diff.AreaMapCellDataFieldsPane; |
||||||
|
import com.fr.design.chartx.fields.diff.AreaMapDataSetFieldsPane; |
||||||
|
import com.fr.design.chartx.single.SingleDataPane; |
||||||
|
import com.fr.design.gui.frpane.UIComboBoxPane; |
||||||
|
import com.fr.design.i18n.Toolkit; |
||||||
|
import com.fr.plugin.chart.drillmap.VanChartDrillMapPlot; |
||||||
|
|
||||||
|
import java.awt.BorderLayout; |
||||||
|
import java.util.ArrayList; |
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* Created by Mitisky on 16/6/20. |
||||||
|
* 钻取地图数据配置界面中 和钻取层级平级的数据界面 |
||||||
|
*/ |
||||||
|
public class DrillMapDataPane extends BasicBeanPane<DrillMapChartDataDefinition> { |
||||||
|
private UIComboBoxPane<DrillMapChartDataDefinition> dataDefinitionType;//数据定义方式:底层数据汇总/各层级分别指定
|
||||||
|
|
||||||
|
private SingleDataPane bottomDataPane;//底层数据汇总方式定义钻取地图数据
|
||||||
|
|
||||||
|
private EachLayerDataDefinitionPane eachLayerDataDefinitionPane;//各层级分别指定
|
||||||
|
|
||||||
|
public DrillMapDataPane(VanChartDrillMapPlot drillMapPlot) { |
||||||
|
bottomDataPane = new SingleDataPane(new AreaMapDataSetFieldsPane(), new AreaMapCellDataFieldsPane()); |
||||||
|
eachLayerDataDefinitionPane = new EachLayerDataDefinitionPane(drillMapPlot); |
||||||
|
|
||||||
|
dataDefinitionType = new UIComboBoxPane<DrillMapChartDataDefinition>() { |
||||||
|
@Override |
||||||
|
protected List<FurtherBasicBeanPane<? extends DrillMapChartDataDefinition>> initPaneList() { |
||||||
|
|
||||||
|
List<FurtherBasicBeanPane<? extends DrillMapChartDataDefinition>> paneList = new ArrayList<FurtherBasicBeanPane<? extends DrillMapChartDataDefinition>>(); |
||||||
|
paneList.add(new BottomLayerDataDefinitionPane()); |
||||||
|
paneList.add(eachLayerDataDefinitionPane); |
||||||
|
return paneList; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected String title4PopupWindow() { |
||||||
|
return null; |
||||||
|
} |
||||||
|
}; |
||||||
|
|
||||||
|
this.setLayout(new BorderLayout()); |
||||||
|
this.add(dataDefinitionType, BorderLayout.CENTER); |
||||||
|
} |
||||||
|
|
||||||
|
public void fireMapTypeChanged() { |
||||||
|
eachLayerDataDefinitionPane.fireMapTypeChanged(); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void populateBean(DrillMapChartDataDefinition ob) { |
||||||
|
|
||||||
|
dataDefinitionType.setSelectedIndex(ob.isFromBottomData() ? 0 : 1); |
||||||
|
|
||||||
|
bottomDataPane.populateBean(ob.getBottomDataDefinition()); |
||||||
|
eachLayerDataDefinitionPane.populateBean(ob); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Update. |
||||||
|
*/ |
||||||
|
@Override |
||||||
|
public DrillMapChartDataDefinition updateBean() { |
||||||
|
return null; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void updateBean(DrillMapChartDataDefinition drillMapDefinition) { |
||||||
|
if (dataDefinitionType.getSelectedIndex() == 0) { |
||||||
|
drillMapDefinition.setFromBottomData(true); |
||||||
|
drillMapDefinition.setBottomDataDefinition(bottomDataPane.updateBean()); |
||||||
|
} else { |
||||||
|
drillMapDefinition.setFromBottomData(false); |
||||||
|
eachLayerDataDefinitionPane.updateBean(drillMapDefinition); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected String title4PopupWindow() { |
||||||
|
return Toolkit.i18nText("Fine-Design_Chart_Use_Data"); |
||||||
|
} |
||||||
|
|
||||||
|
private class BottomLayerDataDefinitionPane extends FurtherBasicBeanPane<DrillMapChartDataDefinition> { |
||||||
|
|
||||||
|
private BottomLayerDataDefinitionPane() { |
||||||
|
this.setLayout(new BorderLayout()); |
||||||
|
this.add(bottomDataPane, BorderLayout.CENTER); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean accept(Object ob) { |
||||||
|
return false; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void reset() { |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void populateBean(DrillMapChartDataDefinition ob) { |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public DrillMapChartDataDefinition updateBean() { |
||||||
|
return null; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public String title4PopupWindow() { |
||||||
|
return Toolkit.i18nText("Fine-Design_Chart_Bottom_Data_Sum"); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,128 @@ |
|||||||
|
package com.fr.design.chartx.data.drillMap; |
||||||
|
|
||||||
|
import com.fr.chartx.data.AbstractDataDefinition; |
||||||
|
import com.fr.chartx.data.DrillMapChartDataDefinition; |
||||||
|
import com.fr.design.chartx.fields.diff.AreaMapCellDataFieldsPane; |
||||||
|
import com.fr.design.chartx.fields.diff.AreaMapDataSetFieldsPane; |
||||||
|
import com.fr.design.chartx.fields.diff.PointMapCellDataFieldsPane; |
||||||
|
import com.fr.design.chartx.fields.diff.PointMapDataSetFieldsPane; |
||||||
|
import com.fr.design.chartx.single.SingleDataPane; |
||||||
|
import com.fr.design.dialog.BasicPane; |
||||||
|
import com.fr.design.dialog.MultiTabPane; |
||||||
|
import com.fr.design.i18n.Toolkit; |
||||||
|
import com.fr.general.ComparatorUtils; |
||||||
|
import com.fr.plugin.chart.drillmap.VanChartDrillMapPlot; |
||||||
|
import com.fr.plugin.chart.type.MapType; |
||||||
|
|
||||||
|
import java.util.ArrayList; |
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* Created by Mitisky on 16/6/20. |
||||||
|
* 各层级分别指定的界面 |
||||||
|
*/ |
||||||
|
public class EachLayerDataDefinitionPane extends MultiTabPane<DrillMapChartDataDefinition> { |
||||||
|
|
||||||
|
private List<MapType> oldTypeList; |
||||||
|
private VanChartDrillMapPlot plot; |
||||||
|
|
||||||
|
public EachLayerDataDefinitionPane(VanChartDrillMapPlot drillMapPlot) { |
||||||
|
this.plot = drillMapPlot; |
||||||
|
initComps(); |
||||||
|
} |
||||||
|
|
||||||
|
private void initComps() { |
||||||
|
paneList = initPaneList(this.plot); |
||||||
|
super.relayoutWhenListChange(); |
||||||
|
} |
||||||
|
|
||||||
|
public void fireMapTypeChanged() { |
||||||
|
if (!ComparatorUtils.equals(plot.getLayerMapTypeList(), oldTypeList)) { |
||||||
|
initComps(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
protected List<BasicPane> initPaneList(VanChartDrillMapPlot drillMapPlot) { |
||||||
|
List<BasicPane> paneList = new ArrayList<BasicPane>(); |
||||||
|
|
||||||
|
oldTypeList = drillMapPlot.getLayerMapTypeList(); |
||||||
|
int depth = DrillMapLayerPane.getRootAndDepth(drillMapPlot).getSecond(); |
||||||
|
|
||||||
|
for (int i = 0; i < depth; i++) { |
||||||
|
final String title = String.format("%s%d%s", Toolkit.i18nText("Fine-Design_Chart_Index_Article"), i, Toolkit.i18nText("Fine-Design_Chart_Index_Layer")); |
||||||
|
MapType mapType = oldTypeList.get(i); |
||||||
|
|
||||||
|
SingleDataPane pane = mapType == MapType.AREA ? new SingleDataPane(new AreaMapDataSetFieldsPane(), new AreaMapCellDataFieldsPane()) { |
||||||
|
@Override |
||||||
|
protected String title4PopupWindow() { |
||||||
|
return title; |
||||||
|
} |
||||||
|
} : new SingleDataPane(new PointMapDataSetFieldsPane(), new PointMapCellDataFieldsPane()) { |
||||||
|
@Override |
||||||
|
protected String title4PopupWindow() { |
||||||
|
return title; |
||||||
|
} |
||||||
|
}; |
||||||
|
|
||||||
|
paneList.add(pane); |
||||||
|
} |
||||||
|
|
||||||
|
return paneList; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void relayoutWhenListChange() { |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected List<BasicPane> initPaneList() { |
||||||
|
return new ArrayList<BasicPane>(); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void populateBean(DrillMapChartDataDefinition drillMapChartDataDefinition) { |
||||||
|
List<AbstractDataDefinition> eachLayerDataDefinitionList = drillMapChartDataDefinition.getEachLayerDataDefinitionList(); |
||||||
|
|
||||||
|
if (eachLayerDataDefinitionList == null || eachLayerDataDefinitionList.size() == 0) { |
||||||
|
return; |
||||||
|
} |
||||||
|
|
||||||
|
for (int i = 0, len = paneList.size(); i < len; i++) { |
||||||
|
BasicPane basicPane = paneList.get(i); |
||||||
|
if (basicPane instanceof SingleDataPane) { |
||||||
|
((SingleDataPane) basicPane).populateBean(eachLayerDataDefinitionList.get(i)); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public DrillMapChartDataDefinition updateBean() { |
||||||
|
return null; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void updateBean(DrillMapChartDataDefinition drillMapDefinition) { |
||||||
|
List<AbstractDataDefinition> eachLayerDataDefinitionList = new ArrayList<AbstractDataDefinition>(); |
||||||
|
for (BasicPane basicPane : paneList) { |
||||||
|
if (basicPane instanceof SingleDataPane) { |
||||||
|
eachLayerDataDefinitionList.add(((SingleDataPane) basicPane).updateBean()); |
||||||
|
} |
||||||
|
} |
||||||
|
drillMapDefinition.setEachLayerDataDefinitionList(eachLayerDataDefinitionList); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean accept(Object ob) { |
||||||
|
return false; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public String title4PopupWindow() { |
||||||
|
return Toolkit.i18nText("Fine-Design_Chart_Each_Layer_Data_Special"); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void reset() { |
||||||
|
} |
||||||
|
|
||||||
|
} |
@ -0,0 +1,111 @@ |
|||||||
|
package com.fr.design.chartx.data.map; |
||||||
|
|
||||||
|
import com.fr.design.gui.ibutton.UIButtonGroup; |
||||||
|
import com.fr.design.gui.ilable.UILabel; |
||||||
|
import com.fr.design.i18n.Toolkit; |
||||||
|
import com.fr.design.layout.TableLayout; |
||||||
|
import com.fr.design.layout.TableLayoutHelper; |
||||||
|
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
||||||
|
|
||||||
|
import javax.swing.JComponent; |
||||||
|
import javax.swing.JPanel; |
||||||
|
import javax.swing.SwingConstants; |
||||||
|
import javax.swing.event.ChangeEvent; |
||||||
|
import javax.swing.event.ChangeListener; |
||||||
|
import java.awt.BorderLayout; |
||||||
|
import java.awt.CardLayout; |
||||||
|
import java.awt.Component; |
||||||
|
import java.awt.Dimension; |
||||||
|
import java.util.Arrays; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/13 |
||||||
|
*/ |
||||||
|
public abstract class AbstractAreaLngLatPane extends JPanel { |
||||||
|
private JPanel centerPane; |
||||||
|
private UIButtonGroup<Integer> locationType; |
||||||
|
|
||||||
|
private JPanel areaPane; |
||||||
|
private JPanel lngLatAreaPane; |
||||||
|
|
||||||
|
protected abstract JPanel createAreaPane(); |
||||||
|
|
||||||
|
protected abstract JPanel createAreaLngLatPane(); |
||||||
|
|
||||||
|
public AbstractAreaLngLatPane() { |
||||||
|
centerPane = new JPanel(new CardLayout()) { |
||||||
|
@Override |
||||||
|
public Dimension getPreferredSize() { |
||||||
|
if (locationType.getSelectedIndex() == 0) { |
||||||
|
return areaPane.getPreferredSize(); |
||||||
|
} else { |
||||||
|
return lngLatAreaPane.getPreferredSize(); |
||||||
|
} |
||||||
|
} |
||||||
|
}; |
||||||
|
|
||||||
|
locationType = new UIButtonGroup<Integer>(new String[]{Toolkit.i18nText("Fine-Design_Chart_Location_With_Area_Name"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_Location_With_LongAndLat")}); |
||||||
|
locationType.addChangeListener(new ChangeListener() { |
||||||
|
@Override |
||||||
|
public void stateChanged(ChangeEvent e) { |
||||||
|
checkCenterPane(); |
||||||
|
} |
||||||
|
}); |
||||||
|
|
||||||
|
lngLatAreaPane = createAreaLngLatPane(); |
||||||
|
areaPane = createAreaPane(); |
||||||
|
|
||||||
|
centerPane.add(areaPane, "area"); |
||||||
|
centerPane.add(lngLatAreaPane, "longLat"); |
||||||
|
|
||||||
|
locationType.setSelectedIndex(0); |
||||||
|
|
||||||
|
this.setLayout(new BorderLayout(0, 6)); |
||||||
|
this.add(locationType, BorderLayout.NORTH); |
||||||
|
this.add(centerPane, BorderLayout.CENTER); |
||||||
|
} |
||||||
|
|
||||||
|
private void checkCenterPane() { |
||||||
|
CardLayout cardLayout = (CardLayout) centerPane.getLayout(); |
||||||
|
if (locationType.getSelectedIndex() == 0) { |
||||||
|
cardLayout.show(centerPane, "area"); |
||||||
|
} else { |
||||||
|
cardLayout.show(centerPane, "longLat"); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public void populate(boolean useAreaName) { |
||||||
|
locationType.setSelectedIndex(useAreaName ? 0 : 1); |
||||||
|
|
||||||
|
checkCenterPane(); |
||||||
|
} |
||||||
|
|
||||||
|
public boolean update() { |
||||||
|
return locationType.getSelectedIndex() == 0; |
||||||
|
} |
||||||
|
|
||||||
|
protected JPanel createPane(String[] labels, JComponent... fieldComponents) { |
||||||
|
|
||||||
|
int len = Math.min(labels.length, fieldComponents.length); |
||||||
|
|
||||||
|
if (len == 0) { |
||||||
|
return new JPanel(); |
||||||
|
} |
||||||
|
|
||||||
|
Component[][] components = new Component[len][2]; |
||||||
|
for (int i = 0; i < len; i++) { |
||||||
|
components[i] = new Component[]{new UILabel(labels[i], SwingConstants.LEFT), fieldComponents[i]}; |
||||||
|
} |
||||||
|
double p = TableLayout.PREFERRED; |
||||||
|
double[] columnSize = {ChartDataPane.LABEL_WIDTH, 122}; |
||||||
|
double[] rowSize = new double[len]; |
||||||
|
Arrays.fill(rowSize, p); |
||||||
|
|
||||||
|
return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, 0, 6); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
@ -0,0 +1,106 @@ |
|||||||
|
package com.fr.design.chartx.data.map; |
||||||
|
|
||||||
|
import com.fr.chartx.data.field.diff.LineMapColumnFieldCollection; |
||||||
|
import com.fr.design.chartx.fields.AbstractDataSetFieldsPane; |
||||||
|
import com.fr.design.gui.icombobox.UIComboBox; |
||||||
|
import com.fr.design.i18n.Toolkit; |
||||||
|
|
||||||
|
import javax.swing.JPanel; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/13 |
||||||
|
*/ |
||||||
|
public class LineMapAreaLngLatPaneWithComboBox extends LineMapAreaLngLatPaneWithTinyFormula { |
||||||
|
private UIComboBox fromArea_tab0; |
||||||
|
private UIComboBox toArea_tab0; |
||||||
|
|
||||||
|
private UIComboBox fromArea_tab1; |
||||||
|
private UIComboBox fromLng_tab1; |
||||||
|
private UIComboBox fromLat_tab1; |
||||||
|
private UIComboBox toArea_tab1; |
||||||
|
private UIComboBox toLng_tab1; |
||||||
|
private UIComboBox toLat_tab1; |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createAreaPane() { |
||||||
|
if (fromArea_tab0 == null) { |
||||||
|
fromArea_tab0 = new UIComboBox(); |
||||||
|
toArea_tab0 = new UIComboBox(); |
||||||
|
} |
||||||
|
return createPane( |
||||||
|
new String[]{Toolkit.i18nText("Fine-Design_Chart_Start_Area_Name"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_End_Area_Name")}, |
||||||
|
fromArea_tab0, toArea_tab0 |
||||||
|
); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createAreaLngLatPane() { |
||||||
|
if (fromArea_tab1 == null) { |
||||||
|
fromArea_tab1 = new UIComboBox(); |
||||||
|
fromLng_tab1 = new UIComboBox(); |
||||||
|
fromLat_tab1 = new UIComboBox(); |
||||||
|
toArea_tab1 = new UIComboBox(); |
||||||
|
toLng_tab1 = new UIComboBox(); |
||||||
|
toLat_tab1 = new UIComboBox(); |
||||||
|
} |
||||||
|
return createPane( |
||||||
|
new String[]{ |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_Start_Area_Name"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_Start_Longitude"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_Start_Latitude"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_End_Area_Name"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_End_Longitude"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_End_Latitude")}, |
||||||
|
fromArea_tab1, |
||||||
|
fromLng_tab1, |
||||||
|
fromLat_tab1, |
||||||
|
toArea_tab1, |
||||||
|
toLng_tab1, |
||||||
|
toLat_tab1); |
||||||
|
} |
||||||
|
|
||||||
|
protected void populateTab0(LineMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractDataSetFieldsPane.populateField(fromArea_tab0, fieldCollection.getFromAreaName()); |
||||||
|
AbstractDataSetFieldsPane.populateField(toArea_tab0, fieldCollection.getToAreaName()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void updateTab0(LineMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractDataSetFieldsPane.updateField(fromArea_tab0, fieldCollection.getFromAreaName()); |
||||||
|
AbstractDataSetFieldsPane.updateField(toArea_tab0, fieldCollection.getToAreaName()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void populateTab1(LineMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractDataSetFieldsPane.populateField(fromArea_tab1, fieldCollection.getFromAreaName()); |
||||||
|
AbstractDataSetFieldsPane.populateField(toArea_tab1, fieldCollection.getToAreaName()); |
||||||
|
AbstractDataSetFieldsPane.populateField(fromLng_tab1, fieldCollection.getFromLng()); |
||||||
|
AbstractDataSetFieldsPane.populateField(toLng_tab1, fieldCollection.getToLng()); |
||||||
|
AbstractDataSetFieldsPane.populateField(fromLat_tab1, fieldCollection.getFromLat()); |
||||||
|
AbstractDataSetFieldsPane.populateField(toLat_tab1, fieldCollection.getToLat()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void updateTab1(LineMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractDataSetFieldsPane.updateField(fromArea_tab1, fieldCollection.getFromAreaName()); |
||||||
|
AbstractDataSetFieldsPane.updateField(toArea_tab1, fieldCollection.getToAreaName()); |
||||||
|
AbstractDataSetFieldsPane.updateField(fromLng_tab1, fieldCollection.getFromLng()); |
||||||
|
AbstractDataSetFieldsPane.updateField(toLng_tab1, fieldCollection.getToLng()); |
||||||
|
AbstractDataSetFieldsPane.updateField(fromLat_tab1, fieldCollection.getFromLat()); |
||||||
|
AbstractDataSetFieldsPane.updateField(toLat_tab1, fieldCollection.getToLat()); |
||||||
|
} |
||||||
|
|
||||||
|
public UIComboBox[] allFieldComboBox() { |
||||||
|
return new UIComboBox[]{ |
||||||
|
fromArea_tab0, |
||||||
|
toArea_tab0, |
||||||
|
fromArea_tab1, |
||||||
|
fromLng_tab1, |
||||||
|
fromLat_tab1, |
||||||
|
toArea_tab1, |
||||||
|
toLng_tab1, |
||||||
|
toLat_tab1 |
||||||
|
}; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,113 @@ |
|||||||
|
package com.fr.design.chartx.data.map; |
||||||
|
|
||||||
|
import com.fr.chartx.data.field.diff.LineMapColumnFieldCollection; |
||||||
|
import com.fr.design.chartx.fields.AbstractCellDataFieldsPane; |
||||||
|
import com.fr.design.formula.TinyFormulaPane; |
||||||
|
import com.fr.design.i18n.Toolkit; |
||||||
|
|
||||||
|
import javax.swing.JPanel; |
||||||
|
|
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/13 |
||||||
|
*/ |
||||||
|
public class LineMapAreaLngLatPaneWithTinyFormula extends AbstractAreaLngLatPane { |
||||||
|
private TinyFormulaPane fromArea_tab0; |
||||||
|
private TinyFormulaPane toArea_tab0; |
||||||
|
|
||||||
|
private TinyFormulaPane fromArea_tab1; |
||||||
|
private TinyFormulaPane fromLng_tab1; |
||||||
|
private TinyFormulaPane fromLat_tab1; |
||||||
|
private TinyFormulaPane toArea_tab1; |
||||||
|
private TinyFormulaPane toLng_tab1; |
||||||
|
private TinyFormulaPane toLat_tab1; |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createAreaPane() { |
||||||
|
if (fromArea_tab0 == null) { |
||||||
|
fromArea_tab0 = new TinyFormulaPane(); |
||||||
|
toArea_tab0 = new TinyFormulaPane(); |
||||||
|
} |
||||||
|
return createPane( |
||||||
|
new String[]{Toolkit.i18nText("Fine-Design_Chart_Start_Area_Name"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_End_Area_Name")}, |
||||||
|
fromArea_tab0, toArea_tab0 |
||||||
|
); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createAreaLngLatPane() { |
||||||
|
if (fromArea_tab1 == null) { |
||||||
|
fromArea_tab1 = new TinyFormulaPane(); |
||||||
|
fromLng_tab1 = new TinyFormulaPane(); |
||||||
|
fromLat_tab1 = new TinyFormulaPane(); |
||||||
|
toArea_tab1 = new TinyFormulaPane(); |
||||||
|
toLng_tab1 = new TinyFormulaPane(); |
||||||
|
toLat_tab1 = new TinyFormulaPane(); |
||||||
|
} |
||||||
|
return createPane( |
||||||
|
new String[]{ |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_Start_Area_Name"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_Start_Longitude"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_Start_Latitude"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_End_Area_Name"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_End_Longitude"), |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_End_Latitude")}, |
||||||
|
fromArea_tab1, |
||||||
|
fromLng_tab1, |
||||||
|
fromLat_tab1, |
||||||
|
toArea_tab1, |
||||||
|
toLng_tab1, |
||||||
|
toLat_tab1); |
||||||
|
} |
||||||
|
|
||||||
|
protected void populateTab0(LineMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractCellDataFieldsPane.populateField(fromArea_tab0, fieldCollection.getFromAreaName()); |
||||||
|
AbstractCellDataFieldsPane.populateField(toArea_tab0, fieldCollection.getToAreaName()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void updateTab0(LineMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractCellDataFieldsPane.updateField(fromArea_tab0, fieldCollection.getFromAreaName()); |
||||||
|
AbstractCellDataFieldsPane.updateField(toArea_tab0, fieldCollection.getToAreaName()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void populateTab1(LineMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractCellDataFieldsPane.populateField(fromArea_tab1, fieldCollection.getFromAreaName()); |
||||||
|
AbstractCellDataFieldsPane.populateField(toArea_tab1, fieldCollection.getToAreaName()); |
||||||
|
AbstractCellDataFieldsPane.populateField(fromLng_tab1, fieldCollection.getFromLng()); |
||||||
|
AbstractCellDataFieldsPane.populateField(toLng_tab1, fieldCollection.getToLng()); |
||||||
|
AbstractCellDataFieldsPane.populateField(fromLat_tab1, fieldCollection.getFromLat()); |
||||||
|
AbstractCellDataFieldsPane.populateField(toLat_tab1, fieldCollection.getToLat()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void updateTab1(LineMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractCellDataFieldsPane.updateField(fromArea_tab1, fieldCollection.getFromAreaName()); |
||||||
|
AbstractCellDataFieldsPane.updateField(toArea_tab1, fieldCollection.getToAreaName()); |
||||||
|
AbstractCellDataFieldsPane.updateField(fromLng_tab1, fieldCollection.getFromLng()); |
||||||
|
AbstractCellDataFieldsPane.updateField(toLng_tab1, fieldCollection.getToLng()); |
||||||
|
AbstractCellDataFieldsPane.updateField(fromLat_tab1, fieldCollection.getFromLat()); |
||||||
|
AbstractCellDataFieldsPane.updateField(toLat_tab1, fieldCollection.getToLat()); |
||||||
|
} |
||||||
|
|
||||||
|
public void populate(LineMapColumnFieldCollection fieldCollection) { |
||||||
|
super.populate(fieldCollection.isUseAreaName()); |
||||||
|
if (fieldCollection.isUseAreaName()) { |
||||||
|
populateTab0(fieldCollection); |
||||||
|
} else { |
||||||
|
populateTab1(fieldCollection); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public void update(LineMapColumnFieldCollection fieldCollection) { |
||||||
|
fieldCollection.setUseAreaName(super.update()); |
||||||
|
if (fieldCollection.isUseAreaName()) { |
||||||
|
updateTab0(fieldCollection); |
||||||
|
} else { |
||||||
|
updateTab1(fieldCollection); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
@ -0,0 +1,93 @@ |
|||||||
|
package com.fr.design.chartx.data.map; |
||||||
|
|
||||||
|
import com.fr.chartx.data.MapChartDataDefinition; |
||||||
|
import com.fr.design.chartx.AbstractChartDataPane; |
||||||
|
import com.fr.design.chartx.fields.diff.AreaMapCellDataFieldsPane; |
||||||
|
import com.fr.design.chartx.fields.diff.AreaMapDataSetFieldsPane; |
||||||
|
import com.fr.design.chartx.fields.diff.LineMapCellDataFieldsPane; |
||||||
|
import com.fr.design.chartx.fields.diff.LineMapDataSetFieldsPane; |
||||||
|
import com.fr.design.chartx.fields.diff.PointMapCellDataFieldsPane; |
||||||
|
import com.fr.design.chartx.fields.diff.PointMapDataSetFieldsPane; |
||||||
|
import com.fr.design.chartx.single.SingleDataPane; |
||||||
|
import com.fr.design.gui.frpane.AttributeChangeListener; |
||||||
|
import com.fr.plugin.chart.map.VanChartMapPlot; |
||||||
|
import com.fr.plugin.chart.type.MapType; |
||||||
|
import com.fr.van.chart.map.designer.VanMapAreaPointAndLineGroupPane; |
||||||
|
|
||||||
|
import javax.swing.JPanel; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/12 |
||||||
|
*/ |
||||||
|
public class MapChartDataPane extends AbstractChartDataPane<MapChartDataDefinition> { |
||||||
|
|
||||||
|
private SingleDataPane areaPane; |
||||||
|
private SingleDataPane pointPane; |
||||||
|
private SingleDataPane linePane; |
||||||
|
|
||||||
|
public MapChartDataPane(AttributeChangeListener listener) { |
||||||
|
super(listener); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createContentPane() { |
||||||
|
MapType mapType = MapType.AREA; |
||||||
|
if (this.getVanChart() != null) { |
||||||
|
VanChartMapPlot mapPlot = this.getVanChart().getPlot(); |
||||||
|
mapType = mapPlot == null ? mapType : mapPlot.getMapType(); |
||||||
|
} |
||||||
|
switch (mapType) { |
||||||
|
case AREA: |
||||||
|
areaPane = new SingleDataPane(new AreaMapDataSetFieldsPane(), new AreaMapCellDataFieldsPane()); |
||||||
|
return areaPane; |
||||||
|
case POINT: |
||||||
|
pointPane = new SingleDataPane(new PointMapDataSetFieldsPane(), new PointMapCellDataFieldsPane()); |
||||||
|
return pointPane; |
||||||
|
case LINE: |
||||||
|
linePane = new SingleDataPane(new LineMapDataSetFieldsPane(), new LineMapCellDataFieldsPane()); |
||||||
|
return linePane; |
||||||
|
case CUSTOM: |
||||||
|
areaPane = new SingleDataPane(new AreaMapDataSetFieldsPane(), new AreaMapCellDataFieldsPane()); |
||||||
|
pointPane = new SingleDataPane(new PointMapDataSetFieldsPane(), new PointMapCellDataFieldsPane()); |
||||||
|
linePane = new SingleDataPane(new LineMapDataSetFieldsPane(), new LineMapCellDataFieldsPane()); |
||||||
|
return new VanMapAreaPointAndLineGroupPane(areaPane, pointPane, linePane); |
||||||
|
default: |
||||||
|
areaPane = new SingleDataPane(new AreaMapDataSetFieldsPane(), new AreaMapCellDataFieldsPane()); |
||||||
|
return areaPane; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected void populate(MapChartDataDefinition mapChartDataDefinition) { |
||||||
|
if (mapChartDataDefinition == null) { |
||||||
|
return; |
||||||
|
} |
||||||
|
if (areaPane != null) { |
||||||
|
areaPane.populateBean(mapChartDataDefinition.getAreaMapDataDefinition()); |
||||||
|
} |
||||||
|
if (pointPane != null) { |
||||||
|
pointPane.populateBean(mapChartDataDefinition.getPointMapDataDefinition()); |
||||||
|
} |
||||||
|
if (linePane != null) { |
||||||
|
linePane.populateBean(mapChartDataDefinition.getLineMapDataDefinition()); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected MapChartDataDefinition update() { |
||||||
|
MapChartDataDefinition mapChartDataDefinition = new MapChartDataDefinition(); |
||||||
|
if (areaPane != null) { |
||||||
|
mapChartDataDefinition.setAreaMapDataDefinition(areaPane.updateBean()); |
||||||
|
} |
||||||
|
if (pointPane != null) { |
||||||
|
mapChartDataDefinition.setPointMapDataDefinition(pointPane.updateBean()); |
||||||
|
} |
||||||
|
if (linePane != null) { |
||||||
|
mapChartDataDefinition.setLineMapDataDefinition(linePane.updateBean()); |
||||||
|
} |
||||||
|
return mapChartDataDefinition; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,71 @@ |
|||||||
|
package com.fr.design.chartx.data.map; |
||||||
|
|
||||||
|
import com.fr.chartx.data.field.diff.PointMapColumnFieldCollection; |
||||||
|
import com.fr.design.chartx.fields.AbstractDataSetFieldsPane; |
||||||
|
import com.fr.design.gui.icombobox.UIComboBox; |
||||||
|
import com.fr.design.i18n.Toolkit; |
||||||
|
|
||||||
|
import javax.swing.JPanel; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/13 |
||||||
|
*/ |
||||||
|
public class PointMapAreaLngLatPaneWithComboBox extends PointMapAreaLngLatPaneWithTinyFormula { |
||||||
|
private UIComboBox area_tab0; |
||||||
|
|
||||||
|
private UIComboBox area_tab1; |
||||||
|
private UIComboBox lng_tab1; |
||||||
|
private UIComboBox lat_tab1; |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createAreaPane() { |
||||||
|
if (area_tab0 == null) { |
||||||
|
area_tab0 = new UIComboBox(); |
||||||
|
} |
||||||
|
return createPane( |
||||||
|
new String[]{Toolkit.i18nText("Fine-Design_Chart_Area_Name")}, |
||||||
|
area_tab0 |
||||||
|
); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createAreaLngLatPane() { |
||||||
|
if (area_tab1 == null) { |
||||||
|
area_tab1 = new UIComboBox(); |
||||||
|
lng_tab1 = new UIComboBox(); |
||||||
|
lat_tab1 = new UIComboBox(); |
||||||
|
} |
||||||
|
return createPane( |
||||||
|
new String[]{Toolkit.i18nText("Fine-Design_Chart_Area_Name"), Toolkit.i18nText("Fine-Design_Chart_Longitude"), Toolkit.i18nText("Fine-Design_Chart_Latitude")}, |
||||||
|
area_tab1, lng_tab1, lat_tab1 |
||||||
|
); |
||||||
|
} |
||||||
|
|
||||||
|
protected void populateTab0(PointMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractDataSetFieldsPane.populateField(area_tab0, fieldCollection.getAreaName()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void updateTab0(PointMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractDataSetFieldsPane.updateField(area_tab0, fieldCollection.getAreaName()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void populateTab1(PointMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractDataSetFieldsPane.populateField(area_tab1, fieldCollection.getAreaName()); |
||||||
|
AbstractDataSetFieldsPane.populateField(lng_tab1, fieldCollection.getLng()); |
||||||
|
AbstractDataSetFieldsPane.populateField(lat_tab1, fieldCollection.getLat()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void updateTab1(PointMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractDataSetFieldsPane.updateField(area_tab1, fieldCollection.getAreaName()); |
||||||
|
AbstractDataSetFieldsPane.updateField(lng_tab1, fieldCollection.getLng()); |
||||||
|
AbstractDataSetFieldsPane.updateField(lat_tab1, fieldCollection.getLat()); |
||||||
|
} |
||||||
|
|
||||||
|
public UIComboBox[] allFieldComboBox() { |
||||||
|
return new UIComboBox[]{ |
||||||
|
area_tab0, area_tab1, lng_tab1, lat_tab1 |
||||||
|
}; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,84 @@ |
|||||||
|
package com.fr.design.chartx.data.map; |
||||||
|
|
||||||
|
import com.fr.chartx.data.field.diff.PointMapColumnFieldCollection; |
||||||
|
import com.fr.design.chartx.fields.AbstractCellDataFieldsPane; |
||||||
|
import com.fr.design.formula.TinyFormulaPane; |
||||||
|
import com.fr.design.i18n.Toolkit; |
||||||
|
|
||||||
|
import javax.swing.JPanel; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/13 |
||||||
|
*/ |
||||||
|
public class PointMapAreaLngLatPaneWithTinyFormula extends AbstractAreaLngLatPane { |
||||||
|
private TinyFormulaPane area_tab0; |
||||||
|
|
||||||
|
private TinyFormulaPane area_tab1; |
||||||
|
private TinyFormulaPane lng_tab1; |
||||||
|
private TinyFormulaPane lat_tab1; |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createAreaPane() { |
||||||
|
if (area_tab0 == null) { |
||||||
|
area_tab0 = new TinyFormulaPane(); |
||||||
|
} |
||||||
|
return createPane( |
||||||
|
new String[]{Toolkit.i18nText("Fine-Design_Chart_Area_Name")}, |
||||||
|
area_tab0 |
||||||
|
); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createAreaLngLatPane() { |
||||||
|
if (area_tab1 == null) { |
||||||
|
area_tab1 = new TinyFormulaPane(); |
||||||
|
lng_tab1 = new TinyFormulaPane(); |
||||||
|
lat_tab1 = new TinyFormulaPane(); |
||||||
|
} |
||||||
|
return createPane( |
||||||
|
new String[]{Toolkit.i18nText("Fine-Design_Chart_Area_Name"), Toolkit.i18nText("Fine-Design_Chart_Longitude"), Toolkit.i18nText("Fine-Design_Chart_Latitude")}, |
||||||
|
area_tab1, lng_tab1, lat_tab1 |
||||||
|
); |
||||||
|
} |
||||||
|
|
||||||
|
protected void populateTab0(PointMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractCellDataFieldsPane.populateField(area_tab0, fieldCollection.getAreaName()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void updateTab0(PointMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractCellDataFieldsPane.updateField(area_tab0, fieldCollection.getAreaName()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void populateTab1(PointMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractCellDataFieldsPane.populateField(area_tab1, fieldCollection.getAreaName()); |
||||||
|
AbstractCellDataFieldsPane.populateField(lng_tab1, fieldCollection.getLng()); |
||||||
|
AbstractCellDataFieldsPane.populateField(lat_tab1, fieldCollection.getLat()); |
||||||
|
} |
||||||
|
|
||||||
|
protected void updateTab1(PointMapColumnFieldCollection fieldCollection) { |
||||||
|
AbstractCellDataFieldsPane.updateField(area_tab1, fieldCollection.getAreaName()); |
||||||
|
AbstractCellDataFieldsPane.updateField(lng_tab1, fieldCollection.getLng()); |
||||||
|
AbstractCellDataFieldsPane.updateField(lat_tab1, fieldCollection.getLat()); |
||||||
|
} |
||||||
|
|
||||||
|
public void populate(PointMapColumnFieldCollection fieldCollection) { |
||||||
|
super.populate(fieldCollection.isUseAreaName()); |
||||||
|
if (fieldCollection.isUseAreaName()) { |
||||||
|
populateTab0(fieldCollection); |
||||||
|
} else { |
||||||
|
populateTab1(fieldCollection); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public void update(PointMapColumnFieldCollection fieldCollection) { |
||||||
|
fieldCollection.setUseAreaName(super.update()); |
||||||
|
if (fieldCollection.isUseAreaName()) { |
||||||
|
updateTab0(fieldCollection); |
||||||
|
} else { |
||||||
|
updateTab1(fieldCollection); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,49 @@ |
|||||||
|
package com.fr.design.chartx.fields.diff; |
||||||
|
|
||||||
|
import com.fr.chartx.data.field.diff.AreaMapColumnFieldCollection; |
||||||
|
import com.fr.design.formula.TinyFormulaPane; |
||||||
|
import com.fr.design.i18n.Toolkit; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/7 |
||||||
|
*/ |
||||||
|
public class AreaMapCellDataFieldsPane extends AbstractCellDataFieldsWithSeriesValuePane<AreaMapColumnFieldCollection> { |
||||||
|
private TinyFormulaPane areaName; |
||||||
|
|
||||||
|
@Override |
||||||
|
protected String[] fieldLabels() { |
||||||
|
return new String[]{ |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_Area_Name") |
||||||
|
}; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected TinyFormulaPane[] formulaPanes() { |
||||||
|
return new TinyFormulaPane[]{ |
||||||
|
createAreaName() |
||||||
|
}; |
||||||
|
} |
||||||
|
|
||||||
|
private TinyFormulaPane createAreaName() { |
||||||
|
if (areaName == null) { |
||||||
|
areaName = new TinyFormulaPane(); |
||||||
|
} |
||||||
|
return areaName; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void populateBean(AreaMapColumnFieldCollection ob) { |
||||||
|
populateField(areaName, ob.getAreaName()); |
||||||
|
populateSeriesValuePane(ob); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public AreaMapColumnFieldCollection updateBean() { |
||||||
|
AreaMapColumnFieldCollection fieldCollection = new AreaMapColumnFieldCollection(); |
||||||
|
updateField(areaName, fieldCollection.getAreaName()); |
||||||
|
updateSeriesValuePane(fieldCollection); |
||||||
|
return fieldCollection; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,50 @@ |
|||||||
|
package com.fr.design.chartx.fields.diff; |
||||||
|
|
||||||
|
import com.fr.chartx.data.field.diff.AreaMapColumnFieldCollection; |
||||||
|
import com.fr.design.gui.icombobox.UIComboBox; |
||||||
|
import com.fr.design.i18n.Toolkit; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/7 |
||||||
|
*/ |
||||||
|
public class AreaMapDataSetFieldsPane extends AbstractDataSetFieldsWithSeriesValuePane<AreaMapColumnFieldCollection> { |
||||||
|
|
||||||
|
private UIComboBox areaName; |
||||||
|
|
||||||
|
@Override |
||||||
|
protected String[] fieldLabels() { |
||||||
|
return new String[]{ |
||||||
|
Toolkit.i18nText("Fine-Design_Chart_Area_Name") |
||||||
|
}; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected UIComboBox[] filedComboBoxes() { |
||||||
|
return new UIComboBox[]{ |
||||||
|
createAreaName() |
||||||
|
}; |
||||||
|
} |
||||||
|
|
||||||
|
private UIComboBox createAreaName() { |
||||||
|
if (areaName == null) { |
||||||
|
areaName = new UIComboBox(); |
||||||
|
} |
||||||
|
return areaName; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void populateBean(AreaMapColumnFieldCollection ob) { |
||||||
|
populateField(areaName, ob.getAreaName()); |
||||||
|
populateSeriesValuePane(ob); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public AreaMapColumnFieldCollection updateBean() { |
||||||
|
AreaMapColumnFieldCollection fieldCollection = new AreaMapColumnFieldCollection(); |
||||||
|
updateField(areaName, fieldCollection.getAreaName()); |
||||||
|
updateSeriesValuePane(fieldCollection); |
||||||
|
return fieldCollection; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,64 @@ |
|||||||
|
package com.fr.design.chartx.fields.diff; |
||||||
|
|
||||||
|
import com.fr.chartx.data.field.diff.LineMapColumnFieldCollection; |
||||||
|
import com.fr.design.chartx.data.map.LineMapAreaLngLatPaneWithTinyFormula; |
||||||
|
import com.fr.design.formula.TinyFormulaPane; |
||||||
|
|
||||||
|
import javax.swing.JPanel; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/11 |
||||||
|
*/ |
||||||
|
public class LineMapCellDataFieldsPane extends AbstractCellDataFieldsWithSeriesValuePane<LineMapColumnFieldCollection> { |
||||||
|
|
||||||
|
private LineMapAreaLngLatPaneWithTinyFormula areaLngLatPane; |
||||||
|
|
||||||
|
private TinyFormulaPane lineName; |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createNorthPane() { |
||||||
|
if (areaLngLatPane == null) { |
||||||
|
areaLngLatPane = new LineMapAreaLngLatPaneWithTinyFormula(); |
||||||
|
} |
||||||
|
return areaLngLatPane; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected String[] fieldLabels() { |
||||||
|
return new String[]{ |
||||||
|
"lineName" |
||||||
|
}; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected TinyFormulaPane[] formulaPanes() { |
||||||
|
if (lineName == null) { |
||||||
|
lineName = new TinyFormulaPane(); |
||||||
|
} |
||||||
|
return new TinyFormulaPane[]{ |
||||||
|
lineName |
||||||
|
}; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void populateBean(LineMapColumnFieldCollection ob) { |
||||||
|
areaLngLatPane.populate(ob); |
||||||
|
|
||||||
|
populateField(lineName, ob.getLineName()); |
||||||
|
|
||||||
|
populateSeriesValuePane(ob); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public LineMapColumnFieldCollection updateBean() { |
||||||
|
LineMapColumnFieldCollection fieldCollection = new LineMapColumnFieldCollection(); |
||||||
|
areaLngLatPane.update(fieldCollection); |
||||||
|
|
||||||
|
updateField(lineName, fieldCollection.getLineName()); |
||||||
|
|
||||||
|
updateSeriesValuePane(fieldCollection); |
||||||
|
return fieldCollection; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,61 @@ |
|||||||
|
package com.fr.design.chartx.fields.diff; |
||||||
|
|
||||||
|
import com.fr.chartx.data.field.diff.LineMapColumnFieldCollection; |
||||||
|
import com.fr.design.chartx.data.map.LineMapAreaLngLatPaneWithComboBox; |
||||||
|
import com.fr.design.gui.icombobox.UIComboBox; |
||||||
|
import com.fr.third.jodd.util.ArraysUtil; |
||||||
|
|
||||||
|
import javax.swing.JPanel; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/11 |
||||||
|
*/ |
||||||
|
public class LineMapDataSetFieldsPane extends AbstractDataSetFieldsWithSeriesValuePane<LineMapColumnFieldCollection> { |
||||||
|
private LineMapAreaLngLatPaneWithComboBox areaLngLatPane; |
||||||
|
|
||||||
|
private UIComboBox lineName; |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createNorthPane() { |
||||||
|
if (areaLngLatPane == null) { |
||||||
|
areaLngLatPane = new LineMapAreaLngLatPaneWithComboBox(); |
||||||
|
} |
||||||
|
return areaLngLatPane; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected String[] fieldLabels() { |
||||||
|
return new String[]{ |
||||||
|
"lineName" |
||||||
|
}; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected UIComboBox[] filedComboBoxes() { |
||||||
|
if (lineName == null) { |
||||||
|
lineName = new UIComboBox(); |
||||||
|
} |
||||||
|
UIComboBox[] result = areaLngLatPane.allFieldComboBox(); |
||||||
|
return ArraysUtil.join(new UIComboBox[]{ |
||||||
|
lineName |
||||||
|
}, result); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void populateBean(LineMapColumnFieldCollection ob) { |
||||||
|
areaLngLatPane.populate(ob); |
||||||
|
populateField(lineName, ob.getLineName()); |
||||||
|
populateSeriesValuePane(ob); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public LineMapColumnFieldCollection updateBean() { |
||||||
|
LineMapColumnFieldCollection columnFieldCollection = new LineMapColumnFieldCollection(); |
||||||
|
areaLngLatPane.update(columnFieldCollection); |
||||||
|
updateField(lineName, columnFieldCollection.getLineName()); |
||||||
|
updateSeriesValuePane(columnFieldCollection); |
||||||
|
return columnFieldCollection; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,48 @@ |
|||||||
|
package com.fr.design.chartx.fields.diff; |
||||||
|
|
||||||
|
import com.fr.chartx.data.field.diff.PointMapColumnFieldCollection; |
||||||
|
import com.fr.design.chartx.data.map.PointMapAreaLngLatPaneWithTinyFormula; |
||||||
|
import com.fr.design.formula.TinyFormulaPane; |
||||||
|
|
||||||
|
import javax.swing.JPanel; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/8 |
||||||
|
*/ |
||||||
|
public class PointMapCellDataFieldsPane extends AbstractCellDataFieldsWithSeriesValuePane<PointMapColumnFieldCollection> { |
||||||
|
private PointMapAreaLngLatPaneWithTinyFormula areaLngLatPane; |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createNorthPane() { |
||||||
|
if (areaLngLatPane == null) { |
||||||
|
areaLngLatPane = new PointMapAreaLngLatPaneWithTinyFormula(); |
||||||
|
} |
||||||
|
return areaLngLatPane; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected String[] fieldLabels() { |
||||||
|
return new String[0]; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected TinyFormulaPane[] formulaPanes() { |
||||||
|
return new TinyFormulaPane[0]; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void populateBean(PointMapColumnFieldCollection ob) { |
||||||
|
areaLngLatPane.populate(ob); |
||||||
|
populateSeriesValuePane(ob); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public PointMapColumnFieldCollection updateBean() { |
||||||
|
PointMapColumnFieldCollection fieldCollection = new PointMapColumnFieldCollection(); |
||||||
|
areaLngLatPane.update(fieldCollection); |
||||||
|
updateSeriesValuePane(fieldCollection); |
||||||
|
return fieldCollection; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,51 @@ |
|||||||
|
package com.fr.design.chartx.fields.diff; |
||||||
|
|
||||||
|
import com.fr.chartx.data.field.diff.PointMapColumnFieldCollection; |
||||||
|
import com.fr.design.chartx.data.map.PointMapAreaLngLatPaneWithComboBox; |
||||||
|
import com.fr.design.gui.icombobox.UIComboBox; |
||||||
|
|
||||||
|
import javax.swing.JPanel; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author shine |
||||||
|
* @version 10.0 |
||||||
|
* Created by shine on 2019/11/8 |
||||||
|
*/ |
||||||
|
public class PointMapDataSetFieldsPane extends AbstractDataSetFieldsWithSeriesValuePane<PointMapColumnFieldCollection> { |
||||||
|
private PointMapAreaLngLatPaneWithComboBox areaLngLatPane; |
||||||
|
|
||||||
|
@Override |
||||||
|
protected JPanel createNorthPane() { |
||||||
|
if (areaLngLatPane == null) { |
||||||
|
areaLngLatPane = new PointMapAreaLngLatPaneWithComboBox(); |
||||||
|
} |
||||||
|
return areaLngLatPane; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected String[] fieldLabels() { |
||||||
|
return new String[0]; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected UIComboBox[] filedComboBoxes() { |
||||||
|
if (areaLngLatPane == null) { |
||||||
|
areaLngLatPane = new PointMapAreaLngLatPaneWithComboBox(); |
||||||
|
} |
||||||
|
return areaLngLatPane.allFieldComboBox(); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public void populateBean(PointMapColumnFieldCollection ob) { |
||||||
|
areaLngLatPane.populate(ob); |
||||||
|
populateSeriesValuePane(ob); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public PointMapColumnFieldCollection updateBean() { |
||||||
|
PointMapColumnFieldCollection fieldCollection = new PointMapColumnFieldCollection(); |
||||||
|
areaLngLatPane.update(fieldCollection); |
||||||
|
updateSeriesValuePane(fieldCollection); |
||||||
|
return fieldCollection; |
||||||
|
} |
||||||
|
} |
@ -1,52 +0,0 @@ |
|||||||
package com.fr.van.chart.drillmap.designer.data; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.gui.frpane.AttributeChangeListener; |
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.DataContentsPane; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/6/20. |
|
||||||
*/ |
|
||||||
public class VanChartDrillMapContentsPane extends DataContentsPane { |
|
||||||
|
|
||||||
private VanChartMapLayerAndDataTabPane layerAndDataTabPane; |
|
||||||
|
|
||||||
private AttributeChangeListener listener; |
|
||||||
private ChartDataPane parent; |
|
||||||
|
|
||||||
public VanChartDrillMapContentsPane(AttributeChangeListener listener, ChartDataPane parent) { |
|
||||||
this.listener = listener; |
|
||||||
this.parent = parent; |
|
||||||
initAll(); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 设置是否关联单元格数据. |
|
||||||
* |
|
||||||
* @param supportCellData |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public void setSupportCellData(boolean supportCellData) { |
|
||||||
layerAndDataTabPane.setSupportCellData(supportCellData); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populate(ChartCollection collection) { |
|
||||||
layerAndDataTabPane.populateBean(collection); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void update(ChartCollection collection) { |
|
||||||
layerAndDataTabPane.updateBean(collection); |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected JPanel createContentPane() { |
|
||||||
layerAndDataTabPane = new VanChartMapLayerAndDataTabPane(this.listener, this.parent); |
|
||||||
return layerAndDataTabPane; |
|
||||||
} |
|
||||||
} |
|
@ -1,39 +0,0 @@ |
|||||||
package com.fr.van.chart.drillmap.designer.data; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.gui.frpane.AttributeChangeListener; |
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/6/20. |
|
||||||
*/ |
|
||||||
public class VanChartDrillMapDataPane extends ChartDataPane{ |
|
||||||
|
|
||||||
public VanChartDrillMapDataPane(AttributeChangeListener listener) { |
|
||||||
super(listener); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected JPanel createContentPane() { |
|
||||||
contentsPane = new VanChartDrillMapContentsPane(listener, VanChartDrillMapDataPane.this); |
|
||||||
return contentsPane; |
|
||||||
} |
|
||||||
|
|
||||||
//编辑内置数据集会stateChange,会调用这里
|
|
||||||
@Override |
|
||||||
protected void repeatLayout(ChartCollection collection) { |
|
||||||
if(contentsPane != null) { |
|
||||||
this.remove(contentsPane); |
|
||||||
} |
|
||||||
this.setLayout(new BorderLayout(0, 0)); |
|
||||||
|
|
||||||
contentsPane = new VanChartDrillMapContentsPane(listener, VanChartDrillMapDataPane.this); |
|
||||||
contentsPane.setSupportCellData(isSupportCellData()); |
|
||||||
|
|
||||||
this.add(contentsPane, BorderLayout.CENTER); |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
@ -1,130 +0,0 @@ |
|||||||
package com.fr.van.chart.drillmap.designer.data; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.dialog.BasicPane; |
|
||||||
import com.fr.design.dialog.MultiTabPane; |
|
||||||
import com.fr.design.gui.frpane.AttributeChangeListener; |
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
import com.fr.general.ComparatorUtils; |
|
||||||
import com.fr.van.chart.drillmap.designer.data.comp.DrillMapDataPane; |
|
||||||
import com.fr.van.chart.drillmap.designer.data.comp.DrillMapLayerPane; |
|
||||||
import com.fr.van.chart.map.designer.data.MapDataPaneHelper; |
|
||||||
|
|
||||||
import java.awt.CardLayout; |
|
||||||
import java.util.ArrayList; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/6/20. |
|
||||||
* 钻取层级和数据界面切换的界面 |
|
||||||
*/ |
|
||||||
public class VanChartMapLayerAndDataTabPane extends MultiTabPane<ChartCollection> { |
|
||||||
|
|
||||||
private DrillMapLayerPane layerPane; |
|
||||||
private DrillMapDataPane dataPane; |
|
||||||
|
|
||||||
private ChartCollection chartCollection; |
|
||||||
|
|
||||||
public VanChartMapLayerAndDataTabPane(AttributeChangeListener listener, ChartDataPane parent) { |
|
||||||
cardLayout = new CardLayout(); |
|
||||||
layerPane = new DrillMapLayerPane(); |
|
||||||
dataPane = new DrillMapDataPane(listener, parent); |
|
||||||
paneList = initPaneList(); |
|
||||||
initComponents(); |
|
||||||
} |
|
||||||
|
|
||||||
private void initComponents(){ |
|
||||||
super.relayoutWhenListChange(); |
|
||||||
} |
|
||||||
|
|
||||||
protected void tabChanged() { |
|
||||||
if(getSelectedIndex() == 0){ |
|
||||||
return; |
|
||||||
} |
|
||||||
if(chartCollection == null){ |
|
||||||
return; |
|
||||||
} |
|
||||||
if(!ComparatorUtils.equals(MapDataPaneHelper.getDrillMapLayerMapTypeList(chartCollection), dataPane.getCurrentMapTypeList())){ |
|
||||||
dataPane.populateBean(chartCollection); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 当List中的界面变化时, 重新布局 |
|
||||||
*/ |
|
||||||
public void relayoutWhenListChange() { |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected List<BasicPane> initPaneList() { |
|
||||||
List<BasicPane> paneList = new ArrayList<BasicPane>(); |
|
||||||
|
|
||||||
if(layerPane != null) { |
|
||||||
paneList.add(layerPane); |
|
||||||
} |
|
||||||
if(dataPane != null) { |
|
||||||
paneList.add(dataPane); |
|
||||||
} |
|
||||||
|
|
||||||
return paneList; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populateBean(ChartCollection ob) { |
|
||||||
chartCollection = ob; |
|
||||||
layerPane.populateBean(ob); |
|
||||||
dataPane.populateBean(ob); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Update. |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public ChartCollection updateBean() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void updateBean(ChartCollection ob) { |
|
||||||
layerPane.updateBean(ob); |
|
||||||
dataPane.updateBean(ob); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 设置是否关联单元格数据. |
|
||||||
* |
|
||||||
* @param supportCellData |
|
||||||
*/ |
|
||||||
public void setSupportCellData(boolean supportCellData) { |
|
||||||
dataPane.setSupportCellData(supportCellData); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 是否是指定类型 |
|
||||||
* |
|
||||||
* @param ob 对象 |
|
||||||
* @return 是否是指定类型 |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public boolean accept(Object ob) { |
|
||||||
return false; |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* title应该是一个属性,不只是对话框的标题时用到,与其他组件结合时,也会用得到 |
|
||||||
* |
|
||||||
* @return 绥化狂标题 |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public String title4PopupWindow() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 重置 |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public void reset() { |
|
||||||
|
|
||||||
} |
|
||||||
} |
|
@ -1,117 +0,0 @@ |
|||||||
package com.fr.van.chart.drillmap.designer.data.comp; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.Chart; |
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.beans.BasicBeanPane; |
|
||||||
import com.fr.design.beans.FurtherBasicBeanPane; |
|
||||||
import com.fr.design.gui.frpane.AttributeChangeListener; |
|
||||||
import com.fr.design.gui.frpane.UIComboBoxPane; |
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.drillmap.data.DrillMapDefinition; |
|
||||||
import com.fr.plugin.chart.type.MapType; |
|
||||||
import com.fr.van.chart.map.designer.data.MapDataPaneHelper; |
|
||||||
|
|
||||||
import java.awt.*; |
|
||||||
import java.util.ArrayList; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/6/20. |
|
||||||
* 钻取地图数据配置界面中 和钻取层级平级的数据界面 |
|
||||||
*/ |
|
||||||
public class DrillMapDataPane extends BasicBeanPane<ChartCollection> { |
|
||||||
private UIComboBoxPane<ChartCollection> dataDefinitionType;//数据定义方式:底层数据汇总/各层级分别指定
|
|
||||||
|
|
||||||
private SingleLayerDataDefinitionPane bottomDataDefinitionPane;//底层数据汇总方式定义钻取地图数据
|
|
||||||
private EachLayerDataDefinitionPane eachLayerDataDefinitionPane;//各层级分别指定
|
|
||||||
|
|
||||||
private ChartDataPane parent; |
|
||||||
|
|
||||||
public DrillMapDataPane(final AttributeChangeListener listener,final ChartDataPane parent) { |
|
||||||
this.parent = parent; |
|
||||||
bottomDataDefinitionPane = new SingleLayerDataDefinitionPane(listener, parent); |
|
||||||
eachLayerDataDefinitionPane = new EachLayerDataDefinitionPane(listener, parent); |
|
||||||
|
|
||||||
dataDefinitionType = new UIComboBoxPane<ChartCollection>() { |
|
||||||
@Override |
|
||||||
protected List<FurtherBasicBeanPane<? extends ChartCollection>> initPaneList() { |
|
||||||
|
|
||||||
List<FurtherBasicBeanPane<? extends ChartCollection>> paneList = new ArrayList<FurtherBasicBeanPane<? extends ChartCollection>>(); |
|
||||||
paneList.add(bottomDataDefinitionPane); |
|
||||||
paneList.add(eachLayerDataDefinitionPane); |
|
||||||
return paneList; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected String title4PopupWindow() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
}; |
|
||||||
|
|
||||||
this.setLayout(new BorderLayout()); |
|
||||||
this.add(dataDefinitionType, BorderLayout.CENTER); |
|
||||||
} |
|
||||||
|
|
||||||
public List<MapType> getCurrentMapTypeList() { |
|
||||||
return eachLayerDataDefinitionPane.getCurrentMapTypeList(); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 设置是否关联单元格数据. |
|
||||||
* |
|
||||||
* @param supportCellData |
|
||||||
*/ |
|
||||||
public void setSupportCellData(boolean supportCellData) { |
|
||||||
bottomDataDefinitionPane.setSupportCellData(supportCellData); |
|
||||||
eachLayerDataDefinitionPane.setSupportCellData(supportCellData); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Populate. |
|
||||||
* |
|
||||||
* @param ob |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public void populateBean(ChartCollection ob) { |
|
||||||
|
|
||||||
dataDefinitionType.setSelectedIndex(MapDataPaneHelper.isFromBottomData(ob) ? 0 : 1); |
|
||||||
|
|
||||||
ChartCollection bottomDataChartCollection = MapDataPaneHelper.getBottomDataDrillMapChartCollection(ob); |
|
||||||
bottomDataDefinitionPane.populateBean(bottomDataChartCollection); |
|
||||||
eachLayerDataDefinitionPane.populateBean(ob); |
|
||||||
|
|
||||||
parent.initAllListeners(); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Update. |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public ChartCollection updateBean() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void updateBean(ChartCollection ob) { |
|
||||||
DrillMapDefinition drillMapDefinition = MapDataPaneHelper.getDrillMapDefinition(ob); |
|
||||||
if(drillMapDefinition == null){ |
|
||||||
drillMapDefinition = new DrillMapDefinition(); |
|
||||||
ob.getSelectedChart().setFilterDefinition(drillMapDefinition); |
|
||||||
} |
|
||||||
if(dataDefinitionType.getSelectedIndex() == 0){ |
|
||||||
drillMapDefinition.setFromBottomData(true); |
|
||||||
ChartCollection temp = new ChartCollection(new Chart()); |
|
||||||
bottomDataDefinitionPane.updateBean(temp); |
|
||||||
drillMapDefinition.setBottomDataDefinition(temp.getSelectedChart().getFilterDefinition()); |
|
||||||
} else { |
|
||||||
drillMapDefinition.setFromBottomData(false); |
|
||||||
eachLayerDataDefinitionPane.updateBean(ob); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected String title4PopupWindow() { |
|
||||||
return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Use_Data"); |
|
||||||
} |
|
||||||
} |
|
@ -1,171 +0,0 @@ |
|||||||
package com.fr.van.chart.drillmap.designer.data.comp; |
|
||||||
|
|
||||||
import com.fr.base.chart.chartdata.TopDefinitionProvider; |
|
||||||
import com.fr.chart.chartattr.Chart; |
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.dialog.BasicPane; |
|
||||||
import com.fr.design.dialog.MultiTabPane; |
|
||||||
import com.fr.design.gui.frpane.AttributeChangeListener; |
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
import com.fr.general.ComparatorUtils; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.drillmap.DrillMapHelper; |
|
||||||
import com.fr.plugin.chart.drillmap.VanChartDrillMapPlot; |
|
||||||
import com.fr.plugin.chart.drillmap.data.DrillMapDefinition; |
|
||||||
import com.fr.plugin.chart.map.server.CompatibleGeoJSONTreeHelper; |
|
||||||
import com.fr.plugin.chart.type.MapType; |
|
||||||
import com.fr.van.chart.map.designer.data.MapDataPaneHelper; |
|
||||||
|
|
||||||
import javax.swing.tree.DefaultMutableTreeNode; |
|
||||||
import java.awt.*; |
|
||||||
import java.util.ArrayList; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/6/20. |
|
||||||
* 各层级分别指定的界面 |
|
||||||
*/ |
|
||||||
public class EachLayerDataDefinitionPane extends MultiTabPane<ChartCollection> { |
|
||||||
private AttributeChangeListener listener; |
|
||||||
private ChartDataPane parent; |
|
||||||
private int depth; |
|
||||||
private String oldGeoUrl; |
|
||||||
private List<MapType> oldMapList; |
|
||||||
|
|
||||||
public EachLayerDataDefinitionPane(AttributeChangeListener listener, ChartDataPane parent) { |
|
||||||
this.listener = listener; |
|
||||||
this.parent = parent; |
|
||||||
cardLayout = new CardLayout(); |
|
||||||
} |
|
||||||
|
|
||||||
private void initComponents(){ |
|
||||||
super.relayoutWhenListChange(); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 当List中的界面变化时, 重新布局 |
|
||||||
*/ |
|
||||||
public void relayoutWhenListChange() { |
|
||||||
} |
|
||||||
|
|
||||||
public List<MapType> getCurrentMapTypeList() { |
|
||||||
return oldMapList; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected List<BasicPane> initPaneList() { |
|
||||||
List<BasicPane> paneList = new ArrayList<BasicPane>(); |
|
||||||
|
|
||||||
for(int i = 1; i < depth + 1; i++){ |
|
||||||
String tile = String.format("%s%d%s", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Index_Article"), i, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Index_Layer")); |
|
||||||
|
|
||||||
SingleLayerDataDefinitionPane pane = new SingleLayerDataDefinitionPane(tile, this.listener, this.parent); |
|
||||||
pane.setSupportCellData(parent.isSupportCellData()); |
|
||||||
paneList.add(pane); |
|
||||||
} |
|
||||||
|
|
||||||
return paneList; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populateBean(ChartCollection ob) { |
|
||||||
VanChartDrillMapPlot drillMapPlot = DrillMapHelper.getDrillMapPlot(ob); |
|
||||||
if(drillMapPlot == null){ |
|
||||||
return; |
|
||||||
} |
|
||||||
if(!ComparatorUtils.equals(oldGeoUrl, drillMapPlot.getGeoUrl())) { |
|
||||||
oldGeoUrl = drillMapPlot.getGeoUrl(); |
|
||||||
DefaultMutableTreeNode root = CompatibleGeoJSONTreeHelper.getNodeByJSONPath(oldGeoUrl); |
|
||||||
if (root == null) { |
|
||||||
return; |
|
||||||
} |
|
||||||
|
|
||||||
depth = root.getDepth() + 1;//根节点也算一层
|
|
||||||
paneList = initPaneList(); |
|
||||||
this.removeAll(); |
|
||||||
initComponents(); |
|
||||||
} |
|
||||||
|
|
||||||
oldMapList = drillMapPlot.getLayerMapTypeList(); |
|
||||||
populatePaneList(ob); |
|
||||||
} |
|
||||||
|
|
||||||
private void populatePaneList(ChartCollection chartCollection){ |
|
||||||
for(int i = 0, len = paneList.size(); i < len; i++){ |
|
||||||
BasicPane basicPane = paneList.get(i); |
|
||||||
MapType mapType = oldMapList.get(i); |
|
||||||
if(basicPane instanceof SingleLayerDataDefinitionPane){ |
|
||||||
ChartCollection clone = MapDataPaneHelper.getLayerChartCollection(chartCollection, i, mapType); |
|
||||||
((SingleLayerDataDefinitionPane) basicPane).populateBean(clone); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Update. |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public ChartCollection updateBean() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void updateBean(ChartCollection ob) { |
|
||||||
DrillMapDefinition drillMapDefinition = MapDataPaneHelper.getDrillMapDefinition(ob); |
|
||||||
List<TopDefinitionProvider> eachLayerDataDefinitionList = new ArrayList<TopDefinitionProvider>(); |
|
||||||
for(BasicPane basicPane : paneList){ |
|
||||||
if(basicPane instanceof SingleLayerDataDefinitionPane){ |
|
||||||
ChartCollection temp = new ChartCollection(new Chart()); |
|
||||||
((SingleLayerDataDefinitionPane) basicPane).updateBean(temp); |
|
||||||
eachLayerDataDefinitionList.add(temp.getSelectedChart().getFilterDefinition()); |
|
||||||
} |
|
||||||
} |
|
||||||
drillMapDefinition.setEachLayerDataDefinitionList(eachLayerDataDefinitionList); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 是否是指定类型 |
|
||||||
* |
|
||||||
* @param ob 对象 |
|
||||||
* @return 是否是指定类型 |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public boolean accept(Object ob) { |
|
||||||
return false; |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* title应该是一个属性,不只是对话框的标题时用到,与其他组件结合时,也会用得到 |
|
||||||
* |
|
||||||
* @return 绥化狂标题 |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public String title4PopupWindow() { |
|
||||||
return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Each_Layer_Data_Special"); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 重置 |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public void reset() { |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
/** |
|
||||||
* 设置是否关联单元格数据. |
|
||||||
* |
|
||||||
* @param supportCellData |
|
||||||
*/ |
|
||||||
public void setSupportCellData(boolean supportCellData) { |
|
||||||
if(paneList == null){ |
|
||||||
return; |
|
||||||
} |
|
||||||
for(BasicPane basicPane : paneList){ |
|
||||||
if(basicPane instanceof SingleLayerDataDefinitionPane){ |
|
||||||
((SingleLayerDataDefinitionPane) basicPane).setSupportCellData(supportCellData); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
@ -1,94 +0,0 @@ |
|||||||
package com.fr.van.chart.drillmap.designer.data.comp; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.beans.FurtherBasicBeanPane; |
|
||||||
import com.fr.design.gui.frpane.AttributeChangeListener; |
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.NormalChartDataPane; |
|
||||||
|
|
||||||
|
|
||||||
import java.awt.BorderLayout; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/6/21. |
|
||||||
* 各层级分别指定中 单层区域地图数据配置 以及 底层数据汇总方式的界面 |
|
||||||
*/ |
|
||||||
public class SingleLayerDataDefinitionPane extends FurtherBasicBeanPane<ChartCollection> { |
|
||||||
private String title; |
|
||||||
private NormalChartDataPane normalChartDataPane; |
|
||||||
|
|
||||||
//底层数据汇总
|
|
||||||
public SingleLayerDataDefinitionPane(AttributeChangeListener listener, ChartDataPane parent) { |
|
||||||
this(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Bottom_Data_Sum"), listener, parent); |
|
||||||
} |
|
||||||
|
|
||||||
public SingleLayerDataDefinitionPane(String title, AttributeChangeListener listener, ChartDataPane parent) { |
|
||||||
this.title = title; |
|
||||||
normalChartDataPane = new NormalChartDataPane(listener, parent); |
|
||||||
|
|
||||||
this.setLayout(new BorderLayout()); |
|
||||||
this.add(normalChartDataPane, BorderLayout.CENTER); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 设置是否关联单元格数据. |
|
||||||
* |
|
||||||
* @param supportCellData |
|
||||||
*/ |
|
||||||
public void setSupportCellData(boolean supportCellData) { |
|
||||||
normalChartDataPane.setSupportCellData(supportCellData); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 是否是指定类型 |
|
||||||
* |
|
||||||
* @param ob 对象 |
|
||||||
* @return 是否是指定类型 |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public boolean accept(Object ob) { |
|
||||||
return false; |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* title应该是一个属性,不只是对话框的标题时用到,与其他组件结合时,也会用得到 |
|
||||||
* |
|
||||||
* @return 绥化狂标题 |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public String title4PopupWindow() { |
|
||||||
return title; |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 重置 |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public void reset() { |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Populate. |
|
||||||
* |
|
||||||
* @param ob |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public void populateBean(ChartCollection ob) { |
|
||||||
normalChartDataPane.populate(ob); |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void updateBean(ChartCollection ob) { |
|
||||||
normalChartDataPane.update(ob); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Update. |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public ChartCollection updateBean() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
} |
|
@ -1,84 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.gui.frpane.AttributeChangeListener; |
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.DataContentsPane; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.NormalChartDataPane; |
|
||||||
import com.fr.van.chart.map.designer.VanMapAreaPointAndLineGroupPane; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/5/17. |
|
||||||
*/ |
|
||||||
public class CustomMapChartDataContentsPane extends DataContentsPane{ |
|
||||||
private NormalChartDataPane areaMapChartDataPane; |
|
||||||
private NormalChartDataPane pointMapChartDataPane; |
|
||||||
private NormalChartDataPane lineMapChartDataPane; |
|
||||||
|
|
||||||
private AttributeChangeListener listener; |
|
||||||
private ChartDataPane parent; |
|
||||||
|
|
||||||
public CustomMapChartDataContentsPane(AttributeChangeListener listener, ChartDataPane parent) { |
|
||||||
this.listener = listener; |
|
||||||
this.parent = parent; |
|
||||||
initAll(); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void setSupportCellData(boolean supportCellData) { |
|
||||||
areaMapChartDataPane.setSupportCellData(supportCellData); |
|
||||||
pointMapChartDataPane.setSupportCellData(supportCellData); |
|
||||||
lineMapChartDataPane.setSupportCellData(supportCellData); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populate(ChartCollection collection) { |
|
||||||
populateAreaMap(collection); |
|
||||||
populatePointMap(collection); |
|
||||||
populateLineMap(collection); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void update(ChartCollection collection) { |
|
||||||
updatePointMap(collection); |
|
||||||
updateAreaMap(collection); |
|
||||||
updateLineMap(collection); |
|
||||||
} |
|
||||||
|
|
||||||
public void populatePointMap(ChartCollection collection) { |
|
||||||
pointMapChartDataPane.populate(collection); |
|
||||||
} |
|
||||||
|
|
||||||
public void populateLineMap(ChartCollection collection) { |
|
||||||
lineMapChartDataPane.populate(collection); |
|
||||||
} |
|
||||||
|
|
||||||
public void updatePointMap(ChartCollection collection) { |
|
||||||
pointMapChartDataPane.update(collection); |
|
||||||
} |
|
||||||
|
|
||||||
public void populateAreaMap(ChartCollection collection) { |
|
||||||
areaMapChartDataPane.populate(collection); |
|
||||||
} |
|
||||||
|
|
||||||
public void updateAreaMap(ChartCollection collection) { |
|
||||||
areaMapChartDataPane.update(collection); |
|
||||||
} |
|
||||||
|
|
||||||
public void updateLineMap(ChartCollection collection) { |
|
||||||
lineMapChartDataPane.update(collection); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected JPanel createContentPane() { |
|
||||||
areaMapChartDataPane = new NormalChartDataPane(listener, parent); |
|
||||||
pointMapChartDataPane = new NormalChartDataPane(listener, parent); |
|
||||||
lineMapChartDataPane = new NormalChartDataPane(listener, parent); |
|
||||||
|
|
||||||
return new VanMapAreaPointAndLineGroupPane(areaMapChartDataPane, pointMapChartDataPane, lineMapChartDataPane); |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
} |
|
@ -1,177 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data; |
|
||||||
|
|
||||||
import com.fr.base.chart.chartdata.TopDefinitionProvider; |
|
||||||
import com.fr.chart.chartattr.Chart; |
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.chart.chartattr.Plot; |
|
||||||
import com.fr.log.FineLoggerFactory; |
|
||||||
import com.fr.plugin.chart.drillmap.VanChartDrillMapPlot; |
|
||||||
import com.fr.plugin.chart.drillmap.data.DrillMapDefinition; |
|
||||||
import com.fr.plugin.chart.map.VanChartMapPlot; |
|
||||||
import com.fr.plugin.chart.map.data.VanMapDefinition; |
|
||||||
import com.fr.plugin.chart.type.MapType; |
|
||||||
|
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by shine on 2017/8/8. |
|
||||||
*/ |
|
||||||
public class MapDataPaneHelper { |
|
||||||
public static ChartCollection getPointMapChartCollection(ChartCollection chartCollection) { |
|
||||||
try{ |
|
||||||
ChartCollection cloneCollection = (ChartCollection) chartCollection.clone(); |
|
||||||
Chart chart = cloneCollection.getSelectedChart(); |
|
||||||
|
|
||||||
TopDefinitionProvider definition = chart.getFilterDefinition(); |
|
||||||
if(definition != null && definition instanceof VanMapDefinition) { |
|
||||||
chart.setFilterDefinition(((VanMapDefinition) definition).getPointDefinition()); |
|
||||||
} |
|
||||||
|
|
||||||
Plot plot = chart.getPlot(); |
|
||||||
if(plot != null && plot instanceof VanChartMapPlot){ |
|
||||||
((VanChartMapPlot) plot).setMapType(MapType.POINT); |
|
||||||
} |
|
||||||
return cloneCollection; |
|
||||||
} catch (Exception e){ |
|
||||||
FineLoggerFactory.getLogger().error(e.getMessage(), e); |
|
||||||
return chartCollection; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public static ChartCollection getLineMapChartCollection(ChartCollection chartCollection) { |
|
||||||
try{ |
|
||||||
ChartCollection cloneCollection = (ChartCollection) chartCollection.clone(); |
|
||||||
Chart chart = cloneCollection.getSelectedChart(); |
|
||||||
|
|
||||||
TopDefinitionProvider definition = chart.getFilterDefinition(); |
|
||||||
if(definition != null && definition instanceof VanMapDefinition) { |
|
||||||
chart.setFilterDefinition(((VanMapDefinition) definition).getLineDefinition()); |
|
||||||
} |
|
||||||
|
|
||||||
Plot plot = chart.getPlot(); |
|
||||||
if(plot != null && plot instanceof VanChartMapPlot){ |
|
||||||
((VanChartMapPlot) plot).setMapType(MapType.LINE); |
|
||||||
} |
|
||||||
return cloneCollection; |
|
||||||
} catch (Exception e){ |
|
||||||
FineLoggerFactory.getLogger().error(e.getMessage(), e); |
|
||||||
return chartCollection; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
public static ChartCollection getAreaMapChartCollection(ChartCollection chartCollection) { |
|
||||||
try{ |
|
||||||
ChartCollection cloneCollection = (ChartCollection) chartCollection.clone(); |
|
||||||
Chart chart = cloneCollection.getSelectedChart(); |
|
||||||
|
|
||||||
TopDefinitionProvider definition = chart.getFilterDefinition(); |
|
||||||
if(definition != null && definition instanceof VanMapDefinition) { |
|
||||||
chart.setFilterDefinition(((VanMapDefinition) definition).getAreaDefinition()); |
|
||||||
} |
|
||||||
|
|
||||||
Plot plot = chart.getPlot(); |
|
||||||
if(plot != null && plot instanceof VanChartMapPlot){ |
|
||||||
((VanChartMapPlot) plot).setMapType(MapType.AREA); |
|
||||||
} |
|
||||||
return cloneCollection; |
|
||||||
} catch (Exception e){ |
|
||||||
FineLoggerFactory.getLogger().error(e.getMessage(), e); |
|
||||||
return chartCollection; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public static ChartCollection getBottomDataDrillMapChartCollection(ChartCollection chartCollection) { |
|
||||||
try{ |
|
||||||
ChartCollection cloneCollection = (ChartCollection) chartCollection.clone(); |
|
||||||
Chart chart = cloneCollection.getSelectedChart(); |
|
||||||
|
|
||||||
TopDefinitionProvider definition = chart.getFilterDefinition(); |
|
||||||
if(definition != null && definition instanceof DrillMapDefinition) { |
|
||||||
chart.setFilterDefinition(((DrillMapDefinition) definition).getBottomDataDefinition()); |
|
||||||
} |
|
||||||
|
|
||||||
Plot plot = chart.getPlot(); |
|
||||||
if(plot != null && plot instanceof VanChartDrillMapPlot){ |
|
||||||
List<MapType> list = ((VanChartDrillMapPlot) plot).getLayerMapTypeList(); |
|
||||||
MapType mapType = (list != null && list.size() > 0) ? list.get(list.size() - 1) : MapType.AREA; |
|
||||||
((VanChartMapPlot) plot).setMapType(mapType); |
|
||||||
} |
|
||||||
return cloneCollection; |
|
||||||
} catch (Exception e){ |
|
||||||
FineLoggerFactory.getLogger().error(e.getMessage(), e); |
|
||||||
return chartCollection; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public static ChartCollection getLayerChartCollection(ChartCollection chartCollection, int level, MapType mapType){ |
|
||||||
if(mapType == null){ |
|
||||||
mapType = MapType.AREA; |
|
||||||
} |
|
||||||
try{ |
|
||||||
ChartCollection cloneCollection = (ChartCollection) chartCollection.clone(); |
|
||||||
Chart chart = cloneCollection.getSelectedChart(); |
|
||||||
|
|
||||||
TopDefinitionProvider definition = chart.getFilterDefinition(); |
|
||||||
if(definition != null && definition instanceof DrillMapDefinition) { |
|
||||||
List<TopDefinitionProvider> list = ((DrillMapDefinition) definition).getEachLayerDataDefinitionList(); |
|
||||||
if(list.size() > level){ |
|
||||||
chart.setFilterDefinition(list.get(level)); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
Plot plot = chart.getPlot(); |
|
||||||
if(plot != null && plot instanceof VanChartMapPlot){ |
|
||||||
((VanChartMapPlot) plot).setMapType(mapType); |
|
||||||
} |
|
||||||
return cloneCollection; |
|
||||||
} catch (Exception e){ |
|
||||||
FineLoggerFactory.getLogger().error(e.getMessage(), e); |
|
||||||
return chartCollection; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
public static boolean isFromBottomData(ChartCollection chartCollection) { |
|
||||||
DrillMapDefinition drillMapDefinition = getDrillMapDefinition(chartCollection); |
|
||||||
return drillMapDefinition == null || drillMapDefinition.isFromBottomData(); |
|
||||||
} |
|
||||||
|
|
||||||
public static DrillMapDefinition getDrillMapDefinition(ChartCollection chartCollection) { |
|
||||||
if(chartCollection != null){ |
|
||||||
Chart chart = chartCollection.getSelectedChart(); |
|
||||||
if(chart != null){ |
|
||||||
TopDefinitionProvider definitionProvider = chart.getFilterDefinition(); |
|
||||||
if(definitionProvider instanceof DrillMapDefinition){ |
|
||||||
return (DrillMapDefinition) definitionProvider; |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
return null; |
|
||||||
} |
|
||||||
|
|
||||||
public static List<MapType> getDrillMapLayerMapTypeList(ChartCollection chartCollection) { |
|
||||||
if(chartCollection != null){ |
|
||||||
Chart chart = chartCollection.getSelectedChart(); |
|
||||||
if(chart != null){ |
|
||||||
Plot plot = chart.getPlot(); |
|
||||||
if(plot instanceof VanChartDrillMapPlot){ |
|
||||||
return((VanChartDrillMapPlot) plot).getLayerMapTypeList(); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
return null; |
|
||||||
} |
|
||||||
|
|
||||||
public static MapType getPlotMapType(ChartCollection chartCollection){ |
|
||||||
Plot plot = chartCollection.getSelectedChart().getPlot(); |
|
||||||
return getPlotMapType(plot); |
|
||||||
} |
|
||||||
|
|
||||||
public static MapType getPlotMapType(Plot plot){ |
|
||||||
if(plot != null && plot instanceof VanChartMapPlot){ |
|
||||||
return ((VanChartMapPlot) plot).getMapType(); |
|
||||||
} |
|
||||||
return MapType.AREA; |
|
||||||
} |
|
||||||
} |
|
@ -1,121 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.gui.frpane.AttributeChangeListener; |
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.NormalChartDataPane; |
|
||||||
import com.fr.plugin.chart.map.data.VanMapDefinition; |
|
||||||
import com.fr.plugin.chart.type.MapType; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/5/16. |
|
||||||
*/ |
|
||||||
public class VanChartMapDataPane extends ChartDataPane { |
|
||||||
MapType mapType = MapType.AREA; |
|
||||||
|
|
||||||
public VanChartMapDataPane(AttributeChangeListener listener) { |
|
||||||
super(listener); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected JPanel createContentPane() { |
|
||||||
contentsPane = new NormalChartDataPane(listener, VanChartMapDataPane.this); |
|
||||||
return contentsPane; |
|
||||||
} |
|
||||||
|
|
||||||
protected void repeatLayout(ChartCollection collection) { |
|
||||||
if(contentsPane != null) { |
|
||||||
this.remove(contentsPane); |
|
||||||
} |
|
||||||
this.setLayout(new BorderLayout(0, 0)); |
|
||||||
|
|
||||||
switch (mapType){ |
|
||||||
case CUSTOM: |
|
||||||
contentsPane = new CustomMapChartDataContentsPane(listener, VanChartMapDataPane.this); |
|
||||||
break; |
|
||||||
default: |
|
||||||
contentsPane = new NormalChartDataPane(listener, VanChartMapDataPane.this); |
|
||||||
break; |
|
||||||
} |
|
||||||
|
|
||||||
contentsPane.setSupportCellData(isSupportCellData()); |
|
||||||
|
|
||||||
this.add(contentsPane, BorderLayout.CENTER); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 更新界面 数据内容 |
|
||||||
*/ |
|
||||||
public void populate(ChartCollection collection) { |
|
||||||
mapType = MapDataPaneHelper.getPlotMapType(collection); |
|
||||||
|
|
||||||
repeatLayout(collection); |
|
||||||
|
|
||||||
switch (mapType){ |
|
||||||
case AREA: |
|
||||||
ChartCollection areaClone = MapDataPaneHelper.getAreaMapChartCollection(collection); |
|
||||||
contentsPane.populate(areaClone); |
|
||||||
break; |
|
||||||
case POINT: |
|
||||||
ChartCollection pointClone = MapDataPaneHelper.getPointMapChartCollection(collection); |
|
||||||
contentsPane.populate(pointClone); |
|
||||||
break; |
|
||||||
case LINE: |
|
||||||
ChartCollection lineClone = MapDataPaneHelper.getLineMapChartCollection(collection); |
|
||||||
contentsPane.populate(lineClone); |
|
||||||
break; |
|
||||||
case CUSTOM: |
|
||||||
ChartCollection areaClone1 = MapDataPaneHelper.getAreaMapChartCollection(collection); |
|
||||||
ChartCollection pointClone1 = MapDataPaneHelper.getPointMapChartCollection(collection); |
|
||||||
ChartCollection lineClone1 = MapDataPaneHelper.getLineMapChartCollection(collection); |
|
||||||
((CustomMapChartDataContentsPane)contentsPane).populateAreaMap(areaClone1); |
|
||||||
((CustomMapChartDataContentsPane)contentsPane).populatePointMap(pointClone1); |
|
||||||
((CustomMapChartDataContentsPane) contentsPane).populateLineMap(lineClone1); |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 保存 数据界面内容 |
|
||||||
*/ |
|
||||||
public void update(ChartCollection collection) { |
|
||||||
if(contentsPane != null) { |
|
||||||
VanMapDefinition vanMapDefinition = new VanMapDefinition(); |
|
||||||
|
|
||||||
ChartCollection pointClone = MapDataPaneHelper.getPointMapChartCollection(collection); |
|
||||||
ChartCollection areaClone = MapDataPaneHelper.getAreaMapChartCollection(collection); |
|
||||||
ChartCollection lineClone = MapDataPaneHelper.getLineMapChartCollection(collection); |
|
||||||
|
|
||||||
switch (mapType){ |
|
||||||
case AREA: |
|
||||||
contentsPane.update(areaClone); |
|
||||||
pointClone.getSelectedChart().setFilterDefinition(null); |
|
||||||
lineClone.getSelectedChart().setFilterDefinition(null); |
|
||||||
break; |
|
||||||
case POINT: |
|
||||||
contentsPane.update(pointClone); |
|
||||||
areaClone.getSelectedChart().setFilterDefinition(null); |
|
||||||
lineClone.getSelectedChart().setFilterDefinition(null); |
|
||||||
break; |
|
||||||
case LINE: |
|
||||||
contentsPane.update(lineClone); |
|
||||||
areaClone.getSelectedChart().setFilterDefinition(null); |
|
||||||
pointClone.getSelectedChart().setFilterDefinition(null); |
|
||||||
break; |
|
||||||
case CUSTOM: |
|
||||||
((CustomMapChartDataContentsPane)contentsPane).updateAreaMap(areaClone); |
|
||||||
((CustomMapChartDataContentsPane)contentsPane).updatePointMap(pointClone); |
|
||||||
((CustomMapChartDataContentsPane) contentsPane).updateLineMap(lineClone); |
|
||||||
break; |
|
||||||
} |
|
||||||
vanMapDefinition.setAreaDefinition(areaClone.getSelectedChart().getFilterDefinition()); |
|
||||||
vanMapDefinition.setPointDefinition(pointClone.getSelectedChart().getFilterDefinition()); |
|
||||||
vanMapDefinition.setLineDefinition(lineClone.getSelectedChart().getFilterDefinition()); |
|
||||||
|
|
||||||
collection.getSelectedChart().setFilterDefinition(vanMapDefinition); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
@ -1,34 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/23. |
|
||||||
*/ |
|
||||||
public class LongitudeLatitudeAndArea { |
|
||||||
private Object longitude; |
|
||||||
private Object latitude; |
|
||||||
private Object area; |
|
||||||
|
|
||||||
public Object getLongitude() { |
|
||||||
return longitude; |
|
||||||
} |
|
||||||
|
|
||||||
public void setLongitude(Object longitude) { |
|
||||||
this.longitude = longitude; |
|
||||||
} |
|
||||||
|
|
||||||
public Object getLatitude() { |
|
||||||
return latitude; |
|
||||||
} |
|
||||||
|
|
||||||
public void setLatitude(Object latitude) { |
|
||||||
this.latitude = latitude; |
|
||||||
} |
|
||||||
|
|
||||||
public Object getArea() { |
|
||||||
return area; |
|
||||||
} |
|
||||||
|
|
||||||
public void setArea(Object area) { |
|
||||||
this.area = area; |
|
||||||
} |
|
||||||
} |
|
@ -1,23 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component; |
|
||||||
|
|
||||||
import com.fr.chart.chartdata.MoreNameCDDefinition; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.table.SeriesNameUseFieldNamePane; |
|
||||||
import com.fr.plugin.chart.map.data.VanMapMoreNameCDDefinition; |
|
||||||
|
|
||||||
import java.awt.Component; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/5/17. |
|
||||||
*/ |
|
||||||
public class SeriesNameUseFieldNamePaneWithOutFilter extends SeriesNameUseFieldNamePane { |
|
||||||
|
|
||||||
@Override |
|
||||||
protected Component[][] getUseComponent() { |
|
||||||
return getUseComponentWithOutFilter(); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected MoreNameCDDefinition createMoreNameCDDefinition() { |
|
||||||
return new VanMapMoreNameCDDefinition(); |
|
||||||
} |
|
||||||
} |
|
@ -1,29 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component; |
|
||||||
|
|
||||||
import com.fr.chart.chartdata.OneValueCDDefinition; |
|
||||||
import com.fr.design.gui.ilable.UILabel; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.table.SeriesNameUseFieldValuePane; |
|
||||||
import com.fr.plugin.chart.map.data.VanMapOneValueCDDefinition; |
|
||||||
|
|
||||||
import java.awt.Component; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/5/16. |
|
||||||
*/ |
|
||||||
public class SeriesNameUseFieldValuePaneWithOutFilter extends SeriesNameUseFieldValuePane { |
|
||||||
|
|
||||||
@Override |
|
||||||
protected Component[][] getUseComponent(UILabel Label1, UILabel Label2, UILabel Label3) { |
|
||||||
return getUseComponentWithOutFilter(Label1, Label2, Label3); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected Component[][] getUseComponentWithOutSummary(UILabel Label1, UILabel Label2, UILabel Label3) { |
|
||||||
return getUseComponentWithOutFilterAndSummary(Label1, Label2, Label3); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected OneValueCDDefinition createOneValueCDDefinition() { |
|
||||||
return new VanMapOneValueCDDefinition(); |
|
||||||
} |
|
||||||
} |
|
@ -1,40 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.Plot; |
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.table.SeriesNameUseFieldNamePane; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.table.SeriesNameUseFieldValuePane; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.table.SeriesTypeUseComboxPane; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/5/16. |
|
||||||
*/ |
|
||||||
public class SeriesTypeUseComboxPaneWithOutFilter extends SeriesTypeUseComboxPane { |
|
||||||
|
|
||||||
public SeriesTypeUseComboxPaneWithOutFilter(ChartDataPane parent, Plot initplot) { |
|
||||||
super(parent, initplot); |
|
||||||
} |
|
||||||
|
|
||||||
protected void initLayout() { |
|
||||||
super.initLayout(); |
|
||||||
this.add(new JPanel(), BorderLayout.SOUTH); |
|
||||||
} |
|
||||||
|
|
||||||
protected void initComponents() { |
|
||||||
super.initComponents(); |
|
||||||
this.setSelectedIndex(1); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected SeriesNameUseFieldValuePane createValuePane() { |
|
||||||
return new SeriesNameUseFieldValuePaneWithOutFilter(); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected SeriesNameUseFieldNamePane createNamePane() { |
|
||||||
return new SeriesNameUseFieldNamePaneWithOutFilter(); |
|
||||||
} |
|
||||||
} |
|
@ -1,13 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.report; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.map.data.VanMapReportDefinition; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/21. |
|
||||||
*/ |
|
||||||
public abstract class AbstractLongLatAreaPane extends JPanel { |
|
||||||
public abstract void populate(VanMapReportDefinition vanMapReportDefinition); |
|
||||||
public abstract void update(VanMapReportDefinition vanMapReportDefinition); |
|
||||||
} |
|
@ -1,65 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.report; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.formula.TinyFormulaPane; |
|
||||||
import com.fr.design.gui.ilable.BoldFontTextLabel; |
|
||||||
import com.fr.design.layout.TableLayout; |
|
||||||
import com.fr.design.layout.TableLayoutHelper; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.report.AbstractReportDataContentPane; |
|
||||||
|
|
||||||
import com.fr.van.chart.map.designer.data.component.LongitudeLatitudeAndArea; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
import java.awt.Component; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/21. |
|
||||||
*/ |
|
||||||
public class AreaPane extends AbstractReportDataContentPane { |
|
||||||
protected TinyFormulaPane areaName; |
|
||||||
|
|
||||||
public AreaPane() { |
|
||||||
JPanel panel = createContentPane(); |
|
||||||
this.setLayout(new BorderLayout()); |
|
||||||
this.add(panel, BorderLayout.CENTER); |
|
||||||
} |
|
||||||
|
|
||||||
protected JPanel createContentPane() { |
|
||||||
areaName = new TinyFormulaPane(); |
|
||||||
double p = TableLayout.PREFERRED; |
|
||||||
double f = TableLayout.FILL; |
|
||||||
double[] columnSize = {f, COMPONENT_WIDTH}; |
|
||||||
double[] rowSize = {p}; |
|
||||||
Component[][] components = getComponent (); |
|
||||||
return TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize); |
|
||||||
} |
|
||||||
|
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Area_Name")), areaName} |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected String[] columnNames() { |
|
||||||
return new String[0]; |
|
||||||
} |
|
||||||
|
|
||||||
public void populate(LongitudeLatitudeAndArea longLatArea) { |
|
||||||
if (longLatArea.getArea() != null) { |
|
||||||
areaName.getUITextField().setText(longLatArea.getArea().toString()); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public LongitudeLatitudeAndArea update() { |
|
||||||
LongitudeLatitudeAndArea longLatArea = new LongitudeLatitudeAndArea(); |
|
||||||
longLatArea.setArea(canBeFormula(areaName.getUITextField().getText())); |
|
||||||
return longLatArea; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populateBean(ChartCollection ob) { |
|
||||||
|
|
||||||
} |
|
||||||
} |
|
@ -1,71 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.report; |
|
||||||
|
|
||||||
import com.fr.design.gui.ilable.BoldFontTextLabel; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.map.data.VanMapReportDefinition; |
|
||||||
import com.fr.van.chart.map.designer.data.component.LongitudeLatitudeAndArea; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
import java.awt.Component; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/22. |
|
||||||
*/ |
|
||||||
public class LineMapAreaPane extends PointMapAreaPane { |
|
||||||
private static final int V_GAP = 10; |
|
||||||
protected AreaPane endAreaPane; |
|
||||||
|
|
||||||
protected JPanel createContentPane() { |
|
||||||
initAreaPane(); |
|
||||||
initEndAreaPane(); |
|
||||||
|
|
||||||
JPanel content = new JPanel(new BorderLayout(0, V_GAP)); |
|
||||||
content.add(areaPane, BorderLayout.NORTH); |
|
||||||
content.add(endAreaPane, BorderLayout.CENTER); |
|
||||||
return content; |
|
||||||
} |
|
||||||
|
|
||||||
protected void initEndAreaPane() { |
|
||||||
endAreaPane = new AreaPane(){ |
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Area_Name")), areaName} |
|
||||||
}; |
|
||||||
} |
|
||||||
}; |
|
||||||
} |
|
||||||
@Override |
|
||||||
protected void initAreaPane() { |
|
||||||
areaPane =new AreaPane(){ |
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Area_Name")), areaName} |
|
||||||
}; |
|
||||||
} |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populate(VanMapReportDefinition vanMapReportDefinition) { |
|
||||||
super.populate(vanMapReportDefinition); |
|
||||||
|
|
||||||
LongitudeLatitudeAndArea endLongLatArea = new LongitudeLatitudeAndArea(); |
|
||||||
endLongLatArea.setArea(vanMapReportDefinition.getEndAreaName()); |
|
||||||
endLongLatArea.setLongitude(vanMapReportDefinition.getEndLongitude()); |
|
||||||
endLongLatArea.setLatitude(vanMapReportDefinition.getEndLatitude()); |
|
||||||
|
|
||||||
endAreaPane.populate(endLongLatArea); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void update(VanMapReportDefinition vanMapReportDefinition) { |
|
||||||
super.update(vanMapReportDefinition); |
|
||||||
|
|
||||||
LongitudeLatitudeAndArea endLongLatArea = endAreaPane.update(); |
|
||||||
vanMapReportDefinition.setEndAreaName(endLongLatArea.getArea() == null ? null : endLongLatArea.getArea().toString()); |
|
||||||
vanMapReportDefinition.setEndLongitude(endLongLatArea.getLongitude() == null ? null : endLongLatArea.getLongitude().toString()); |
|
||||||
vanMapReportDefinition.setEndLatitude(endLongLatArea.getLatitude() == null ? null : endLongLatArea.getLatitude().toString()); |
|
||||||
|
|
||||||
} |
|
||||||
} |
|
@ -1,37 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.report; |
|
||||||
|
|
||||||
|
|
||||||
import com.fr.design.gui.ilable.BoldFontTextLabel; |
|
||||||
|
|
||||||
|
|
||||||
import java.awt.Component; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/22. |
|
||||||
*/ |
|
||||||
public class LineMapLongLatAreaPane extends LineMapAreaPane { |
|
||||||
|
|
||||||
protected void initEndAreaPane() { |
|
||||||
endAreaPane = new LongLatAreaPane(){ |
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Longitude")), longitude}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Latitude")), latitude}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Area_Name")), areaName} |
|
||||||
}; |
|
||||||
} |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaPane() { |
|
||||||
areaPane = new LongLatAreaPane(){ |
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Longitude")), longitude}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Latitude")), latitude}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Area_Name")), areaName} |
|
||||||
}; |
|
||||||
} |
|
||||||
}; |
|
||||||
} |
|
||||||
} |
|
@ -1,78 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.report; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.formula.TinyFormulaPane; |
|
||||||
import com.fr.design.gui.ilable.BoldFontTextLabel; |
|
||||||
import com.fr.design.layout.TableLayout; |
|
||||||
import com.fr.design.layout.TableLayoutHelper; |
|
||||||
|
|
||||||
import com.fr.van.chart.map.designer.data.component.LongitudeLatitudeAndArea; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
import java.awt.Component; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/21. |
|
||||||
*/ |
|
||||||
public class LongLatAreaPane extends AreaPane { |
|
||||||
protected TinyFormulaPane longitude; |
|
||||||
protected TinyFormulaPane latitude; |
|
||||||
|
|
||||||
public LongLatAreaPane() { |
|
||||||
JPanel panel = createContentPane(); |
|
||||||
this.setLayout(new BorderLayout()); |
|
||||||
this.add(panel, BorderLayout.CENTER); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected JPanel createContentPane() { |
|
||||||
areaName = new TinyFormulaPane(); |
|
||||||
longitude = new TinyFormulaPane(); |
|
||||||
latitude = new TinyFormulaPane(); |
|
||||||
double p = TableLayout.PREFERRED; |
|
||||||
double f = TableLayout.FILL; |
|
||||||
double[] columnSize = {f, COMPONENT_WIDTH}; |
|
||||||
double[] rowSize = {p, p, p}; |
|
||||||
Component[][] components = getComponent(); |
|
||||||
return TableLayoutHelper.createGapTableLayoutPane(components,rowSize,columnSize,12,6); |
|
||||||
} |
|
||||||
|
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Longitude")), longitude}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Latitude")), latitude}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Area_Name")), areaName} |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populateBean(ChartCollection ob) { |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected String[] columnNames() { |
|
||||||
return new String[0]; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populate(LongitudeLatitudeAndArea longLatArea) { |
|
||||||
super.populate(longLatArea); |
|
||||||
if (longLatArea.getLongitude() != null) { |
|
||||||
longitude.getUITextField().setText(longLatArea.getLongitude().toString()); |
|
||||||
} |
|
||||||
if (longLatArea.getLatitude() != null){ |
|
||||||
latitude.getUITextField().setText(longLatArea.getLatitude().toString()); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public LongitudeLatitudeAndArea update() { |
|
||||||
LongitudeLatitudeAndArea longLatArea = super.update(); |
|
||||||
longLatArea.setLongitude(canBeFormula(longitude.getUITextField().getText())); |
|
||||||
longLatArea.setLatitude(canBeFormula(latitude.getUITextField().getText())); |
|
||||||
return longLatArea; |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
@ -1,47 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.report; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.map.data.VanMapReportDefinition; |
|
||||||
import com.fr.van.chart.map.designer.data.component.LongitudeLatitudeAndArea; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/23. |
|
||||||
*/ |
|
||||||
public class PointMapAreaPane extends AbstractLongLatAreaPane { |
|
||||||
protected AreaPane areaPane; |
|
||||||
|
|
||||||
public PointMapAreaPane() { |
|
||||||
JPanel contentPane = createContentPane(); |
|
||||||
this.setLayout(new BorderLayout()); |
|
||||||
this.add(contentPane, BorderLayout.CENTER); |
|
||||||
} |
|
||||||
|
|
||||||
protected JPanel createContentPane() { |
|
||||||
initAreaPane(); |
|
||||||
JPanel content = new JPanel(new BorderLayout()); |
|
||||||
content.add(areaPane, BorderLayout.CENTER); |
|
||||||
return content; |
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaPane() { |
|
||||||
areaPane = new AreaPane(); |
|
||||||
} |
|
||||||
@Override |
|
||||||
public void populate(VanMapReportDefinition vanMapReportDefinition) { |
|
||||||
LongitudeLatitudeAndArea longLatArea = new LongitudeLatitudeAndArea(); |
|
||||||
longLatArea.setArea(vanMapReportDefinition.getCategoryName()); |
|
||||||
longLatArea.setLongitude(vanMapReportDefinition.getLongitude()); |
|
||||||
longLatArea.setLatitude(vanMapReportDefinition.getLatitude()); |
|
||||||
areaPane.populate(longLatArea); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void update(VanMapReportDefinition vanMapReportDefinition) { |
|
||||||
LongitudeLatitudeAndArea longLatArea = areaPane.update(); |
|
||||||
vanMapReportDefinition.setCategoryName(longLatArea.getArea() == null ? null : longLatArea.getArea().toString()); |
|
||||||
vanMapReportDefinition.setLongitude(longLatArea.getLongitude() == null ? null : longLatArea.getLongitude().toString()); |
|
||||||
vanMapReportDefinition.setLatitude(longLatArea.getLatitude() == null ? null : longLatArea.getLatitude().toString()); |
|
||||||
} |
|
||||||
} |
|
@ -1,14 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.report; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/23. |
|
||||||
*/ |
|
||||||
public class PointMapLongLatAreaPane extends PointMapAreaPane { |
|
||||||
public PointMapLongLatAreaPane() { |
|
||||||
super(); |
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaPane() { |
|
||||||
areaPane = new LongLatAreaPane(); |
|
||||||
} |
|
||||||
} |
|
@ -1,26 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.table; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.map.data.VanMapTableDefinitionProvider; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/21. |
|
||||||
*/ |
|
||||||
public abstract class AbstractLongLatAreaPane extends JPanel{ |
|
||||||
|
|
||||||
public abstract boolean isSelectedItem(); |
|
||||||
|
|
||||||
public abstract void populate(VanMapTableDefinitionProvider mapTableDefinitionProvider); |
|
||||||
|
|
||||||
public abstract void update(VanMapTableDefinitionProvider mapTableDefinitionProvider); |
|
||||||
|
|
||||||
public abstract void refreshBoxListWithSelectTableData(List list); |
|
||||||
|
|
||||||
public abstract void checkBoxUse(boolean hasUse); |
|
||||||
|
|
||||||
public abstract void clearAllBoxList(); |
|
||||||
|
|
||||||
|
|
||||||
} |
|
@ -1,104 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.table; |
|
||||||
|
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.gui.icombobox.UIComboBox; |
|
||||||
import com.fr.design.gui.ilable.BoldFontTextLabel; |
|
||||||
import com.fr.design.layout.TableLayout; |
|
||||||
import com.fr.design.layout.TableLayoutHelper; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.table.AbstractTableDataContentPane; |
|
||||||
|
|
||||||
import com.fr.van.chart.map.designer.data.component.LongitudeLatitudeAndArea; |
|
||||||
import com.fr.van.chart.map.designer.data.contentpane.table.VanPointMapPlotTableDataContentPane; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
import java.awt.Component; |
|
||||||
import java.awt.event.ItemEvent; |
|
||||||
import java.awt.event.ItemListener; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/21. |
|
||||||
*/ |
|
||||||
public class AreaPane extends AbstractTableDataContentPane { |
|
||||||
protected VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane listener; |
|
||||||
protected UIComboBox areaNameCom; |
|
||||||
public AreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
this.listener = parentPane; |
|
||||||
this.setLayout(new BorderLayout()); |
|
||||||
JPanel panel = createAreaNamePane(); |
|
||||||
this.add(panel, BorderLayout.CENTER); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void updateBean(ChartCollection ob) { |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
public void checkBoxUse(boolean hasUse) { |
|
||||||
areaNameCom.setEnabled(hasUse); |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
protected JPanel createAreaNamePane() { |
|
||||||
initAreaNameCom(); |
|
||||||
double p = TableLayout.PREFERRED; |
|
||||||
double f = TableLayout.FILL; |
|
||||||
double[] columnSize = {f, COMPONENT_WIDTH}; |
|
||||||
double[] rowSize = {p}; |
|
||||||
Component[][] components = getComponent(); |
|
||||||
return TableLayoutHelper.createGapTableLayoutPane(components,rowSize,columnSize,12,6); |
|
||||||
} |
|
||||||
|
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Area_Name")), areaNameCom} |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaNameCom() { |
|
||||||
|
|
||||||
areaNameCom = new UIComboBox(); |
|
||||||
|
|
||||||
areaNameCom.addItemListener(new ItemListener() { |
|
||||||
public void itemStateChanged(ItemEvent e) { |
|
||||||
listener.fireCheckSeriesUse(areaNameCom.getSelectedItem() != null); |
|
||||||
makeToolTipUse(areaNameCom); |
|
||||||
} |
|
||||||
}); |
|
||||||
} |
|
||||||
|
|
||||||
protected void makeToolTipUse(UIComboBox comBox) { |
|
||||||
if (comBox.getSelectedItem() != null) { |
|
||||||
comBox.setToolTipText(comBox.getSelectedItem().toString()); |
|
||||||
} else { |
|
||||||
comBox.setToolTipText(null); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void refreshBoxListWithSelectTableData(List list) { |
|
||||||
refreshBoxItems(areaNameCom, list); |
|
||||||
} |
|
||||||
|
|
||||||
public boolean isSelectedItem() { |
|
||||||
return areaNameCom.getSelectedItem() != null; |
|
||||||
} |
|
||||||
|
|
||||||
public void populate(LongitudeLatitudeAndArea longLatArea) { |
|
||||||
if (longLatArea.getArea() != null){ |
|
||||||
areaNameCom.setSelectedItem(longLatArea.getArea()); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public LongitudeLatitudeAndArea update() { |
|
||||||
LongitudeLatitudeAndArea longLatArea = new LongitudeLatitudeAndArea(); |
|
||||||
longLatArea.setArea(areaNameCom.getSelectedItem()); |
|
||||||
return longLatArea; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void clearAllBoxList() { |
|
||||||
clearBoxItems(areaNameCom); |
|
||||||
} |
|
||||||
} |
|
@ -1,100 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.table; |
|
||||||
|
|
||||||
import com.fr.design.gui.ilable.BoldFontTextLabel; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.map.data.VanMapTableDefinitionProvider; |
|
||||||
import com.fr.van.chart.map.designer.data.component.LongitudeLatitudeAndArea; |
|
||||||
import com.fr.van.chart.map.designer.data.contentpane.table.VanPointMapPlotTableDataContentPane; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
import java.awt.Component; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/21. |
|
||||||
*/ |
|
||||||
public class LineMapAreaPane extends PointMapAreaPane { |
|
||||||
private static final int V_GAP = 10; |
|
||||||
protected AreaPane endAreaPane; |
|
||||||
public LineMapAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
super(parentPane); |
|
||||||
} |
|
||||||
|
|
||||||
protected JPanel createContentPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
initAreaPane(parentPane); |
|
||||||
initEndAreaPane(parentPane); |
|
||||||
|
|
||||||
JPanel content = new JPanel(new BorderLayout(0, V_GAP)); |
|
||||||
content.add(areaPane, BorderLayout.NORTH); |
|
||||||
content.add(endAreaPane, BorderLayout.CENTER); |
|
||||||
return content; |
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
areaPane = new AreaPane(parentPane){ |
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Area_Name")), areaNameCom} |
|
||||||
}; |
|
||||||
} |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
protected void initEndAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
endAreaPane = new AreaPane(parentPane){ |
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Area_Name")), areaNameCom} |
|
||||||
}; |
|
||||||
} |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void refreshBoxListWithSelectTableData(List list) { |
|
||||||
super.refreshBoxListWithSelectTableData(list); |
|
||||||
endAreaPane.refreshBoxListWithSelectTableData(list); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public boolean isSelectedItem() { |
|
||||||
return super.isSelectedItem() |
|
||||||
&& endAreaPane.isSelectedItem(); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populate(VanMapTableDefinitionProvider mapTableDefinitionProvider) { |
|
||||||
super.populate(mapTableDefinitionProvider); |
|
||||||
|
|
||||||
LongitudeLatitudeAndArea endLongLatArea = new LongitudeLatitudeAndArea(); |
|
||||||
endLongLatArea.setArea(mapTableDefinitionProvider.getEndAreaName()); |
|
||||||
endLongLatArea.setLongitude(mapTableDefinitionProvider.getEndLongitude()); |
|
||||||
endLongLatArea.setLatitude(mapTableDefinitionProvider.getEndLatitude()); |
|
||||||
|
|
||||||
endAreaPane.populate(endLongLatArea); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void update(VanMapTableDefinitionProvider mapTableDefinitionProvider) { |
|
||||||
super.update(mapTableDefinitionProvider); |
|
||||||
|
|
||||||
LongitudeLatitudeAndArea endLongLatArea = endAreaPane.update(); |
|
||||||
mapTableDefinitionProvider.setEndAreaName(endLongLatArea.getArea() == null ? null : endLongLatArea.getArea().toString()); |
|
||||||
mapTableDefinitionProvider.setEndLongitude(endLongLatArea.getLongitude() == null ? null : endLongLatArea.getLongitude().toString()); |
|
||||||
mapTableDefinitionProvider.setEndLatitude(endLongLatArea.getLatitude() == null ? null : endLongLatArea.getLatitude().toString()); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void checkBoxUse(boolean hasUse) { |
|
||||||
super.checkBoxUse(hasUse); |
|
||||||
endAreaPane.checkBoxUse(hasUse); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void clearAllBoxList() { |
|
||||||
super.clearAllBoxList(); |
|
||||||
endAreaPane.clearAllBoxList(); |
|
||||||
} |
|
||||||
} |
|
@ -1,42 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.table; |
|
||||||
|
|
||||||
|
|
||||||
import com.fr.design.gui.ilable.BoldFontTextLabel; |
|
||||||
|
|
||||||
import com.fr.van.chart.map.designer.data.contentpane.table.VanPointMapPlotTableDataContentPane; |
|
||||||
|
|
||||||
import java.awt.Component; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/21. |
|
||||||
*/ |
|
||||||
public class LineMapLongLatAreaPane extends LineMapAreaPane { |
|
||||||
|
|
||||||
public LineMapLongLatAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
super(parentPane); |
|
||||||
} |
|
||||||
|
|
||||||
protected void initEndAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
endAreaPane = new LongLatAreaPane(parentPane){ |
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Longitude")), longitudeCom}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Latitude")), latitudeCom}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Area_Name")), areaNameCom} |
|
||||||
}; |
|
||||||
} |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
areaPane = new LongLatAreaPane(parentPane){ |
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Longitude")), longitudeCom}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Latitude")), latitudeCom}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Area_Name")), areaNameCom} |
|
||||||
}; |
|
||||||
} |
|
||||||
}; |
|
||||||
} |
|
||||||
} |
|
@ -1,123 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.table; |
|
||||||
|
|
||||||
import com.fr.design.gui.icombobox.UIComboBox; |
|
||||||
import com.fr.design.gui.ilable.BoldFontTextLabel; |
|
||||||
import com.fr.design.layout.TableLayout; |
|
||||||
import com.fr.design.layout.TableLayoutHelper; |
|
||||||
|
|
||||||
import com.fr.van.chart.map.designer.data.component.LongitudeLatitudeAndArea; |
|
||||||
import com.fr.van.chart.map.designer.data.contentpane.table.VanPointMapPlotTableDataContentPane; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.Component; |
|
||||||
import java.awt.event.ItemEvent; |
|
||||||
import java.awt.event.ItemListener; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/21. |
|
||||||
*/ |
|
||||||
public class LongLatAreaPane extends AreaPane { |
|
||||||
protected UIComboBox longitudeCom; |
|
||||||
protected UIComboBox latitudeCom; |
|
||||||
|
|
||||||
public LongLatAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
super(parentPane); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected JPanel createAreaNamePane() { |
|
||||||
initAreaNameCom(); |
|
||||||
initLongitudeCom(); |
|
||||||
initLatitudeCom(); |
|
||||||
|
|
||||||
double p = TableLayout.PREFERRED; |
|
||||||
double f = TableLayout.FILL; |
|
||||||
double[] columnSize = {f, COMPONENT_WIDTH}; |
|
||||||
double[] rowSize = {p, p, p}; |
|
||||||
Component[][] components = getComponent(); |
|
||||||
|
|
||||||
return TableLayoutHelper.createGapTableLayoutPane(components,rowSize,columnSize,12,6); |
|
||||||
} |
|
||||||
|
|
||||||
protected Component[][] getComponent () { |
|
||||||
return new Component[][]{ |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Longitude")), longitudeCom}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Latitude")), latitudeCom}, |
|
||||||
new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Area_Name")), areaNameCom} |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
public void refreshBoxListWithSelectTableData(List list) { |
|
||||||
super.refreshBoxListWithSelectTableData(list); |
|
||||||
refreshBoxItems(longitudeCom, list); |
|
||||||
refreshBoxItems(latitudeCom, list); |
|
||||||
} |
|
||||||
|
|
||||||
protected void initLatitudeCom() { |
|
||||||
|
|
||||||
latitudeCom = new UIComboBox(); |
|
||||||
|
|
||||||
latitudeCom.addItemListener(new ItemListener() { |
|
||||||
public void itemStateChanged(ItemEvent e) { |
|
||||||
listener.fireCheckSeriesUse(latitudeCom.getSelectedItem() != null); |
|
||||||
makeToolTipUse(latitudeCom); |
|
||||||
} |
|
||||||
}); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populate(LongitudeLatitudeAndArea longLatArea) { |
|
||||||
super.populate(longLatArea); |
|
||||||
if(longLatArea.getLongitude() != null){ |
|
||||||
longitudeCom.setSelectedItem(longLatArea.getLongitude()); |
|
||||||
} |
|
||||||
if(longLatArea.getLatitude() != null){ |
|
||||||
latitudeCom.setSelectedItem(longLatArea.getLatitude()); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public LongitudeLatitudeAndArea update() { |
|
||||||
LongitudeLatitudeAndArea longitudeLatitudeAndArea = super.update(); |
|
||||||
longitudeLatitudeAndArea.setLatitude(latitudeCom.getSelectedItem()); |
|
||||||
longitudeLatitudeAndArea.setLongitude(longitudeCom.getSelectedItem()); |
|
||||||
return longitudeLatitudeAndArea; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void checkBoxUse(boolean hasUse) { |
|
||||||
super.checkBoxUse(hasUse); |
|
||||||
longitudeCom.setEnabled(hasUse); |
|
||||||
latitudeCom.setEnabled(hasUse); |
|
||||||
} |
|
||||||
|
|
||||||
public void clearAllBoxList() { |
|
||||||
super.clearAllBoxList(); |
|
||||||
clearBoxItems(longitudeCom); |
|
||||||
clearBoxItems(latitudeCom); |
|
||||||
} |
|
||||||
|
|
||||||
protected void initLongitudeCom() { |
|
||||||
|
|
||||||
longitudeCom = new UIComboBox(); |
|
||||||
|
|
||||||
longitudeCom.addItemListener(new ItemListener() { |
|
||||||
public void itemStateChanged(ItemEvent e) { |
|
||||||
listener.fireCheckSeriesUse(longitudeCom.getSelectedItem() != null); |
|
||||||
makeToolTipUse(longitudeCom); |
|
||||||
} |
|
||||||
}); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected String title4PopupWindow() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
|
|
||||||
public boolean isSelectedItem() { |
|
||||||
return super.isSelectedItem() |
|
||||||
&& longitudeCom.getSelectedItem() != null |
|
||||||
&& latitudeCom.getSelectedItem() != null; |
|
||||||
} |
|
||||||
} |
|
@ -1,69 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.table; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.map.data.VanMapTableDefinitionProvider; |
|
||||||
import com.fr.van.chart.map.designer.data.component.LongitudeLatitudeAndArea; |
|
||||||
import com.fr.van.chart.map.designer.data.contentpane.table.VanPointMapPlotTableDataContentPane; |
|
||||||
|
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/23. |
|
||||||
*/ |
|
||||||
public class PointMapAreaPane extends AbstractLongLatAreaPane { |
|
||||||
protected AreaPane areaPane; |
|
||||||
|
|
||||||
public PointMapAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
JPanel contentPane = createContentPane(parentPane); |
|
||||||
this.setLayout(new BorderLayout()); |
|
||||||
this.add(contentPane, BorderLayout.CENTER); |
|
||||||
} |
|
||||||
|
|
||||||
protected JPanel createContentPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
initAreaPane(parentPane); |
|
||||||
JPanel content = new JPanel(new BorderLayout()); |
|
||||||
content.add(areaPane, BorderLayout.CENTER); |
|
||||||
return content; |
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
areaPane = new AreaPane(parentPane); |
|
||||||
} |
|
||||||
|
|
||||||
public void refreshBoxListWithSelectTableData(List list) { |
|
||||||
areaPane.refreshBoxListWithSelectTableData(list); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void checkBoxUse(boolean hasUse) { |
|
||||||
areaPane.checkBoxUse(hasUse); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void clearAllBoxList() { |
|
||||||
areaPane.clearAllBoxList(); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public boolean isSelectedItem() { |
|
||||||
return areaPane.isSelectedItem(); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populate(VanMapTableDefinitionProvider mapTableDefinitionProvider) { |
|
||||||
LongitudeLatitudeAndArea longLatArea = new LongitudeLatitudeAndArea(); |
|
||||||
longLatArea.setArea(mapTableDefinitionProvider.getCategoryName()); |
|
||||||
longLatArea.setLongitude(mapTableDefinitionProvider.getLongitude()); |
|
||||||
longLatArea.setLatitude(mapTableDefinitionProvider.getLatitude()); |
|
||||||
areaPane.populate(longLatArea); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void update(VanMapTableDefinitionProvider mapTableDefinitionProvider) { |
|
||||||
LongitudeLatitudeAndArea longLatArea = areaPane.update(); |
|
||||||
mapTableDefinitionProvider.setCategoryName(longLatArea.getArea() == null ? null : longLatArea.getArea().toString()); |
|
||||||
mapTableDefinitionProvider.setLongitude(longLatArea.getLongitude() == null ? null : longLatArea.getLongitude().toString()); |
|
||||||
mapTableDefinitionProvider.setLatitude(longLatArea.getLatitude() == null ? null : longLatArea.getLatitude().toString()); |
|
||||||
} |
|
||||||
} |
|
@ -1,18 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.component.table; |
|
||||||
|
|
||||||
import com.fr.van.chart.map.designer.data.contentpane.table.VanPointMapPlotTableDataContentPane; |
|
||||||
|
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/23. |
|
||||||
*/ |
|
||||||
public class PointMapLongLatAreaPane extends PointMapAreaPane { |
|
||||||
|
|
||||||
public PointMapLongLatAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
super(parentPane); |
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { |
|
||||||
areaPane = new LongLatAreaPane(parentPane); |
|
||||||
} |
|
||||||
} |
|
@ -1,111 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.contentpane.report; |
|
||||||
|
|
||||||
import com.fr.base.chart.chartdata.TopDefinitionProvider; |
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.chart.chartdata.SeriesDefinition; |
|
||||||
import com.fr.design.formula.TinyFormulaPane; |
|
||||||
import com.fr.design.gui.ilable.UILabel; |
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.report.AbstractReportDataContentPane; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.map.data.VanMapReportDefinition; |
|
||||||
|
|
||||||
import javax.swing.BorderFactory; |
|
||||||
import javax.swing.JPanel; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
import java.awt.Dimension; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/5/16. |
|
||||||
*/ |
|
||||||
public class VanAreaMapPlotReportDataContentPane extends AbstractReportDataContentPane { |
|
||||||
protected TinyFormulaPane areaName; |
|
||||||
|
|
||||||
public VanAreaMapPlotReportDataContentPane(ChartDataPane parent) { |
|
||||||
initEveryPane(); |
|
||||||
initAreaName(); |
|
||||||
JPanel panel = getContent(); |
|
||||||
panel.setBorder(BorderFactory.createEmptyBorder(0,24,0,15)); |
|
||||||
this.add(panel, "0,0,2,0"); |
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaName() { |
|
||||||
areaName = new TinyFormulaPane() { |
|
||||||
@Override |
|
||||||
protected void initLayout() { |
|
||||||
this.setLayout(new BorderLayout(4, 0)); |
|
||||||
|
|
||||||
UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Area_Name")); |
|
||||||
label.setPreferredSize(new Dimension(75, 20)); |
|
||||||
this.add(label, BorderLayout.WEST); |
|
||||||
|
|
||||||
formulaTextField.setPreferredSize(new Dimension(100, 20)); |
|
||||||
this.add(formulaTextField, BorderLayout.CENTER); |
|
||||||
this.add(formulaTextFieldButton, BorderLayout.EAST); |
|
||||||
} |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
protected JPanel getContent() { |
|
||||||
return getFormulaPane(); |
|
||||||
} |
|
||||||
|
|
||||||
protected JPanel getFormulaPane() { |
|
||||||
return areaName; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected String[] columnNames() { |
|
||||||
return new String[]{ |
|
||||||
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Series_Name"), |
|
||||||
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Series_Value") |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
public void populateBean(ChartCollection collection) { |
|
||||||
TopDefinitionProvider topDefinitionProvider = collection.getSelectedChart().getFilterDefinition(); |
|
||||||
if (topDefinitionProvider instanceof VanMapReportDefinition) { |
|
||||||
|
|
||||||
VanMapReportDefinition mapReportDefinition = (VanMapReportDefinition) topDefinitionProvider; |
|
||||||
|
|
||||||
populateDefinition(mapReportDefinition); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
protected void populateDefinition(VanMapReportDefinition mapReportDefinition) { |
|
||||||
if (mapReportDefinition.getCategoryName() != null) { |
|
||||||
areaName.getUITextField().setText(mapReportDefinition.getCategoryName().toString()); |
|
||||||
} |
|
||||||
if (mapReportDefinition.getSeriesSize() > 0) { |
|
||||||
seriesPane.populateBean(mapReportDefinition.getEntryList()); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public void updateBean(ChartCollection collection) { |
|
||||||
collection.getSelectedChart().setFilterDefinition(new VanMapReportDefinition()); |
|
||||||
|
|
||||||
TopDefinitionProvider topDefinitionProvider = collection.getSelectedChart().getFilterDefinition(); |
|
||||||
if (topDefinitionProvider instanceof VanMapReportDefinition) { |
|
||||||
|
|
||||||
VanMapReportDefinition mapReportDefinition = (VanMapReportDefinition) topDefinitionProvider; |
|
||||||
|
|
||||||
updateDefinition(mapReportDefinition); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
protected void updateDefinition(VanMapReportDefinition mapReportDefinition) { |
|
||||||
mapReportDefinition.setCategoryName(canBeFormula(areaName.getUITextField().getText())); |
|
||||||
mapReportDefinition.setLatitude(null); |
|
||||||
mapReportDefinition.setLongitude(null); |
|
||||||
|
|
||||||
List<Object[]> list = seriesPane.updateBean(); |
|
||||||
for (Object[] o : list) { |
|
||||||
SeriesDefinition sd = new SeriesDefinition(); |
|
||||||
|
|
||||||
sd.setSeriesName(canBeFormula(o[0])); |
|
||||||
sd.setValue(canBeFormula(o[1])); |
|
||||||
mapReportDefinition.addSeriesValue(sd); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
@ -1,24 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.contentpane.report; |
|
||||||
|
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
import com.fr.van.chart.map.designer.data.component.report.AbstractLongLatAreaPane; |
|
||||||
import com.fr.van.chart.map.designer.data.component.report.LineMapAreaPane; |
|
||||||
import com.fr.van.chart.map.designer.data.component.report.LineMapLongLatAreaPane; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/15. |
|
||||||
*/ |
|
||||||
public class VanLineMapPlotReportDataContentPane extends VanPointMapPlotReportDataContentPane { |
|
||||||
|
|
||||||
public VanLineMapPlotReportDataContentPane(ChartDataPane parent) { |
|
||||||
super(parent); |
|
||||||
} |
|
||||||
|
|
||||||
protected AbstractLongLatAreaPane getAreaPane() { |
|
||||||
return new LineMapAreaPane(); |
|
||||||
} |
|
||||||
|
|
||||||
protected AbstractLongLatAreaPane getLongLatAreaPane() { |
|
||||||
return new LineMapLongLatAreaPane(); |
|
||||||
} |
|
||||||
} |
|
@ -1,171 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.contentpane.report; |
|
||||||
|
|
||||||
import com.fr.design.beans.BasicBeanPane; |
|
||||||
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.ChartDataPane; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.map.data.VanMapReportDefinition; |
|
||||||
import com.fr.van.chart.map.designer.data.component.report.AbstractLongLatAreaPane; |
|
||||||
import com.fr.van.chart.map.designer.data.component.report.PointMapAreaPane; |
|
||||||
import com.fr.van.chart.map.designer.data.component.report.PointMapLongLatAreaPane; |
|
||||||
|
|
||||||
import javax.swing.BorderFactory; |
|
||||||
import javax.swing.JPanel; |
|
||||||
import javax.swing.event.ChangeEvent; |
|
||||||
import javax.swing.event.ChangeListener; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
import java.awt.CardLayout; |
|
||||||
import java.awt.Component; |
|
||||||
import java.awt.Dimension; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/5/17. |
|
||||||
*/ |
|
||||||
public class VanPointMapPlotReportDataContentPane extends VanAreaMapPlotReportDataContentPane { |
|
||||||
private LongLatReportFormulaPane longLatReportFormulaPane; |
|
||||||
|
|
||||||
public VanPointMapPlotReportDataContentPane(ChartDataPane parent) { |
|
||||||
super(parent); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected JPanel getContent() { |
|
||||||
longLatReportFormulaPane = new LongLatReportFormulaPane(); |
|
||||||
JPanel content = new JPanel(new BorderLayout(0, 4)); |
|
||||||
content.setBorder(BorderFactory.createEmptyBorder(0, 5, 5, 0)); |
|
||||||
content.add(longLatReportFormulaPane, BorderLayout.CENTER); |
|
||||||
return content; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected void populateDefinition(VanMapReportDefinition mapReportDefinition) { |
|
||||||
super.populateDefinition(mapReportDefinition); |
|
||||||
longLatReportFormulaPane.populateBean(mapReportDefinition); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected void updateDefinition(VanMapReportDefinition mapReportDefinition) { |
|
||||||
super.updateDefinition(mapReportDefinition); |
|
||||||
longLatReportFormulaPane.updateBean(mapReportDefinition); |
|
||||||
} |
|
||||||
|
|
||||||
//================================public class===================================
|
|
||||||
|
|
||||||
public class LongLatReportFormulaPane extends BasicBeanPane<VanMapReportDefinition> { |
|
||||||
|
|
||||||
double p = TableLayout.PREFERRED; |
|
||||||
double f = TableLayout.FILL; |
|
||||||
|
|
||||||
private UIButtonGroup<Integer> locationType; |
|
||||||
|
|
||||||
private JPanel centerPane; |
|
||||||
private AbstractLongLatAreaPane areaPane; |
|
||||||
private AbstractLongLatAreaPane longLatAreaPane; |
|
||||||
|
|
||||||
public LongLatReportFormulaPane() { |
|
||||||
this.setLayout(new BorderLayout(0, 5)); |
|
||||||
centerPane = new JPanel(new CardLayout()){ |
|
||||||
@Override |
|
||||||
public Dimension getPreferredSize() { |
|
||||||
if (locationType.getSelectedIndex() == 0){ |
|
||||||
return areaPane.getPreferredSize(); |
|
||||||
}else { |
|
||||||
return longLatAreaPane.getPreferredSize(); |
|
||||||
} |
|
||||||
} |
|
||||||
}; |
|
||||||
|
|
||||||
locationType = new UIButtonGroup<Integer>(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Location_With_Area_Name"), |
|
||||||
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Location_With_LongAndLat")}); |
|
||||||
locationType.addChangeListener(new ChangeListener() { |
|
||||||
@Override |
|
||||||
public void stateChanged(ChangeEvent e) { |
|
||||||
checkCenterPane(); |
|
||||||
} |
|
||||||
}); |
|
||||||
|
|
||||||
longLatAreaPane = getLongLatAreaPane(); |
|
||||||
areaPane = getAreaPane(); |
|
||||||
|
|
||||||
centerPane.add(areaPane, "area"); |
|
||||||
centerPane.add(longLatAreaPane, "longLat"); |
|
||||||
|
|
||||||
locationType.setSelectedIndex(0); |
|
||||||
|
|
||||||
double[] columnSize = {p, f}; |
|
||||||
double[] rowSize = {p}; |
|
||||||
|
|
||||||
Component[][] components = new Component[][]{ |
|
||||||
new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Geographic")),locationType}, |
|
||||||
}; |
|
||||||
|
|
||||||
JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components,rowSize,columnSize,12,6); |
|
||||||
|
|
||||||
|
|
||||||
this.add(panel, BorderLayout.NORTH); |
|
||||||
this.add(centerPane, BorderLayout.CENTER); |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
private void checkCenterPane() { |
|
||||||
CardLayout cardLayout = (CardLayout) centerPane.getLayout(); |
|
||||||
if (locationType.getSelectedIndex() == 0) { |
|
||||||
cardLayout.show(centerPane, "area"); |
|
||||||
}else { |
|
||||||
cardLayout.show(centerPane, "longLat"); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
public void populateBean(VanMapReportDefinition mapReportDefinition) { |
|
||||||
locationType.setSelectedIndex(mapReportDefinition.isUseAreaName() ? 0 : 1); |
|
||||||
if (locationType.getSelectedIndex() == 0) { |
|
||||||
areaPane.populate(mapReportDefinition); |
|
||||||
|
|
||||||
}else { |
|
||||||
longLatAreaPane.populate(mapReportDefinition); |
|
||||||
} |
|
||||||
|
|
||||||
checkCenterPane(); |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
public void updateBean(VanMapReportDefinition mapReportDefinition) { |
|
||||||
boolean useAreaName = locationType.getSelectedIndex() == 0; |
|
||||||
mapReportDefinition.setUseAreaName(useAreaName); |
|
||||||
if (useAreaName) { |
|
||||||
areaPane.update(mapReportDefinition); |
|
||||||
}else { |
|
||||||
longLatAreaPane.update(mapReportDefinition); |
|
||||||
} |
|
||||||
|
|
||||||
checkCenterPane(); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Update. |
|
||||||
*/ |
|
||||||
@Override |
|
||||||
public VanMapReportDefinition updateBean() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected String title4PopupWindow() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
protected AbstractLongLatAreaPane getAreaPane() { |
|
||||||
return new PointMapAreaPane(); |
|
||||||
} |
|
||||||
|
|
||||||
protected AbstractLongLatAreaPane getLongLatAreaPane() { |
|
||||||
return new PointMapLongLatAreaPane(); |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
@ -1,177 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.contentpane.table; |
|
||||||
|
|
||||||
import com.fr.base.chart.chartdata.TopDefinitionProvider; |
|
||||||
import com.fr.chart.chartattr.ChartCollection; |
|
||||||
import com.fr.design.gui.icombobox.UIComboBox; |
|
||||||
import com.fr.design.gui.ilable.BoldFontTextLabel; |
|
||||||
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.ChartDataPane; |
|
||||||
import com.fr.design.mainframe.chart.gui.data.table.AbstractTableDataContentPane; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.map.VanChartMapPlot; |
|
||||||
import com.fr.plugin.chart.map.data.VanMapTableDefinitionProvider; |
|
||||||
import com.fr.van.chart.map.designer.data.component.SeriesTypeUseComboxPaneWithOutFilter; |
|
||||||
|
|
||||||
import javax.swing.BorderFactory; |
|
||||||
import javax.swing.JPanel; |
|
||||||
import javax.swing.JSeparator; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
import java.awt.Component; |
|
||||||
import java.awt.Dimension; |
|
||||||
import java.awt.event.ItemEvent; |
|
||||||
import java.awt.event.ItemListener; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/5/16. |
|
||||||
*/ |
|
||||||
public class VanAreaMapPlotTableDataContentPane extends AbstractTableDataContentPane { |
|
||||||
private UIComboBox areaNameCom; |
|
||||||
|
|
||||||
protected SeriesTypeUseComboxPaneWithOutFilter seriesTypeUseComboxPane; |
|
||||||
|
|
||||||
public VanAreaMapPlotTableDataContentPane(ChartDataPane parent) { |
|
||||||
this.setLayout(new BorderLayout(0, 4)); |
|
||||||
|
|
||||||
initAreaNameCom(); |
|
||||||
|
|
||||||
JPanel areaNamePane = createAreaNamePane(); |
|
||||||
JSeparator jSeparator = new JSeparator(); |
|
||||||
areaNamePane.setBorder(BorderFactory.createEmptyBorder(0,24,0,15)); |
|
||||||
jSeparator.setPreferredSize(new Dimension(246,2)); |
|
||||||
|
|
||||||
this.add(areaNamePane, BorderLayout.NORTH); |
|
||||||
this.add(jSeparator, BorderLayout.CENTER); |
|
||||||
|
|
||||||
seriesTypeUseComboxPane = new SeriesTypeUseComboxPaneWithOutFilter(parent, new VanChartMapPlot()); |
|
||||||
this.add(seriesTypeUseComboxPane, BorderLayout.SOUTH); |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaNameCom() { |
|
||||||
|
|
||||||
areaNameCom = new UIComboBox(); |
|
||||||
|
|
||||||
areaNameCom.addItemListener(new ItemListener() { |
|
||||||
public void itemStateChanged(ItemEvent e) { |
|
||||||
checkSeriseUse(areaNameCom.getSelectedItem() != null); |
|
||||||
makeToolTipUse(areaNameCom); |
|
||||||
} |
|
||||||
}); |
|
||||||
} |
|
||||||
|
|
||||||
protected JPanel createAreaNamePane() { |
|
||||||
UILabel label = new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Area_Name")); |
|
||||||
label.setPreferredSize(new Dimension(80, 20)); |
|
||||||
areaNameCom.setPreferredSize(new Dimension(100, 20)); |
|
||||||
|
|
||||||
double p = TableLayout.PREFERRED; |
|
||||||
double f = TableLayout.FILL; |
|
||||||
double[] columnSize = {p, f}; |
|
||||||
double[] rowSize = {p}; |
|
||||||
|
|
||||||
Component[][] components = new Component[][]{ |
|
||||||
new Component[]{label, areaNameCom}, |
|
||||||
}; |
|
||||||
|
|
||||||
return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
protected void makeToolTipUse(UIComboBox comBox) { |
|
||||||
if (comBox.getSelectedItem() != null) { |
|
||||||
comBox.setToolTipText(comBox.getSelectedItem().toString()); |
|
||||||
} else { |
|
||||||
comBox.setToolTipText(null); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 检查 某些Box是否可用 |
|
||||||
* |
|
||||||
* @param hasUse 是否使用. |
|
||||||
*/ |
|
||||||
public void checkBoxUse(boolean hasUse) { |
|
||||||
checkAreaName(hasUse); |
|
||||||
checkSeriseUse(hasUse); |
|
||||||
} |
|
||||||
|
|
||||||
protected void checkAreaName(boolean hasUse) { |
|
||||||
areaNameCom.setEnabled(hasUse); |
|
||||||
} |
|
||||||
|
|
||||||
protected void checkSeriseUse(boolean hasUse) { |
|
||||||
if (seriesTypeUseComboxPane != null) { |
|
||||||
seriesTypeUseComboxPane.checkUseBox(hasUse && isAreaSelectedItem()); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
protected boolean isAreaSelectedItem(){ |
|
||||||
return areaNameCom.getSelectedItem() != null; |
|
||||||
} |
|
||||||
|
|
||||||
protected void refreshBoxListWithSelectTableData(java.util.List list) { |
|
||||||
refreshAreaName(list); |
|
||||||
seriesTypeUseComboxPane.refreshBoxListWithSelectTableData(list); |
|
||||||
} |
|
||||||
|
|
||||||
protected void refreshAreaName(List list) { |
|
||||||
refreshBoxItems(areaNameCom, list); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 清空所有的box设置 |
|
||||||
*/ |
|
||||||
public void clearAllBoxList() { |
|
||||||
clearAreaName(); |
|
||||||
seriesTypeUseComboxPane.clearAllBoxList(); |
|
||||||
} |
|
||||||
|
|
||||||
protected void clearAreaName() { |
|
||||||
clearBoxItems(areaNameCom); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 保存界面内容到ChartCollection |
|
||||||
*/ |
|
||||||
public void updateBean(ChartCollection collection) { |
|
||||||
seriesTypeUseComboxPane.updateBean(collection); |
|
||||||
TopDefinitionProvider topDefinitionProvider = collection.getSelectedChart().getFilterDefinition(); |
|
||||||
if(topDefinitionProvider instanceof VanMapTableDefinitionProvider){ |
|
||||||
VanMapTableDefinitionProvider mapTableDefinitionProvider = (VanMapTableDefinitionProvider)topDefinitionProvider; |
|
||||||
updateDefinition(mapTableDefinitionProvider); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
protected void updateDefinition(VanMapTableDefinitionProvider mapTableDefinitionProvider){ |
|
||||||
Object o = areaNameCom.getSelectedItem(); |
|
||||||
mapTableDefinitionProvider.setCategoryName(o == null ? null : o.toString()); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 根据ChartCollection 更新界面 |
|
||||||
*/ |
|
||||||
public void populateBean(ChartCollection collection) { |
|
||||||
seriesTypeUseComboxPane.populateBean(collection, this.isNeedSummaryCaculateMethod()); |
|
||||||
TopDefinitionProvider topDefinitionProvider = collection.getSelectedChart().getFilterDefinition(); |
|
||||||
if(topDefinitionProvider instanceof VanMapTableDefinitionProvider){ |
|
||||||
VanMapTableDefinitionProvider mapTableDefinitionProvider = (VanMapTableDefinitionProvider)topDefinitionProvider; |
|
||||||
populateDefinition(mapTableDefinitionProvider); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
protected void populateDefinition(VanMapTableDefinitionProvider mapTableDefinitionProvider){ |
|
||||||
if (mapTableDefinitionProvider.getCategoryName() != null) { |
|
||||||
areaNameCom.setSelectedItem(mapTableDefinitionProvider.getCategoryName()); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 重新布局整个面板 |
|
||||||
*/ |
|
||||||
public void redoLayoutPane() { |
|
||||||
seriesTypeUseComboxPane.relayoutPane(this.isNeedSummaryCaculateMethod()); |
|
||||||
} |
|
||||||
} |
|
@ -1,25 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.contentpane.table; |
|
||||||
|
|
||||||
|
|
||||||
import com.fr.design.mainframe.chart.gui.ChartDataPane; |
|
||||||
import com.fr.van.chart.map.designer.data.component.table.AbstractLongLatAreaPane; |
|
||||||
import com.fr.van.chart.map.designer.data.component.table.LineMapAreaPane; |
|
||||||
import com.fr.van.chart.map.designer.data.component.table.LineMapLongLatAreaPane; |
|
||||||
|
|
||||||
|
|
||||||
/** |
|
||||||
* Created by hufan on 2016/12/15. |
|
||||||
*/ |
|
||||||
public class VanLineMapPlotTableDataContentPane extends VanPointMapPlotTableDataContentPane{ |
|
||||||
public VanLineMapPlotTableDataContentPane(ChartDataPane parent) { |
|
||||||
super(parent); |
|
||||||
} |
|
||||||
|
|
||||||
protected AbstractLongLatAreaPane createAreaPane(LongLatAreaTableComboPane longLatAreaTableComboPane) { |
|
||||||
return new LineMapAreaPane(longLatAreaTableComboPane); |
|
||||||
} |
|
||||||
|
|
||||||
protected AbstractLongLatAreaPane createLongLatAreaPane(LongLatAreaTableComboPane longLatAreaTableComboPane) { |
|
||||||
return new LineMapLongLatAreaPane(longLatAreaTableComboPane); |
|
||||||
} |
|
||||||
} |
|
@ -1,225 +0,0 @@ |
|||||||
package com.fr.van.chart.map.designer.data.contentpane.table; |
|
||||||
|
|
||||||
import com.fr.design.beans.BasicBeanPane; |
|
||||||
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.ChartDataPane; |
|
||||||
|
|
||||||
import com.fr.plugin.chart.map.data.VanMapTableDefinitionProvider; |
|
||||||
import com.fr.van.chart.map.designer.data.component.table.AbstractLongLatAreaPane; |
|
||||||
import com.fr.van.chart.map.designer.data.component.table.PointMapAreaPane; |
|
||||||
import com.fr.van.chart.map.designer.data.component.table.PointMapLongLatAreaPane; |
|
||||||
|
|
||||||
import javax.swing.BorderFactory; |
|
||||||
import javax.swing.JPanel; |
|
||||||
import javax.swing.event.ChangeEvent; |
|
||||||
import javax.swing.event.ChangeListener; |
|
||||||
import java.awt.BorderLayout; |
|
||||||
import java.awt.CardLayout; |
|
||||||
import java.awt.Component; |
|
||||||
import java.awt.Dimension; |
|
||||||
import java.util.List; |
|
||||||
|
|
||||||
/** |
|
||||||
* Created by Mitisky on 16/5/17. |
|
||||||
*/ |
|
||||||
public class VanPointMapPlotTableDataContentPane extends VanAreaMapPlotTableDataContentPane { |
|
||||||
private static final int LEFT_GAP = 19; |
|
||||||
private static final int V_GAP = 15; |
|
||||||
//改控件相当于面积图的区域名控件
|
|
||||||
private LongLatAreaTableComboPane longLatTableComboPane; |
|
||||||
|
|
||||||
public VanPointMapPlotTableDataContentPane(ChartDataPane parent) { |
|
||||||
super(parent); |
|
||||||
} |
|
||||||
|
|
||||||
protected void initAreaNameCom() { |
|
||||||
longLatTableComboPane = new LongLatAreaTableComboPane(); |
|
||||||
} |
|
||||||
|
|
||||||
protected JPanel createAreaNamePane() { |
|
||||||
JPanel panel = new JPanel(new BorderLayout()); |
|
||||||
panel.setBorder(BorderFactory.createEmptyBorder(0,LEFT_GAP,V_GAP,0)); |
|
||||||
panel.add(longLatTableComboPane, BorderLayout.CENTER); |
|
||||||
return panel; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected void refreshAreaName(List list) { |
|
||||||
longLatTableComboPane.refreshBoxListWithSelectTableData(list); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected void checkAreaName(boolean hasUse) { |
|
||||||
longLatTableComboPane.checkBoxUse(hasUse); |
|
||||||
} |
|
||||||
|
|
||||||
protected boolean isAreaSelectedItem(){ |
|
||||||
return longLatTableComboPane.isSelectedItem(); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected void clearAreaName() { |
|
||||||
longLatTableComboPane.clearAllBoxList(); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected void updateDefinition(VanMapTableDefinitionProvider mapTableDefinitionProvider) { |
|
||||||
longLatTableComboPane.updateBean(mapTableDefinitionProvider); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected void populateDefinition(VanMapTableDefinitionProvider mapTableDefinitionProvider) { |
|
||||||
longLatTableComboPane.populateBean(mapTableDefinitionProvider); |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
public class LongLatAreaTableComboPane extends BasicBeanPane<VanMapTableDefinitionProvider> { |
|
||||||
private UIButtonGroup<Integer> locationType; |
|
||||||
|
|
||||||
private JPanel centerPane; |
|
||||||
|
|
||||||
private AbstractLongLatAreaPane longLatAreaPane; |
|
||||||
|
|
||||||
private AbstractLongLatAreaPane areaNamePane; |
|
||||||
|
|
||||||
|
|
||||||
public LongLatAreaTableComboPane() { |
|
||||||
|
|
||||||
double p = TableLayout.PREFERRED; |
|
||||||
double f = TableLayout.FILL; |
|
||||||
|
|
||||||
this.setLayout(new BorderLayout(0, 5)); |
|
||||||
centerPane = new JPanel(new CardLayout()){ |
|
||||||
@Override |
|
||||||
public Dimension getPreferredSize() { |
|
||||||
if (locationType.getSelectedIndex() == 0){ |
|
||||||
return new Dimension(180, (int) areaNamePane.getPreferredSize().getHeight()); |
|
||||||
}else { |
|
||||||
return new Dimension(180, (int) longLatAreaPane.getPreferredSize().getHeight()); |
|
||||||
} |
|
||||||
} |
|
||||||
}; |
|
||||||
|
|
||||||
locationType = new UIButtonGroup<Integer>(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Location_With_Area_Name"), |
|
||||||
com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Location_With_LongAndLat")}); |
|
||||||
|
|
||||||
locationType.addChangeListener(new ChangeListener() { |
|
||||||
@Override |
|
||||||
public void stateChanged(ChangeEvent e) { |
|
||||||
checkCenterPane(); |
|
||||||
} |
|
||||||
}); |
|
||||||
|
|
||||||
longLatAreaPane = createLongLatAreaPane(this); |
|
||||||
areaNamePane = createAreaPane(this); |
|
||||||
|
|
||||||
centerPane.add(areaNamePane, "area"); |
|
||||||
centerPane.add(longLatAreaPane, "longLat"); |
|
||||||
|
|
||||||
locationType.setSelectedIndex(0); |
|
||||||
|
|
||||||
double[] columnSize = {p, f}; |
|
||||||
double[] rowSize = {p}; |
|
||||||
Component[][] components = new Component[][]{ |
|
||||||
new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Geographic")),locationType}, |
|
||||||
}; |
|
||||||
|
|
||||||
JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components,rowSize,columnSize,30,6); |
|
||||||
|
|
||||||
this.add(panel, BorderLayout.NORTH); |
|
||||||
this.add(centerPane, BorderLayout.CENTER); |
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
public void fireCheckSeriesUse(boolean hasUse){ |
|
||||||
checkSeriseUse(hasUse); |
|
||||||
} |
|
||||||
|
|
||||||
private void checkCenterPane() { |
|
||||||
CardLayout cardLayout = (CardLayout) centerPane.getLayout(); |
|
||||||
if (locationType.getSelectedIndex() == 0) { |
|
||||||
cardLayout.show(centerPane, "area"); |
|
||||||
}else { |
|
||||||
cardLayout.show(centerPane, "longLat"); |
|
||||||
} |
|
||||||
fireCheckSeriesUse(true); |
|
||||||
} |
|
||||||
|
|
||||||
protected void refreshBoxListWithSelectTableData(List list) { |
|
||||||
areaNamePane.refreshBoxListWithSelectTableData(list); |
|
||||||
longLatAreaPane.refreshBoxListWithSelectTableData(list); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 检查 某些Box是否可用 |
|
||||||
* |
|
||||||
* @param hasUse 是否使用. |
|
||||||
*/ |
|
||||||
public void checkBoxUse(boolean hasUse) { |
|
||||||
areaNamePane.checkBoxUse(hasUse); |
|
||||||
longLatAreaPane.checkBoxUse(hasUse); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* 清空所有的box设置 |
|
||||||
*/ |
|
||||||
public void clearAllBoxList() { |
|
||||||
areaNamePane.clearAllBoxList(); |
|
||||||
longLatAreaPane.clearAllBoxList(); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public void populateBean(VanMapTableDefinitionProvider mapTableDefinitionProvider) { |
|
||||||
locationType.setSelectedIndex(mapTableDefinitionProvider.isUseAreaName() ? 0 : 1); |
|
||||||
|
|
||||||
if (locationType.getSelectedIndex() == 0) { |
|
||||||
areaNamePane.populate(mapTableDefinitionProvider); |
|
||||||
}else { |
|
||||||
longLatAreaPane.populate(mapTableDefinitionProvider); |
|
||||||
} |
|
||||||
checkCenterPane(); |
|
||||||
} |
|
||||||
|
|
||||||
public void updateBean(VanMapTableDefinitionProvider mapTableDefinitionProvider){ |
|
||||||
boolean useAreaName = locationType.getSelectedIndex() == 0; |
|
||||||
mapTableDefinitionProvider.setUseAreaName(useAreaName); |
|
||||||
if (useAreaName) { |
|
||||||
areaNamePane.update(mapTableDefinitionProvider); |
|
||||||
}else { |
|
||||||
longLatAreaPane.update(mapTableDefinitionProvider); |
|
||||||
} |
|
||||||
|
|
||||||
checkCenterPane(); |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public VanMapTableDefinitionProvider updateBean() { |
|
||||||
return null; |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
protected String title4PopupWindow() { |
|
||||||
return "longAndLat"; |
|
||||||
} |
|
||||||
|
|
||||||
public boolean isSelectedItem() { |
|
||||||
if (locationType.getSelectedIndex() == 0){ |
|
||||||
return areaNamePane.isSelectedItem(); |
|
||||||
}else { |
|
||||||
return longLatAreaPane.isSelectedItem(); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
protected AbstractLongLatAreaPane createAreaPane(LongLatAreaTableComboPane longLatAreaTableComboPane) { |
|
||||||
return new PointMapAreaPane(longLatAreaTableComboPane); |
|
||||||
} |
|
||||||
|
|
||||||
protected AbstractLongLatAreaPane createLongLatAreaPane(LongLatAreaTableComboPane longLatAreaTableComboPane) { |
|
||||||
return new PointMapLongLatAreaPane(longLatAreaTableComboPane); |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
Loading…
Reference in new issue