SourceForge: humaitrader/humaitrader: changeset 199:47abc6e8eac9
cleanup
authorCaoyuan Deng <dcaoyuan@gmail.com>
Sun Nov 08 06:43:56 2009 +0800 (2 weeks ago)
changeset 19947abc6e8eac9
parent 198be56a478567e
child 200f2d65278c230
cleanup
modules/lib.charting/src/org/aiotrade/lib/charting/chart/ChartFactory.scala
modules/lib.charting/src/org/aiotrade/lib/charting/view/ChartView.scala
modules/lib.charting/src/org/aiotrade/lib/charting/view/ChartViewContainer.scala
modules/lib.charting/src/org/aiotrade/lib/charting/view/IndicatorChartView.scala
modules/lib.chartview/src/org/aiotrade/lib/chartview/AbstractQuoteChartView.scala
     1.1 --- a/modules/lib.charting/src/org/aiotrade/lib/charting/chart/ChartFactory.scala	Sun Nov 08 05:59:46 2009 +0800
     1.2 +++ b/modules/lib.charting/src/org/aiotrade/lib/charting/chart/ChartFactory.scala	Sun Nov 08 06:43:56 2009 +0800
     1.3 @@ -33,7 +33,6 @@
     1.4  import org.aiotrade.lib.math.timeseries.TVar
     1.5  import org.aiotrade.lib.math.timeseries.plottable.Plot
     1.6  import org.aiotrade.lib.math.util.Signal
     1.7 -import scala.collection.mutable.HashSet
     1.8  
     1.9  
    1.10  /**
    1.11 @@ -44,41 +43,33 @@
    1.12   */
    1.13  object ChartFactory {
    1.14      
    1.15 -  def createVarChart(chartVarContainer: HashSet[TVar[_]], v: TVar[_]): Chart = {
    1.16 +  def createVarChart(v: TVar[_]): Chart = {
    1.17      var chart: Chart = null
    1.18      v.plot match  {
    1.19        case Plot.Volume =>
    1.20          chart = new VolumeChart
    1.21          chart.asInstanceOf[VolumeChart].model.set(false)
    1.22 -        chartVarContainer += v
    1.23        case Plot.Line =>
    1.24          chart = new PolyLineChart
    1.25          chart.asInstanceOf[PolyLineChart].model.set(v.asInstanceOf[TVar[Float]])
    1.26 -        chartVarContainer += v
    1.27        case Plot.Stick =>
    1.28          chart = new StickChart
    1.29          chart.asInstanceOf[StickChart].model.set(v.asInstanceOf[TVar[Float]])
    1.30 -        chartVarContainer += v
    1.31        case Plot.Dot =>
    1.32          chart = new DotChart
    1.33          chart.asInstanceOf[DotChart].model.set(v)
    1.34 -        chartVarContainer += v
    1.35        case Plot.Shade =>
    1.36          chart = new GradientChart
    1.37          chart.asInstanceOf[GradientChart].model.set(v, null)
    1.38 -        chartVarContainer += v
    1.39        case Plot.Profile =>
    1.40          chart = new ProfileChart
    1.41          chart.asInstanceOf[ProfileChart].model.set(v)
    1.42 -        chartVarContainer += v
    1.43        case Plot.Zigzag =>
    1.44          chart = new ZigzagChart
    1.45          chart.asInstanceOf[ZigzagChart].model.set(v)
    1.46 -        chartVarContainer += v
    1.47        case Plot.Signal =>
    1.48          chart = new SignalChart
    1.49          chart.asInstanceOf[SignalChart].model.set((v.asInstanceOf[TVar[Signal]]))
    1.50 -        chartVarContainer += v
    1.51        case _ =>
    1.52      }
    1.53          
     2.1 --- a/modules/lib.charting/src/org/aiotrade/lib/charting/view/ChartView.scala	Sun Nov 08 05:59:46 2009 +0800
     2.2 +++ b/modules/lib.charting/src/org/aiotrade/lib/charting/view/ChartView.scala	Sun Nov 08 06:43:56 2009 +0800
     2.3 @@ -89,8 +89,8 @@
     2.4  } with JComponent with ChangeObservable {
     2.5  
     2.6    protected var masterSer: MasterTSer = _
     2.7 -  protected val mainSerChartMapVars = new LinkedHashMap[Chart, HashSet[TVar[_]]]
     2.8 -  protected val overlappingSerChartMapVars = new LinkedHashMap[TSer, LinkedHashMap[Chart, HashSet[TVar[_]]]]
     2.9 +  protected val mainSerChartToVars = new LinkedHashMap[Chart, HashSet[TVar[_]]]
    2.10 +  protected val overlappingSerChartToVars = new LinkedHashMap[TSer, LinkedHashMap[Chart, HashSet[TVar[_]]]]
    2.11    protected var lastDepthOfOverlappingChart = Pane.DEPTH_CHART_BEGIN
    2.12    protected var mainChartPane: ChartPane = _
    2.13    protected var glassPane: GlassPane = _
    2.14 @@ -460,16 +460,16 @@
    2.15    }
    2.16  
    2.17    def getMainSerChartMapVars = {
    2.18 -    mainSerChartMapVars
    2.19 +    mainSerChartToVars
    2.20    }
    2.21  
    2.22    def getChartMapVars(ser: TSer): LinkedHashMap[Chart, HashSet[TVar[_]]] = {
    2.23      assert(ser != null, "Do not pass me a null ser!")
    2.24 -    if (ser == getMainSer) mainSerChartMapVars else overlappingSerChartMapVars.get(ser).get
    2.25 +    if (ser == getMainSer) mainSerChartToVars else overlappingSerChartToVars.get(ser).get
    2.26    }
    2.27  
    2.28    def getOverlappingSers = {
    2.29 -    overlappingSerChartMapVars.keySet
    2.30 +    overlappingSerChartToVars.keySet
    2.31    }
    2.32  
    2.33    def getAllSers = {
    2.34 @@ -488,15 +488,16 @@
    2.35      ser.addSerChangeListener(serChangeListener)
    2.36  
    2.37      val chartVarsMap = new LinkedHashMap[Chart, HashSet[TVar[_]]]
    2.38 -    overlappingSerChartMapVars += (ser -> chartVarsMap)
    2.39 +    overlappingSerChartToVars += (ser -> chartVarsMap)
    2.40  
    2.41      var depthGradient = Pane.DEPTH_GRADIENT_BEGIN;
    2.42  
    2.43      for (v <- ser.vars) {
    2.44 -      val chartVars = new HashSet[TVar[_]]
    2.45 -      val chart = ChartFactory.createVarChart(chartVars, v)
    2.46 +      
    2.47 +      val chart = ChartFactory.createVarChart(v)
    2.48        if (chart != null) {
    2.49 -        chartVarsMap.put(chart, chartVars)
    2.50 +        val chartVars = new HashSet[TVar[_]]
    2.51 +        chartVarsMap.put(chart, chartVars += v)
    2.52  
    2.53          chart.set(mainChartPane, ser)
    2.54  
    2.55 @@ -519,7 +520,7 @@
    2.56    def removeOverlappingCharts(ser: TSer) {
    2.57      ser.removeSerChangeListener(serChangeListener)
    2.58  
    2.59 -    overlappingSerChartMapVars.get(ser) foreach {chartVarsMap =>
    2.60 +    overlappingSerChartToVars.get(ser) foreach {chartVarsMap =>
    2.61        for (chart <- chartVarsMap.keySet) {
    2.62          mainChartPane.removeChart(chart)
    2.63          chart match {
    2.64 @@ -531,7 +532,7 @@
    2.65        }
    2.66        /** release chartVarsMap */
    2.67        chartVarsMap.clear
    2.68 -      overlappingSerChartMapVars.remove(ser)
    2.69 +      overlappingSerChartToVars.remove(ser)
    2.70      }
    2.71  
    2.72      notifyObserversChanged(classOf[ChartValidityObserver[Any]])
     3.1 --- a/modules/lib.charting/src/org/aiotrade/lib/charting/view/ChartViewContainer.scala	Sun Nov 08 05:59:46 2009 +0800
     3.2 +++ b/modules/lib.charting/src/org/aiotrade/lib/charting/view/ChartViewContainer.scala	Sun Nov 08 06:43:56 2009 +0800
     3.3 @@ -52,7 +52,7 @@
     3.4   */
     3.5  abstract class ChartViewContainer extends JPanel {
     3.6  
     3.7 -  private val descriptorsWithSlaveView = new HashMap[IndicatorDescriptor, ChartView]
     3.8 +  private val descriptorsToSlaveView = new HashMap[IndicatorDescriptor, ChartView]
     3.9    private var controller: ChartingController = _
    3.10    private var masterView: ChartView = _
    3.11    /**
    3.12 @@ -88,7 +88,7 @@
    3.13    def setInteractive(b: Boolean) {
    3.14      getMasterView.setInteractive(b)
    3.15  
    3.16 -    for (view <- descriptorsWithSlaveView.valuesIterator) {
    3.17 +    for (view <- descriptorsToSlaveView.valuesIterator) {
    3.18        view.setInteractive(b)
    3.19      }
    3.20  
    3.21 @@ -134,9 +134,9 @@
    3.22  
    3.23      var numSlaveViews = 0
    3.24      var sumSlaveViewsHeight = 0f
    3.25 -    for (v <- descriptorsWithSlaveView.valuesIterator if v != getMasterView) {
    3.26 +    for (view <- descriptorsToSlaveView.valuesIterator if view != getMasterView) {
    3.27        /** overlapping view is also in masterView, should ignor it */
    3.28 -      sumSlaveViewsHeight += v.getHeight
    3.29 +      sumSlaveViewsHeight += view.getHeight
    3.30        numSlaveViews += 1
    3.31      }
    3.32  
    3.33 @@ -145,9 +145,9 @@
    3.34        sumSlaveViewsHeight = 0.382f * masterView.getHeight
    3.35      }
    3.36  
    3.37 -    setVisible(false);
    3.38 +    setVisible(false)
    3.39  
    3.40 -    val adjustHeight = increment;
    3.41 +    val adjustHeight = increment
    3.42      gbc.weighty = masterView.getHeight + adjustHeight
    3.43  
    3.44      /**
    3.45 @@ -157,24 +157,24 @@
    3.46       * the size according to weightx and weighty, but for performence issue,
    3.47       * we'd better setSize() to the actual size that we want.
    3.48       */
    3.49 -    gbl.setConstraints(masterView, gbc);
    3.50 -    masterView.setSize(new Dimension(masterView.getWidth, gbc.weighty.intValue))
    3.51 -    for (v <- descriptorsWithSlaveView.valuesIterator if !v.equals(getMasterView)) {
    3.52 +    gbl.setConstraints(masterView, gbc)
    3.53 +    masterView.setSize(new Dimension(masterView.getWidth, gbc.weighty.toInt))
    3.54 +    for (view <- descriptorsToSlaveView.valuesIterator if view != getMasterView) {
    3.55        /** average assigning */
    3.56        gbc.weighty = (sumSlaveViewsHeight - adjustHeight) / numSlaveViews
    3.57        /*-
    3.58         * proportional assigning
    3.59         * gbc.weighty = v.getHeight() - adjustHeight * v.getHeight() / iHeight;
    3.60         */
    3.61 -      gbl.setConstraints(v, gbc)
    3.62 -      v.setSize(new Dimension(v.getWidth, gbc.weighty.intValue))
    3.63 +      gbl.setConstraints(view, gbc)
    3.64 +      view.setSize(new Dimension(view.getWidth, gbc.weighty.toInt))
    3.65      }
    3.66  
    3.67      setVisible(true)
    3.68    }
    3.69  
    3.70    def getMasterView: ChartView = {
    3.71 -    masterView;
    3.72 +    masterView
    3.73    }
    3.74  
    3.75    protected def setMasterView(masterView: ChartView, gbc: GridBagConstraints) {
    3.76 @@ -184,11 +184,11 @@
    3.77  
    3.78    def addSlaveView(descriptor: IndicatorDescriptor, indicator: Indicator, agbc: GridBagConstraints) {
    3.79      var gbc = agbc
    3.80 -    if (!descriptorsWithSlaveView.contains(descriptor)) {
    3.81 +    if (!descriptorsToSlaveView.contains(descriptor)) {
    3.82        var view: ChartView = null
    3.83        if (indicator.isOverlapping) {
    3.84          view = getMasterView
    3.85 -        view.addOverlappingCharts(indicator);
    3.86 +        view.addOverlappingCharts(indicator)
    3.87        } else {
    3.88          view = new IndicatorChartView(getController, indicator)
    3.89          if (gbc == null) {
    3.90 @@ -198,7 +198,7 @@
    3.91          }
    3.92          add(view, gbc)
    3.93        }
    3.94 -      descriptorsWithSlaveView.put(descriptor, view)
    3.95 +      descriptorsToSlaveView.put(descriptor, view)
    3.96        setSelectedView(view)
    3.97      }
    3.98    }
    3.99 @@ -214,11 +214,11 @@
   3.100          repaint()
   3.101        case None =>
   3.102      }
   3.103 -    descriptorsWithSlaveView.remove(descriptor)
   3.104 +    descriptorsToSlaveView.remove(descriptor)
   3.105    }
   3.106  
   3.107    def getSlaveViews = {
   3.108 -    descriptorsWithSlaveView.valuesIterator
   3.109 +    descriptorsToSlaveView.valuesIterator
   3.110    }
   3.111  
   3.112    def setSelectedView(view: ChartView) {
   3.113 @@ -261,8 +261,8 @@
   3.114    }
   3.115  
   3.116    def lookupIndicatorDescriptor(view: ChartView): IndicatorDescriptor = {
   3.117 -    for (descriptor <- descriptorsWithSlaveView.keysIterator) {
   3.118 -      val theView = descriptorsWithSlaveView.get(descriptor)
   3.119 +    for (descriptor <- descriptorsToSlaveView.keysIterator) {
   3.120 +      val theView = descriptorsToSlaveView.get(descriptor)
   3.121        if (theView != null && theView == view) {
   3.122          return descriptor
   3.123        }
   3.124 @@ -271,11 +271,11 @@
   3.125    }
   3.126  
   3.127    def lookupChartView(descriptor: IndicatorDescriptor): Option[ChartView] = {
   3.128 -    descriptorsWithSlaveView.get(descriptor)
   3.129 +    descriptorsToSlaveView.get(descriptor)
   3.130    }
   3.131  
   3.132    def getDescriptorsWithSlaveView: HashMap[IndicatorDescriptor, ChartView] = {
   3.133 -    descriptorsWithSlaveView
   3.134 +    descriptorsToSlaveView
   3.135    }
   3.136  
   3.137    def getFocusableParent: Component = {
   3.138 @@ -302,18 +302,18 @@
   3.139      val begPos = controller.getMasterSer.rowOfTime(begTime)
   3.140      val endPos = controller.getMasterSer.rowOfTime(endTime)
   3.141      val nBars = endPos - begPos
   3.142 -    val width = (nBars * controller.getWBar).intValue
   3.143 +    val width = (nBars * controller.getWBar).toInt
   3.144  
   3.145      /** backup: */
   3.146      val backupRightCursorPos = controller.getRightSideRow
   3.147      val backupReferCursorPos = controller.getReferCursorRow
   3.148  
   3.149 -    controller.setCursorByRow(backupReferCursorPos, endPos, true);
   3.150 +    controller.setCursorByRow(backupReferCursorPos, endPos, true)
   3.151  
   3.152 -    saveToCustomSizeImage(file, fileFormat, width, height);
   3.153 +    saveToCustomSizeImage(file, fileFormat, width, height)
   3.154  
   3.155      /** restore: */
   3.156 -    controller.setCursorByRow(backupReferCursorPos, backupRightCursorPos, true);
   3.157 +    controller.setCursorByRow(backupReferCursorPos, backupRightCursorPos, true)
   3.158    }
   3.159  
   3.160    @throws(classOf[Exception])
   3.161 @@ -356,7 +356,7 @@
   3.162  
   3.163    @throws(classOf[Throwable])
   3.164    override protected def finalize {
   3.165 -    descriptorsWithSlaveView.clear
   3.166 +    descriptorsToSlaveView.clear
   3.167      super.finalize
   3.168    }
   3.169  }
   3.170 \ No newline at end of file
     4.1 --- a/modules/lib.charting/src/org/aiotrade/lib/charting/view/IndicatorChartView.scala	Sun Nov 08 05:59:46 2009 +0800
     4.2 +++ b/modules/lib.charting/src/org/aiotrade/lib/charting/view/IndicatorChartView.scala	Sun Nov 08 06:43:56 2009 +0800
     4.3 @@ -129,16 +129,16 @@
     4.4      
     4.5      
     4.6    protected def putChartsOfMainSer {
     4.7 -    var depth = Pane.DEPTH_CHART_BEGIN;
     4.8 +    var depth = Pane.DEPTH_CHART_BEGIN
     4.9      var depthGradient = Pane.DEPTH_GRADIENT_BEGIN
    4.10          
    4.11      for (ser <- getAllSers) {
    4.12        /** add charts */
    4.13        for (v <- ser.vars) {
    4.14 -        val chartVars = new HashSet[TVar[_]]
    4.15 -        val chart = ChartFactory.createVarChart(chartVars, v)
    4.16 +        val chart = ChartFactory.createVarChart(v)
    4.17          if (chart != null) {
    4.18 -          mainSerChartMapVars.put(chart, chartVars)
    4.19 +          val chartVars = new HashSet[TVar[_]]
    4.20 +          mainSerChartToVars.put(chart, chartVars += v)
    4.21                      
    4.22            chart.set(mainChartPane, ser)
    4.23  
    4.24 @@ -197,9 +197,9 @@
    4.25    override def popupToDesktop {
    4.26      val popupView = new PopupIndicatorChartView(getController, getMainSer)
    4.27      val alwaysOnTop = true;
    4.28 -    val dimension = new Dimension(getWidth, 200)
    4.29 +    val dim = new Dimension(getWidth, 200)
    4.30          
    4.31 -    getController.popupViewToDesktop(popupView, dimension, alwaysOnTop, false)
    4.32 +    getController.popupViewToDesktop(popupView, dim, alwaysOnTop, false)
    4.33    }
    4.34  
    4.35    @throws(classOf[Throwable])
     5.1 --- a/modules/lib.chartview/src/org/aiotrade/lib/chartview/AbstractQuoteChartView.scala	Sun Nov 08 05:59:46 2009 +0800
     5.2 +++ b/modules/lib.chartview/src/org/aiotrade/lib/chartview/AbstractQuoteChartView.scala	Sun Nov 08 06:43:56 2009 +0800
     5.3 @@ -99,7 +99,7 @@
     5.4      quoteChart = new QuoteChart
     5.5  
     5.6      val vars = new HashSet[TVar[_]]
     5.7 -    mainSerChartMapVars.put(quoteChart, vars)
     5.8 +    mainSerChartToVars.put(quoteChart, vars)
     5.9      for (v <- mainSer.vars) {
    5.10        if (v.plot == Plot.Quote) {
    5.11          vars.add(v)