1.1 --- a/modules/lib.charting/src/org/aiotrade/lib/charting/view/ChartView.scala Sat Nov 07 20:19:41 2009 +0800
1.2 +++ b/modules/lib.charting/src/org/aiotrade/lib/charting/view/ChartView.scala Sun Nov 08 00:16:07 2009 +0800
1.3 @@ -78,14 +78,12 @@
1.4 *
1.5 * @author Caoyuan Deng
1.6 */
1.7 -object ChartView {
1.8 +abstract class ChartView(protected var controller: ChartingController, protected var mainSer: TSer) extends {
1.9 val AXISX_HEIGHT = 12
1.10 val AXISY_WIDTH = 50
1.11 val CONTROL_HEIGHT = 12
1.12 val TITLE_HEIGHT_PER_LINE = 12
1.13 -}
1.14 -abstract class ChartView(protected var controller: ChartingController, protected var mainSer: TSer) extends JComponent with ChangeObservable {
1.15 - import ChartView._
1.16 +} with JComponent with ChangeObservable {
1.17
1.18 protected var masterSer: MasterTSer = _
1.19 protected val mainSerChartMapVars = new LinkedHashMap[Chart, HashSet[TVar[_]]]
2.1 --- a/modules/lib.charting/src/org/aiotrade/lib/charting/view/PopupIndicatorChartView.scala Sat Nov 07 20:19:41 2009 +0800
2.2 +++ b/modules/lib.charting/src/org/aiotrade/lib/charting/view/PopupIndicatorChartView.scala Sun Nov 08 00:16:07 2009 +0800
2.3 @@ -54,7 +54,7 @@
2.4
2.5 override protected def initComponents {
2.6 xControlPane = new XControlPane(this, mainChartPane)
2.7 - xControlPane.setPreferredSize(new Dimension(10, ChartView.CONTROL_HEIGHT))
2.8 + xControlPane.setPreferredSize(new Dimension(10, CONTROL_HEIGHT))
2.9
2.10 /** begin to set the layout: */
2.11
3.1 --- a/modules/lib.charting/src/org/aiotrade/lib/charting/view/pane/AbstractDatumPlane.scala Sat Nov 07 20:19:41 2009 +0800
3.2 +++ b/modules/lib.charting/src/org/aiotrade/lib/charting/view/pane/AbstractDatumPlane.scala Sun Nov 08 00:16:07 2009 +0800
3.3 @@ -100,7 +100,7 @@
3.4
3.5 /** adjust if necessary */
3.6 if (this.equals(view.getMainChartPane)) {
3.7 - hSpaceUpper += ChartView.TITLE_HEIGHT_PER_LINE
3.8 + hSpaceUpper += view.TITLE_HEIGHT_PER_LINE
3.9 } else if (view.isInstanceOf[WithVolumePane] && this.equals(view.asInstanceOf[WithVolumePane].getVolumeChartPane)) {
3.10 maxValue = view.asInstanceOf[WithVolumePane].getMaxVolume
3.11 minValue = view.asInstanceOf[WithVolumePane].getMinVolume
3.12 @@ -112,7 +112,7 @@
3.13 this.hCanvas = getHeight - hSpaceLower - hSpaceUpper
3.14
3.15 val hChartCouldBe = hCanvas
3.16 - this.hChart = (hChartCouldBe * yChartScale).intValue
3.17 + this.hChart = (hChartCouldBe * yChartScale).toInt
3.18
3.19 /** allocate sparePixelsBroughtByYChartScale to upper and lower averagyly */
3.20 val sparePixelsBroughtByYChartScale = hChartCouldBe - hChart
4.1 --- a/modules/lib.charting/src/org/aiotrade/lib/charting/view/pane/ChartPane.scala Sat Nov 07 20:19:41 2009 +0800
4.2 +++ b/modules/lib.charting/src/org/aiotrade/lib/charting/view/pane/ChartPane.scala Sun Nov 08 00:16:07 2009 +0800
4.3 @@ -172,7 +172,7 @@
4.4 /** set refer cursor */
4.5 val y = e.getY
4.6 val b = bx(e.getX)
4.7 - if (y >= ChartView.TITLE_HEIGHT_PER_LINE && y <= (getHeight - ChartView.CONTROL_HEIGHT) &&
4.8 + if (y >= view.TITLE_HEIGHT_PER_LINE && y <= (getHeight - view.CONTROL_HEIGHT) &&
4.9 b >= 1 && b <= getNBars) {
4.10 val position = rb(b)
4.11 view.getController.setReferCursorByRow(position, true)
4.12 @@ -184,7 +184,7 @@
4.13 override def mouseMoved(e: MouseEvent) {
4.14 val y = e.getY
4.15
4.16 - if (y >= ChartView.TITLE_HEIGHT_PER_LINE && y <= getHeight - ChartView.CONTROL_HEIGHT) {
4.17 + if (y >= view.TITLE_HEIGHT_PER_LINE && y <= getHeight - view.CONTROL_HEIGHT) {
4.18 isMouseEntered = true
4.19 view.getController.setMouseEnteredAnyChartPane(true)
4.20 } else {
5.1 --- a/modules/lib.charting/src/org/aiotrade/lib/charting/view/pane/GlassPane.scala Sat Nov 07 20:19:41 2009 +0800
5.2 +++ b/modules/lib.charting/src/org/aiotrade/lib/charting/view/pane/GlassPane.scala Sun Nov 08 00:16:07 2009 +0800
5.3 @@ -84,15 +84,12 @@
5.4 *
5.5 * @author Caoyuan Deng
5.6 */
5.7 -object GlassPane {
5.8 +class GlassPane(view: ChartView, datumPlane: DatumPlane) extends {
5.9 private val TRANSPARENT_COLOR = new Color(0, 0, 0, 0)
5.10 private val BUTTON_SIZE = 12
5.11 private val BUTTON_DIMENSION = new Dimension(BUTTON_SIZE, BUTTON_SIZE)
5.12 private val MONEY_DECIMAL_FORMAT = new DecimalFormat("0.###")
5.13 -}
5.14 -
5.15 -class GlassPane(view: ChartView, datumPlane: DatumPlane) extends Pane(view, datumPlane) with WithCursorChart {
5.16 - import GlassPane._
5.17 +} with Pane(view, datumPlane) with WithCursorChart {
5.18
5.19 private val overlappingSersToCloseButton = new HashMap[TSer, AIOCloseButton]
5.20 private val overlappingSersToNameLabel = new HashMap[TSer, JLabel]
5.21 @@ -107,7 +104,7 @@
5.22
5.23 private val titlePanel = new JPanel
5.24 titlePanel.setOpaque(false)
5.25 - titlePanel.setPreferredSize(new Dimension(10, ChartView.TITLE_HEIGHT_PER_LINE))
5.26 + titlePanel.setPreferredSize(new Dimension(10, view.TITLE_HEIGHT_PER_LINE))
5.27
5.28 setLayout(new BorderLayout)
5.29 add(titlePanel, BorderLayout.NORTH)
5.30 @@ -738,7 +735,7 @@
5.31 label.setFont(laf.axisFont)
5.32
5.33 val fm = getFontMetrics(label.getFont)
5.34 - label.model.set(w - fm.stringWidth(str) - (BUTTON_SIZE + 1), ChartView.TITLE_HEIGHT_PER_LINE - 2, str)
5.35 + label.model.set(w - fm.stringWidth(str) - (BUTTON_SIZE + 1), view.TITLE_HEIGHT_PER_LINE - 2, str)
5.36 label.plot
5.37 } else { /** indicator view */
5.38 if (mainChartPane.isMouseEntered) {
6.1 --- a/modules/lib.chartview/src/org/aiotrade/lib/chartview/AnalysisQuoteChartView.scala Sat Nov 07 20:19:41 2009 +0800
6.2 +++ b/modules/lib.chartview/src/org/aiotrade/lib/chartview/AnalysisQuoteChartView.scala Sun Nov 08 00:16:07 2009 +0800
6.3 @@ -100,10 +100,10 @@
6.4
6.5 protected def initComponents {
6.6 xControlPane = new XControlPane(this, mainChartPane)
6.7 - xControlPane.setPreferredSize(new Dimension(10, ChartView.CONTROL_HEIGHT))
6.8 + xControlPane.setPreferredSize(new Dimension(10, CONTROL_HEIGHT))
6.9
6.10 yControlPane = new YControlPane(this, mainChartPane)
6.11 - yControlPane.setPreferredSize(new Dimension(10, ChartView.CONTROL_HEIGHT))
6.12 + yControlPane.setPreferredSize(new Dimension(10, CONTROL_HEIGHT))
6.13
6.14 /** begin to set the layout: */
6.15