Copyright 2012-04-26 Werner Randelshofer

org.monte.media.gui
Class JTimelineEditor

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 org.monte.media.gui.JTimelineEditor
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class JTimelineEditor
extends javax.swing.JPanel

JTimelineEditor visualizes the movie timeline, an insertion point and the start and end position of a movie clip.

The insertion point (playhead) also shows the current time of the movie.

If a movie has n time steps, then there are n+1 insertion points.

Version:
1.0 2011-09-01 Created.
Author:
Werner Randelshofer
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
 
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
JTimelineEditor()
          Creates new form JTimelineEditor
 
Method Summary
protected  javax.swing.border.Border getBackgroundBorder()
           
protected  java.awt.Rectangle getInsertionPointBounds()
           
protected  javax.swing.Icon getInsertionPointIcon(boolean isFocused)
           
 Movie getMovie()
           
protected  java.awt.Rectangle getSelectionEndBounds()
           
protected  javax.swing.Icon getSelectionEndIcon(boolean isFocused)
           
protected  java.awt.Rectangle getSelectionStartBounds()
           
protected  javax.swing.Icon getSelectionStartIcon(boolean isFocused)
           
protected  java.lang.String getStyleSuffix()
           
protected  javax.swing.border.Border getThumbBorder(boolean isOnActiveWindow)
           
 int getTimeTrack()
          Returns the track number used as a time base.
protected  javax.swing.border.Border getTrackBorder(boolean isOnActiveWindow)
           
protected  java.awt.Rectangle getTrackBounds()
           
protected  void paintComponent(java.awt.Graphics gr)
           
protected  void paintComponentOld(java.awt.Graphics gr)
           
protected  Rational posToTime(int pos)
           
protected  javax.swing.border.Border[] readBorders(java.lang.String resource, int count, boolean isHorizontal, java.awt.Insets insets)
           
protected  javax.swing.Icon[] readIcons(java.lang.String resource, int count, boolean isHorizontal, java.awt.Point offset)
           
 void setMovie(Movie newValue)
           
 void setTimeTrack(int timeTrack)
          Sets the track number used as a time base.
protected  int timeToPos(Rational time)
           
 
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, transferFocusBackward, 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, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

JTimelineEditor

public JTimelineEditor()
Creates new form JTimelineEditor

Method Detail

getMovie

public Movie getMovie()

setMovie

public void setMovie(Movie newValue)

paintComponent

protected void paintComponent(java.awt.Graphics gr)
Overrides:
paintComponent in class javax.swing.JComponent

paintComponentOld

protected void paintComponentOld(java.awt.Graphics gr)

timeToPos

protected int timeToPos(Rational time)

posToTime

protected Rational posToTime(int pos)

getSelectionStartBounds

protected java.awt.Rectangle getSelectionStartBounds()

getSelectionEndBounds

protected java.awt.Rectangle getSelectionEndBounds()

getInsertionPointBounds

protected java.awt.Rectangle getInsertionPointBounds()

getTrackBounds

protected java.awt.Rectangle getTrackBounds()

getBackgroundBorder

protected javax.swing.border.Border getBackgroundBorder()

getTrackBorder

protected javax.swing.border.Border getTrackBorder(boolean isOnActiveWindow)

getThumbBorder

protected javax.swing.border.Border getThumbBorder(boolean isOnActiveWindow)

getInsertionPointIcon

protected javax.swing.Icon getInsertionPointIcon(boolean isFocused)

getSelectionStartIcon

protected javax.swing.Icon getSelectionStartIcon(boolean isFocused)

getSelectionEndIcon

protected javax.swing.Icon getSelectionEndIcon(boolean isFocused)

readBorders

protected javax.swing.border.Border[] readBorders(java.lang.String resource,
                                                  int count,
                                                  boolean isHorizontal,
                                                  java.awt.Insets insets)

readIcons

protected javax.swing.Icon[] readIcons(java.lang.String resource,
                                       int count,
                                       boolean isHorizontal,
                                       java.awt.Point offset)

getStyleSuffix

protected java.lang.String getStyleSuffix()

getTimeTrack

public int getTimeTrack()
Returns the track number used as a time base. If this value is -1, then no track is used as a time base.

Returns:
The track number or -1.

setTimeTrack

public void setTimeTrack(int timeTrack)
Sets the track number used as a time base.

Parameters:
timeTrack - Track number or -1.

Copyright 2012-04-26 Werner Randelshofer