Package weka.gui.explorer
Class ExplorerExt
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- weka.gui.explorer.Explorer
-
- weka.gui.explorer.ExplorerExt
-
- All Implemented Interfaces:
adams.gui.core.MenuBarProvider
,adams.gui.sendto.SendToActionSupporter
,ImageObserver
,MenuContainer
,Serializable
,Accessible
public class ExplorerExt extends weka.gui.explorer.Explorer implements adams.gui.core.MenuBarProvider, adams.gui.sendto.SendToActionSupporter
An extended Explorer interface using menus instead of buttons, as well as remembering recent files.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class weka.gui.explorer.Explorer
weka.gui.explorer.Explorer.CapabilitiesFilterChangeEvent, weka.gui.explorer.Explorer.CapabilitiesFilterChangeListener, weka.gui.explorer.Explorer.ExplorerPanel, weka.gui.explorer.Explorer.LogHandler
-
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
Fields Modifier and Type Field Description protected adams.gui.core.BaseButton
m_ButtonEdit
the edit button of the preprocess panel.protected adams.gui.core.BaseButton
m_ButtonUndo
the undo button of the preprocess panel.protected File
m_CurrentFile
the current file.protected weka.gui.ConverterFileChooser
m_FileChooser
The file chooser for selecting data filesprotected JMenuBar
m_MenuBar
the menu bar, if used.protected JMenuItem
m_MenuItemEditData
the edit data menu item.protected JMenuItem
m_MenuItemEditUndo
the undo menu item.protected JMenuItem
m_MenuItemFileLoadClassifier
the load classifier menu item.protected JMenuItem
m_MenuItemFileLoadClusterer
the load clusterer menu item.protected JMenuItem
m_MenuItemFileSave
the save menu item.protected JMenuItem
m_MenuItemFileSaveAs
the save as menu item.protected JMenu
m_MenuItemLoadRecent
the "load recent" submenu.protected JMenuItem
m_MenuItemViewInstanceExplorer
the view instance explorer menu item.protected adams.gui.core.RecentFilesHandler<JMenu>
m_RecentFilesHandler
the recent files handler.protected adams.gui.core.TitleGenerator
m_TitleGenerator
for generating the title.static String
SESSION_FILE
the file to store the recent files in.-
Fields inherited from class weka.gui.explorer.Explorer
m_CapabilitiesFilterChangeListeners, m_LogPanel, m_Memory, m_Panels, m_PreprocessPanel, m_TabbedPane
-
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 ExplorerExt()
Default constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canEdit()
Checks whether editing the data is possible.boolean
canUndo()
Checks whether undo is possible.void
close()
Closes the dialog.void
edit()
Performs an undo.void
generate()
Pops up a dialog that allows the user to generate data.weka.gui.explorer.ClassifierPanel
getClassifyTab()
Returns the classify tab, if available.weka.gui.explorer.ClassifierPanel
getClusterTab()
Returns the cluster tab, if available.File
getCurrentFile()
Returns the current file.protected Integer
getDataHashcode()
Returns the hashcode of the current dataset.weka.gui.ConverterFileChooser
getFileChooser()
Returns the file chooser in use.JMenuBar
getMenuBar()
Creates a menu bar (singleton per panel object).Class[]
getSendToClasses()
Returns the classes that the supporter generates.Object
getSendToItem(Class[] cls)
Returns the object to send.String
getTitle()
Returns the base title in use by the title generator.adams.gui.core.TitleGenerator
getTitleGenerator()
Returns the title generator in use.boolean
hasClassifyTab()
Returns whether the classify tab is present.boolean
hasClusterTab()
Returns whether the cluster tab is present.boolean
hasSendToItem(Class[] cls)
Checks whether something to send is available.protected boolean
hideButtons(Container cont)
Hides the buttons of the preprocess panel.protected void
initGUI()
Initializes the widgets.protected void
initialize()
Initializes the members.boolean
isDataLoaded()
Checks whether data is currently loaded.void
loadClassifier()
Loads a classifier in the classify tab.void
loadClusterer()
Loads a clusterer in the cluster tab.void
loadFromDatabase()
Lets the user load data from a database.void
loadFromURL()
Lets the user load data from a URL.static void
main(String[] args)
Starts the explorer environment.void
open()
Lets the user choose a file.void
open(File file)
For opening an external file.void
openRecent(adams.gui.event.RecentItemEvent<JMenu,File> e)
For opening a recently used file.static void
runExplorer(String[] args)
Runs an explorer instance.void
save()
Allows the user to save the file.void
saveAs()
Allows the user to save the file.protected void
setCurrentFile(File value)
Only updates the current file member, does not load it.protected void
setParentTitle(String value)
Sets the new title for the parent.void
setTitle(String value)
Sets the base title to use for the title generator.void
showInstanceExplorer()
Displays the data in the Instance Explorer.void
undo()
Performs an undo.protected void
update()
Updates title and menu items.protected void
updateMenu()
updates the enabled state of the menu items.protected void
updateTitle()
Updates the title of the dialog.-
Methods inherited from class weka.gui.explorer.Explorer
addCapabilitiesFilterListener, getPanels, getPreprocessPanel, getTabbedPane, notifyCapabilitiesFilterListener, removeCapabilitiesFilterListener
-
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, getPreferredSize, 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, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, 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
-
-
-
-
Field Detail
-
SESSION_FILE
public static final String SESSION_FILE
the file to store the recent files in.- See Also:
- Constant Field Values
-
m_MenuBar
protected JMenuBar m_MenuBar
the menu bar, if used.
-
m_MenuItemLoadRecent
protected JMenu m_MenuItemLoadRecent
the "load recent" submenu.
-
m_RecentFilesHandler
protected adams.gui.core.RecentFilesHandler<JMenu> m_RecentFilesHandler
the recent files handler.
-
m_MenuItemFileSave
protected JMenuItem m_MenuItemFileSave
the save menu item.
-
m_MenuItemFileSaveAs
protected JMenuItem m_MenuItemFileSaveAs
the save as menu item.
-
m_MenuItemFileLoadClassifier
protected JMenuItem m_MenuItemFileLoadClassifier
the load classifier menu item.
-
m_MenuItemFileLoadClusterer
protected JMenuItem m_MenuItemFileLoadClusterer
the load clusterer menu item.
-
m_MenuItemEditUndo
protected JMenuItem m_MenuItemEditUndo
the undo menu item.
-
m_MenuItemEditData
protected JMenuItem m_MenuItemEditData
the edit data menu item.
-
m_MenuItemViewInstanceExplorer
protected JMenuItem m_MenuItemViewInstanceExplorer
the view instance explorer menu item.
-
m_ButtonUndo
protected adams.gui.core.BaseButton m_ButtonUndo
the undo button of the preprocess panel.
-
m_ButtonEdit
protected adams.gui.core.BaseButton m_ButtonEdit
the edit button of the preprocess panel.
-
m_FileChooser
protected weka.gui.ConverterFileChooser m_FileChooser
The file chooser for selecting data files
-
m_CurrentFile
protected File m_CurrentFile
the current file.
-
m_TitleGenerator
protected adams.gui.core.TitleGenerator m_TitleGenerator
for generating the title.
-
-
Method Detail
-
initialize
protected void initialize()
Initializes the members.
-
initGUI
protected void initGUI()
Initializes the widgets.
-
hideButtons
protected boolean hideButtons(Container cont)
Hides the buttons of the preprocess panel.- Parameters:
cont
- the container to search- Returns:
- true if hidden
-
getMenuBar
public JMenuBar getMenuBar()
Creates a menu bar (singleton per panel object). Can be used in frames.- Specified by:
getMenuBar
in interfaceadams.gui.core.MenuBarProvider
- Returns:
- the menu bar
-
update
protected void update()
Updates title and menu items.
-
getTitleGenerator
public adams.gui.core.TitleGenerator getTitleGenerator()
Returns the title generator in use.- Returns:
- the generator
-
updateTitle
protected void updateTitle()
Updates the title of the dialog.
-
updateMenu
protected void updateMenu()
updates the enabled state of the menu items.
-
getDataHashcode
protected Integer getDataHashcode()
Returns the hashcode of the current dataset.- Returns:
- the hashcode, null if no data loaded
-
open
public void open()
Lets the user choose a file.
-
open
public void open(File file)
For opening an external file.- Parameters:
file
- the file to open
-
openRecent
public void openRecent(adams.gui.event.RecentItemEvent<JMenu,File> e)
For opening a recently used file.- Parameters:
e
- the event
-
loadFromDatabase
public void loadFromDatabase()
Lets the user load data from a database.
-
loadFromURL
public void loadFromURL()
Lets the user load data from a URL.
-
generate
public void generate()
Pops up a dialog that allows the user to generate data.
-
save
public void save()
Allows the user to save the file. Prompts user with dialog if no filename set currently.
-
saveAs
public void saveAs()
Allows the user to save the file. Prompts user with dialog.
-
getClassifyTab
public weka.gui.explorer.ClassifierPanel getClassifyTab()
Returns the classify tab, if available.- Returns:
- the tab, null if not available
-
hasClassifyTab
public boolean hasClassifyTab()
Returns whether the classify tab is present.- Returns:
- true if available
-
loadClassifier
public void loadClassifier()
Loads a classifier in the classify tab.
-
getClusterTab
public weka.gui.explorer.ClassifierPanel getClusterTab()
Returns the cluster tab, if available.- Returns:
- the tab, null if not available
-
hasClusterTab
public boolean hasClusterTab()
Returns whether the cluster tab is present.- Returns:
- true if available
-
loadClusterer
public void loadClusterer()
Loads a clusterer in the cluster tab.
-
close
public void close()
Closes the dialog.
-
isDataLoaded
public boolean isDataLoaded()
Checks whether data is currently loaded.- Returns:
- true if data loaded
-
canUndo
public boolean canUndo()
Checks whether undo is possible.- Returns:
- true if undo is possible
-
undo
public void undo()
Performs an undo.
-
canEdit
public boolean canEdit()
Checks whether editing the data is possible.- Returns:
- true if edit is possible
-
edit
public void edit()
Performs an undo.
-
showInstanceExplorer
public void showInstanceExplorer()
Displays the data in the Instance Explorer.
-
setTitle
public void setTitle(String value)
Sets the base title to use for the title generator.- Parameters:
value
- the title to use- See Also:
m_TitleGenerator
-
getTitle
public String getTitle()
Returns the base title in use by the title generator.- Returns:
- the title in use
- See Also:
m_TitleGenerator
-
setParentTitle
protected void setParentTitle(String value)
Sets the new title for the parent.- Parameters:
value
- the title to use
-
setCurrentFile
protected void setCurrentFile(File value)
Only updates the current file member, does not load it.- Parameters:
value
- the current file
-
getCurrentFile
public File getCurrentFile()
Returns the current file.- Returns:
- the current file, can be null
-
getFileChooser
public weka.gui.ConverterFileChooser getFileChooser()
Returns the file chooser in use.- Returns:
- the file chooser
-
getSendToClasses
public Class[] getSendToClasses()
Returns the classes that the supporter generates.- Specified by:
getSendToClasses
in interfaceadams.gui.sendto.SendToActionSupporter
- Returns:
- the classes
-
hasSendToItem
public boolean hasSendToItem(Class[] cls)
Checks whether something to send is available.- Specified by:
hasSendToItem
in interfaceadams.gui.sendto.SendToActionSupporter
- Parameters:
cls
- the classes to retrieve the item for- Returns:
- true if an object is available for sending
-
getSendToItem
public Object getSendToItem(Class[] cls)
Returns the object to send.- Specified by:
getSendToItem
in interfaceadams.gui.sendto.SendToActionSupporter
- Parameters:
cls
- the classes to retrieve the item for- Returns:
- the item to send
-
runExplorer
public static void runExplorer(String[] args)
Runs an explorer instance. Also interpretes the "-env classname" parameter.- Parameters:
args
- the command-line arguments
-
main
public static void main(String[] args)
Starts the explorer environment.- Parameters:
args
- the command-line arguments: [-env classname] [initial dataset]
-
-