Class Console

  • All Implemented Interfaces:
    GuiComponent, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.Scrollable

    public class Console
    extends javax.swing.JPanel
    implements GuiComponent, javax.swing.Scrollable
    See Also:
    Serialized Form
    • Nested Class Summary

      • 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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private CommandLineViewImpl commandLine  
      private java.util.ArrayList<GuiComponent> guiComponent  
      private boolean horizontalWrapAllowed  
      private int scrollableBlockIncrement  
      private int scrollableUnitIncrement  
      private static long serialVersionUID  
      private boolean verticalWrapAllowed  
      • Fields inherited from class javax.swing.JComponent

        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

        accessibleContext, 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

      Constructors 
      Constructor Description
      Console()
      Creates the console
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean getHorizontalWrapAllowed()
      Gets the property telling if the console enables horizontal word wrapping
      java.awt.Dimension getPreferredScrollableViewportSize()
      Gets the size of the viewport used for scrolling policy
      java.awt.Dimension getPreferredSize()
      Gets the preferred size of the console taking into account the scrolling policy
      int getScrollableBlockIncrement​(java.awt.Rectangle arg0, int arg1, int arg2)
      Gets the scrolling block increment value
      boolean getScrollableTracksViewportHeight()
      Gets the property telling if the viewport can have a vertical scrollbar
      boolean getScrollableTracksViewportWidth()
      Gets the property telling if the viewport can have an horizontal scrollbar
      int getScrollableUnitIncrement​(java.awt.Rectangle arg0, int arg1, int arg2)
      Gets the scrolling unit increment value
      boolean getVerticalWrapAllowed()
      Gets the property telling if the console enables vertical word wrapping
      static void main​(java.lang.String[] args)
      Main class used to test console
      void setBackground​(java.awt.Color color)
      Sets the background of all components in the console
      void setFont​(java.awt.Font font)
      Sets the font of all components in the console
      void setForeground​(java.awt.Color color)
      Sets the foreground of all components in the console
      void setHorizontalWrapAllowed​(boolean wrapMode)
      Sets the property telling if the console enables horizontal word wrapping
      void setInputCommandView​(InputCommandView command)
      Sets the component where the user enters its commands
      void setOutputView​(OutputView output)
      Sets the component where all outputs are displayed
      void setPromptView​(PromptView prompt)
      Sets the component where the prompt is printed
      void setScrollableBlockIncrement​(int increment)
      Sets the scrolling block increment value
      void setScrollableUnitIncrement​(int increment)
      Sets the scrolling unit increment value
      void setVerticalWrapAllowed​(boolean wrapMode)
      Sets the property telling if the console enables vertical word wrapping
      • 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, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, 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, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, 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, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • guiComponent

        private java.util.ArrayList<GuiComponent> guiComponent
      • scrollableBlockIncrement

        private int scrollableBlockIncrement
      • scrollableUnitIncrement

        private int scrollableUnitIncrement
      • horizontalWrapAllowed

        private boolean horizontalWrapAllowed
      • verticalWrapAllowed

        private boolean verticalWrapAllowed
    • Constructor Detail

      • Console

        public Console()
        Creates the console
    • Method Detail

      • setOutputView

        public void setOutputView​(OutputView output)
        Sets the component where all outputs are displayed
        Parameters:
        output - the component
      • setInputCommandView

        public void setInputCommandView​(InputCommandView command)
        Sets the component where the user enters its commands
        Parameters:
        command - the component
      • setPromptView

        public void setPromptView​(PromptView prompt)
        Sets the component where the prompt is printed
        Parameters:
        prompt - the component
      • setBackground

        public void setBackground​(java.awt.Color color)
        Sets the background of all components in the console
        Specified by:
        setBackground in interface GuiComponent
        Overrides:
        setBackground in class javax.swing.JComponent
        Parameters:
        color - the color to set
        See Also:
        JComponent.setBackground(java.awt.Color)
      • setForeground

        public void setForeground​(java.awt.Color color)
        Sets the foreground of all components in the console
        Specified by:
        setForeground in interface GuiComponent
        Overrides:
        setForeground in class javax.swing.JComponent
        Parameters:
        color - the color to set
        See Also:
        JComponent.setForeground(java.awt.Color)
      • setFont

        public void setFont​(java.awt.Font font)
        Sets the font of all components in the console
        Specified by:
        setFont in interface GuiComponent
        Overrides:
        setFont in class javax.swing.JComponent
        Parameters:
        font - the font to set
        See Also:
        JComponent.setFont(java.awt.Font)
      • getPreferredSize

        public java.awt.Dimension getPreferredSize()
        Gets the preferred size of the console taking into account the scrolling policy
        Overrides:
        getPreferredSize in class javax.swing.JComponent
        Returns:
        the dimensions of the console
        See Also:
        JComponent.getPreferredSize()
      • getPreferredScrollableViewportSize

        public java.awt.Dimension getPreferredScrollableViewportSize()
        Gets the size of the viewport used for scrolling policy
        Specified by:
        getPreferredScrollableViewportSize in interface javax.swing.Scrollable
        Returns:
        the dimensions of the viewport
        See Also:
        Scrollable.getPreferredScrollableViewportSize()
      • getScrollableUnitIncrement

        public int getScrollableUnitIncrement​(java.awt.Rectangle arg0,
                                              int arg1,
                                              int arg2)
        Gets the scrolling unit increment value
        Specified by:
        getScrollableUnitIncrement in interface javax.swing.Scrollable
        See Also:
        Scrollable.getScrollableUnitIncrement(java.awt.Rectangle, int, int)
      • getScrollableBlockIncrement

        public int getScrollableBlockIncrement​(java.awt.Rectangle arg0,
                                               int arg1,
                                               int arg2)
        Gets the scrolling block increment value
        Specified by:
        getScrollableBlockIncrement in interface javax.swing.Scrollable
        See Also:
        Scrollable.getScrollableBlockIncrement(java.awt.Rectangle, int, int)
      • setScrollableUnitIncrement

        public void setScrollableUnitIncrement​(int increment)
        Sets the scrolling unit increment value
        Parameters:
        increment - the increment value
      • setScrollableBlockIncrement

        public void setScrollableBlockIncrement​(int increment)
        Sets the scrolling block increment value
        Parameters:
        increment - the increment value
      • getScrollableTracksViewportWidth

        public boolean getScrollableTracksViewportWidth()
        Gets the property telling if the viewport can have an horizontal scrollbar
        Specified by:
        getScrollableTracksViewportWidth in interface javax.swing.Scrollable
        Returns:
        false if the viewport can have an horizontal scrollbar (true if it can)
        See Also:
        Scrollable.getScrollableTracksViewportWidth()
      • getScrollableTracksViewportHeight

        public boolean getScrollableTracksViewportHeight()
        Gets the property telling if the viewport can have a vertical scrollbar
        Specified by:
        getScrollableTracksViewportHeight in interface javax.swing.Scrollable
        Returns:
        false if the viewport can have a vertical scrollbar (true if it can)
        See Also:
        Scrollable.getScrollableTracksViewportHeight()
      • setVerticalWrapAllowed

        public void setVerticalWrapAllowed​(boolean wrapMode)
        Sets the property telling if the console enables vertical word wrapping
        Parameters:
        wrapMode - true if words can be wrapped verticaly (false if a scrollbar has to be used instead)
      • getVerticalWrapAllowed

        public boolean getVerticalWrapAllowed()
        Gets the property telling if the console enables vertical word wrapping
        Returns:
        true if words can be wrapped verticaly (false if a scrollbar has to be used instead)
      • setHorizontalWrapAllowed

        public void setHorizontalWrapAllowed​(boolean wrapMode)
        Sets the property telling if the console enables horizontal word wrapping
        Parameters:
        wrapMode - true if words can be wrapped verticaly (false if a scrollbar has to be used instead)
      • getHorizontalWrapAllowed

        public boolean getHorizontalWrapAllowed()
        Gets the property telling if the console enables horizontal word wrapping
        Returns:
        true if words can be wrapped verticaly (false if a scrollbar has to be used instead)
      • main

        public static void main​(java.lang.String[] args)
                         throws java.lang.Exception
        Main class used to test console
        Parameters:
        args -
        Throws:
        java.lang.Exception