public class UserInterface extends javax.swing.JFrame implements DrawInterface
javax.swing.JFrame.AccessibleJFrame
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
Modifier and Type | Field and Description |
---|---|
(package private) java.lang.String[] |
fonts |
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
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
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Constructor and Description |
---|
UserInterface()
User interface constructor
|
Modifier and Type | Method and Description |
---|---|
void |
actionPerformed(java.awt.event.ActionEvent e)
Button handler
|
void |
clear()
Clears the screen.
|
void |
drawCircle(int x0,
int y0,
int circleRadius,
boolean isFilled)
Draws a circle.
|
void |
drawRectangle(int x0,
int y0,
int w,
int h,
boolean isFilled)
Draws a rectangle.
|
void |
drawText(int x0,
int y0,
java.lang.String text)
Draws text.
|
void |
drawTriangle(int x0,
int y0,
int x1,
int y1,
int x2,
int y2)
Draws a triangle.
|
protected void |
exit()
Exits program by hiding the window, destroying it, then stopping the application.
|
int |
graphicsHeight()
Returns drawing surface height.
|
int |
graphicsWidth()
Returns drawing surface width.
|
void |
initializeGraphics()
Setup the graphics context
Store the width of the field middlePanel into the field "gWidth".
|
protected void |
load()
Load file using the graphical interface
|
protected void |
save()
save the program.
|
(package private) void |
setColor(java.awt.Color color)
The color for the outline or fill.
|
protected void |
setupWindow()
Setup window attributes
Set window size to 550 x 650.
|
(package private) void |
update()
Updates the surface
Increment the number of primitives.
|
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
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFront
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, transferFocusDownCycle, validate, validateTree
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, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, 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, 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, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
public void actionPerformed(java.awt.event.ActionEvent e)
actionPerformed
in interface java.awt.event.ActionListener
e
- called when one of the boxes is clicked. This includes
load, save, and exit.protected void load()
protected void save()
protected void exit()
protected void setupWindow()
public void initializeGraphics()
initializeGraphics
in interface DrawInterface
Graphics.setFont(Font)
,
Font
,
Graphics2D.setBackground(Color)
,
Graphics.clearRect(int, int, int, int)
public int graphicsWidth()
DrawInterface
graphicsWidth
in interface DrawInterface
public int graphicsHeight()
DrawInterface
graphicsHeight
in interface DrawInterface
void setColor(java.awt.Color color)
color
- the color of the shape.public void drawCircle(int x0, int y0, int circleRadius, boolean isFilled)
DrawInterface
drawCircle
in interface DrawInterface
x0
- the x coordinate of the upper left corner of the oval to be drawn.y0
- the y coordinate of the upper left corner of the oval to be drawn.circleRadius
- the radius of the circle.isFilled
- true if the oval is solid, false if it's the outline.public void drawRectangle(int x0, int y0, int w, int h, boolean isFilled)
DrawInterface
drawRectangle
in interface DrawInterface
x0
- the x coordinate of the rectangle to be drawn.y0
- the y coordinate of the rectangle to be drawn.w
- the width of the rectangle to be drawn.h
- the height of the rectangle to be drawn.isFilled
- true if the rectangle is solid, false if it's the outline.public void drawTriangle(int x0, int y0, int x1, int y1, int x2, int y2)
DrawInterface
drawTriangle
in interface DrawInterface
x0
- the x coordinate of the location where the first angle should be rendered.y0
- the y coordinate of the location where the first angle should be rendered.x1
- the x coordinate of the location where the second angle should be rendered.y1
- the y coordinate of the location where the second angle should be rendered.x2
- the x coordinate of the location where the third angle should be rendered.y2
- the y coordinate of the location where the third angle should be rendered.public void drawText(int x0, int y0, java.lang.String text)
DrawInterface
DrawPrimitives.rand(int)
with 0, 1, or 2. These numbers represent plain, bold, or
italic.
DrawPrimitives.rand(int)
with 35. This will return a random number for the size of
the font.
drawText
in interface DrawInterface
x0
- the x coordinate of the location where the String should be rendered.y0
- the y coordinate of the location where the String should be rendered.text
- the text to be rendered.public void clear()
DrawInterface
clear
in interface DrawInterface
void update()
JLabel.setText(String)
,
super#repaint()