Package weka.gui

Class AbstractPerspective

    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JComponent

        javax.swing.JComponent.AccessibleJComponent
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.BaselineResizeBehavior
    • Field Summary

      • Fields inherited from class javax.swing.JComponent

        TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
      • 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean acceptsInstances()
      Returns true if this perspective can do something meaningful with a set of instances
      Defaults getDefaultSettings()
      Get the default settings for this perspective (or null if there are none)
      GUIApplication getMainApplication()
      Get the main application that this perspective belongs to
      java.util.List<javax.swing.JMenu> getMenus()
      Get an ordered list of menus to appear in the main menu bar.
      javax.swing.Icon getPerspectiveIcon()
      Get the icon for this perspective
      java.lang.String getPerspectiveID()
      Get the ID of this perspective
      java.lang.String getPerspectiveTipText()
      Get the tool tip text for this perspective
      java.lang.String getPerspectiveTitle()
      Get the title of this perspective
      void instantiationComplete()
      No-opp implementation.
      boolean okToBeActive()
      Returns true if the perspective is usable at this time.
      boolean requiresLog()
      Whether this perspective requires a graphical log to write to
      void setActive​(boolean active)
      Set active status of this perspective.
      void setInstances​(Instances instances)
      Set instances (if this perspective can use them)
      void setLoaded​(boolean loaded)
      Set whether this perspective is "loaded" - i.e.
      void setLog​(Logger log)
      Set a log to use (if required by the perspective)
      void setMainApplication​(GUIApplication main)
      Set the main application.
      void settingsChanged()
      Called when the user alters settings.
      void terminate()
      Subclasses should override this to free any additional resources (e.g., JFrames and threads) when the perspective is no longer needed.
      java.lang.String toString()
      Returns the perspective's title
      • Methods inherited from class javax.swing.JPanel

        getAccessibleContext, getUI, getUIClassID, setUI, updateUI
      • Methods inherited from class javax.swing.JComponent

        addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
      • Methods inherited from class java.awt.Container

        add, add, add, add, add, addContainerListener, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate
      • Methods inherited from class java.awt.Component

        action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • AbstractPerspective

        public AbstractPerspective()
        Constructor
      • AbstractPerspective

        public AbstractPerspective​(java.lang.String ID,
                                   java.lang.String title)
        Constructor
        Parameters:
        ID - the ID of the perspective
        title - the title of the the perspective
    • Method Detail

      • terminate

        public void terminate()
        Subclasses should override this to free any additional resources (e.g., JFrames and threads) when the perspective is no longer needed. This default method removes all menus that a perspective might have because references to various components may be included in the event handlers of these menus.
      • instantiationComplete

        public void instantiationComplete()
        No-opp implementation. Subclasses should override if they can only complete initialization by accessing the main application and/or the PerspectiveManager. References to these two things are guaranteed to be available when this method is called during the startup process
        Specified by:
        instantiationComplete in interface Perspective
      • okToBeActive

        public boolean okToBeActive()
        Returns true if the perspective is usable at this time. This is a no-opp implementation that always returns true. Subclasses should override if there are specific conditions that need to be met (e.g. can't operate if there are no instances set).
        Specified by:
        okToBeActive in interface Perspective
        Returns:
        true if this perspective is usable at this time
      • setActive

        public void setActive​(boolean active)
        Set active status of this perspective. True indicates that this perspective is the visible active perspective in the application
        Specified by:
        setActive in interface Perspective
        Parameters:
        active - true if this perspective is the active one
      • setLoaded

        public void setLoaded​(boolean loaded)
        Set whether this perspective is "loaded" - i.e. whether or not the user has opted to have it available in the perspective toolbar. The perspective can make the decision as to allocating or freeing resources on the basis of this. Note that the main application and perspective manager instances are not available to the perspective until the instantiationComplete() method has been called.
        Specified by:
        setLoaded in interface Perspective
        Parameters:
        loaded - true if the perspective is available in the perspective toolbar of the KnowledgeFlow
      • setMainApplication

        public void setMainApplication​(GUIApplication main)
        Set the main application. Gives other perspectives access to information provided by the main application
        Specified by:
        setMainApplication in interface Perspective
        Parameters:
        main - the main application
      • getMainApplication

        public GUIApplication getMainApplication()
        Get the main application that this perspective belongs to
        Specified by:
        getMainApplication in interface Perspective
        Returns:
        the main application that this perspective belongs to
      • getPerspectiveID

        public java.lang.String getPerspectiveID()
        Get the ID of this perspective
        Specified by:
        getPerspectiveID in interface Perspective
        Returns:
        the ID of this perspective
      • getPerspectiveTitle

        public java.lang.String getPerspectiveTitle()
        Get the title of this perspective
        Specified by:
        getPerspectiveTitle in interface Perspective
        Returns:
        the title of this perspective
      • getPerspectiveTipText

        public java.lang.String getPerspectiveTipText()
        Get the tool tip text for this perspective
        Specified by:
        getPerspectiveTipText in interface Perspective
        Returns:
        the tool tip text for this perspective
      • getPerspectiveIcon

        public javax.swing.Icon getPerspectiveIcon()
        Get the icon for this perspective
        Specified by:
        getPerspectiveIcon in interface Perspective
        Returns:
        the icon for this perspective
      • getMenus

        public java.util.List<javax.swing.JMenu> getMenus()
        Get an ordered list of menus to appear in the main menu bar. Return null for no menus
        Specified by:
        getMenus in interface Perspective
        Returns:
        a list of menus to appear in the main menu bar or null for no menus
      • setInstances

        public void setInstances​(Instances instances)
        Set instances (if this perspective can use them)
        Specified by:
        setInstances in interface Perspective
        Parameters:
        instances - the instances
      • acceptsInstances

        public boolean acceptsInstances()
        Returns true if this perspective can do something meaningful with a set of instances
        Specified by:
        acceptsInstances in interface Perspective
        Returns:
        true if this perspective accepts instances
      • requiresLog

        public boolean requiresLog()
        Whether this perspective requires a graphical log to write to
        Specified by:
        requiresLog in interface Perspective
        Returns:
        true if a log is needed by this perspective
      • getDefaultSettings

        public Defaults getDefaultSettings()
        Get the default settings for this perspective (or null if there are none)
        Specified by:
        getDefaultSettings in interface Perspective
        Returns:
        the default settings for this perspective, or null if the perspective does not have any settings
      • settingsChanged

        public void settingsChanged()
        Called when the user alters settings. The settings altered by the user are not necessarily ones related to this perspective
        Specified by:
        settingsChanged in interface Perspective
      • setLog

        public void setLog​(Logger log)
        Set a log to use (if required by the perspective)
        Specified by:
        setLog in interface Perspective
        Parameters:
        log - the graphical log to use
      • toString

        public java.lang.String toString()
        Returns the perspective's title
        Overrides:
        toString in class java.awt.Component
        Returns:
        the title of the perspective