Package boofcv.gui
Class SelectAlgorithmAndInputPanel
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
boofcv.gui.SelectAlgorithmAndInputPanel
- All Implemented Interfaces:
VisualizeApp
,ActionListener
,ImageObserver
,MenuContainer
,Serializable
,EventListener
,Accessible
- Direct Known Subclasses:
SelectInputPanel
public abstract class SelectAlgorithmAndInputPanel
extends JPanel
implements ActionListener, VisualizeApp
Provides pull a menubar for selecting the input source and which algorithm to use
- See Also:
-
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
Modifier and TypeFieldDescriptionprotected String
protected BufferedImage
protected MediaManager
protected JCheckBox
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
-
Method Summary
Modifier and TypeMethodDescriptionvoid
void
addAlgorithm
(int indexFamily, String name, Object cookie) void
addToToolbar
(JComponent comp) Adds a new component into the toolbar.abstract void
changeInput
(String name, int index) A request to change the input image has been made.void
Grabs the currently selected algorithm, passes information to GUI for updating, toggles GUI being active/not.protected <T> T
getAlgorithmCookie
(int indexFamily) Returns the cookie associated with the specified algorithm family.void
loadInputData
(String fileName) Loads a standardized file for input referencesabstract void
refreshAll
(Object[] cookies) Provides the current state of all selected algorithms.void
removeFromToolbar
(JComponent comp) abstract void
setActiveAlgorithm
(int indexFamily, String name, Object cookie) A request has been made to change the processing algorithm.void
setBaseDirectory
(String baseDirectory) Sets the directory that relative references are relative toovoid
setInputImage
(BufferedImage image) Specifies an image which contains the original input image.void
setInputList
(List<PathLabel> inputRefs) Specifies a list of images to use as input and loads themvoid
setMainGUI
(Component gui) Used to add the main GUI to this panel.void
setMediaManager
(MediaManager manager) 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
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface boofcv.gui.VisualizeApp
getHasProcessedImage, loadConfigurationFile
-
Field Details
-
originalCheck
-
inputRefs
-
baseDirectory
-
inputImage
-
media
-
-
Constructor Details
-
SelectAlgorithmAndInputPanel
protected SelectAlgorithmAndInputPanel(int numAlgFamilies)
-
-
Method Details
-
loadInputData
Loads a standardized file for input references- Specified by:
loadInputData
in interfaceVisualizeApp
- Parameters:
fileName
- path to config file
-
setBaseDirectory
Sets the directory that relative references are relative too -
addToToolbar
Adds a new component into the toolbar.- Parameters:
comp
- The component being added
-
removeFromToolbar
-
setMainGUI
Used to add the main GUI to this panel. Must use this function. Algorithm change events will not be posted until this function has been set.- Parameters:
gui
- The main GUI being displayed.
-
setInputImage
Specifies an image which contains the original input image. After this has been called the view input image widget is activated and when selected this image will be displayed instead of the main GUI. This functionality is optional.- Parameters:
image
- Original input image.
-
setInputList
Specifies a list of images to use as input and loads them- Parameters:
inputRefs
- Name of input and where to get it
-
addAlgorithm
-
doRefreshAll
public void doRefreshAll()Grabs the currently selected algorithm, passes information to GUI for updating, toggles GUI being active/not. refreshAll() is called in a new thread. -
getAlgorithmCookie
protected <T> T getAlgorithmCookie(int indexFamily) Returns the cookie associated with the specified algorithm family. -
actionPerformed
- Specified by:
actionPerformed
in interfaceActionListener
-
setMediaManager
- Specified by:
setMediaManager
in interfaceVisualizeApp
-
refreshAll
Provides the current state of all selected algorithms.- Parameters:
cookies
- state of each selected algorithm.
-
setActiveAlgorithm
A request has been made to change the processing algorithm. NOT called from a GUI thread.- Parameters:
name
- Display name of the algorithm.cookie
- Reference to user defined data.
-
changeInput
A request to change the input image has been made. The input image's label and its index in the manager are returned.- Parameters:
name
- Display name of the image.index
- Which image in the list.
-