Package adams.gui.visualization.image
Class ImageMultiPagePane
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.core.MultiPagePane
-
- adams.gui.visualization.image.ImageMultiPagePane
-
- All Implemented Interfaces:
CleanUpHandler,UISettingsSupporter,ImageObserver,MenuContainer,Serializable,Accessible
public class ImageMultiPagePane extends MultiPagePane
SpecializedMultiPagePanefor managing images.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class adams.gui.core.MultiPagePane
MultiPagePane.DetachablePage, MultiPagePane.PageCloseApprover, MultiPagePane.PageContainer, MultiPagePane.PageUndo, MultiPagePane.PopupCustomizer, MultiPagePane.TitleRenderer, MultiPagePane.ToolTipCustomizer
-
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 ImageViewerPanelm_Ownerthe owner.-
Fields inherited from class adams.gui.core.MultiPagePane
m_ButtonAction, m_ButtonDown, m_ButtonRemove, m_ButtonRemoveAll, m_ButtonUndo, m_ButtonUp, m_ChangeListeners, m_IgnoreUpdates, m_LeftPanel, m_MaxPageCloseUndo, m_PageCloseApprover, m_PageList, m_PageListModel, m_PageUndoList, m_PanelContent, m_PanelListButtons, m_PopupCustomizer, m_ReadOnly, m_SkipPageUndo, m_SplitPane, m_ToolTipCustomizer
-
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 ImageMultiPagePane(ImageViewerPanel owner)Initializes the tabbed pane.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancheckForModified(ImagePanel panel)Returns whether we can proceed with the operation or not, depending on whether the user saved the flow or discarded the changes.ImagePanel[]getAllPanels()Returns all the image panels.FilegetCurrentFile()Returns the current filename.BufferedImagegetCurrentImage()Returns the underlying image.ImagePanelgetCurrentPanel()Returns the image panel in the currently selected tab.FilegetFileAt(int index)Returns the current filename.BufferedImagegetImageAt(int index)Returns the underlying image.ImageViewerPanelgetOwner()Returns the owner.ImagePanelgetPanelAt(int index)Returns the image panel of the specified tab.booleanload(File file)Loads the specified file in a new panel.booleanload(File file, ImageReader reader)Loads the specified file in a new panel.voidupdateCurrentTabTitle()Updates the title of the current tab, takes modified state into account.voidupdateTabTitle(int index)Updates the title of the specified tab, takes modified state into account.voidupdateTabTitles()Updates the title of all tabs, takes modified state into account.-
Methods inherited from class adams.gui.core.MultiPagePane
addAction, addAction, addChangeListener, addPage, addPage, addPage, addPage, addPageUndo, addRemoveItemsListener, canMoveDown, canMoveUp, canRemovePageAt, canRemoveSelectedPages, canUndoPageClose, checkedRemoveAllPages, checkedRemovePageAt, checkedRemoveSelectedPage, checkedRemoveSelectedPages, cleanUp, clearPageUndo, clearUISettingsParameters, createPopup, finishInit, generateToolTip, getDetachablePageAt, getDividerLocation, getIconAt, getMaxPageCloseUndo, getPageAt, getPageCloseApprover, getPageContainerAt, getPageCount, getPageUndoList, getPopupCustomizer, getSelectedDetachablePage, getSelectedIcon, getSelectedIndex, getSelectedIndices, getSelectedPage, getSelectedPageContainer, getSelectedTitle, getTitleAt, getTitleRenderer, getToolTipCustomizer, indexOfPage, indexOfPage, initGUI, initialize, isPageClosingApproved, isPageClosingApproved, isReadOnly, moveBottom, moveDown, moveTop, moveUp, newRenderer, notifyChangeListeners, processListKey, removeAllPages, removeChangeListener, removePageAt, removeRemoveItemsListener, removeSelectedPage, removeSelectedPages, setDividerLocation, setIconAt, setMaxPageCloseUndo, setPageAt, setPageAt, setPageCloseApprover, setPopupCustomizer, setReadOnly, setSelectedIndex, setSelectedIndices, setSelectedPage, setTitleAt, setTitleRenderer, setToolTipCustomizer, setUISettingsParameters, showPopup, undoPageClose, update, updateButtons, updateTitle
-
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_Owner
protected ImageViewerPanel m_Owner
the owner.
-
-
Constructor Detail
-
ImageMultiPagePane
public ImageMultiPagePane(ImageViewerPanel owner)
Initializes the tabbed pane.- Parameters:
owner- the viewer this pane belongs to
-
-
Method Detail
-
getOwner
public ImageViewerPanel getOwner()
Returns the owner.- Returns:
- the owner
-
getCurrentPanel
public ImagePanel getCurrentPanel()
Returns the image panel in the currently selected tab.- Returns:
- the image panel, null if none available
-
getPanelAt
public ImagePanel getPanelAt(int index)
Returns the image panel of the specified tab.- Parameters:
index- the tab index- Returns:
- the image panel, null if none available
-
getAllPanels
public ImagePanel[] getAllPanels()
Returns all the image panels.- Returns:
- the image panels
-
getCurrentImage
public BufferedImage getCurrentImage()
Returns the underlying image.- Returns:
- the current image, can be null
-
getImageAt
public BufferedImage getImageAt(int index)
Returns the underlying image.- Parameters:
index- the tab index- Returns:
- the current image, can be null
-
getCurrentFile
public File getCurrentFile()
Returns the current filename.- Returns:
- the current filename, can be null
-
getFileAt
public File getFileAt(int index)
Returns the current filename.- Parameters:
index- the tab index- Returns:
- the current filename, can be null
-
checkForModified
protected boolean checkForModified(ImagePanel panel)
Returns whether we can proceed with the operation or not, depending on whether the user saved the flow or discarded the changes.- Parameters:
panel- the panel to check- Returns:
- true if safe to proceed
-
updateTabTitles
public void updateTabTitles()
Updates the title of all tabs, takes modified state into account.
-
updateCurrentTabTitle
public void updateCurrentTabTitle()
Updates the title of the current tab, takes modified state into account.
-
updateTabTitle
public void updateTabTitle(int index)
Updates the title of the specified tab, takes modified state into account.- Parameters:
index- the index of the tab
-
load
public boolean load(File file)
Loads the specified file in a new panel.- Parameters:
file- the file to load- Returns:
- true if successfully loaded
-
load
public boolean load(File file, ImageReader reader)
Loads the specified file in a new panel.- Parameters:
file- the file to loadreader- the reader to use, null for auto-detection- Returns:
- true if successfully loaded
-
-