monitor
Class Monitor

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by monitor.Monitor
All Implemented Interfaces:
StringAppendable, StringInputReader, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class Monitor
extends javax.swing.JFrame
implements StringAppendable, StringInputReader

A monitor represents a GUI screen for normal text output. It has scrolling, saving, exiting program, copying capabilities. General uses would be to use the monitor.out PrintStream to print as if you want to print using System.out. For Example: Monitor monitor=new Monitor(); monitor.out.println("Easy Handling Screen Output"); For capturing Inputs, its the same as the command line keyboard input. all you need to do is rap the inputStream into a BufferedReader. BufferedReader input=new BufferedReader(new InputStramReader(monitor.in));

Author:
حسام الملحم Hussam Al-Mulhim
See Also:
MonitorManager, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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
 java.io.InputStream in
          An InputStream that is used to read bytes.
 java.io.PrintStream out
          A PrintStream used to print on the monitor.
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
Monitor()
          Constructs a monitor with the default name.
Monitor(java.lang.String name)
          Constructs a monitor with the given name.
Monitor(java.lang.String name, StringOutputStream sos, StringInputStream sis)
          Constructs a monitor with the given String output and Input Streams.
 
Method Summary
 void appendString(java.lang.String sentence)
          Appends the text with the specified sentence.
 void clear()
          Clears the monitor.
 boolean getAutoShow()
          gets the monitor's autoshow status
static Monitor getMonitor()
          Returns a new Monitor.
static Monitor getMonitor(java.lang.String name)
          Returns a new Monitor with a name.
protected  StringInputStream getStringInputStream()
          Returns a new String Input Stream
protected  StringOutputStream getStringOutputStream()
          Returns a new String output Stream
static void main(java.lang.String[] args)
           
 java.lang.String readString()
          Returns the Text enterred into the textfield.
 void requestString()
          Makes the input textfield avaliable for input.
 void setAutoShow(boolean autoShow)
          Sets the monitor to automatically(true) or manually(false) show if anything has been printed.
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

out

public final java.io.PrintStream out
A PrintStream used to print on the monitor.


in

public final java.io.InputStream in
An InputStream that is used to read bytes. Rapping this inputStream in a BufferedReader will make effective use of keyboard inputs.eg. new BufferedReader(new InputStreamReader(monitor.in));

Constructor Detail

Monitor

public Monitor()
Constructs a monitor with the default name. Autoshow is set to true.

See Also:
setAutoShow(boolean autoShow)

Monitor

public Monitor(java.lang.String name)
Constructs a monitor with the given name. The default StringInputStream and StringOutputStream are set by default.


Monitor

public Monitor(java.lang.String name,
               StringOutputStream sos,
               StringInputStream sis)
Constructs a monitor with the given String output and Input Streams.

Method Detail

getStringOutputStream

protected StringOutputStream getStringOutputStream()
Returns a new String output Stream


getStringInputStream

protected StringInputStream getStringInputStream()
Returns a new String Input Stream


clear

public void clear()
Clears the monitor.


appendString

public void appendString(java.lang.String sentence)
Appends the text with the specified sentence.

Specified by:
appendString in interface StringAppendable

requestString

public void requestString()
Makes the input textfield avaliable for input.

Specified by:
requestString in interface StringInputReader

readString

public java.lang.String readString()
Returns the Text enterred into the textfield.

Specified by:
readString in interface StringInputReader

setAutoShow

public void setAutoShow(boolean autoShow)
Sets the monitor to automatically(true) or manually(false) show if anything has been printed. This can be effictive, if set to true, to print and display Exceptions.


getAutoShow

public boolean getAutoShow()
gets the monitor's autoshow status

See Also:
setAutoShow(boolean autoShow)

getMonitor

public static Monitor getMonitor()
Returns a new Monitor.


getMonitor

public static Monitor getMonitor(java.lang.String name)
Returns a new Monitor with a name.


main

public static void main(java.lang.String[] args)
                 throws java.io.IOException
Throws:
java.io.IOException