## org.autoplot.pngwalk.PngWalkTool

GUI for browsing PNGWalks, or sets of PNG images. These typically contain files named to make a time series, such as product_$Y$m$d.png, but this can browse any set of images using wildcards. This provides a number of views of the images, such as a grid of thumbnails and the coverflow view which shows an image and the preceding and succeeding images. This also contains a hook to get back into Autoplot, if product.vap (or vap named like the images) is found.

## PngWalkTool( )

Creates new form PngWalkTool

## PREF_RECENT

## PREF_LAST_EXPORT

last location where image was exported

## views

## PROP_THUMBNAILSIZE

## PROP_TIMERANGE

## PROP_MOUSEPRESSLOCATION

## PROP_MOUSERELEASELOCATION

## PROP_IMAGEMOUSEADAPTER

## PROP_STATUS

## LOCAL_FILE_ENABLER

Enabler that returns true for local files.

## PROP_SELECTED_NAME

## addActionComponent

addActionComponent( javax.swing.JComponent c, java.beans.PropertyChangeListener p ) → void

add a component that will get property change events and should respond to property changes. This allows scientists a way to connect actions to the PNGWalk tool.

### Parameters

c - null or a smallish JComponent that should be about the size of a button.
p - null or the listener for the selected file and timerange.

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## addFileAction

addFileAction( org.autoplot.pngwalk.PngWalkTool.ActionEnabler match, javax.swing.Action abstractAction ) → void

Add a file action button to the GUI.

### Parameters

match - returns true when the action can be applied to the current image.
abstractAction - the action.

### Returns:

void (returns nothing)

### See Also:

LOCAL_FILE_ENABLER which returns true for local files.
[search for examples] [view on GitHub] [view on old javadoc]

## addTopDecorator

addTopDecorator( org.das2.graph.Painter p ) → void

add a decorator to the PngWalkTool, which is drawn on single-image views. Note this is draw in the coordinate system of the image, pixel coordinates with the origin (0,0) at the top left.

### Parameters

p - a Painter

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## clearBottomLeftPanel

clearBottomLeftPanel( ) → void

remove all components from the bottom left panel.

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## firePropertyChange

firePropertyChange( String propertyName, Object oldValue, Object newValue ) → void

we need to make this public.

### Parameters

propertyName - a String
oldValue - an Object
newValue - an Object

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## getDigitizerDataPointRecorder

getDigitizerDataPointRecorder( ) → org.das2.components.DataPointRecorder

provide access to the digitizer DataPointRecorder, so that points can be deleted programmatically.

### Returns:

the DataPointRecorder.
[search for examples] [view on GitHub] [view on old javadoc]
getImageMouseAdapter( ) → java.awt.event.MouseAdapter [view source]
getMousePressLocation( ) → QDataSet [view source]
getMouseReleaseLocation( ) → QDataSet [view source]

## getNavigationPanel

getNavigationPanel( ) → javax.swing.JPanel

get a reference to the navigation panel. To restore the normal layout, use setBottomLeftPanel( getNavigationPanel() ).

### Returns:

the navigation panel.
[search for examples] [view on GitHub] [view on old javadoc]

## getPwd

getPwd( ) → String

return the present working directory of the .pngwalk file (if used).

### Returns:

the present working directory of the .pngwalk file (if used).
[search for examples] [view on GitHub] [view on old javadoc]

## getQCTUrl

getQCTUrl( ) → String

return the path for the quality control data.

### Returns:

a String
[search for examples] [view on GitHub] [view on old javadoc]

## getSelectedFile

getSelectedFile( ) → String

returns the current selection, which may be a URL on a remote site, or null if no sequence has been selected.

### Returns:

the current selection or null if the sequence is not loaded or empty.
[search for examples] [view on GitHub] [view on old javadoc]

## getSelectedImage

getSelectedImage( ) → java.awt.image.BufferedImage

return the currently selected image.

### Returns:

the currently selected image
[search for examples] [view on GitHub] [view on old javadoc]

## getSelectedName

getSelectedName( ) → String

return the name of the current selection, which is just the globbed or aggregated part of the names. This is introduced to support tying two pngwalks together.

### Returns:

the name of the currently selected file.
[search for examples] [view on GitHub] [view on old javadoc]

## getSequence

getSequence( ) → org.autoplot.pngwalk.WalkImageSequence

return the container for the sequence of images, which contains the current index and provides a method for jumping to other images.

### Returns:

the sequence.
[search for examples] [view on GitHub] [view on old javadoc]
getStatus( ) → String [view source]

## getTabs

getTabs( ) → org.das2.components.TearoffTabbedPane

provide means for scripts to add component to develop new applications.

### Returns:

the TearoffTabbedPane used.
[search for examples] [view on GitHub] [view on old javadoc]

## getTemplate

getTemplate( ) → String

get the template used to describe the files in the pngwalk.

### Returns:

the template used to describe the files in the pngwalk.
[search for examples] [view on GitHub] [view on old javadoc]
getThumbnailSize( ) → int [view source]

## getTimeRange

getTimeRange( ) → DatumRange

rfe https://sourceforge.net/p/autoplot/feature-requests/271/

### Returns:

the current timerange
[search for examples] [view on GitHub] [view on old javadoc]

## hasTopDecorators

hasTopDecorators( ) → boolean

returns true if there are any top decorators.

### Returns:

true if there are any decorators.
[search for examples] [view on GitHub] [view on old javadoc]

## isQualityControlEnabled

isQualityControlEnabled( ) → boolean

return true of the quality control panel is enabled.

### Returns:

return true of the quality control panel is enabled.
[search for examples] [view on GitHub] [view on old javadoc]
main( String[] args ) → void [view source]
removeActionComponent( javax.swing.JComponent c, java.beans.PropertyChangeListener p ) → void [view source]

## removeTopDecorator

removeTopDecorator( org.das2.graph.Painter p ) → void

remove a decorator to the PngWalkTool, which is drawn on single-image views. If the decorator is not found, no error is thrown.

### Parameters

p - a Painter

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## removeTopDecorators

removeTopDecorators( ) → void

remove all decorators from the PngWalkTool.

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## setBottomLeftPanel

setBottomLeftPanel( javax.swing.JComponent c ) → void

set a new component for the bottom left panel, where by default the navigation panel resides.

### Parameters

c - a JComponent

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## setDigitizerRecording

setDigitizerRecording( boolean enable ) → void

this can be used to disable recording of the points.

### Parameters

enable - true means record points, false means don't record.

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## setImageMouseAdapter

setImageMouseAdapter( java.awt.event.MouseAdapter imageMouseAdapter ) → void

add a mouse event handler, which will get events in the coordinate frame of the image. This can be set to null to clear the adapter.

### Parameters

imageMouseAdapter - a MouseAdapter

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]
setMessage( String message ) → void [view source]
setMessage( javax.swing.Icon icon, String message ) → void [view source]
setMousePressLocation( QDataSet mousePressLocation ) → void [view source]
setMouseReleaseLocation( QDataSet mouseReleaseLocation ) → void [view source]

## setQCStatus

setQCStatus( String text, org.autoplot.pngwalk.QualityControlRecord.Status status ) → void

provide a method for setting the QCStatus externally.

### Parameters

text - message annotating the status change or commenting on status.
status - the status

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## setSelectedName

setSelectedName( String name ) → void

set the name of the file to select, which is just the globber or aggregated part of the name. For example, if getTemplate is file:/tmp/$Y$m$d.gif, then the setSelectedName might be 20141111.gif. If the name is not found in the pngwalk, then this has no effect.

### Parameters

name - the new name

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]
setStatus( String message ) → void [view source]

## setTemplate

setTemplate( String template ) → void

set the template which the PNGWalk Tool will display.

### Parameters

template - file template, like /tmp/$Y$m$d.png

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]
setThumbnailSize( int thumbnailSize ) → void [view source]

## setTimeRange

setTimeRange( DatumRange timeRange ) → void

timerange roughly the focus timerange. This property is introduced to allow for binding between pngwalks. This should not be confused with the &timerange= part of the URI.

### Parameters

timeRange - a DatumRange

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## start

start( String template, java.awt.Window parent ) → org.autoplot.pngwalk.PngWalkTool

initialize a new PNGWalkTool with the given template.

### Parameters

template - the template, such as http://autoplot.org/data/pngwalk/product_$Y$m$d.vap
parent - null or a parent component to own this application.

### Returns:

a PngWalkTool, which is visible and packed.
[search for examples] [view on GitHub] [view on old javadoc]

## startDigitizer

startDigitizer( ) → void

start the digitizer if it is not started already.

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## startQC

startQC( ) → void

start the quality control if it is not started already.

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]
updateTimeRangeFilter( ) → void [view source]

## writeAnimatedGif

writeAnimatedGif( ) → void

Write the displayed images to an animated gif.

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## writeContactSheet

writeContactSheet( java.io.File f ) → void

write the current Grid view to a single PNG file.

### Parameters

f - a File

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## writeCsv

writeCsv( ) → void

write the sequence to a HTML file, so that this can be used to produce worksheets.

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## writeHtml

writeHtml( ) → void

write the sequence to a HTML file, so that this can be used to produce worksheets.

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]

## writePdf

writePdf( ) → void

write the sequence to a PDF file, so that this can be used to produce worksheets.

### Returns:

void (returns nothing)
[search for examples] [view on GitHub] [view on old javadoc]