# Uses of Interface
ij.plugin.PlugIn

Packages that use PlugIn
Package
Description
ij.gui
ij.plugin
ij.plugin.frame
ij.plugin.tool

## Uses of PlugIn in ij.gui

Classes in ij.gui that implement PlugIn
Modifier and Type
Class
Description
`class`
`RoiDefaultsDialog`
This plugin implements the Edit/Options/Roi Defaults command.

## Uses of PlugIn in ij.plugin

Classes in ij.plugin that implement PlugIn
Modifier and Type
Class
Description
`class`
`AboutBox`
This plugin implements the Help/About ImageJ command by opening about.jpg in ij.jar, scaling it 600% and adding text to an overlay.
`class`
`Animator`
This plugin animates stacks.
`class`
`AppearanceOptions`
This plugin implements the Edit/Options/Appearance command.
`class`
`ArrowToolOptions`
This plugin implements the Edit/Options/Arrow Tool command.
`class`
`AVI_Reader`
ImageJ Plugin for reading an AVI file into an image stack (one slice per video frame) Restrictions and Notes: - Only few formats supported: - uncompressed 8 bit with palette (=LUT) - uncompressed 8 invalid input: '&' 16 bit grayscale - uncompressed 24 invalid input: '&' 32 bit RGB (alpha channel ignored) - uncompressed 32 bit AYUV (alpha channel ignored) - various YUV 4:2:2 and 4:2:0 compressed formats (i.e., formats with full luminance resolution, but reduced chroma resolution - png or jpeg-encoded individual frames.
`class`
`BatchConverter`
This plugin implements the File/ /Convert command, which converts the images in a folder to a specified format.
`class`
`BatchMeasure`
This plugin implements the File/Batch/Measure command, which measures all the images in a user-specified folder.
`class`
`BatchProcessor`
This plugin implements the File/Batch/Macro and File/Batch/Virtual Stack commands.
`class`
`Benchmark`
Implements the Plugins/Utilities/Run Benchmark command.
`class`
`Binner`
This plugin implements the Image/Transform/Bin command.
`class`
`BMP_Reader`
This plugin reads BMP files.
`class`
`BMP_Writer`
Implements the File/Save As/BMP command.
`class`
`BrowserLauncher`
This plugin implements the File/Import/URL command and the commands in the Help menu that open web pages.
`class`
`CalibrationBar`
This plugin implements the Analyze/Tools/Calibration Bar command.
`class`
`CanvasResizer`
This plugin implements the Image/Adjust/Canvas Size command.
`class`
`ChannelArranger`
This plugin implements the Image/Colors/Arrange Channels command, which allows the user to change the order of channels.
`class`
`ChannelSplitter`
This plugin implements the Image/Color/Split Channels command.
`class`
`CircularRoiMaker`
This class implements the Process/FFT/Make Circular Selection command.
`class`
`ClassChecker`
Checks for duplicate class and JAR files in the plugins folders.
`class`
`Clipboard`
Copies/pastes images to/from the system clipboard.
`class`
`Colors`
This plugin implements most of the Edit/Options/Colors command.
`class`
`CommandFinder`
`class`
`CommandLister`
This class is used by the Plugins/Shortcuts/List Shortcuts command to display a list keyboard shortcuts.
`class`
`Commands`
Runs miscellaneous File and Window menu commands.
`class`
`Compiler`
Compiles and runs plugins using the javac compiler.
`class`
`CompositeConverter`
This plugin implements the Image/Color/Make Composite command.
`class`
`Concatenator`
This plugin, which concatenates two or more images or stacks, implements the Image/Stacks/Tools/Concatenate command.
`class`
`ContrastEnhancer`
Implements ImageJ's Process/Enhance Contrast command.
`class`
`ControlPanel`
ControlPanel.
`class`
`Converter`
Implements the conversion commands in the Image/Type submenu.
`class`
`Coordinates`
The plugin implements the Image/Adjust/Coordinates command.
`class`
`DICOM`
This plugin decodes DICOM files.
`class`
`Distribution`
This plugin implements the Analyze/Distribution command.
`class`
`DragAndDrop`
This class opens images, roi's, luts and text files dragged and dropped on the "ImageJ" window.
`class`
`Duplicator`
This plugin implements the Image/Duplicate command.
`class`
`EventListener`
This plugin implements the Plugins/Utilities/Monitor Events command.
`class`
`FFT`
This class implements the FFT, Inverse FFT and Redisplay Power Spectrum commands in the Process/FFT submenu.
`class`
`FFTMath`
The class implements the Process/FFT/Math command.
`class`
`FileInfoVirtualStack`
This plugin opens a multi-page TIFF file, or a set of raw images, as a virtual stack.
`class`
`Filters3D`
`class`
`FITS_Reader`
Opens and displays FITS images.
`class`
`FITS_Writer`
This plugin saves a 16 or 32 bit image in FITS format.
`class`
`FolderOpener`
Implements the File/Import/Image Sequence command, which opens a folder of images as a stack.
`class`
`GaussianBlur3D`
`class`
`GelAnalyzer`
This plugin generates gel profile plots that can be analyzed using the wand tool.
`class`
`GIF_Reader`
This plugin opens GIFs and Animated GIFs.
`class`
`GifWriter`
Saves the active image in GIF format, or as an animated GIF if the image is a stack.
`class`
`Grid`
This class implements the Analyze/Tools/Grid command.
`class`
`GroupedZProjector`
Implements the Image/Stacks/Tools/Grouped Z Project command.
`class`
`Histogram`
This plugin implements the Analyze/Histogram command.
`class`
`Hotkeys`
Implements the Plugins/Hotkeys/Create Shortcut and Remove commands.
`class`
`HyperStackConverter`
Implements the "Stack to HyperStack", "RGB to HyperStack" and "HyperStack to Stack" commands.
`class`
`HyperStackMaker`
This plugin implements the File/New/Hyperstack command.
`class`
`HyperStackReducer`
Implements the Image/HyperStacks/Reduce Dimensionality command.
`class`
`ImageCalculator`
This plugin implements the Process/Image Calculator command.
`class`
`ImageInfo`
This plugin implements the Image/Show Info command.
`class`
`ImageJ_Updater`
This plugin implements the Help/Update ImageJ command.
`class`
`ImagesToStack`
Implements the Image/Stacks/Images to Stack" command.
`class`
`JavaProperties`
Displays the Java system properties in a text window.
`class`
`JavaScriptEvaluator`
Implements the text editor's Macros/Run command, and the IJ.runMacroFile() method, when the file name ends with ".js".
`class`
`JpegWriter`
The File/Save As/Jpeg command (FileSaver.saveAsJpeg() method) uses this plugin to save images in JPEG format.
`class`
`ListVirtualStack`
This plugin opens images specified by list of file paths as a virtual stack.
`class`
`LUT_Editor`
`class`
`LutLoader`
Opens NIH Image look-up tables (LUTs), 768 byte binary LUTs (256 reds, 256 greens and 256 blues), LUTs in text format, or generates the LUT specified by the string argument passed to the run() method.
`class`
`Macro_Runner`
This class runs macros and scripts installed in the Plugins menu as well as macros and scripts opened using the Plugins/Macros/Run command.
`class`
`MacroInstaller`
This plugin implements the Plugins/Macros/Install Macros command.
`class`
`MeasurementsWriter`
Saves a table as a csv or tab-delimited text file.
`class`
`Memory`
This plugin implements the Edit/Options/Memory command.
`class`
`MontageMaker`
Implements the Image/Stacks/Make Montage command.
`class`
`NewPlugin`
This class creates a new macro or the Java source for a new plugin.
`class`
`NextImageOpener`
`class`
`Options`
This plugin implements most of the commands in the Edit/Options sub-menu.
`class`
`Orthogonal_Views`
This plugin projects dynamically orthogonal XZ and YZ views of a stack.
`class`
`OverlayCommands`
This plugin implements the commands in the Image/Overlay menu.
`class`
`OverlayLabels`
This plugin implements the Image/Overlay/Labels command.
`class`
`PGM_Reader`
This plugin opens PxM format images.
`class`
`PluginInstaller`
Installs plugins dragged and dropped on the "ImageJ" window, or plugins, macros or scripts opened using the Plugins/Install command.
`class`
`PlugInInterpreter`
Plugins that run scripts (e.g., BeanShell, Jython) extend this class.
`class`
`PNG_Writer`
Saves in PNG format using the ImageIO classes.
`class`
`PNM_Writer`
`class`
`PointToolOptions`
This plugin implements the Edit/Options/Point Tool command.
`class`
`Profiler`
Implements the Analyze/Plot Profile and Edit/Options/Profile Plot Options commands.
`class`
`Projector`
This plugin creates a sequence of projections of a rotating volume (stack of slices) onto a plane using nearest-point (surface), brightest-point, or mean-value projection or a weighted combination of nearest- point projection with either of the other two methods (partial opacity).
`class`
`ProxySettings`
This plugin implements the Plugins/Utilities/Proxy Settings command.
`class`
`Raw`
This plugin implements the File/Import/Raw command.
`class`
`RectToolOptions`
This plugin implements the rounded rectangle tool dialog box.
`class`
`Resizer`
This plugin implements the Edit/Crop and Image/Adjust/Size commands.
`class`
`RGBStackConverter`
Converts a 2 or 3 slice stack, or a hyperstack, to RGB.
`class`
`RGBStackMerge`
This plugin implements the Image/Color/Merge Channels command.
`class`
`RoiEnlarger`
This plugin, which enlarges or shrinks selections, implements the Edit/Selection/Enlarge command.
`class`
`RoiInterpolator`
This class interpolates between ROIs in the ROI Manager.
`class`
`RoiReader`
Opens ImageJ, NIH Image and Scion Image for windows ROI outlines.
`class`
`RoiRotator`
This plugin implements the Edit/Selection/Rotate command.
`class`
`RoiScaler`
This plugin implements the Edit/Selection/Scale command.
`class`
`ScaleBar`
This plugin implements the Analyze/Tools/Scale Bar command.
`class`
`Scaler`
This plugin implements the Image/Scale command.
`class`
`ScreenGrabber`
This plugin implements the Plugins/Utilities/Capture Screen and Plugins/Utilities/Capture Image commands.
`class`
`Selection`
This plugin implements the commands in the Edit/Selection submenu.
`class`
`SimpleCommands`
This plugin implements the Plugins/Utilities/Unlock, Image/Rename and Plugins/Utilities/Search commands.
`class`
`Slicer`
Implements the Image/Stacks/Reslice command.
`class`
`SpecifyROI`
This plugin implements the Edit/Selection/Specify command.
`class`
`Stack_Statistics`
This plugin implements the Image/Stacks/Statistics command.
`class`
`StackCombiner`
This plugin implements the Image/Stacks/Combine command.
`class`
`StackEditor`
Implements the AddSlice, DeleteSlice and "Stack to Images" commands.
`class`
`StackInserter`
This plugin, which implements the Image/Stacks/Tools/Insert command, inserts an image or stack into another image or stack.
`class`
`StackMaker`
The plugin implements the Image/Stacks/Tools/Montage to Stack command.
`class`
`StackPlotter`
`class`
`StackReducer`
This plugin implements the Image/Stacks/Tools/Reduce command.
`class`
`StackReverser`
This plugin implements the Image/Transform/Flip Z and Image/Stacks/Tools/Reverse commands.
`class`
`StackWriter`
This plugin, which saves the images in a stack as separate files, implements the File/Save As/Image Sequence command.
`class`
`Startup`
This plugin implements the Edit/Options/Startup command.
`class`
`Straightener`
This plugin implements the Edit/Selection/Straighten command.
`class`
`SubHyperstackMaker`
This plugin is used by the Image/Stacks/Tools/Make Substack command to create substacks of hyperstacks.
`class`
`SubstackMaker`
This plugin implements the Image/Stacks/Tools/Make Substack command.
`class`
`SurfacePlotter`
`class`
`Text`
This plugin implements the Edit/Options/Fonts command and the dialog displayed when you double click on the text tool.
`class`
`TextFileReader`
This plugin displays the contents of a text file in a window.
`class`
`TextReader`
This plugin opens a tab or comma delimeted text file as an image.
`class`
`TextWriter`
This plugin implements the File/Save As/Text command, which saves the contents of Editor windows and TextWindows (e.g., "Log" and "Results").
`class`
`ThreadLister`
Displays thread information in a text window.
`class`
`Thresholder`
This plugin implements the Process/Binary/Make Binary and Convert to Mask commands.
`class`
`URLOpener`
Opens TIFFs, ZIP compressed TIFFs, DICOMs, GIFs and JPEGs using a URL.
`class`
`WandToolOptions`
This plugin implements the Edit/Options/Wand Tool command.
`class`
`WindowOrganizer`
This class implements the Window menu's "Show All", "Main Window", "Cascade" and "Tile" commands.
`class`
`XY_Reader`
This plugin implements the File/Import/XY Coordinates command.
`class`
`XYCoordinates`
Writes the XY coordinates and pixel values of all non-background pixels to a tab-delimited text file.
`class`
`ZAxisProfiler`
Implements the Image/Stacks/Plot Z-axis Profile command, which plots the selection mean gray value versus slice number.
`class`
`Zoom`
This plugin implements the commands in the Image/Zoom submenu.
`class`
`ZProjector`
This plugin performs a z-projection of the input stack.

## Uses of PlugIn in ij.plugin.frame

Classes in ij.plugin.frame that implement PlugIn
Modifier and Type
Class
Description
`class`
`Channels`
Displays the ImageJ "Channels" dialog.
`class`
`ColorPicker`
Implements the Image/Color/Color Picker command.
`class`
`ColorThresholder`
Selects pixels according to hsb or rgb components.
`class`
`Commands`
This plugin implements the Plugins>Utiltiees>Recent Commands command.
`class`
`ContrastAdjuster`
This plugin implements the Brightness/Contrast, Window/level and Color Balance commands, all in the Image/Adjust sub-menu.
`class`
`Editor`
This is a simple TextArea based editor for editing and compiling plugins.
`class`
`Fitter`
ImageJ plugin that does curve fitting using the modified CurveFitter class.
`class`
`LineWidthAdjuster`
Adjusts the width of line selections.
`class`
`MemoryMonitor`
This plugin continuously plots ImageJ's memory utilization.
`class`
`PasteController`
Implements ImageJ's Paste Control window.
`class`
`PlugInDialog`
This is a non-modal dialog that plugins can extend.
`class`
`PlugInFrame`
This is a closeable window that plugins can extend.
`class`
`Recorder`
This is ImageJ's macro recorder.
`class`
`RoiManager`
This plugin implements the Analyze/Tools/ROI Manager command.
`class`
`SyncWindows`
This class "synchronizes" mouse input in multiple windows.
`class`
`ThresholdAdjuster`
Adjusts the lower and upper threshold levels of the active image.

## Uses of PlugIn in ij.plugin.tool

Classes in ij.plugin.tool that implement PlugIn
Modifier and Type
Class
Description
`class`
`ArrowTool`
`class`
`BrushTool`
This class implements the Paintbrush Tool, which allows the user to draw on an image, or on an Overlay if "Paint on overlay" is enabled.
`class`
`MacroToolRunner`
`class`
`OverlayBrushTool`
`class`
`PixelInspectionTool`
This plugin continuously displays the pixel values of the cursor and its surroundings.
`class`
`PlugInTool`
`class`
`RoiRotationTool`