Class ViewJFrameAnimate

  • All Implemented Interfaces:
    ViewImageUpdateInterface, java.awt.event.ActionListener, java.awt.event.ComponentListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.ChangeListener, javax.swing.RootPaneContainer, javax.swing.WindowConstants

    public class ViewJFrameAnimate
    extends ViewJFrameBase
    implements javax.swing.event.ChangeListener
    This class produces a frame surrounding an image whose slices are animated. Tool bar buttons are present for continuous reverse, reverse, continuous forward, forward, pause, stop, magnify, unmagnify, for generating a dialog to set brightness and contrast, and for deleting the current slice from the animation. In continuous forward the images are continuously displayed from start to end over and over again until pause or stop are hit. If pause is hit, the display may be resumed by repushing the continuous forward button. In forward each image is only displayed once from start to finish unless pause or stop are hit. If pause is hit, the display may be resumed by repushing the forward button. Continuous reverse and reverse work the same way as continuous forward and forward except for a reversal in direction. Users can instantly jump from one mode to another without hitting stop ro pause - from continuous forward to continuous reverse for example. Magnify will double the present magnification and Unmagnify will half the present magnification. Magnifications are only powers of 2. However, the scale function can be set to any value in the dialog box called up by JDialogAnimate. This scale function will do a slice by slice bilinear of bspline interpolation to create the initial slices on which the power of 2 magnification may be changed.

    The dialog box for brightness and contrast has brightness and contrast sliders, an Apply button, and a Cancel button. The brightness will add an offset ranging from -255 to 255 to every scaled red, green, and blue in the image. Contrast will multiply every original red, green, and blue value by a floating point number ranging from 0.1 to 10.0. Before apply is pressed, slider changes are only temporarily made to the currently displayed slice. If apply is pressed, these changes are permanently made to all slices. Pressing cancel keeps all slices in their original state.

    Images may also be viewed in a steady state mode. The slider is used to control the number of the slice shown when animation is not occurring. A text field for the desired frames per second is present. The initial default value is 30 per second. This is followed by a text field for the actual frames per second.

    The file menu only has 2 simple functions - a save as function and a close animate structure function. The options menu has a view z slice numbers for use for 4D images.

    ViewJFrameAnimate is called in ViewJFrameImage.

    An animation of a blended image A and image B can be performed. However, all the blending parameters must be set before the animation structure is created. One parameter is alphaBlend for all images. For color only are also the parameters: RaOn, GaOn, BaOn, RbOn, GbOn, BbOn, RGBTA, and RGBTB. Changes in these parmeters that are made after the animation structure is created will not be propagated into the animation structure.

    If 4D images are animated, the animation is performed on the fourth time dimension with all the z slices for a given time present in a given frame. The number of rows or columns for the z slices, whether or not a border frame is present around z slices, and the border frame color are all selected in JDialogAnimate before ViewJFrameAnimate is invoked. Note that JDialogAnimate converts all 4D images to 3D images so ViewJFrameAnimate actually is always passed 3D images.

    Version:
    1.0
    See Also:
    Serialized Form
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      (package private) class  ViewJFrameAnimate.CBackForward
      continuous backward and forward - continuously cycles from first to last slice unless a pause suspends the loop in 5 millisecond sleep functions or a stop causes the loop to exit.
      (package private) class  ViewJFrameAnimate.cbfStop
      Continuous back and forth has been selected.
      (package private) class  ViewJFrameAnimate.CForward
      continuous forward continuously cycles from first to last slice unless a pause suspends the loop in 5 millisecond sleep functions or a stop causes the loop to exit.
      (package private) class  ViewJFrameAnimate.cfStop
      Threads are used because they are required by the sleep function. cf , fStop, crStop, and rStop set stop to true and keep sleeping for 5 millisecond intervals until the other 3 animation modes have ended.
      (package private) class  ViewJFrameAnimate.CReverse
      continuous reverse continuously cycles from last to frist slice unless a pause suspends the loop in 5 millisecond sleep functions or a stop causes the loop to exit.
      (package private) class  ViewJFrameAnimate.crStop
      Continuous reverse has been selected.
      (package private) class  ViewJFrameAnimate.Forward
      forward cycles a single time from first to last slice unless a pause suspends the loop in 5 millisecond sleep functions or a stop causes the loop to exit.
      (package private) class  ViewJFrameAnimate.fStop
      Forward has been selected.
      (package private) class  ViewJFrameAnimate.Reverse
      reverse cycles a single time from last to first slice unless a pause suspends the loop in 5 millisecond sleep functions or a stop causes the loop to exit.
      (package private) class  ViewJFrameAnimate.rStop
      Reverse has been selected.
      • Nested classes/interfaces inherited from class javax.swing.JFrame

        javax.swing.JFrame.AccessibleJFrame
      • Nested classes/interfaces inherited from class java.awt.Frame

        java.awt.Frame.AccessibleAWTFrame
      • Nested classes/interfaces inherited from class java.awt.Window

        java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
      • 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void actionPerformed​(java.awt.event.ActionEvent event)
      Calls various methods depending on the action.
      private void addControlPanel​(java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)
      Method that adds components to the control paenl.
      private javax.swing.JToolBar buildAnimateToolBar​(java.awt.event.ActionListener al)
      Method to build the toolbar for the Animate frame.
      private void buildControlPanel()
      Panel that sets the at rest frame number and the desired frames per second and reports the actual frames per second.
      private void buildMenu()
      This method builds a menu which contains the options Save image as and Close Animate.
      private void buildScrollPane()
      Make a scroll frame and puts an image component into it.
      void cancelBrightness()
      Resets current slice's brightness and contrast to original.
      void componentResized​(java.awt.event.ComponentEvent event)
      Resizes frame and all components.
      private javax.swing.JLabel createLabel​(java.lang.String title)
      Helper method to create a label with the proper font and font color.
      void dispose()
      Disposes of components and frame.
      ViewControlsImage getControls()
      Get control widgets for frame.
      ModelImage getImageA()
      Accessor that returns the reference to imageA.
      ModelImage getImageB()
      Accessor that returns the reference to imageB.
      private javax.swing.JButton makeSeparator()
      Makes a separator for the use in the toolbars.
      void removeControls()
      Does nothing.
      void setActiveImage​(int active)
      Does nothing.
      void setAlphaBlend​(int value)
      Does nothing.
      void setBrightness​(int brightness, float contrast)
      Sets the brightness and contrast of the component image.
      void setControls()
      Does nothing.
      void setDisposeImages​(boolean doDispose)
      DOCUMENT ME!
      void setEnabled​(boolean flag)
      Does nothing.
      void setFramesPerSecond​(int fps)
      Sets the slider value (for invoking save image from dialog).
      void setImageB​(ModelImage _imageB)
      Does nothing.
      void setPaintBitmapSwitch​(boolean paintBitmapSwitch)
      Does nothing.
      void setRGBTA​(ModelRGB RGBT)
      Sets the RGB LUT table for ARGB image A.
      void setRGBTB​(ModelRGB RGBT)
      Sets the RGB LUT table for ARGB image B.
      void setSlice​(int slice)
      Sets the slice to be displayed and updates title frame.
      void setTimeSlice​(int slice)
      Does nothing.
      void setTitle()
      Set the title of the frame with the image name and magnification.
      void stateChanged​(javax.swing.event.ChangeEvent e)
      Sets values based on knob along slider.
      protected boolean testParameter​(java.lang.String str, double minValue, double maxValue)
      Tests that the entered parameter is in range.
      void updateFrame​(float sX, float sY)
      Does nothing.
      boolean updateImageExtents()
      Does nothing.
      boolean updateImages()
      Does nothing.
      boolean updateImages​(boolean forceShow)
      This methods calls the componentImage's update method to redraw the screen.
      boolean updateImages​(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow, int interpMode)
      Does nothing.
      void windowActivated​(java.awt.event.WindowEvent event)
      Does nothing.
      void windowClosed​(java.awt.event.WindowEvent event)
      Does nothing.
      void windowClosing​(java.awt.event.WindowEvent event)
      Stops thread, calls close.
      void windowDeactivated​(java.awt.event.WindowEvent event)
      Does nothing.
      void windowDeiconified​(java.awt.event.WindowEvent event)
      Does nothing.
      void windowIconified​(java.awt.event.WindowEvent event)
      Does nothing.
      void windowOpened​(java.awt.event.WindowEvent event)
      Does nothing.
      • Methods inherited from class javax.swing.JFrame

        addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
      • Methods inherited from class java.awt.Frame

        addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
      • Methods inherited from class java.awt.Window

        addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFront
      • Methods inherited from class java.awt.Container

        add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.awt.MenuContainer

        getFont, postEvent
    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        Use serialVersionUID for interoperability.
        See Also:
        Constant Field Values
      • toggleArray

        public javax.swing.JToggleButton[] toggleArray
        DOCUMENT ME!
      • actualPerSecond

        private float actualPerSecond
        DOCUMENT ME!
      • alphaBlend

        private float alphaBlend
        DOCUMENT ME!
      • aps

        private java.lang.String aps
        set to give 2 digits to the right of the decimal.
      • backForthButton

        private javax.swing.JToggleButton backForthButton
        DOCUMENT ME!
      • bfRun

        private boolean bfRun
        DOCUMENT ME!
      • borderCol

        private java.awt.Color borderCol
        z slice.
      • buttonArray

        private javax.swing.JButton[] buttonArray
        DOCUMENT ME!
      • cForwardButton

        private javax.swing.JToggleButton cForwardButton
        DOCUMENT ME!
      • cfRun

        private boolean cfRun
        DOCUMENT ME!
      • componentY

        private int componentY
        DOCUMENT ME!
      • controlPanel

        private javax.swing.JPanel controlPanel
        DOCUMENT ME!
      • cpGBC

        private java.awt.GridBagConstraints cpGBC
        DOCUMENT ME!
      • cpGBL

        private java.awt.GridBagLayout cpGBL
        DOCUMENT ME!
      • cReverseButton

        private javax.swing.JToggleButton cReverseButton
        DOCUMENT ME!
      • crRun

        private boolean crRun
        DOCUMENT ME!
      • cycleTime

        private long cycleTime
        DOCUMENT ME!
      • deleteButton

        private javax.swing.JButton deleteButton
        DOCUMENT ME!
      • disposeImage

        private boolean disposeImage
        DOCUMENT ME!
      • etchedBorder

        private javax.swing.border.Border etchedBorder
        DOCUMENT ME!
      • extents

        private int[] extents
        DOCUMENT ME!
      • forwardButton

        private javax.swing.JToggleButton forwardButton
        DOCUMENT ME!
      • fpsSlider

        private javax.swing.JSlider fpsSlider
        DOCUMENT ME!
      • framesPerSecond

        private float framesPerSecond
        DOCUMENT ME!
      • fRun

        private boolean fRun
        DOCUMENT ME!
      • gbcTP

        private java.awt.GridBagConstraints gbcTP
        DOCUMENT ME!
      • imageBufferA

        private float[] imageBufferA
        DOCUMENT ME!
      • imageBufferB

        private float[] imageBufferB
        DOCUMENT ME!
      • innerPanel

        private javax.swing.JPanel innerPanel
        DOCUMENT ME!
      • labelAnimationFrame

        private javax.swing.JLabel labelAnimationFrame
        DOCUMENT ME!
      • labelFramesPerSecond

        private javax.swing.JLabel labelFramesPerSecond
        DOCUMENT ME!
      • labelTable

        private java.util.Hashtable<java.lang.Integer,​javax.swing.JLabel> labelTable
        DOCUMENT ME!
      • localTime

        private long localTime
        newmsWait = msWait - msElapsed is passed to the sleep function.
      • localTime2

        private long localTime2
        DOCUMENT ME!
      • logMagDisplay

        private boolean logMagDisplay
        DOCUMENT ME!
      • LUTa

        private ModelLUT LUTa
        DOCUMENT ME!
      • LUTb

        private ModelLUT LUTb
        DOCUMENT ME!
      • minimumHeight

        private int minimumHeight
        DOCUMENT ME!
      • minimumToolBarWidth

        private int minimumToolBarWidth
        DOCUMENT ME!
      • mjpegQuality

        private float mjpegQuality
        DOCUMENT ME!
      • msElapsed

        private long msElapsed
        DOCUMENT ME!
      • msWait

        private long msWait
        DOCUMENT ME!
      • nColumn

        private int nColumn
        DOCUMENT ME!
      • newmsWait

        private long newmsWait
        DOCUMENT ME!
      • nf

        private java.text.NumberFormat nf
        DOCUMENT ME!
      • nImage

        private int nImage
        DOCUMENT ME!
      • nRow

        private int nRow
        DOCUMENT ME!
      • openingMenuBar

        private javax.swing.JMenuBar openingMenuBar
        DOCUMENT ME!
      • origBrightness

        private int origBrightness
        DOCUMENT ME!
      • origContrast

        private float origContrast
        red, green, and blue origBrightness remains constant until applyButton is pressed, restores brightness if cancelButton is pressed.
      • originalZDim

        private int originalZDim
        for 4D originalXDim and originalYDim are xDim and yDim before 4D to 3D conversion.
      • paintBuffer

        private int[] paintBuffer
        DOCUMENT ME!
      • pause

        private boolean pause
        DOCUMENT ME!
      • pauseButton

        private javax.swing.JToggleButton pauseButton
        DOCUMENT ME!
      • pixBuffer

        private int[] pixBuffer
        DOCUMENT ME!
      • pressedBorder

        private javax.swing.border.Border pressedBorder
        DOCUMENT ME!
      • recordButton

        private javax.swing.JButton recordButton
        DOCUMENT ME!
      • reverseButton

        private javax.swing.JToggleButton reverseButton
        DOCUMENT ME!
      • RGBTA

        private ModelRGB RGBTA
        DOCUMENT ME!
      • RGBTB

        private ModelRGB RGBTB
        DOCUMENT ME!
      • rRun

        private boolean rRun
        currently running.
      • scrollPane

        private javax.swing.JScrollPane scrollPane
        DOCUMENT ME!
      • scrollPaneSize

        private int scrollPaneSize
        DOCUMENT ME!
      • showFrameBorder

        private boolean showFrameBorder
        DOCUMENT ME!
      • showNumbers

        private boolean showNumbers
        equals zDim of original 4D before 4D to 3D conversion.
      • sliceOldNumber

        private int[] sliceOldNumber
        red, green, and blue origContrast remains constant until applyButton is pressed, restores contrast if cancelButton is pressed.
      • slider

        private javax.swing.JSlider slider
        DOCUMENT ME!
      • startTime

        private long startTime
        = localTime2 - localTime.
      • stopTime

        private long stopTime
        = localTime2 - localTime.
      • stop

        private boolean stop
        containing only 5 msec. sleep commands.
      • stopButton

        private javax.swing.JToggleButton stopButton
        DOCUMENT ME!
      • structureY

        private int structureY
        DOCUMENT ME!
      • textActualPerSecond

        private javax.swing.JTextField textActualPerSecond
        DOCUMENT ME!
      • textAnimationFrame

        private javax.swing.JTextField textAnimationFrame
        Note that an attempt to have DocumentListener for textAnimationFrame set the slider value was unsuccessful.
      • textFramesPerSecond

        private javax.swing.JTextField textFramesPerSecond
        DOCUMENT ME!
      • toolBar

        private javax.swing.JToolBar toolBar
        DOCUMENT ME!
      • topPanel

        private javax.swing.JPanel topPanel
        and innerPanel placed in scrollPane.
      • xScreen

        private int xScreen
        DOCUMENT ME!
      • yScreen

        private int yScreen
        DOCUMENT ME!
      • zoom

        private float zoom
        DOCUMENT ME!
      • zShow

        private int zShow
        DOCUMENT ME!
      • zSlice

        private int zSlice
        DOCUMENT ME!
    • Constructor Detail

      • ViewJFrameAnimate

        public ViewJFrameAnimate​(ModelImage _imageA,
                                 ModelLUT _LUTa,
                                 ModelImage _imageB,
                                 ModelLUT _LUTb,
                                 ModelRGB _RGBTA,
                                 ModelRGB _RGBTB,
                                 ViewJFrameBase controlFrame,
                                 int nRow,
                                 int nColumn,
                                 int originalZDim,
                                 boolean showFrameBorder,
                                 java.awt.Color borderCol,
                                 boolean disposeImage)
        Makes a frame of the animated image.
        Parameters:
        _imageA - Model of imageA
        _LUTa - Model of LUT for image A
        _imageB - Model of imageB
        _LUTb - Model of LUT for image B
        _RGBTA - Model RGB LUT for color image (A) else null
        _RGBTB - Model RGB LUT for color image (B) else null
        controlFrame - ViewJFrameBase passed to ViewJComponentAnimate
        nRow - rows of z images in 4D images
        nColumn - columns of z images in 4D images
        originalZDim - for 4D images equals zDim before 4D to 3D conversion
        showFrameBorder - puts colored borders around z images in 4D images
        borderCol - color of the z image borders
        disposeImage - dispose of imageA and imageB on frame close
    • Method Detail

      • actionPerformed

        public void actionPerformed​(java.awt.event.ActionEvent event)
        Calls various methods depending on the action.
        Specified by:
        actionPerformed in interface java.awt.event.ActionListener
        Specified by:
        actionPerformed in class ViewJFrameBase
        Parameters:
        event - event that triggered function
      • cancelBrightness

        public void cancelBrightness()
        Resets current slice's brightness and contrast to original.
      • componentResized

        public void componentResized​(java.awt.event.ComponentEvent event)
        Resizes frame and all components.
        Specified by:
        componentResized in interface java.awt.event.ComponentListener
        Overrides:
        componentResized in class ViewJFrameBase
        Parameters:
        event - event that triggered function
      • dispose

        public void dispose()
        Disposes of components and frame.
        Overrides:
        dispose in class java.awt.Window
      • setActiveImage

        public void setActiveImage​(int active)
        Does nothing.
        Specified by:
        setActiveImage in class ViewJFrameBase
        Parameters:
        active - DOCUMENT ME!
      • setAlphaBlend

        public void setAlphaBlend​(int value)
        Does nothing.
        Specified by:
        setAlphaBlend in class ViewJFrameBase
        Parameters:
        value - DOCUMENT ME!
      • setBrightness

        public void setBrightness​(int brightness,
                                  float contrast)
        Sets the brightness and contrast of the component image. Set all slices to have the new brightness and contrast. Results in createImage producing an Image img[slice] for every slice.
        Parameters:
        brightness - Brightness to set.
        contrast - Contrast to set.
      • setDisposeImages

        public void setDisposeImages​(boolean doDispose)
        DOCUMENT ME!
        Parameters:
        doDispose - DOCUMENT ME!
      • setEnabled

        public void setEnabled​(boolean flag)
        Does nothing.
        Specified by:
        setEnabled in class ViewJFrameBase
        Parameters:
        flag - DOCUMENT ME!
      • setFramesPerSecond

        public void setFramesPerSecond​(int fps)
        Sets the slider value (for invoking save image from dialog).
        Parameters:
        fps - int frames per second
      • setPaintBitmapSwitch

        public void setPaintBitmapSwitch​(boolean paintBitmapSwitch)
        Does nothing.
        Specified by:
        setPaintBitmapSwitch in class ViewJFrameBase
        Parameters:
        paintBitmapSwitch - DOCUMENT ME!
      • setRGBTA

        public void setRGBTA​(ModelRGB RGBT)
        Sets the RGB LUT table for ARGB image A.
        Specified by:
        setRGBTA in class ViewJFrameBase
        Parameters:
        RGBT - the new RGB LUT to be applied to the image
      • setRGBTB

        public void setRGBTB​(ModelRGB RGBT)
        Sets the RGB LUT table for ARGB image B.
        Specified by:
        setRGBTB in class ViewJFrameBase
        Parameters:
        RGBT - the new RGB LUT to be applied to the image
      • setSlice

        public void setSlice​(int slice)
        Sets the slice to be displayed and updates title frame.
        Specified by:
        setSlice in interface ViewImageUpdateInterface
        Parameters:
        slice - indicates image slice to be displayed
      • setTitle

        public void setTitle()
        Set the title of the frame with the image name and magnification.
        Specified by:
        setTitle in class ViewJFrameBase
      • stateChanged

        public void stateChanged​(javax.swing.event.ChangeEvent e)
        Sets values based on knob along slider.
        Specified by:
        stateChanged in interface javax.swing.event.ChangeListener
        Overrides:
        stateChanged in class ViewJFrameBase
        Parameters:
        e - Event that triggered this function
      • updateFrame

        public void updateFrame​(float sX,
                                float sY)
        Does nothing.
        Parameters:
        sX - DOCUMENT ME!
        sY - DOCUMENT ME!
      • updateImages

        public final boolean updateImages​(boolean forceShow)
        This methods calls the componentImage's update method to redraw the screen. Without LUT changes.
        Specified by:
        updateImages in interface ViewImageUpdateInterface
        Parameters:
        forceShow - unused parameter
        Returns:
        boolean confirming successful update
      • updateImages

        public final boolean updateImages​(ModelLUT LUTa,
                                          ModelLUT LUTb,
                                          boolean forceShow,
                                          int interpMode)
        Does nothing.
        Specified by:
        updateImages in interface ViewImageUpdateInterface
        Parameters:
        LUTa - DOCUMENT ME!
        LUTb - DOCUMENT ME!
        forceShow - DOCUMENT ME!
        interpMode - DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • windowActivated

        public void windowActivated​(java.awt.event.WindowEvent event)
        Does nothing.
        Specified by:
        windowActivated in interface java.awt.event.WindowListener
        Overrides:
        windowActivated in class ViewJFrameBase
        Parameters:
        event - DOCUMENT ME!
      • windowClosed

        public void windowClosed​(java.awt.event.WindowEvent event)
        Does nothing.
        Specified by:
        windowClosed in interface java.awt.event.WindowListener
        Overrides:
        windowClosed in class ViewJFrameBase
        Parameters:
        event - DOCUMENT ME!
      • windowClosing

        public void windowClosing​(java.awt.event.WindowEvent event)
        Stops thread, calls close.
        Specified by:
        windowClosing in interface java.awt.event.WindowListener
        Overrides:
        windowClosing in class ViewJFrameBase
        Parameters:
        event - event that triggered function
      • windowDeactivated

        public void windowDeactivated​(java.awt.event.WindowEvent event)
        Does nothing.
        Specified by:
        windowDeactivated in interface java.awt.event.WindowListener
        Overrides:
        windowDeactivated in class ViewJFrameBase
        Parameters:
        event - DOCUMENT ME!
      • windowDeiconified

        public void windowDeiconified​(java.awt.event.WindowEvent event)
        Does nothing.
        Specified by:
        windowDeiconified in interface java.awt.event.WindowListener
        Overrides:
        windowDeiconified in class ViewJFrameBase
        Parameters:
        event - DOCUMENT ME!
      • windowIconified

        public void windowIconified​(java.awt.event.WindowEvent event)
        Does nothing.
        Specified by:
        windowIconified in interface java.awt.event.WindowListener
        Overrides:
        windowIconified in class ViewJFrameBase
        Parameters:
        event - DOCUMENT ME!
      • windowOpened

        public void windowOpened​(java.awt.event.WindowEvent event)
        Does nothing.
        Specified by:
        windowOpened in interface java.awt.event.WindowListener
        Overrides:
        windowOpened in class ViewJFrameBase
        Parameters:
        event - DOCUMENT ME!
      • testParameter

        protected boolean testParameter​(java.lang.String str,
                                        double minValue,
                                        double maxValue)
        Tests that the entered parameter is in range.
        Parameters:
        str - the value entered by the user
        minValue - the minimum value this variable may be set to
        maxValue - the maximum value this variable may be set to
        Returns:
        boolean result of test
      • addControlPanel

        private void addControlPanel​(java.awt.Component c,
                                     java.awt.GridBagConstraints gbc,
                                     int x,
                                     int y,
                                     int w,
                                     int h)
        Method that adds components to the control paenl.
        Parameters:
        c - component added to the control panel
        gbc - GridBagConstraints of added component
        x - grdix location
        y - gridy location
        w - gridwidth
        h - gridheight
      • buildAnimateToolBar

        private javax.swing.JToolBar buildAnimateToolBar​(java.awt.event.ActionListener al)
        Method to build the toolbar for the Animate frame.
        Parameters:
        al - Action listener (this frame)
        Returns:
        The animation toolbar
      • buildControlPanel

        private void buildControlPanel()
        Panel that sets the at rest frame number and the desired frames per second and reports the actual frames per second.
      • buildMenu

        private void buildMenu()
        This method builds a menu which contains the options Save image as and Close Animate.
      • buildScrollPane

        private void buildScrollPane()
        Make a scroll frame and puts an image component into it.
      • createLabel

        private javax.swing.JLabel createLabel​(java.lang.String title)
        Helper method to create a label with the proper font and font color.
        Parameters:
        title - Text of the label.
        Returns:
        New label.
      • makeSeparator

        private javax.swing.JButton makeSeparator()
        Makes a separator for the use in the toolbars.
        Returns:
        Separator button.