Class InstancesSortPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.visualization.instances.instancestable.InstancesSortPanel
-
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
public class InstancesSortPanel extends BasePanel
Panel that allows users to sort instances over an arbitrary number of columns.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
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 BaseButton
m_ButtonAdd
the button for a new sort definition.protected BaseButton
m_ButtonReset
the button for resetting the definitions.protected List<String>
m_ColumnNames
the column names.protected weka.core.Instances
m_Data
the instances that forms the basis for the sorting.protected HashSet<InstancesSortSetupListener>
m_InstancesSortSetupListeners
the listeners for changes in the setup.protected GridLayout
m_Layout
the gridlayout in use.protected BasePanel
m_PanelButtons
the panel for the buttons.protected BasePanel
m_PanelDefinitions
the panel holding the defintion panels.protected List<InstancesSortDefinitionPanel>
m_Panels
the list of definitions to use.-
Fields inherited from class adams.gui.core.BasePanel
m_FileChooser
-
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 InstancesSortPanel()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addDefinition()
Adds a new definition.void
addInstancesSortSetupListener(InstancesSortSetupListener l)
Adds the specified listener.protected void
finishInit()
Finishes the initialization.List<String>
getColumnNames()
Returns the column names in use.InstanceComparator
getComparator()
Returns a comparator for sorting the Instances.weka.core.Instances
getInstances()
Returns the Instances to use.protected void
initGUI()
Initializes the widgets.protected void
initialize()
Initializes the members.boolean
isFirstDefinition(InstancesSortDefinitionPanel panel)
Checks whether the panel is the first one.boolean
isLastDefinition(InstancesSortDefinitionPanel panel)
Checks whether the panel is the last one.boolean
isValidSetup()
Checks whether the setup is valid, i.e., no name used twice, at least one sorting definition.boolean
moveDefinition(InstancesSortDefinitionPanel panel, boolean up)
Moves the panel up/down.void
notifyInstancesSortSetupListeners(InstancesSortSetupEvent e)
Notifies all listeners with the specified event.void
removeDefinition(InstancesSortDefinitionPanel panel)
Removes the panel from the list of sort definitions.void
removeInstancesSortSetupListener(InstancesSortSetupListener l)
Removes the specified listener.void
reset()
Removes all sort definition panels.void
resetDefinitions()
Resets the definitions.boolean
setInstances(weka.core.Instances value)
Sets the Instances to use.protected void
update()
Updates the display.-
Methods inherited from class adams.gui.core.BasePanel
afterHide, afterShow, beforeHide, beforeShow, closeParent, getParentChild, getParentDialog, getParentFrame, getParentInternalFrame, getParentTitle, initFileChooser, main, printErrorMessage, printException, saveComponent, setEnabledCascade, setEnabledCascade, setParentTitle, setVisible
-
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, 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
-
m_Data
protected weka.core.Instances m_Data
the instances that forms the basis for the sorting.
-
m_Panels
protected List<InstancesSortDefinitionPanel> m_Panels
the list of definitions to use.
-
m_Layout
protected GridLayout m_Layout
the gridlayout in use.
-
m_PanelDefinitions
protected BasePanel m_PanelDefinitions
the panel holding the defintion panels.
-
m_PanelButtons
protected BasePanel m_PanelButtons
the panel for the buttons.
-
m_ButtonReset
protected BaseButton m_ButtonReset
the button for resetting the definitions.
-
m_ButtonAdd
protected BaseButton m_ButtonAdd
the button for a new sort definition.
-
m_InstancesSortSetupListeners
protected HashSet<InstancesSortSetupListener> m_InstancesSortSetupListeners
the listeners for changes in the setup.
-
-
Method Detail
-
initialize
protected void initialize()
Initializes the members.- Overrides:
initialize
in classBasePanel
-
finishInit
protected void finishInit()
Finishes the initialization.- Overrides:
finishInit
in classBasePanel
-
setInstances
public boolean setInstances(weka.core.Instances value)
Sets the Instances to use.- Parameters:
value
- the Instances to use- Returns:
- true if the panel was reset
-
getInstances
public weka.core.Instances getInstances()
Returns the Instances to use.- Returns:
- the Instances in use, null if none set
-
getColumnNames
public List<String> getColumnNames()
Returns the column names in use.- Returns:
- the column names
-
resetDefinitions
public void resetDefinitions()
Resets the definitions.
-
addDefinition
public void addDefinition()
Adds a new definition.
-
removeDefinition
public void removeDefinition(InstancesSortDefinitionPanel panel)
Removes the panel from the list of sort definitions.- Parameters:
panel
- the panel to remove
-
reset
public void reset()
Removes all sort definition panels.
-
isFirstDefinition
public boolean isFirstDefinition(InstancesSortDefinitionPanel panel)
Checks whether the panel is the first one.- Parameters:
panel
- the panel to check- Returns:
- true if the first one
-
isLastDefinition
public boolean isLastDefinition(InstancesSortDefinitionPanel panel)
Checks whether the panel is the last one.- Parameters:
panel
- the panel to check- Returns:
- true if the last one
-
moveDefinition
public boolean moveDefinition(InstancesSortDefinitionPanel panel, boolean up)
Moves the panel up/down.- Parameters:
panel
- the panel to moveup
- if true, gets moved up, otherwise down- Returns:
- true if successfully moved
-
update
protected void update()
Updates the display.
-
isValidSetup
public boolean isValidSetup()
Checks whether the setup is valid, i.e., no name used twice, at least one sorting definition.- Returns:
- true if valid
-
getComparator
public InstanceComparator getComparator()
Returns a comparator for sorting the Instances.- Returns:
- the comparator, null if not valid setup
-
addInstancesSortSetupListener
public void addInstancesSortSetupListener(InstancesSortSetupListener l)
Adds the specified listener.- Parameters:
l
- the listener to add
-
removeInstancesSortSetupListener
public void removeInstancesSortSetupListener(InstancesSortSetupListener l)
Removes the specified listener.- Parameters:
l
- the listener to remove
-
notifyInstancesSortSetupListeners
public void notifyInstancesSortSetupListeners(InstancesSortSetupEvent e)
Notifies all listeners with the specified event.- Parameters:
e
- the event to send
-
-