Package ca.cgjennings.imageio
Class IIOWritePanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- ca.cgjennings.imageio.IIOWritePanel
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
public class IIOWritePanel extends javax.swing.JPanel
A panel that can be used to configure anImageWriteParam
's compression method, compression quality, and progressive scan options.- Since:
- 3.0
- Author:
- Chris Jennings
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
PARAMETERS_PROPERTY
A property fired when the image write parameters change.-
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
-
-
Constructor Summary
Constructors Constructor Description IIOWritePanel()
Creates a new panel for configuring image writing options.IIOWritePanel(boolean fullComplexityMode)
Creates a new panel for configuring image writing options.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
configureWriter(SimpleImageWriter iw)
Use this panel to configure the features of an image writer.java.lang.String
getCompressionMethod()
Returns the name of the selected compression method.java.lang.String[]
getCompressionMethods()
Returns a (possible empty) array of the names of the available compression methods.float
getCompressionQuality()
Returns the current compression quality as a value from 0 to 1.javax.imageio.ImageWriteParam
getImageWriteParam()
Returns the edited write param.boolean
isCompressionScanEnabled()
Returnstrue
if the compression option is selcted.boolean
isProgressiveScanEnabled()
Returnstrue
if the progressive scan option is selected.void
loadDefaults(java.lang.String format)
void
saveDefaults(java.lang.String format)
void
setCompressionEnabled(boolean enable)
If the compression option can be modified, sets the compression option.void
setCompressionMethod(java.lang.String type)
If multiple compression methods are supported, sets the compression method.void
setCompressionQuality(float quality)
If compression is supported and the quality can be modified, sets the compression quality.void
setImageWriteParam(javax.imageio.ImageWriteParam iwp)
Sets the write param instance to be edited by this panel.void
setProgressiveScanEnabled(boolean enable)
If the progressive scan option can be modified, sets the progressive scan option.-
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
-
PARAMETERS_PROPERTY
public static final java.lang.String PARAMETERS_PROPERTY
A property fired when the image write parameters change.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
IIOWritePanel
public IIOWritePanel()
Creates a new panel for configuring image writing options. Options that allow choosing a compression mode will be hidden.
-
IIOWritePanel
public IIOWritePanel(boolean fullComplexityMode)
Creates a new panel for configuring image writing options.- Parameters:
fullComplexityMode
- iftrue
, compression mode options will be shown
-
-
Method Detail
-
setImageWriteParam
public void setImageWriteParam(javax.imageio.ImageWriteParam iwp)
Sets the write param instance to be edited by this panel.- Parameters:
iwp
- the write param to edit
-
getImageWriteParam
public javax.imageio.ImageWriteParam getImageWriteParam()
Returns the edited write param.- Returns:
- the write param instance edited by the panel
-
setCompressionQuality
public void setCompressionQuality(float quality)
If compression is supported and the quality can be modified, sets the compression quality.- Parameters:
quality
- the quality value to set, from 0 to 1 inclusive
-
getCompressionQuality
public float getCompressionQuality()
Returns the current compression quality as a value from 0 to 1.- Returns:
- the compression quality
-
setProgressiveScanEnabled
public void setProgressiveScanEnabled(boolean enable)
If the progressive scan option can be modified, sets the progressive scan option.- Parameters:
enable
- the progressive scan option
-
isProgressiveScanEnabled
public boolean isProgressiveScanEnabled()
Returnstrue
if the progressive scan option is selected.- Returns:
- whether progressive scan is enabled
-
setCompressionEnabled
public void setCompressionEnabled(boolean enable)
If the compression option can be modified, sets the compression option.- Parameters:
enable
- the compresssion option
-
isCompressionScanEnabled
public boolean isCompressionScanEnabled()
Returnstrue
if the compression option is selcted.- Returns:
- whether compression is enabled
-
setCompressionMethod
public void setCompressionMethod(java.lang.String type)
If multiple compression methods are supported, sets the compression method. If the name is invalid, selects a default method.- Parameters:
type
- the name of the method
-
getCompressionMethod
public java.lang.String getCompressionMethod()
Returns the name of the selected compression method.- Returns:
- the selected compression method
-
getCompressionMethods
public java.lang.String[] getCompressionMethods()
Returns a (possible empty) array of the names of the available compression methods.- Returns:
- the supported compression methods
-
configureWriter
public void configureWriter(SimpleImageWriter iw)
Use this panel to configure the features of an image writer. The writersIOWriteParam
will replace the one currently being edited, if any.- Parameters:
iw
- the writer to configure
-
loadDefaults
public void loadDefaults(java.lang.String format)
-
saveDefaults
public void saveDefaults(java.lang.String format)
-
-