Package weka.gui

# Interface GUIApplication

All Known Implementing Classes:
  `AbstractGUIApplication`, `KnowledgeFlowApp`, `WorkbenchApp`

public interface GUIApplication
Interface to a GUIApplication that can have multiple "perspectives" and provide application-level and perspective-level settings. Implementations would typically extend `AbstractGUIApplication`.

Version:
  $Revision: $
Author:
  Mark Hall (mhall{[at]}pentaho{[dot]}com)

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Defaults`
  `getApplicationDefaults()`
  Get the default values of settings for this application
  `String`
  `getApplicationID()`
  Get the ID of this application - any string unique to this application can be used
  `String`
  `getApplicationName()`
  Get the name of this application
  `Settings`
  `getApplicationSettings()`
  Get the current settings for this application
  `Perspective`
  `getMainPerspective()`
  Get the main `Perspective` of this application - i.e.
  `PerspectiveManager`
  `getPerspectiveManager()`
  Get the `PerspectiveManager` in use by this application
  `void`
  `hidePerspectivesToolBar()`
  Hide the perspectives toolbar
  `boolean`
  `isPerspectivesToolBarVisible()`
  Returns true if the perspectives toolbar is visible at the current time
  `void`
  `revalidate()`
  Force a re-validation and repaint() of the application
  `void`
  `settingsChanged()`
  Called when settings are changed by the user
  `void`
  `showErrorDialog(Exception cause)`
  Popup a dialog displaying the supplied Exception
  `void`
  `showInfoDialog(Object information, String title, boolean isWarning)`
  Popup an information dialog
  `void`
  `showMenuBar(JFrame topLevelAncestor)`
  Show the menu bar for the application
  `void`
  `showPerspectivesToolBar()`
  Show the perspectives toolbar

- ## Method Details

  - ### getApplicationName

    String getApplicationName()
    Get the name of this application
    Returns:
      the name of this application

  - ### getApplicationID

    String getApplicationID()
    Get the ID of this application - any string unique to this application can be used
    Returns:
      the ID of this application

  - ### getPerspectiveManager

    PerspectiveManager getPerspectiveManager()
    Get the `PerspectiveManager` in use by this application
    Returns:
      the `Perspective Manager`

  - ### getMainPerspective

    Perspective getMainPerspective()
    Get the main `Perspective` of this application - i.e. this is the panel, tab, screen etc. that is visible first at start-up.
    Returns:
      the main perspective

  - ### isPerspectivesToolBarVisible

    boolean isPerspectivesToolBarVisible()
    Returns true if the perspectives toolbar is visible at the current time
    Returns:
      true if the perspectives toolbar is visible

  - ### hidePerspectivesToolBar

    void hidePerspectivesToolBar()
    Hide the perspectives toolbar

  - ### showPerspectivesToolBar

    void showPerspectivesToolBar()
    Show the perspectives toolbar

  - ### showErrorDialog

    void showErrorDialog(Exception cause)
    Popup a dialog displaying the supplied Exception
    Parameters:
      `cause` - the exception to show

  - ### showInfoDialog

    void showInfoDialog(Object information, String title, boolean isWarning)
    Popup an information dialog
    Parameters:
      `information` - the "information" (typically some text) to display
      `title` - the title for the dialog
      `isWarning` - true if this is a warning rather than just information

  - ### getApplicationDefaults

    Defaults getApplicationDefaults()
    Get the default values of settings for this application
    Returns:
      the default values of the settings for this applications

  - ### getApplicationSettings

    Settings getApplicationSettings()
    Get the current settings for this application
    Returns:
      the current settings for this application

  - ### settingsChanged

    void settingsChanged()
    Called when settings are changed by the user

  - ### revalidate

    void revalidate()
    Force a re-validation and repaint() of the application

  - ### showMenuBar

    void showMenuBar(JFrame topLevelAncestor)
    Show the menu bar for the application
    Parameters:
      `topLevelAncestor` - the JFrame that contains the application