org.apache.felix.example.servicebased.host
Class DrawingFrame

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 org.apache.felix.example.servicebased.host.DrawingFrame
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, Serializable, EventListener, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class DrawingFrame
extends javax.swing.JFrame
implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener

This class represents the main application class, which is a JFrame subclass that manages a toolbar of shapes and a drawing canvas. This class does not directly interact with the underlying OSGi framework; instead, it is injected with the available SimpleShape instances to eliminate any dependencies on the OSGi application programming interfaces.

See Also:
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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
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
DrawingFrame()
          Default constructor that populates the main window.
 
Method Summary
 void addShape(String name, javax.swing.Icon icon, SimpleShape shape)
          Injects an available SimpleShape into the drawing frame.
 SimpleShape getShape(String name)
          Retrieves the available SimpleShape associated with the given name.
 void mouseClicked(java.awt.event.MouseEvent evt)
          Implements method for the MouseListener interface to draw the selected shape into the drawing canvas.
 void mouseDragged(java.awt.event.MouseEvent evt)
          Implements method for the MouseMotionListener interface to move a dragged shape.
 void mouseEntered(java.awt.event.MouseEvent evt)
          Implements an empty method for the MouseListener interface.
 void mouseExited(java.awt.event.MouseEvent evt)
          Implements an empty method for the MouseListener interface.
 void mouseMoved(java.awt.event.MouseEvent evt)
          Implements an empty method for the MouseMotionListener interface.
 void mousePressed(java.awt.event.MouseEvent evt)
          Implements method for the MouseListener interface to initiate shape dragging.
 void mouseReleased(java.awt.event.MouseEvent evt)
          Implements method for the MouseListener interface to complete shape dragging.
 void removeShape(String name)
          Removes a no longer available SimpleShape from the drawing frame.
 void selectShape(String name)
          This method sets the currently selected shape to be used for drawing on the canvas.
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, 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, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, 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, 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, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Constructor Detail

DrawingFrame

public DrawingFrame()
Default constructor that populates the main window.

Method Detail

selectShape

public void selectShape(String name)
This method sets the currently selected shape to be used for drawing on the canvas.

Parameters:
name - The name of the shape to use for drawing on the canvas.

getShape

public SimpleShape getShape(String name)
Retrieves the available SimpleShape associated with the given name.

Parameters:
name - The name of the SimpleShape to retrieve.
Returns:
The corresponding SimpleShape instance if available or null.

addShape

public void addShape(String name,
                     javax.swing.Icon icon,
                     SimpleShape shape)
Injects an available SimpleShape into the drawing frame.

Parameters:
name - The name of the injected SimpleShape.
icon - The icon associated with the injected SimpleShape.
shape - The injected SimpleShape instance.

removeShape

public void removeShape(String name)
Removes a no longer available SimpleShape from the drawing frame.

Parameters:
name - The name of the SimpleShape to remove.

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent evt)
Implements method for the MouseListener interface to draw the selected shape into the drawing canvas.

Specified by:
mouseClicked in interface java.awt.event.MouseListener
Parameters:
evt - The associated mouse event.

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent evt)
Implements an empty method for the MouseListener interface.

Specified by:
mouseEntered in interface java.awt.event.MouseListener
Parameters:
evt - The associated mouse event.

mouseExited

public void mouseExited(java.awt.event.MouseEvent evt)
Implements an empty method for the MouseListener interface.

Specified by:
mouseExited in interface java.awt.event.MouseListener
Parameters:
evt - The associated mouse event.

mousePressed

public void mousePressed(java.awt.event.MouseEvent evt)
Implements method for the MouseListener interface to initiate shape dragging.

Specified by:
mousePressed in interface java.awt.event.MouseListener
Parameters:
evt - The associated mouse event.

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent evt)
Implements method for the MouseListener interface to complete shape dragging.

Specified by:
mouseReleased in interface java.awt.event.MouseListener
Parameters:
evt - The associated mouse event.

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent evt)
Implements method for the MouseMotionListener interface to move a dragged shape.

Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener
Parameters:
evt - The associated mouse event.

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent evt)
Implements an empty method for the MouseMotionListener interface.

Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener
Parameters:
evt - The associated mouse event.


Copyright © 2006-2011 Apache Software Foundation. All Rights Reserved.