|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.awt.Component
de.mud.terminal.SwingTerminal
public class SwingTerminal
Video Display Unit emulation for Swing/AWT. This class implements all necessary features of a character display unit, but not the actual terminal emulation. It can be used as the base for terminal emulations of any kind.
This is a lightweight component. It will render very badly if used in standard AWT components without overloaded update() method. The update() method must call paint() immediately without clearing the components graphics context or parts of the screen will simply disappear.
Maintainer: Matthias L. Jugel
Nested Class Summary |
---|
Nested classes/interfaces inherited from class java.awt.Component |
---|
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy |
Field Summary | |
---|---|
static int |
COLOR_BOLD
|
static int |
COLOR_INVERT
|
static int |
RESIZE_FONT
|
static int |
RESIZE_NONE
|
static int |
RESIZE_SCREEN
|
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 | |
---|---|
SwingTerminal(VDUBuffer buffer)
Create a display unit with size 80x24 and Font "Monospaced", size 12. |
|
SwingTerminal(VDUBuffer buffer,
java.awt.Font font)
Create a new video display unit with the passed width and height in characters using a special font and font size. |
Method Summary | |
---|---|
void |
addFocusListener(java.awt.event.FocusListener listener)
|
void |
addKeyListener(java.awt.event.KeyListener listener)
Add a key listener to the VDU. |
void |
addMouseListener(java.awt.event.MouseListener listener)
Add a mouse listener to the VDU. |
void |
addMouseMotionListener(java.awt.event.MouseMotionListener listener)
Add a mouse motion listener to the VDU. |
void |
clearSelection()
|
java.awt.Color[] |
getColorSet()
Get current color set. |
java.awt.Insets |
getInsets()
The insets of the character display define the border. |
java.awt.Dimension |
getPreferredSize()
Return the preferred Size of the character display. |
java.lang.String |
getSelection()
|
java.awt.Dimension |
getSize()
Return the real size in points of the character display. |
VDUBuffer |
getVDUBuffer()
Return the currently associated VDUBuffer. |
void |
keyPressed(java.awt.event.KeyEvent e)
|
void |
keyReleased(java.awt.event.KeyEvent e)
|
void |
keyTyped(java.awt.event.KeyEvent e)
|
protected double |
max(double f1,
double f2)
|
protected double |
min(double f1,
double f2)
|
void |
mouseClicked(java.awt.event.MouseEvent evt)
|
void |
mouseDragged(java.awt.event.MouseEvent evt)
|
void |
mouseEntered(java.awt.event.MouseEvent evt)
|
void |
mouseExited(java.awt.event.MouseEvent evt)
|
java.awt.Point |
mouseGetPos(java.awt.Point evtpt)
Convert Mouse Event coordinates into character cell coordinates |
void |
mouseMoved(java.awt.event.MouseEvent evt)
|
void |
mousePressed(java.awt.event.MouseEvent evt)
Handle mouse pressed events for copy & paste. |
void |
mouseReleased(java.awt.event.MouseEvent evt)
Handle mouse released events for copy & paste. |
void |
paint(java.awt.Graphics g)
Paint the current screen using the backing store image. |
void |
print(java.awt.Graphics g)
|
void |
processFocusEvent(java.awt.event.FocusEvent evt)
|
void |
processKeyEvent(java.awt.event.KeyEvent evt)
Process key events for this component. |
void |
processMouseEvent(java.awt.event.MouseEvent evt)
Process mouse events for this component. |
void |
processMouseMotionEvent(java.awt.event.MouseEvent evt)
Process mouse motion events for this component. |
void |
redraw()
Redraw marked lines. |
protected void |
redraw(java.awt.Graphics g)
|
void |
removeFocusListener(java.awt.event.FocusListener listener)
|
void |
removeKeyListener(java.awt.event.KeyListener listener)
Remove key listener from the VDU. |
void |
removeMouseListener(java.awt.event.MouseListener listener)
Remove a mouse listener to the VDU. |
void |
removeMouseMotionListener(java.awt.event.MouseMotionListener listener)
Remove a mouse motion listener to the VDU. |
void |
setBorder(int thickness,
boolean raised)
Set the border thickness and the border type. |
void |
setBounds(int x,
int y,
int w,
int h)
Reshape character display according to resize strategy. |
void |
setColorPrinting(boolean colorPrint)
Set default for printing black&white or colorized as displayed on screen. |
void |
setColorSet(java.awt.Color[] colorset)
Set new color set for the display. |
void |
setCursorColors(java.awt.Color fg,
java.awt.Color bg)
Set cursor FG and BG colors |
void |
setFont(java.awt.Font font)
Set the font to be used for rendering the characters on screen. |
void |
setResizeStrategy(int strategy)
Set the strategy when window is resized. |
void |
setScrollbar(javax.swing.JScrollBar scrollBar)
Connect a scrollbar to the VDU. |
void |
setVDUBuffer(VDUBuffer buffer)
Set a new terminal (VDU) buffer. |
void |
updateScrollBar()
|
Methods inherited from class java.awt.Component |
---|
action, add, addComponentListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addMouseWheelListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getAlignmentX, getAlignmentY, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, paramString, postEvent, preferredSize, prepareImage, prepareImage, printAll, processComponentEvent, processEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, update, validate |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final int RESIZE_NONE
public static final int RESIZE_FONT
public static final int RESIZE_SCREEN
public static final int COLOR_BOLD
public static final int COLOR_INVERT
Constructor Detail |
---|
public SwingTerminal(VDUBuffer buffer, java.awt.Font font)
buffer
- a VDU buffer to be associated with the displayfont
- the font to be used (usually Monospaced)public SwingTerminal(VDUBuffer buffer)
Method Detail |
---|
protected double max(double f1, double f2)
protected double min(double f1, double f2)
public void setVDUBuffer(VDUBuffer buffer)
setVDUBuffer
in interface VDUDisplay
buffer
- new bufferpublic VDUBuffer getVDUBuffer()
getVDUBuffer
in interface VDUDisplay
public void setColorSet(java.awt.Color[] colorset)
colorset
- new color setpublic java.awt.Color[] getColorSet()
public void setFont(java.awt.Font font)
setFont
in class java.awt.Component
font
- the new font to be used.public void setResizeStrategy(int strategy)
strategy
- the strategyRESIZE_NONE
,
RESIZE_FONT
,
RESIZE_SCREEN
public void setBorder(int thickness, boolean raised)
thickness
- border thickness in pixels, zero means no borderraised
- a boolean indicating a raised or embossed borderpublic void setScrollbar(javax.swing.JScrollBar scrollBar)
scrollBar
- the scroll barpublic void redraw()
redraw
in interface VDUDisplay
public void updateScrollBar()
updateScrollBar
in interface VDUDisplay
protected void redraw(java.awt.Graphics g)
public void paint(java.awt.Graphics g)
paint
in class java.awt.Component
public void setColorPrinting(boolean colorPrint)
colorPrint
- true = print in full color, default b&w onlypublic void print(java.awt.Graphics g)
print
in class java.awt.Component
public java.awt.Point mouseGetPos(java.awt.Point evtpt)
evtpt
- the mouse point to be converted
public void setCursorColors(java.awt.Color fg, java.awt.Color bg)
fg
- foreground color or nullbg
- background color or nullpublic void setBounds(int x, int y, int w, int h)
setBounds
in class java.awt.Component
setResizeStrategy(int)
public java.awt.Dimension getSize()
getSize
in class java.awt.Component
Dimension
public java.awt.Dimension getPreferredSize()
getPreferredSize
in class java.awt.Component
Component.size()
public java.awt.Insets getInsets()
public void clearSelection()
public java.lang.String getSelection()
public void mouseMoved(java.awt.event.MouseEvent evt)
mouseMoved
in interface java.awt.event.MouseMotionListener
public void mouseDragged(java.awt.event.MouseEvent evt)
mouseDragged
in interface java.awt.event.MouseMotionListener
public void mouseClicked(java.awt.event.MouseEvent evt)
mouseClicked
in interface java.awt.event.MouseListener
public void mouseEntered(java.awt.event.MouseEvent evt)
mouseEntered
in interface java.awt.event.MouseListener
public void mouseExited(java.awt.event.MouseEvent evt)
mouseExited
in interface java.awt.event.MouseListener
public void mousePressed(java.awt.event.MouseEvent evt)
mousePressed
in interface java.awt.event.MouseListener
evt
- the event that occuredMouseEvent
public void mouseReleased(java.awt.event.MouseEvent evt)
mouseReleased
in interface java.awt.event.MouseListener
evt
- the mouse eventpublic void keyTyped(java.awt.event.KeyEvent e)
keyTyped
in interface java.awt.event.KeyListener
public void keyPressed(java.awt.event.KeyEvent e)
keyPressed
in interface java.awt.event.KeyListener
public void keyReleased(java.awt.event.KeyEvent e)
keyReleased
in interface java.awt.event.KeyListener
public void addMouseListener(java.awt.event.MouseListener listener)
addMouseListener
in class java.awt.Component
listener
- the new mouse listenerpublic void removeMouseListener(java.awt.event.MouseListener listener)
removeMouseListener
in class java.awt.Component
listener
- the mouse listener to removepublic void addMouseMotionListener(java.awt.event.MouseMotionListener listener)
addMouseMotionListener
in class java.awt.Component
listener
- the mouse motion listenerpublic void removeMouseMotionListener(java.awt.event.MouseMotionListener listener)
removeMouseMotionListener
in class java.awt.Component
listener
- the mouse motion listener to removepublic void processMouseEvent(java.awt.event.MouseEvent evt)
processMouseEvent
in class java.awt.Component
evt
- the dispatched mouse eventpublic void processMouseMotionEvent(java.awt.event.MouseEvent evt)
processMouseMotionEvent
in class java.awt.Component
evt
- the dispatched mouse eventpublic void addKeyListener(java.awt.event.KeyListener listener)
addKeyListener
in class java.awt.Component
listener
- the key listenerpublic void removeKeyListener(java.awt.event.KeyListener listener)
removeKeyListener
in class java.awt.Component
listener
- the key listener to removepublic void processKeyEvent(java.awt.event.KeyEvent evt)
processKeyEvent
in class java.awt.Component
evt
- the dispatched key eventpublic void addFocusListener(java.awt.event.FocusListener listener)
addFocusListener
in class java.awt.Component
public void removeFocusListener(java.awt.event.FocusListener listener)
removeFocusListener
in class java.awt.Component
public void processFocusEvent(java.awt.event.FocusEvent evt)
processFocusEvent
in class java.awt.Component
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |