org.rosuda.ibase.plots
Class BarCanvas

java.lang.Object
  extended by org.rosuda.ibase.toolkit.PlotComponent
      extended by org.rosuda.ibase.toolkit.PGSCanvas
          extended by org.rosuda.ibase.toolkit.BaseCanvas
              extended by org.rosuda.ibase.plots.BarCanvas
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.print.Printable, java.util.EventListener, Commander, Dependent

public class BarCanvas
extends BaseCanvas

BarCanvas - implementation of the barcharts (new version - based on BaseCanvas).

Version:
$Id: BarCanvas.java 2799 2007-06-13 08:15:02Z wichtrey $

Nested Class Summary
 
Nested classes/interfaces inherited from class org.rosuda.ibase.toolkit.PGSCanvas
PGSCanvas.IDlgCL
 
Field Summary
 boolean drawTicks
           
 java.awt.Color fillColorDrag
           
 
Fields inherited from class org.rosuda.ibase.toolkit.BaseCanvas
allow180, allowDragMove, allowDragZoom, allowZoom, alphaHighlighting, autoAdjustMargins, baseDrag, baseDragX1, baseDragX2, baseDragY1, baseDragY2, borderColor, borderColorSel, C_BLACK, changingHilitingNeedsUpdateRoot, COL_INVALID, COL_OUTLINE, COL_SELBG, COL_ZOOMBG, defaultMBottom, defaultMBottom1, defaultMBottom2, defaultMBottom3, defaultMLeft, defaultMLeft1, defaultMLeft2, defaultMLeft3, defaultMRight, defaultMRight1, defaultMRight2, defaultMRight3, defaultMTop, defaultMTop1, defaultMTop2, defaultMTop3, dontCache, dontPaint, fillColor, fillColorSel, fillInside, H, horizontalMedDist, horizontalMinDist, ignoreNotifications, inQuery, inZoom, isExtQuery, lastQueriedIndex, lastQueriedPrimitive, m, M_ALPHADOWN, M_ALPHAUP, M_RESETZOOM, M_SETCB1, M_SETCB64, M_TRANSHIGHL, mBottom, MItransHighl, mLeft, mouseX, mouseY, moveDrag, mRight, mTop, objectClipping, opAx, opAy, orientation, paintOutline, pop, pp, ppAlpha, ppAlphaH, qi, queryables, resizeOnRotate, rotateYLabels, rotateYLabelsBy, selDrag, selectedPaintOutline, seperateAlphas, showOnlyHilited, showQuery, updateGeometry, verticalMedDist, verticalMinDist, W, xLabels, yLabels, zoomDrag, zoomRetainsAspect, zoomSequence
 
Fields inherited from class org.rosuda.ibase.toolkit.PGSCanvas
ax, ay, cancel, desc, inProgress, intDlg, myFrame, pageFormat, paintLayerCounter, pm
 
Fields inherited from class org.rosuda.ibase.toolkit.PlotComponent
AWTGrDevID, GrDevID, JOGLGrDevID, layers, SWINGGrDevID
 
Fields inherited from interface java.awt.print.Printable
NO_SUCH_PAGE, PAGE_EXISTS
 
Constructor Summary
BarCanvas(int gd, java.awt.Frame f, SVar var, SMarker mark)
           
BarCanvas(int gd, java.awt.Frame f, SVar var, SMarker mark, SVar wvar)
          creates a (weighted) barchart
 
Method Summary
 boolean adjustMargin(PoGraSS g)
          Possibly adjust mLeft etc.
protected  java.lang.String getAxisQuery(int x, int y)
           
 SVar getData(int id)
          this method provides an API to fetch data contents of the plot.
protected  Axis getMouseOverAxis(int x, int y)
           
 boolean isIsSpine()
           
protected  boolean isMouseOverAxis(int x, int y)
           
 void mouseDragged(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent ev)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
 void paintBack(PoGraSS g)
           
 void paintPost(PoGraSS g)
           
 java.lang.String queryObject(int i)
           
 java.lang.String queryPlotSpace()
           
 java.lang.Object run(java.lang.Object o, java.lang.String cmd)
          default handing of commands "exportPGS" and "exportPS".
 void setIsSpine(boolean isSpine)
           
 void updateObjects()
          rebuilds bars
 
Methods inherited from class org.rosuda.ibase.toolkit.BaseCanvas
actionPerformed, addXLabels, addXLabels, addXLabels, addXLabels, addYLabels, addYLabels, addYLabels, createMenu, dispose, endAddingLabels, getAxisX, getAxisY, getBoundValues, getDefaultMLeft, getFirstPrimitiveContaining, getMBottom, getMinimumSize, getMLeft, getMRight, getMTop, getPrimitivesContaining, getPrimitivesIntersecting, isShowLabels, keyPressed, keyReleased, keyTyped, mouseClicked, mouseEntered, mouseExited, mouseMoved, Notifying, paintInit, paintObjects, paintPoGraSS, paintSelected, performZoomIn, performZoomIn, performZoomOut, queryObject, resetZoom, rotate, rotate, setAxDefaultGeometry, setAyDefaultGeometry, setColors, setDefaultMargins, setExtQueryString, setMBottom, setMLeft, setMRight, setMTop, setQueryText, setQueryText, setQueryText, setShowLabels, startAddingLabels, useExtQuery
 
Methods inherited from class org.rosuda.ibase.toolkit.PGSCanvas
beginPaint, endPaint, finalize, forcedFlush, getFrame, getGlobalNotifier, getPlotManager, getTitle, getXAxis, getYAxis, nextLayer, paintLayer, print, setFrame, setOption, setOption, setOption, setOption, setOption, setOption, setTitle
 
Methods inherited from class org.rosuda.ibase.toolkit.PlotComponent
addKeyListener, addMouseListener, addMouseMotionListener, getBounds, getComponent, getHeight, getLocation, getParent, getSize, getWidth, newQueryPopup, newQueryPopup, paintLayer, repaint, setBackground, setCursor, setSize, setSize, setToolTipText, setUpdateRoot
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fillColorDrag

public java.awt.Color fillColorDrag

drawTicks

public boolean drawTicks
Constructor Detail

BarCanvas

public BarCanvas(int gd,
                 java.awt.Frame f,
                 SVar var,
                 SMarker mark,
                 SVar wvar)
creates a (weighted) barchart

Parameters:
f - associated frame (or null if common default frame is to be used)
var - associated variable
mark - associated marker
wvar - weight variable for weighted barcharts or null for normal ones; is ignored at the moment

BarCanvas

public BarCanvas(int gd,
                 java.awt.Frame f,
                 SVar var,
                 SMarker mark)
Method Detail

getData

public SVar getData(int id)
Description copied from class: PGSCanvas
this method provides an API to fetch data contents of the plot. The id is implementation-dependent, but first two variables x and y should be mapped to 0 and 1 correspondingly. Therefore every plot containting data must support getData(0). For invalid ids null is returned.

Overrides:
getData in class PGSCanvas

updateObjects

public void updateObjects()
rebuilds bars

Overrides:
updateObjects in class BaseCanvas

paintBack

public void paintBack(PoGraSS g)
Overrides:
paintBack in class BaseCanvas

paintPost

public void paintPost(PoGraSS g)
Overrides:
paintPost in class BaseCanvas

mousePressed

public void mousePressed(java.awt.event.MouseEvent ev)
Specified by:
mousePressed in interface java.awt.event.MouseListener
Overrides:
mousePressed in class BaseCanvas

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Specified by:
mouseReleased in interface java.awt.event.MouseListener
Overrides:
mouseReleased in class BaseCanvas

run

public java.lang.Object run(java.lang.Object o,
                            java.lang.String cmd)
Description copied from class: PGSCanvas
default handing of commands "exportPGS" and "exportPS". Any descendant should call super.run(o,cmd) to retain this functionality

Specified by:
run in interface Commander
Overrides:
run in class BaseCanvas
Parameters:
o - origin of the command
cmd - command string
Returns:
any object, the actual interpretation is up to the calling object

queryObject

public java.lang.String queryObject(int i)
Overrides:
queryObject in class BaseCanvas

queryPlotSpace

public java.lang.String queryPlotSpace()
Overrides:
queryPlotSpace in class BaseCanvas

adjustMargin

public boolean adjustMargin(PoGraSS g)
Description copied from class: BaseCanvas
Possibly adjust mLeft etc.

Overrides:
adjustMargin in class BaseCanvas
Returns:
Returns true if margins have been changed

isMouseOverAxis

protected boolean isMouseOverAxis(int x,
                                  int y)

getMouseOverAxis

protected Axis getMouseOverAxis(int x,
                                int y)

getAxisQuery

protected java.lang.String getAxisQuery(int x,
                                        int y)
Overrides:
getAxisQuery in class BaseCanvas

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener
Overrides:
mouseDragged in class BaseCanvas

isIsSpine

public boolean isIsSpine()

setIsSpine

public void setIsSpine(boolean isSpine)