Class ViewOpenImageSequence

  • All Implemented Interfaces:
    PreviewImageContainer, java.awt.event.ActionListener, java.awt.event.KeyListener, java.awt.event.MouseListener, 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 ViewOpenImageSequence
    extends javax.swing.JFrame
    implements java.awt.event.ActionListener, PreviewImageContainer, java.awt.event.MouseListener, java.awt.event.KeyListener, javax.swing.event.ChangeListener
    The purpose of this class is to present the user with a window enabling him/her to open a sequence of TIFF files based on timepoint-channel-slice ordering. This is useful for opening a dataset captured by a machine where the order of the files on disk may not necessarily be the correct sequence from the machine. Also shows a preview of each image.
    See Also:
    Serialized Form
    • Nested Class Summary

      • 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
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected static java.lang.String APPLY
      DOCUMENT ME!
      protected javax.swing.JSlider brightnessSlider
      DOCUMENT ME!
      protected static java.lang.String BROWSE
      DOCUMENT ME!
      protected static java.lang.String CANCEL
      DOCUMENT ME!
      protected AlternatingTableCellRenderer cellRenderer
      DOCUMENT ME!
      (package private) int[] channelMap
      DOCUMENT ME!
      protected javax.swing.JCheckBox chkForceUBYTE
      DOCUMENT ME!
      protected javax.swing.JComboBox cmbFilter
      DOCUMENT ME!
      protected static java.lang.String CONFIGURE_CHANNELS
      DOCUMENT ME!
      protected javax.swing.JSlider contrastSlider
      DOCUMENT ME!
      protected int CTZ
      Int denoting CTZ sequence
      protected java.io.File currentPath
      DOCUMENT ME!
      protected int CZT
      Int denoting CZT sequence
      protected static java.lang.String ENABLE
      DOCUMENT ME!
      protected javax.swing.JCheckBox enableCheckbox
      DOCUMENT ME!
      protected java.io.File[] fileListData
      DOCUMENT ME!
      private javax.swing.JTable filenameTable
      DOCUMENT ME!
      private SortingTableModel filenameTableModel
      DOCUMENT ME!
      private TableSorter filenameTableSorter
      DOCUMENT ME!
      protected static java.lang.String FILTER
      DOCUMENT ME!
      protected javax.swing.JLabel lblOrigDim
      DOCUMENT ME!
      protected static java.lang.String OK
      DOCUMENT ME!
      protected java.lang.String previewFilename
      DOCUMENT ME!
      protected javax.swing.JPanel previewPanel
      DOCUMENT ME!
      protected javax.swing.JRadioButton radCTZ
      Radio button for CTZ sequence
      protected javax.swing.JRadioButton radCZT
      Radio button for CZT sequence
      protected javax.swing.JRadioButton radTCZ
      Radio button for TCZ sequence
      protected javax.swing.JRadioButton radTZC
      Radio button for TZC sequence
      protected javax.swing.JRadioButton radZCT
      Radio button for ZCT sequence
      protected javax.swing.JRadioButton radZTC
      Radio button for ZTC sequence
      protected static java.lang.String REMOVE
      DOCUMENT ME!
      private static long serialVersionUID
      Use serialVersionUID for interoperability.
      protected javax.swing.JTable table
      DOCUMENT ME!
      protected UneditableTableModel tableModel
      DOCUMENT ME!
      protected int TCZ
      Int denoting TCZ sequence
      protected javax.swing.JTextField txtChannels
      DOCUMENT ME!
      protected javax.swing.JTextField txtDirectory
      DOCUMENT ME!
      protected javax.swing.JTextField txtHeight
      DOCUMENT ME!
      protected javax.swing.JTextField txtSlices
      DOCUMENT ME!
      protected javax.swing.JTextField txtTimePoints
      DOCUMENT ME!
      protected javax.swing.JTextField txtWidth
      DOCUMENT ME!
      protected int TZC
      Int denoting TZC sequence
      protected int ZCT
      Int denoting ZCT sequence
      protected int ZTC
      Int denoting ZTC sequence
      • Fields inherited from class javax.swing.JFrame

        accessibleContext, rootPane, rootPaneCheckingEnabled
      • Fields inherited from class java.awt.Frame

        CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
      • 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
      • Fields inherited from interface javax.swing.WindowConstants

        DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
    • Constructor Summary

      Constructors 
      Constructor Description
      ViewOpenImageSequence()
      Creates a new ViewOpenImageSequence object.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void actionPerformed​(java.awt.event.ActionEvent event)
      DOCUMENT ME!
      protected void arrangeCTZ​(int numSlices, int numChannels, int numTimePoints)
      Arrange the table in CTZ order.
      protected void arrangeCZT​(int numSlices, int numChannels, int numTimePoints)
      Arrange the table in CZT order.
      protected void arrangeTCZ​(int numSlices, int numChannels, int numTimePoints)
      Arrange the table in TCZ order.
      protected void arrangeTZC​(int numSlices, int numChannels, int numTimePoints)
      Arrange the table in TZC order.
      protected void arrangeZCT​(int numSlices, int numChannels, int numTimePoints)
      Arrange the table in ZCT order.
      protected void arrangeZTC​(int numSlices, int numChannels, int numTimePoints)
      Arrange the table in ZTC order.
      protected javax.swing.JPanel buildBrightnessContrastPanel()
      DOCUMENT ME!
      protected javax.swing.JPanel buildCenterPanel()
      DOCUMENT ME!
      protected javax.swing.JPanel buildDimensionsPanel()
      DOCUMENT ME!
      protected javax.swing.JPanel buildLeftSubPanel()
      DOCUMENT ME!
      protected javax.swing.JPanel buildOKCancelPanel()
      DOCUMENT ME!
      protected javax.swing.JPanel buildSequencesPanel()
      DOCUMENT ME!
      protected javax.swing.JPanel buildSubsamplePanel()
      DOCUMENT ME!
      protected void buildUserInterface()
      DOCUMENT ME!
      protected boolean dimensionsSanityCheck()
      Method checks the dimensions parameters entered by the user.
      protected java.util.Vector<java.lang.String> filterFileExtension​(java.util.Vector<java.lang.String> rawFileList, java.io.File selectedFile)
      Method filters out the rawFileList based of the file extension of the parameter selectedFile.
      protected void formatTable​(int selectedSequence)
      Ensures the table is drawn in the way specified by the dimensions parameters and the selected sequence.
      protected java.io.File[] getFileList()
      DOCUMENT ME!
      protected java.io.File getLastOpenSequencePath()
      Reads the preferences file to determine the path that was last used in opening a file sequence.
      java.awt.Dimension getPanelSize()
      Method is required by PreviewImageContainer interface to draw a preview image.
      protected int getSelectedSequence()
      DOCUMENT ME!
      private void keepSelected()
      Method keep selected items from the file list.
      void keyPressed​(java.awt.event.KeyEvent event)
      DOCUMENT ME!
      void keyReleased​(java.awt.event.KeyEvent event)
      DOCUMENT ME!
      void keyTyped​(java.awt.event.KeyEvent event)
      DOCUMENT ME!
      private void makePreview​(java.lang.String currentPath, java.lang.String selectedFilename)
      Makes an image preview of the image currentPath/selectedFilename and draws it in the image preview area.
      void mouseClicked​(java.awt.event.MouseEvent event)
      DOCUMENT ME!
      void mouseEntered​(java.awt.event.MouseEvent event)
      DOCUMENT ME!
      void mouseExited​(java.awt.event.MouseEvent event)
      DOCUMENT ME!
      void mousePressed​(java.awt.event.MouseEvent event)
      DOCUMENT ME!
      void mouseReleased​(java.awt.event.MouseEvent event)
      DOCUMENT ME!
      void newChannelMap​(int[] channelMap)
      DOCUMENT ME!
      protected void openImage​(int numChannels, int numSlices, int numTimePoints, java.awt.Dimension subsampleDimension)
      Will read a series of images and put them into a frame.
      private void removeSelected()
      Method removed selected items from the file list.
      protected void setColumnWidths()
      This method calculates the width needed to encompass the table data for each column.
      private void setDefaults()
      The purpose of this method is to load the previous values in from the preferences file.
      void stateChanged​(javax.swing.event.ChangeEvent event)
      DOCUMENT ME!
      protected boolean subsamplingSanityCheck()
      DOCUMENT ME!
      • 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, dispose, 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, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, 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
      • CONFIGURE_CHANNELS

        protected static final java.lang.String CONFIGURE_CHANNELS
        DOCUMENT ME!
        See Also:
        Constant Field Values
      • brightnessSlider

        protected javax.swing.JSlider brightnessSlider
        DOCUMENT ME!
      • chkForceUBYTE

        protected javax.swing.JCheckBox chkForceUBYTE
        DOCUMENT ME!
      • cmbFilter

        protected javax.swing.JComboBox cmbFilter
        DOCUMENT ME!
      • contrastSlider

        protected javax.swing.JSlider contrastSlider
        DOCUMENT ME!
      • currentPath

        protected java.io.File currentPath
        DOCUMENT ME!
      • enableCheckbox

        protected javax.swing.JCheckBox enableCheckbox
        DOCUMENT ME!
      • fileListData

        protected java.io.File[] fileListData
        DOCUMENT ME!
      • lblOrigDim

        protected javax.swing.JLabel lblOrigDim
        DOCUMENT ME!
      • previewFilename

        protected java.lang.String previewFilename
        DOCUMENT ME!
      • previewPanel

        protected javax.swing.JPanel previewPanel
        DOCUMENT ME!
      • radCTZ

        protected javax.swing.JRadioButton radCTZ
        Radio button for CTZ sequence
      • radCZT

        protected javax.swing.JRadioButton radCZT
        Radio button for CZT sequence
      • radTCZ

        protected javax.swing.JRadioButton radTCZ
        Radio button for TCZ sequence
      • radTZC

        protected javax.swing.JRadioButton radTZC
        Radio button for TZC sequence
      • radZCT

        protected javax.swing.JRadioButton radZCT
        Radio button for ZCT sequence
      • radZTC

        protected javax.swing.JRadioButton radZTC
        Radio button for ZTC sequence
      • table

        protected javax.swing.JTable table
        DOCUMENT ME!
      • txtChannels

        protected javax.swing.JTextField txtChannels
        DOCUMENT ME!
      • txtDirectory

        protected javax.swing.JTextField txtDirectory
        DOCUMENT ME!
      • txtHeight

        protected javax.swing.JTextField txtHeight
        DOCUMENT ME!
      • txtSlices

        protected javax.swing.JTextField txtSlices
        DOCUMENT ME!
      • txtTimePoints

        protected javax.swing.JTextField txtTimePoints
        DOCUMENT ME!
      • txtWidth

        protected javax.swing.JTextField txtWidth
        DOCUMENT ME!
      • channelMap

        int[] channelMap
        DOCUMENT ME!
      • filenameTableSorter

        private TableSorter filenameTableSorter
        DOCUMENT ME!
      • filenameTable

        private javax.swing.JTable filenameTable
        DOCUMENT ME!
    • Constructor Detail

      • ViewOpenImageSequence

        public ViewOpenImageSequence()
        Creates a new ViewOpenImageSequence object.
    • Method Detail

      • actionPerformed

        public void actionPerformed​(java.awt.event.ActionEvent event)
        DOCUMENT ME!
        Specified by:
        actionPerformed in interface java.awt.event.ActionListener
        Parameters:
        event - DOCUMENT ME!
      • getPanelSize

        public java.awt.Dimension getPanelSize()
        Method is required by PreviewImageContainer interface to draw a preview image.
        Specified by:
        getPanelSize in interface PreviewImageContainer
        Returns:
        Dimension - indicating the size of the preview image area.
      • keyPressed

        public void keyPressed​(java.awt.event.KeyEvent event)
        DOCUMENT ME!
        Specified by:
        keyPressed in interface java.awt.event.KeyListener
        Parameters:
        event - DOCUMENT ME!
      • keyReleased

        public void keyReleased​(java.awt.event.KeyEvent event)
        DOCUMENT ME!
        Specified by:
        keyReleased in interface java.awt.event.KeyListener
        Parameters:
        event - DOCUMENT ME!
      • keyTyped

        public void keyTyped​(java.awt.event.KeyEvent event)
        DOCUMENT ME!
        Specified by:
        keyTyped in interface java.awt.event.KeyListener
        Parameters:
        event - DOCUMENT ME!
      • mouseClicked

        public void mouseClicked​(java.awt.event.MouseEvent event)
        DOCUMENT ME!
        Specified by:
        mouseClicked in interface java.awt.event.MouseListener
        Parameters:
        event - DOCUMENT ME!
      • mouseEntered

        public void mouseEntered​(java.awt.event.MouseEvent event)
        DOCUMENT ME!
        Specified by:
        mouseEntered in interface java.awt.event.MouseListener
        Parameters:
        event - DOCUMENT ME!
      • mouseExited

        public void mouseExited​(java.awt.event.MouseEvent event)
        DOCUMENT ME!
        Specified by:
        mouseExited in interface java.awt.event.MouseListener
        Parameters:
        event - DOCUMENT ME!
      • mousePressed

        public void mousePressed​(java.awt.event.MouseEvent event)
        DOCUMENT ME!
        Specified by:
        mousePressed in interface java.awt.event.MouseListener
        Parameters:
        event - DOCUMENT ME!
      • mouseReleased

        public void mouseReleased​(java.awt.event.MouseEvent event)
        DOCUMENT ME!
        Specified by:
        mouseReleased in interface java.awt.event.MouseListener
        Parameters:
        event - DOCUMENT ME!
      • newChannelMap

        public void newChannelMap​(int[] channelMap)
        DOCUMENT ME!
        Parameters:
        channelMap - DOCUMENT ME!
      • stateChanged

        public void stateChanged​(javax.swing.event.ChangeEvent event)
        DOCUMENT ME!
        Specified by:
        stateChanged in interface javax.swing.event.ChangeListener
        Parameters:
        event - DOCUMENT ME!
      • arrangeCTZ

        protected void arrangeCTZ​(int numSlices,
                                  int numChannels,
                                  int numTimePoints)
        Arrange the table in CTZ order.
        Parameters:
        numSlices - int - the number of slices the data represents
        numChannels - int - the number of channels the data represents
        numTimePoints - int - the number of time points the data represents
      • arrangeCZT

        protected void arrangeCZT​(int numSlices,
                                  int numChannels,
                                  int numTimePoints)
        Arrange the table in CZT order.
        Parameters:
        numSlices - int - the number of slices the data represents
        numChannels - int - the number of channels the data represents
        numTimePoints - int - the number of time points the data represents
      • arrangeTCZ

        protected void arrangeTCZ​(int numSlices,
                                  int numChannels,
                                  int numTimePoints)
        Arrange the table in TCZ order.
        Parameters:
        numSlices - int - the number of slices the data represents
        numChannels - int - the number of channels the data represents
        numTimePoints - int - the number of time points the data represents
      • arrangeTZC

        protected void arrangeTZC​(int numSlices,
                                  int numChannels,
                                  int numTimePoints)
        Arrange the table in TZC order.
        Parameters:
        numSlices - int - the number of slices the data represents
        numChannels - int - the number of channels the data represents
        numTimePoints - int - the number of time points the data represents
      • arrangeZCT

        protected void arrangeZCT​(int numSlices,
                                  int numChannels,
                                  int numTimePoints)
        Arrange the table in ZCT order.
        Parameters:
        numSlices - int - the number of slices the data represents
        numChannels - int - the number of channels the data represents
        numTimePoints - int - the number of time points the data represents
      • arrangeZTC

        protected void arrangeZTC​(int numSlices,
                                  int numChannels,
                                  int numTimePoints)
        Arrange the table in ZTC order.
        Parameters:
        numSlices - int - the number of slices the data represents
        numChannels - int - the number of channels the data represents
        numTimePoints - int - the number of time points the data represents
      • buildBrightnessContrastPanel

        protected javax.swing.JPanel buildBrightnessContrastPanel()
        DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • buildCenterPanel

        protected javax.swing.JPanel buildCenterPanel()
        DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • buildDimensionsPanel

        protected javax.swing.JPanel buildDimensionsPanel()
        DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • buildLeftSubPanel

        protected javax.swing.JPanel buildLeftSubPanel()
        DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • buildOKCancelPanel

        protected javax.swing.JPanel buildOKCancelPanel()
        DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • buildSequencesPanel

        protected javax.swing.JPanel buildSequencesPanel()
        DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • buildSubsamplePanel

        protected javax.swing.JPanel buildSubsamplePanel()
        DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • buildUserInterface

        protected void buildUserInterface()
        DOCUMENT ME!
      • dimensionsSanityCheck

        protected boolean dimensionsSanityCheck()
        Method checks the dimensions parameters entered by the user. Returns true if valid, false otherwise.
        Returns:
        boolean - if the dimension parameters are valid
      • filterFileExtension

        protected java.util.Vector<java.lang.String> filterFileExtension​(java.util.Vector<java.lang.String> rawFileList,
                                                                         java.io.File selectedFile)
        Method filters out the rawFileList based of the file extension of the parameter selectedFile. This ensures that the resulting Vector contains files only of the same extensions as selectedFile.
        Parameters:
        rawFileList - Vector - a Vector of File objects
        selectedFile - File - the file whose extension will be used as a filter for rawFileList
        Returns:
        Vector - a new Vector containing the filtered list of String objects representing filenames
      • formatTable

        protected void formatTable​(int selectedSequence)
        Ensures the table is drawn in the way specified by the dimensions parameters and the selected sequence.
        Parameters:
        selectedSequence - int - the Z-T-C ordering as selected by the user
      • getFileList

        protected java.io.File[] getFileList()
        DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • getLastOpenSequencePath

        protected java.io.File getLastOpenSequencePath()
        Reads the preferences file to determine the path that was last used in opening a file sequence.
        Returns:
        File - the File object representing the directory last used in opening a file sequence.
      • getSelectedSequence

        protected int getSelectedSequence()
        DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • openImage

        protected void openImage​(int numChannels,
                                 int numSlices,
                                 int numTimePoints,
                                 java.awt.Dimension subsampleDimension)
        Will read a series of images and put them into a frame.
        Parameters:
        numChannels - int - valid values are 1, 2, 3, and 4, which indicates the number of channels the image will have. "1" means a grayscale image
        numSlices - DOCUMENT ME!
        numTimePoints - DOCUMENT ME!
        subsampleDimension - DOCUMENT ME!
      • setColumnWidths

        protected void setColumnWidths()
        This method calculates the width needed to encompass the table data for each column. Without this method, the column widths would not be set correctly and the user would potentialy have to resize each column to view the filename it contains.
      • subsamplingSanityCheck

        protected boolean subsamplingSanityCheck()
        DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • makePreview

        private void makePreview​(java.lang.String currentPath,
                                 java.lang.String selectedFilename)
        Makes an image preview of the image currentPath/selectedFilename and draws it in the image preview area.
        Parameters:
        currentPath - String
        selectedFilename - String
      • removeSelected

        private void removeSelected()
        Method removed selected items from the file list.
      • keepSelected

        private void keepSelected()
        Method keep selected items from the file list.
      • setDefaults

        private void setDefaults()
        The purpose of this method is to load the previous values in from the preferences file.