|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JPanel O2Plib.image.ScrollableImage
public class ScrollableImage
ScrollableImageCanvas class supports a scrollable JPanel
Nested Class Summary | |
---|---|
private class |
ScrollableImage.Corner
CLASS CornerCorner Adapted from " The Java Tutorial" book. |
private class |
ScrollableImage.ImageCanvas
|
private class |
ScrollableImage.Rule
CLASS Rule Adapted from " The Java Tutorial" book. |
Nested classes/interfaces inherited from class javax.swing.JPanel |
---|
javax.swing.JPanel.AccessibleJPanel |
Nested classes/interfaces inherited from class javax.swing.JComponent |
---|
javax.swing.JComponent.AccessibleJComponent |
Nested classes/interfaces inherited from class java.awt.Container |
---|
java.awt.Container.AccessibleAWTContainer |
Nested classes/interfaces inherited from class java.awt.Component |
---|
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy |
Field Summary | |
---|---|
boolean |
altMod
ALT/Mouse |
java.awt.Point |
centerPt
center point |
private ScrollableImage.Rule |
columnView
column pixel size rulers |
boolean |
CONSOLE_FLAG
|
boolean |
ctrlMod
CTRL/Mouse |
boolean |
ctrlShiftMod
CTRL-SHIFT/Mouse |
int |
curPixHeight
pixel height |
int |
curPixWidth
pixel width |
java.awt.Point |
curPos
current position of scrollers |
java.awt.Image |
displayImg
image to display, can be zoomed |
int |
hPosOld
old horizontal position |
ScrollableImage.ImageCanvas |
imagePanel
actual object to be displayed |
boolean |
internalZoomButtonsFlag
FUTURE: special internal buttons for zoom |
static java.lang.String |
INVOKE_METHOD_NAME
name of method that parent needs to have implemented for remote painting |
javax.swing.JScrollPane |
jsp
Scroll pane to hold the image |
static float |
MAX_ZOOM_MAG_VAL
max zoomMag value (zoom/dezoom) X magnification |
int |
maxHorOld
|
int |
maxVertOld
|
static float |
MIN_ZOOM_MAG_VAL
min zoomMag value (zoom/dezoom) X magnification |
static int |
NBR_INVOKE_PARAMS
number of parameters used to invoke for remote painting |
boolean |
NEVER
NEVER and CONSOLE_FLAG - debugging variables - must not be final! |
java.awt.Image |
offScreenImg
image for double buffer TODO: should be able to draw offscreen |
int |
oldScrollerHeight
for calc Scroller Positions height |
int |
oldScrollerWidth
for calc Scroller Positions width |
java.awt.Image |
origImg
original image |
int |
origPixHeight
original pixel height |
int |
origPixWidth
pixel width |
java.lang.Object |
parentObj
pass parent instance down |
private boolean |
PIXEL_RULERS
FUTURE: To display rulers with pixel size in JScrollPane |
java.awt.Dimension |
preferedSize
preferred size of canvas |
int |
preferredHeight
preferred size of canvas |
int |
preferredWidth
preferred size of canvas |
private ScrollableImage.Rule |
rowView
row pixel size rulers |
boolean |
scrollerFlag
create w/ scrollers |
int |
scrollPaneHeight
height of image scroller |
int |
scrollPaneWidth
width of image scroller |
java.awt.Point |
scrollPos
keep track of Scroller Positions |
(package private) static long |
serialVersionUID
frame id |
boolean |
shiftMod
SHIFT/Mouse |
boolean |
tickFlagLRHC
paint lower rt hand corner |
boolean |
tickFlagULHC
paint upper lt hand corner |
Util |
util
for misc methods |
int |
viewHeight
|
java.awt.Dimension |
viewPortSize
dimensions of the view port |
int |
viewWidth
|
int |
vPosOld
old vertical position |
int |
xBase
+ base address of ULHC of clipped image in image canvas used in last paint |
int |
xCtr
center coords of image, for zoom/dezoom |
int |
xImg
image address (x,y)+(xBase,yBase) |
int |
xObj
image address (x,y)+(xBase,yBase) |
int |
yBase
|
int |
yCtr
center coords of image, for zoom/dezoom |
int |
yImg
image address (x,y)+(xBase,yBase) |
int |
yObj
image address (x,y)+(xBase,yBase) |
int |
zoomValue
zoom/magnification value |
Fields inherited from class javax.swing.JComponent |
---|
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW |
Fields inherited from class java.awt.Component |
---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
Fields inherited from interface java.awt.image.ImageObserver |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
Constructor Summary | |
---|---|
ScrollableImage(java.awt.Image origImg,
int scrollPaneWidth,
int scrollPaneHeight,
int pixWidth,
int pixHeight,
java.lang.Object parentObj,
boolean internalZoomButtonsFlag,
boolean scrollerFlag)
ScrollableImageCanvas() - constructor. |
Method Summary | |
---|---|
javax.swing.JScrollPane |
createScroller(ScrollableImage.ImageCanvas imagePanel,
int preferredWidth,
int preferredHeight,
boolean scrollerFlag)
createScroller() - Create JScroller with/without pixel ruler, or zoom buttons |
java.awt.Image |
createZoomedImage(java.awt.Image origImg,
int xC,
int yC,
int newWidth,
int newHeight)
createZoomedImage() - create zoomed image using getScaledInstance. |
int |
getHorizontalScrollBarVal()
getHorizontalScrollBarVal() - |
int |
getMaximumHorizontalSB()
getMaximumHorizontalSB() - |
java.awt.Dimension |
getMaximumSize()
getMaximumSize() - getMaximumSize, must be implemented for ScrollPane to be displayed correctly. |
int |
getMaximumVerticalSB()
getMaximumVerticalSB() - |
java.awt.Dimension |
getMinimumSize()
getMinimumSize() - getMinimumSize, must be implemented for ScrollPane to be displayed correctly. |
int[] |
getPixelDataFromImage(java.awt.Image img,
int width,
int height)
getPixelDataFromImage() - get the pixel data from the image |
java.awt.Dimension |
getPreferredSize()
getPreferredSize() - getPreferredSize, must be implemented for ScrollPane to be displayed correctly. |
int |
getVerticalScrollBarVal()
getVerticalScrollBarVal() - |
void |
keyPressed(java.awt.event.KeyEvent keyEvent)
keyPressed() - handle key down events |
void |
keyReleased(java.awt.event.KeyEvent e)
|
void |
keyTyped(java.awt.event.KeyEvent e)
|
java.awt.Point |
mapRelXYtoImage(java.awt.event.MouseEvent e)
mapRelXYtoImage() - map (x,y)Mouse in current canvas to (xImg,yImg) as well as updating the parent.(xImg,yImg) values. |
java.awt.Point |
mapStateToZoom(float magVal,
java.awt.Point XYobjToMap)
mapStateToZoom() - map state point to zoomed/dezoomed point This can be used for remapping overlays. |
java.awt.Point |
mapStateToZoom(int magVal,
java.awt.Point XYobjToMap)
mapStateToZoom() - map state point to zoomed/dezoomed point based on zoomMagVal. |
java.awt.Point |
mapZoomToState(float magVal,
java.awt.Point zoomedXYobjToMap)
mapZoomToState() - map zoom point to state point This can be used for remapping overlays. |
java.awt.Point |
mapZoomToState(int magVal,
java.awt.Point zoomedXYobjToMap)
mapZoomToState() - map zoom point to state point based on zoomMagVal. |
void |
mouseClicked(java.awt.event.MouseEvent mouseEvent)
mouseClicked() - Pass this event to the parent class. |
void |
mouseDragged(java.awt.event.MouseEvent mouseEvent)
mouseDragged() - Pass this event to the parent class. |
void |
mouseEntered(java.awt.event.MouseEvent mouseEvent)
mouseEntered() - Pass this event to the parent class. |
void |
mouseExited(java.awt.event.MouseEvent mouseEvent)
mouseExited() - Pass this envent to the parent class. |
void |
mouseMoved(java.awt.event.MouseEvent mouseEvent)
mouseMoved() - Pass this event to the parent class. |
void |
mousePressed(java.awt.event.MouseEvent mouseEvent)
mousePressed() - display data |
void |
mouseReleased(java.awt.event.MouseEvent mouseEvent)
mouseReleased() - Pass this event to the parent class. |
protected void |
paintComponent(java.awt.Graphics g)
paintComponent() - paint |
void |
resetImage(java.awt.Image img)
resetImage() - set or reset images |
void |
resetImage(java.awt.Image img,
int w,
int h)
resetImage() - set or reset images |
void |
resizeImageCanvas(float zoomValue)
resizeImageCanvas() - Reset Image, used in zoom and dezoom. |
void |
resizeImageCanvas(int newWidth,
int newHeight,
float mag)
resizeImageCanvas() - Reset Image, used in zoom and dezoom. |
void |
setHorizontalScrollBarVal(int value)
setHorizontalScrollBarVal() - |
void |
setObjPosition(int x,
int y)
setObjPosition() - set the object position in non-zoomed space. |
void |
setVerticalScrollBarVal(int value)
setVerticalScrollBarVal() - |
Methods inherited from class javax.swing.JPanel |
---|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI |
Methods inherited from class javax.swing.JComponent |
---|
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update |
Methods inherited from class java.awt.Container |
---|
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree |
Methods inherited from class java.awt.Component |
---|
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
static final long serialVersionUID
public boolean NEVER
public boolean CONSOLE_FLAG
private final boolean PIXEL_RULERS
public static final int NBR_INVOKE_PARAMS
public static final java.lang.String INVOKE_METHOD_NAME
public static final float MAX_ZOOM_MAG_VAL
public static final float MIN_ZOOM_MAG_VAL
public java.awt.Image displayImg
public java.awt.Image origImg
public java.awt.Image offScreenImg
public java.awt.Point centerPt
public java.awt.Dimension viewPortSize
public int xCtr
public int yCtr
public java.awt.Point curPos
public int xObj
public int yObj
public int xImg
public int yImg
public int zoomValue
public int curPixHeight
public int curPixWidth
public int origPixHeight
public int origPixWidth
public int oldScrollerWidth
public int oldScrollerHeight
public int scrollPaneWidth
public int scrollPaneHeight
public java.awt.Dimension preferedSize
public int preferredWidth
public int preferredHeight
public int viewWidth
public int viewHeight
public boolean ctrlMod
public boolean shiftMod
public boolean ctrlShiftMod
public boolean altMod
public boolean tickFlagULHC
public boolean tickFlagLRHC
public int xBase
public int yBase
public ScrollableImage.ImageCanvas imagePanel
public java.awt.Point scrollPos
public javax.swing.JScrollPane jsp
public Util util
private ScrollableImage.Rule columnView
private ScrollableImage.Rule rowView
public java.lang.Object parentObj
public boolean internalZoomButtonsFlag
public boolean scrollerFlag
public int maxHorOld
public int maxVertOld
public int hPosOld
public int vPosOld
Constructor Detail |
---|
public ScrollableImage(java.awt.Image origImg, int scrollPaneWidth, int scrollPaneHeight, int pixWidth, int pixHeight, java.lang.Object parentObj, boolean internalZoomButtonsFlag, boolean scrollerFlag)
img
- is the image to createorigImg
- copy of orginal image, used in zoomingscrollerWidth
- width of scrollerscrollerHeight
- height of scrollerpixWidth
- image widthpixHeight
- image heightparentObj
- to pass painting and mouse eventsMethod Detail |
---|
public void resetImage(java.awt.Image img)
img
- image to setpublic void resetImage(java.awt.Image img, int w, int h)
img
- image to setpublic javax.swing.JScrollPane createScroller(ScrollableImage.ImageCanvas imagePanel, int preferredWidth, int preferredHeight, boolean scrollerFlag)
imagePanel
- component to place inside scrollerpreferredWidth
- width of scrollerpreferredHeight
- height of scroller
public int getMaximumHorizontalSB()
public int getMaximumVerticalSB()
public int getHorizontalScrollBarVal()
public int getVerticalScrollBarVal()
public void setHorizontalScrollBarVal(int value)
public void setVerticalScrollBarVal(int value)
public void resizeImageCanvas(float zoomValue)
zoomValue
- is magnification to use.public void resizeImageCanvas(int newWidth, int newHeight, float mag)
img
- is the image to set to be drawnnewWidth
- tof the canvasnewHeight
- tof the canvasmag
- of the canvaspublic java.awt.Image createZoomedImage(java.awt.Image origImg, int xC, int yC, int newWidth, int newHeight)
xC
- is new zoomed X centeryC
- is new zoomed Y centernewWidth
- is new zoomed width (odd size)newHeight
- is new zoomed height (odd size)
public int[] getPixelDataFromImage(java.awt.Image img, int width, int height)
img
- image to usewidth
- of imageheight
- of image
public java.awt.Point mapStateToZoom(float magVal, java.awt.Point XYobjToMap)
magVal
- float value of magificationmappedXYobj
- to use if not null, else create one.
public java.awt.Point mapZoomToState(float magVal, java.awt.Point zoomedXYobjToMap)
magVal
- float value of magificationmappedXYobj
- to use if not null, else create one.
public java.awt.Point mapStateToZoom(int magVal, java.awt.Point XYobjToMap)
magVal
- int value of magificationmappedXYobj
- to use if not null, else create one.
public java.awt.Point mapZoomToState(int magVal, java.awt.Point zoomedXYobjToMap)
magVal
- int value of magificationmappedXYobj
- to use if not null, else create one.
public java.awt.Dimension getMaximumSize()
getMaximumSize
in class javax.swing.JComponent
public java.awt.Dimension getMinimumSize()
getMinimumSize
in class javax.swing.JComponent
public java.awt.Dimension getPreferredSize()
getPreferredSize
in class javax.swing.JComponent
public final java.awt.Point mapRelXYtoImage(java.awt.event.MouseEvent e)
e
- is mouse eventx
- is image cursory
- is image cursor3public void setObjPosition(int x, int y)
x
- is new object positiony
- is new object positionprotected void paintComponent(java.awt.Graphics g)
paintComponent
in class javax.swing.JComponent
g
- is graphics context.public void mousePressed(java.awt.event.MouseEvent mouseEvent)
mousePressed
in interface java.awt.event.MouseListener
mouseEvent
- is MouseEventpublic void mouseDragged(java.awt.event.MouseEvent mouseEvent)
mouseDragged
in interface java.awt.event.MouseMotionListener
mouseEvent
- is MouseEventpublic void mouseClicked(java.awt.event.MouseEvent mouseEvent)
mouseClicked
in interface java.awt.event.MouseListener
mouseEvent
- is MouseEventpublic void mouseEntered(java.awt.event.MouseEvent mouseEvent)
mouseEntered
in interface java.awt.event.MouseListener
mouseEvent
- is MouseEventpublic void mouseExited(java.awt.event.MouseEvent mouseEvent)
mouseExited
in interface java.awt.event.MouseListener
mouseEvent
- is MouseEventpublic void mouseReleased(java.awt.event.MouseEvent mouseEvent)
mouseReleased
in interface java.awt.event.MouseListener
mouseEvent
- is MouseEventpublic void mouseMoved(java.awt.event.MouseEvent mouseEvent)
mouseMoved
in interface java.awt.event.MouseMotionListener
mouseEvent
- is MouseEventpublic void keyPressed(java.awt.event.KeyEvent keyEvent)
keyPressed
in interface java.awt.event.KeyListener
e
- is KeyEventpublic void keyReleased(java.awt.event.KeyEvent e)
keyReleased
in interface java.awt.event.KeyListener
public void keyTyped(java.awt.event.KeyEvent e)
keyTyped
in interface java.awt.event.KeyListener
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |