jmencode
Class ImgPreviewPanel

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by jmencode.ImgPreviewPanel
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class ImgPreviewPanel
extends javax.swing.JPanel

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
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static int croph
           
static int cropw
           
static int cropx
           
static int cropy
           
(package private)  int h
           
private  double imageratio
           
(package private)  java.awt.Insets insets
           
private  java.awt.Point p1
           
private  java.awt.Point p2
           
private  double panelratio
           
 java.awt.image.BufferedImage preview
           
 boolean selectionenabled
           
(package private)  int w
           
private  int x
           
private  int x1
           
private  int x2
           
private  int y
           
private  int y1
           
private  int y2
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, 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
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
ImgPreviewPanel()
          Creates new form ImgPreviewPanel
 
Method Summary
 void doCropCalc()
          Calculates crop from current selection rect
 void doImageRescale()
          ensures that the image is displayed with the correct ratio as the internal frame is resized
private  void formAncestorResized(java.awt.event.HierarchyEvent evt)
           
private  void formMouseDragged(java.awt.event.MouseEvent evt)
           
private  void formMouseMoved(java.awt.event.MouseEvent evt)
           
private  void formMousePressed(java.awt.event.MouseEvent evt)
           
private  void formMouseReleased(java.awt.event.MouseEvent evt)
           
 java.awt.Point getPixelCoords(int x, int y)
          Gets the image pixel coords from the corresponding points in the preview panel, by applying the scaling value.
 double getPixelPanelScale()
          Gets panel coords to actual image pixel coords scale value.
 int getPrevHeight()
           
 int getPrevWidth()
           
private  void initComponents()
          This method is called from within the constructor to initialize the form.
 void loadImage(java.lang.String fileName)
          loads an image from file and puts it into mBufferedImage
static void main(java.lang.String[] args)
           
 void paintComponent(java.awt.Graphics g)
          custom paint method that ensures proper display ratio of images
 void saveImage(java.lang.String fileName)
          saves the current bufferedimage to a file
 void setCrop()
          Sets the video data crop values from the ones calculated from the preview image selection.
 void setRectfromCropSettings()
          Updates the crop rectangle used in the preview panel based on the current crop values.
 
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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, 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
 

Field Detail

preview

public java.awt.image.BufferedImage preview

x

private int x

y

private int y

x1

private int x1

y1

private int y1

x2

private int x2

y2

private int y2

p1

private java.awt.Point p1

p2

private java.awt.Point p2

imageratio

private double imageratio

panelratio

private double panelratio

cropw

public static int cropw

croph

public static int croph

cropx

public static int cropx

cropy

public static int cropy

selectionenabled

public boolean selectionenabled

w

int w

h

int h

insets

java.awt.Insets insets
Constructor Detail

ImgPreviewPanel

public ImgPreviewPanel()
Creates new form ImgPreviewPanel

Method Detail

loadImage

public void loadImage(java.lang.String fileName)
loads an image from file and puts it into mBufferedImage


paintComponent

public void paintComponent(java.awt.Graphics g)
custom paint method that ensures proper display ratio of images

Overrides:
paintComponent in class javax.swing.JComponent

doImageRescale

public void doImageRescale()
ensures that the image is displayed with the correct ratio as the internal frame is resized


setCrop

public void setCrop()
Sets the video data crop values from the ones calculated from the preview image selection.


doCropCalc

public void doCropCalc()
Calculates crop from current selection rect


setRectfromCropSettings

public void setRectfromCropSettings()
Updates the crop rectangle used in the preview panel based on the current crop values. This is called when detect crop is used and thereafter when the panel is resized.


getPixelPanelScale

public double getPixelPanelScale()
Gets panel coords to actual image pixel coords scale value. Returns the scaling value as a double.


getPixelCoords

public java.awt.Point getPixelCoords(int x,
                                     int y)
Gets the image pixel coords from the corresponding points in the preview panel, by applying the scaling value.


initComponents

private void initComponents()
This method is called from within the constructor to initialize the form. WARNING: Do NOT modify this code. The content of this method is always regenerated by the Form Editor.


formAncestorResized

private void formAncestorResized(java.awt.event.HierarchyEvent evt)

formMouseDragged

private void formMouseDragged(java.awt.event.MouseEvent evt)

formMouseMoved

private void formMouseMoved(java.awt.event.MouseEvent evt)

formMouseReleased

private void formMouseReleased(java.awt.event.MouseEvent evt)

formMousePressed

private void formMousePressed(java.awt.event.MouseEvent evt)

getPrevWidth

public int getPrevWidth()

getPrevHeight

public int getPrevHeight()

saveImage

public void saveImage(java.lang.String fileName)
saves the current bufferedimage to a file


main

public static void main(java.lang.String[] args)
Parameters:
args - the command line arguments