Isis Developer Reference
Isis::ScatterPlotWindow Class Reference

Scatter Plot Window. More...

#include <ScatterPlotWindow.h>

Inheritance diagram for Isis::ScatterPlotWindow:
Inheritance graph
Collaboration diagram for Isis::ScatterPlotWindow:
Collaboration graph

Public Types

enum  AlarmRangeUnits { CubeUnits , ScreenUnits }
 This enumeration differentiates alarming a strict cube DN box size from a screen region. More...
 
enum  MenuOptions {
  ShowHideMarkersMenuOption = 1 , ShowHideCurvesMenuOption = 2 , ShowTableMenuOption = 4 , SaveMenuOption = 8 ,
  PrintMenuOption = 16 , TrackMenuOption = 32 , BackgroundSwitchMenuOption = 64 , ShowHideGridMenuOption = 128 ,
  RenameLabelsMenuOption = 256 , SetDisplayRangeMenuOption = 512 , ResetScaleMenuOption = 1024 , ClearPlotMenuOption = 2048 ,
  DefaultHelpMenuOption = 4096 , LineFitMenuOption = 8192 , ConfigurePlotMenuOption = 16384 , AllMenuOptions
}
 There is a menu option for everything in the plot window's menu. More...
 

Public Slots

void forgetCubes ()
 This causes the window to lose it's pointers to the input cubes.
 
void clearPlot ()
 This method completely clears the plot of all plot items.
 
void configurePlotCurves ()
 This method creates a CubePlotCurveConfigureDialog object.
 
void createBestFitLine ()
 This method prompts the user to select the best fit line criterea.
 
void printPlot ()
 Provides printing support of the plot image.
 
void changePlotLabels ()
 This method creates the dialog box which allows the user to relabel the plot window.
 
void savePlot ()
 This method allows the user to save the plot as a png, jpg, or tif image file.
 
void setDefaultRange ()
 Resets the x/y min/max to the defaults.
 
void setLabels ()
 Makes the user specified changes to the plot labels.
 
void setUserValues ()
 This method sets the scale for the axis according to the user specified numbers.
 
void showHideAllMarkers ()
 Shows/Hides all the markers(symbols)
 
void showHideAllCurves ()
 This method shows or hides all of the curves in the plotWindow.
 
void resetScale ()
 Sets plot scale back to the defaults.
 
void showHideGrid ()
 This method hides/shows the grid on the plotWindow and changes the text for the action.
 
void showHelp ()
 This method creates and shows the help dialog box for the plot window.
 
void showTable ()
 This method is called from the showTable action on the tool bar There are some checks done to make sure there are data to fill the table.
 
void switchBackground ()
 This method toggles the plot background color between black and white.
 
void trackerEnabled ()
 Enables the plot mouse tracker.
 
void scheduleFillTable ()
 Fills in the table with the data from the current curves in the plotWindow once all current actions/activations are done.
 
void fillTable ()
 Fills in the table with the data from the current curves in the plotWindow immediately.
 

Signals

void closed ()
 Emitted when there is a close event on this window that will be accepted.
 
void plotChanged ()
 Emitted every time there is a change to the plot window.
 
void requestFillTable ()
 

Public Member Functions

 ScatterPlotWindow (QString title, Cube *xAxisCube, int xAxisBand, int xAxisBinCount, Cube *yAxisCube, int yAxisBand, int yAxisBinCount, QwtInterval sampleRange, QwtInterval lineRange, QWidget *parent)
 Create a scatter plot window with the given data.
 
virtual ~ScatterPlotWindow ()
 
bool alarmingPlot () const
 This indicates if we are alarming from viewport to plot.
 
bool alarmingViewport () const
 This indicates if we are alarming from plot to viewport.
 
QPair< int, int > alarmPlotBoxSize () const
 This is the sample/line box sizes for alarming from viewport to plot.
 
AlarmRangeUnits alarmViewportUnits () const
 This is the active alarming units for plot->viewport.
 
QPair< int, int > alarmViewportScreenBoxSize () const
 This is the alarming box size for plot->viewport in screen units.
 
QPair< double, double > alarmViewportDnBoxSize () const
 This is the alarming box size for plot->viewport in cube units (number of samples/lines).
 
bool eventFilter (QObject *o, QEvent *e)
 We override events done on the plot canvas for alarming purposes.
 
virtual void paint (MdiCubeViewport *vp, QPainter *painter)
 If the viewport is showing the x axis cube data or y axis cube data, and alarming is enabled, this paints alarmed values from the plot onto the viewport.
 
void setMousePosition (MdiCubeViewport *vp, QPoint mouseLoc)
 Saves the current mouse position in the viewport so that the plot can be alarmed around that position.
 
void setAlarmingPlot (bool)
 This enables or disables alarming viewport->plot.
 
void setAlarmingViewport (bool)
 This enables or disables alarming plot->viewport.
 
void setAlarmPlotBoxSize (int, int)
 This sets the box size for alarming viewport->plot in cube samples/lines.
 
void setAlarmViewportUnits (AlarmRangeUnits)
 This sets the units to be used for alarming plot->viewport.
 
void setAlarmViewportScreenBoxSize (int, int)
 This sets the screen pixel box size for alarming plot->viewport.
 
void setAlarmViewportDnBoxSize (double, double)
 This sets the cube DN box size for alarming plot->viewport.
 
virtual void add (CubePlotCurve *pc)
 This method adds the curves to the plot.
 
virtual void clearPlotCurves ()
 This method also clears the plot of all plot items, but does not call the table delete stuff This method is called from plotTool each time the changePlot() method is called.
 
bool canAdd (CubePlotCurve *curveToTest) const
 This method tests whethere or not a CubePlotCurve can be successfully added to this window.
 
QColor plotBackgroundColor () const
 Returns the plot's background color.
 
QList< CubePlotCurve * > plotCurves ()
 Get a comprehensive list of the plot curves inside of this plot window, excluding plot curves that are in the process of being removed.
 
QList< const CubePlotCurve * > plotCurves () const
 Get a comprehensive const list of the plot curves inside of this plot window, excluding plot curves that are in the process of being removed.
 
QList< QwtPlotSpectrogram * > plotSpectrograms ()
 Get a comprehensive list of the scatter plots (spectrograms) inside of this plot window.
 
QList< const QwtPlotSpectrogram * > plotSpectrograms () const
 Get a comprehensive const list of the scatter plots (spectrograms) inside of this plot window.
 
QString plotTitle () const
 Returns the plot title.
 
bool userCanAddCurves () const
 Ask if a user action can add this curve to this window in general.
 
PlotCurve::Units xAxisUnits () const
 This is the data-type of the curves' x data in this plot window.
 
PlotCurve::Units yAxisUnits () const
 This is the data-type of the curves' y data in this plot window.
 
void replot ()
 Reset the scale of the plot, replot it and emit plot changed.
 
void setAxisLabel (int axisId, QString title)
 Sets the plots given axis title to the given string.
 
void setPlotBackground (QColor c)
 Sets the plot background color to the given color.
 
void setPlotTitle (QString pt)
 Sets the plot title to the given string.
 
void setUserCanAddCurves (bool)
 Allow or disallow users from manually putting curves into this plot window through either copy-and-paste or drag-and-drop.
 
void showWindow ()
 Shows the plot window, and raises it to the front of any overlapping sibling widgets.
 
virtual void update (MdiCubeViewport *activeViewport)
 This is provided to allow children to react to tool updates.
 

Static Public Member Functions

static QString defaultWindowTitle ()
 This is the typical suffix for plot windows, it's here in case we want to update all plot windows to have a different ending than just 'Plot' on them (for example, 'Plot Window').
 
static QString settingsFileName (QString objectTitle)
 

Protected Slots

void colorPlot ()
 This method switches the color mode of the scatter plot from black and white to color and visa versa.
 
void showHideContour ()
 This method hides or displays the contour lines on the spectrogram.
 

Protected Member Functions

void createWidgets (MenuOptions optionsToProvide)
 This method is called by the constructor to create the plot, legend.
 
void disableAxisAutoScale ()
 This turns off scaling the x/y axes automatically.
 
virtual void dragEnterEvent (QDragEnterEvent *event)
 When a user drags data into our plot window, we need to indicate whether or not this data is compatible with this window.
 
virtual void dropEvent (QDropEvent *event)
 This is called when a user drops data into our window.
 
void mousePressEvent (QObject *object, QMouseEvent *e)
 This is a helper method for the eventFilter() method.
 
QwtPlotplot ()
 Get the plot encapsulated by this PlotWindow.
 
void setMenus (QList< QMenu * > menus, QList< QAction * > actions)
 Sets up the menus added from a parent object.
 
QwtPlotZoomer * zoomer ()
 Get this window's plot's zoomer.
 
QString settingsFileName () const
 
virtual void closeEvent (QCloseEvent *event)
 This method is overridden so that we can be sure to write the current settings of the Main window.
 
virtual void readSettings (QSize defaultSize=QSize())
 This method ensure that the settings get written even if the Main window was only hidden, not closed.
 

Detailed Description

Scatter Plot Window.

Author
????-??-?? Stacy Alley

Member Enumeration Documentation

◆ AlarmRangeUnits

This enumeration differentiates alarming a strict cube DN box size from a screen region.

Enumerator
CubeUnits 

Alarming is a DN range around the mouse.

ScreenUnits 

Alarming is a visible area around the mouse.

◆ MenuOptions

There is a menu option for everything in the plot window's menu.

This is provided so that you can enable/disable any given option.

Enumerator
ShowHideMarkersMenuOption 

This option is titled 'Hide All Symbols' which hides all markers.

ShowHideCurvesMenuOption 

This option is titled 'Hide All Curves' which makes all curves invisible.

ShowTableMenuOption 

This option brings up the table.

No table will be available without this option.

SaveMenuOption 

This option exports the plot into a standard image format.

No conversion to a standard image format file will be available without this option, but printing will still be available.

PrintMenuOption 

This option sends the plot to a printer.

TrackMenuOption 

This option enables mouse tracking on the plot area (displays next to the mouse which x/y point you are hovering over).

This option is by default disabled.

BackgroundSwitchMenuOption 

This option enables the ability for a user to change the background color of the plot from black to white.

ShowHideGridMenuOption 

This option enables the ability for a user to enable a grid over the plot area.

RenameLabelsMenuOption 

This option enables the ability for a user to change the x/y axis labels and plot title.

SetDisplayRangeMenuOption 

This option allows the user to set the x/y axis display value ranges.

ResetScaleMenuOption 

This option provides the user with an alternative zoom out button.

ClearPlotMenuOption 

This option allows the user to delete all of the data inside the plot.

If you don't want the user deleting a custom plot item, you should disable this option.

DefaultHelpMenuOption 

Not implemented.

LineFitMenuOption 

This option allows the user to create a best fit line for any of the scatter plot data or cube plot curve data in the window.

This allows the user to create new plot curves.

ConfigurePlotMenuOption 

This option allows the user to change the curve name, color, style size, and symbol of the curve.

AllMenuOptions 

This is all of the available menu options.

Constructor & Destructor Documentation

◆ ScatterPlotWindow()

Isis::ScatterPlotWindow::ScatterPlotWindow ( QString title,
Cube * xAxisCube,
int xAxisBand,
int xAxisBinCount,
Cube * yAxisCube,
int yAxisBand,
int yAxisBinCount,
QwtInterval sampleRange,
QwtInterval lineRange,
QWidget * parent )

Create a scatter plot window with the given data.

This will fully populate the window with scatter plot data automatically.

Parameters
titleThe window title and plot title
xAxisCubeThe cube to use for reading X values
xAxisBandThe band of the x axis cube to read
xAxisBinCountThe resolution of the x axis data
yAxisCubeThe cube to use for reading X values
yAxisBandThe band of the y axis cube to read
yAxisBinCountThe resolution of the y axis data
sampleRangeThe sample range, inclusive 1-based, to read data from
lineRangeThe line range, inclusive 1-based, to read data from
parentThe Qt-parent relationship parent widget

References colorPlot(), Isis::PlotWindow::disableAxisAutoScale(), Isis::Cube::fileName(), Isis::Null, Isis::PlotWindow::plot(), Isis::PlotWindow::replot(), ScreenUnits, showHideContour(), Isis::ScatterPlotData::xCubeMax(), Isis::ScatterPlotData::xCubeMin(), Isis::ScatterPlotData::yCubeMax(), Isis::ScatterPlotData::yCubeMin(), and Isis::PlotWindow::zoomer().

◆ ~ScatterPlotWindow()

Isis::ScatterPlotWindow::~ScatterPlotWindow ( )
virtual

Member Function Documentation

◆ add()

void Isis::PlotWindow::add ( CubePlotCurve * pc)
virtualinherited

◆ alarmingPlot()

bool Isis::ScatterPlotWindow::alarmingPlot ( ) const

This indicates if we are alarming from viewport to plot.

Returns
True if alarming viewport->plot, false otherwise

Referenced by setMousePosition().

◆ alarmingViewport()

bool Isis::ScatterPlotWindow::alarmingViewport ( ) const

This indicates if we are alarming from plot to viewport.

Returns
True if alarming plot->viewport, false otherwise

Referenced by paint().

◆ alarmPlotBoxSize()

QPair< int, int > Isis::ScatterPlotWindow::alarmPlotBoxSize ( ) const

This is the sample/line box sizes for alarming from viewport to plot.

Returns
Sample Box Size, Line Box Size

◆ alarmViewportDnBoxSize()

QPair< double, double > Isis::ScatterPlotWindow::alarmViewportDnBoxSize ( ) const

This is the alarming box size for plot->viewport in cube units (number of samples/lines).

If the current units are not cube units then this is not actively alarming the given box. These values are valid even when alarming is a screen pixel box, just not use, and they are never translated/re-calculated based on the conversion from screen pixels to cube pixels.

Returns
The sample/line alarming box size

◆ alarmViewportScreenBoxSize()

QPair< int, int > Isis::ScatterPlotWindow::alarmViewportScreenBoxSize ( ) const

This is the alarming box size for plot->viewport in screen units.

If the current units are not screen units, this is not actively alarming the given box. These values are valid even when alarming is a Cube DN box, just not use, and they are never translated/re-calculated based on the conversion from screen pixels to cube pixels.

Returns
The screen pixel alarming box size

◆ alarmViewportUnits()

ScatterPlotWindow::AlarmRangeUnits Isis::ScatterPlotWindow::alarmViewportUnits ( ) const

This is the active alarming units for plot->viewport.

We either alarm a screen pixel box size or a cube sample/line range around the mouse.

Returns
The units used for alarming plot->viewport

◆ canAdd()

bool Isis::PlotWindow::canAdd ( CubePlotCurve * curveToTest) const
inherited

This method tests whethere or not a CubePlotCurve can be successfully added to this window.

Plot curves with mismatched X/Y data from the plot's x/y axis types can not be added to the window. This does not test whether or not a user is allowed to add the curve manually, just if the curve can be added programatically.

Parameters
curveToTestThe plot curve to test for compatibility with this window
Returns
True if the curve is compatible with this window, false otherwise

Referenced by Isis::PlotWindow::add().

◆ changePlotLabels

void Isis::PlotWindow::changePlotLabels ( )
slotinherited

This method creates the dialog box which allows the user to relabel the plot window.

References Isis::PlotWindow::plot(), and Isis::PlotWindow::setLabels().

◆ clearPlot

void Isis::PlotWindow::clearPlot ( )
slotinherited

This method completely clears the plot of all plot items.

i.e. curves and markers, which also deletes the legend also calls the necessary method to delete the table stuff

References Isis::PlotWindow::clearPlotCurves(), and Isis::TableMainWindow::table().

◆ clearPlotCurves()

void Isis::PlotWindow::clearPlotCurves ( )
virtualinherited

This method also clears the plot of all plot items, but does not call the table delete stuff This method is called from plotTool each time the changePlot() method is called.

References Isis::PlotWindow::replot().

Referenced by Isis::PlotWindow::clearPlot().

◆ closed

void Isis::PlotWindow::closed ( )
signalinherited

Emitted when there is a close event on this window that will be accepted.

Referenced by Isis::PlotWindow::eventFilter().

◆ closeEvent()

void Isis::MainWindow::closeEvent ( QCloseEvent * event)
protectedvirtualinherited

This method is overridden so that we can be sure to write the current settings of the Main window.

Parameters
event

Reimplemented in Isis::TableMainWindow, and Isis::ViewportMainWindow.

Referenced by Isis::TableMainWindow::closeEvent(), and Isis::ViewportMainWindow::closeEvent().

◆ colorPlot

void Isis::ScatterPlotWindow::colorPlot ( )
protectedslot

This method switches the color mode of the scatter plot from black and white to color and visa versa.

References Isis::PlotWindow::plot(), and Isis::PlotWindow::replot().

Referenced by ScatterPlotWindow().

◆ configurePlotCurves

void Isis::PlotWindow::configurePlotCurves ( )
slotinherited

This method creates a CubePlotCurveConfigureDialog object.

When there are no curves in this PlotWindow, the dialog will not be created.

References Isis::PlotWindow::plotChanged(), and Isis::PlotWindow::plotCurves().

◆ createBestFitLine

void Isis::PlotWindow::createBestFitLine ( )
slotinherited

This method prompts the user to select the best fit line criterea.

The PlotWindowBestFitDialog will create the best fit line automatically when the user asks for one, so we don't need to worry about doing any more than showing a dialog here.

References Isis::PlotWindow::plot().

◆ createWidgets()

void Isis::PlotWindow::createWidgets ( MenuOptions optionsToProvide)
protectedinherited

This method is called by the constructor to create the plot, legend.

zoomer, and main window.

Parameters
optionsToProvideThis is a bit-flag containing information on which menu options to give the user/put in the GUI.

Referenced by Isis::PlotWindow::PlotWindow().

◆ defaultWindowTitle()

QString Isis::PlotWindow::defaultWindowTitle ( )
staticinherited

This is the typical suffix for plot windows, it's here in case we want to update all plot windows to have a different ending than just 'Plot' on them (for example, 'Plot Window').

Returns
A string to be appended to your window title

Referenced by Isis::HistogramTool::createWindow(), Isis::SpatialPlotTool::createWindow(), and Isis::SpectralPlotTool::createWindow().

◆ disableAxisAutoScale()

void Isis::PlotWindow::disableAxisAutoScale ( )
protectedinherited

This turns off scaling the x/y axes automatically.

Use this if you have a very specific axis range you want to use, but keep in mind that users (potentially) have an option to re-enable axis auto scaling if they want to.

Referenced by ScatterPlotWindow().

◆ dragEnterEvent()

void Isis::PlotWindow::dragEnterEvent ( QDragEnterEvent * event)
protectedvirtualinherited

When a user drags data into our plot window, we need to indicate whether or not this data is compatible with this window.

This checks userCanAddCurve() on the drag & drop data and allows or disallowed the event accordingly.

Parameters
eventThe drag event to test

◆ dropEvent()

void Isis::PlotWindow::dropEvent ( QDropEvent * event)
protectedvirtualinherited

This is called when a user drops data into our window.

The dragEnterEvent() must have said that this curve is compatible with this window. This provides all of the available options to the user (if any) set by the creator of the drag & drop event (i.e. whether or not we can move or just copy). If there are options, we create a context menu - otherwise the default action is taken.

Parameters
eventThe drop event containing the curve to put into the current window.

References Isis::PlotWindow::add(), and Isis::PlotWindow::plotChanged().

◆ eventFilter()

bool Isis::ScatterPlotWindow::eventFilter ( QObject * o,
QEvent * e )
virtual

We override events done on the plot canvas for alarming purposes.

This method will forward mouse moves and leaves to the appropriate methods.

Parameters
oThe object on which the event happened
eThe event that triggered this method call
Returns
True if no more processing should happen with this event

Reimplemented from Isis::PlotWindow.

References Isis::PlotWindow::eventFilter(), and Isis::PlotWindow::plot().

◆ fillTable

void Isis::PlotWindow::fillTable ( )
slotinherited

◆ forgetCubes

void Isis::ScatterPlotWindow::forgetCubes ( )
slot

This causes the window to lose it's pointers to the input cubes.

When a viewport is closed, this will prevent using the cube pointers still for alarming.

◆ mousePressEvent()

void Isis::PlotWindow::mousePressEvent ( QObject * object,
QMouseEvent * event )
protectedinherited

This is a helper method for the eventFilter() method.

When a mouse press event is seen, this handles it. For example, if the user right clicks and the clipboard contains compatible data then this will give a paste option.

Parameters
objectThe object which was pressed
eventThe mouse event which contains button information

Referenced by Isis::PlotWindow::eventFilter().

◆ paint()

void Isis::ScatterPlotWindow::paint ( MdiCubeViewport * vp,
QPainter * painter )
virtual

If the viewport is showing the x axis cube data or y axis cube data, and alarming is enabled, this paints alarmed values from the plot onto the viewport.

Parameters
vpThe viewport that might need to be alarmed/painted red
painterThe painter to paint with

Reimplemented from Isis::PlotWindow.

References alarmingViewport(), Isis::ViewportBuffer::bufferXYRect(), Isis::ViewportBuffer::getLine(), Isis::IsSpecial(), Isis::Null, Isis::PlotWindow::paint(), Isis::Cube::pixelType(), Isis::Cube::read(), and Isis::ViewportBuffer::working().

◆ plot()

◆ plotBackgroundColor()

QColor Isis::PlotWindow::plotBackgroundColor ( ) const
inherited

Returns the plot's background color.

Returns
QColor

◆ plotChanged

void Isis::PlotWindow::plotChanged ( )
signalinherited

◆ plotCurves() [1/2]

QList< CubePlotCurve * > Isis::PlotWindow::plotCurves ( )
inherited

Get a comprehensive list of the plot curves inside of this plot window, excluding plot curves that are in the process of being removed.

Returns
The plot curves contained inside of this plot window

Referenced by Isis::PlotWindow::configurePlotCurves(), Isis::PlotWindow::fillTable(), Isis::PlotWindow::paint(), Isis::PlotWindow::showTable(), and Isis::PlotWindow::~PlotWindow().

◆ plotCurves() [2/2]

QList< const CubePlotCurve * > Isis::PlotWindow::plotCurves ( ) const
inherited

Get a comprehensive const list of the plot curves inside of this plot window, excluding plot curves that are in the process of being removed.

Returns
The const plot curves contained inside of this plot window

◆ plotSpectrograms() [1/2]

QList< QwtPlotSpectrogram * > Isis::PlotWindow::plotSpectrograms ( )
inherited

Get a comprehensive list of the scatter plots (spectrograms) inside of this plot window.

Returns
The spectrograms (scatter plots) contained inside of this plot window

◆ plotSpectrograms() [2/2]

QList< const QwtPlotSpectrogram * > Isis::PlotWindow::plotSpectrograms ( ) const
inherited

Get a comprehensive const list of the scatter plots (spectrograms) inside of this plot window.

Returns
The const spectrograms (scatter plots) contained inside of this plot window

◆ plotTitle()

QString Isis::PlotWindow::plotTitle ( ) const
inherited

Returns the plot title.

Returns
QwtText

◆ printPlot

void Isis::PlotWindow::printPlot ( )
slotinherited

Provides printing support of the plot image.

◆ readSettings()

void Isis::MainWindow::readSettings ( QSize defaultSize = QSize())
protectedvirtualinherited

This method ensure that the settings get written even if the Main window was only hidden, not closed.

Parameters
eventThis method is called from the constructor so that when the Main window is created, it know's it's size and location.

References Isis::MainWindow::settingsFileName().

Referenced by Isis::PlotWindow::PlotWindow(), Isis::TableMainWindow::TableMainWindow(), and Isis::ViewportMainWindow::ViewportMainWindow().

◆ replot()

◆ requestFillTable

void Isis::PlotWindow::requestFillTable ( )
signalinherited

◆ resetScale

void Isis::PlotWindow::resetScale ( )
slotinherited

Sets plot scale back to the defaults.

References Isis::PlotCurve::Band.

Referenced by Isis::PlotWindow::add(), and Isis::PlotWindow::replot().

◆ savePlot

void Isis::PlotWindow::savePlot ( )
slotinherited

This method allows the user to save the plot as a png, jpg, or tif image file.

◆ scheduleFillTable

void Isis::PlotWindow::scheduleFillTable ( )
slotinherited

Fills in the table with the data from the current curves in the plotWindow once all current actions/activations are done.

This is provided for performance reasons - re-plotting 4 curves only requires one fillTable at the end, instead of after each curve change.

References Isis::PlotWindow::requestFillTable().

Referenced by Isis::PlotWindow::PlotWindow().

◆ setAlarmingPlot()

void Isis::ScatterPlotWindow::setAlarmingPlot ( bool alarming)

This enables or disables alarming viewport->plot.

Parameters
alarmingTrue to enable alarming viewport->plot, false to disable alarming viewport->plot

◆ setAlarmingViewport()

void Isis::ScatterPlotWindow::setAlarmingViewport ( bool alarming)

This enables or disables alarming plot->viewport.

Parameters
alarmingTrue to enable alarming plot->viewport, false to disable alarming plot->viewport

◆ setAlarmPlotBoxSize()

void Isis::ScatterPlotWindow::setAlarmPlotBoxSize ( int samples,
int lines )

This sets the box size for alarming viewport->plot in cube samples/lines.

Parameters
samplesHow many samples (total) the alarming box size should be. This should be odd because the mouse is in the center.
linesHow many lines (total) the alarming box size should be. This should be odd because the mouse is in the center.

◆ setAlarmViewportDnBoxSize()

void Isis::ScatterPlotWindow::setAlarmViewportDnBoxSize ( double xDnBoxSize,
double yDnBoxSize )

This sets the cube DN box size for alarming plot->viewport.

If the current alarming units for plot->viewport isn't cube pixels, these values will still be stored off and just not be active until the units are changed.

Parameters
xDnBoxSizeThe Cube DN box size (total) around the mouse in the X direction to be used for alarming.
yDnBoxSizeThe Cube DN box size (total) around the mouse in the Y direction to be used for alarming.

◆ setAlarmViewportScreenBoxSize()

void Isis::ScatterPlotWindow::setAlarmViewportScreenBoxSize ( int width,
int height )

This sets the screen pixel box size for alarming plot->viewport.

If the current alarming units for plot->viewport isn't screen pixels, these values will still be stored off and just not be active until the units are changed.

Parameters
widthThe screen pixels (total) around the mouse in the X direction to be used for alarming.
heightThe screen pixels (total) around the mouse in the Y direction to be used for alarming.

◆ setAlarmViewportUnits()

void Isis::ScatterPlotWindow::setAlarmViewportUnits ( AlarmRangeUnits units)

This sets the units to be used for alarming plot->viewport.

Parameters
unitsThe units (screen or cube DN range) to use for alarming.

◆ setAxisLabel()

void Isis::PlotWindow::setAxisLabel ( int axisId,
QString title )
inherited

Sets the plots given axis title to the given string.

Parameters
axisId
title

◆ setDefaultRange

void Isis::PlotWindow::setDefaultRange ( )
slotinherited

Resets the x/y min/max to the defaults.

References Isis::PlotWindow::plot(), and Isis::PlotWindow::setUserValues().

◆ setLabels

void Isis::PlotWindow::setLabels ( )
slotinherited

Makes the user specified changes to the plot labels.

Referenced by Isis::PlotWindow::changePlotLabels().

◆ setMenus()

void Isis::PlotWindow::setMenus ( QList< QMenu * > menu,
QList< QAction * > actions )
protectedinherited

Sets up the menus added from a parent object.

Parameters
menu
actions

◆ setMousePosition()

void Isis::ScatterPlotWindow::setMousePosition ( MdiCubeViewport * vp,
QPoint mouseLoc )

Saves the current mouse position in the viewport so that the plot can be alarmed around that position.

Parameters
vpThe viewport that received the mouse event
mouseLocThe location on the viewport wheere the mouse is, in screen coordinates.

References alarmingPlot(), Isis::ScatterPlotData::clearAlarms(), Isis::IsSpecial(), Isis::Null, Isis::Cube::pixelType(), Isis::PlotWindow::plot(), and Isis::Cube::read().

◆ setPlotBackground()

void Isis::PlotWindow::setPlotBackground ( QColor c)
inherited

Sets the plot background color to the given color.

Parameters
c

Referenced by Isis::HistogramPlotWindow::HistogramPlotWindow(), and Isis::PlotWindow::PlotWindow().

◆ setPlotTitle()

void Isis::PlotWindow::setPlotTitle ( QString pt)
inherited

Sets the plot title to the given string.

This does not update the window title.

Parameters
ptThe plot title to use

Referenced by Isis::PlotWindow::PlotWindow().

◆ settingsFileName() [1/2]

◆ settingsFileName() [2/2]

QString Isis::MainWindow::settingsFileName ( QString objectTitle)
staticinherited

◆ setUserCanAddCurves()

void Isis::PlotWindow::setUserCanAddCurves ( bool userHasControl)
inherited

Allow or disallow users from manually putting curves into this plot window through either copy-and-paste or drag-and-drop.

Parameters
userHasControlTrue if users can add curves manually, false otherwise

◆ setUserValues

void Isis::PlotWindow::setUserValues ( )
slotinherited

This method sets the scale for the axis according to the user specified numbers.

References Isis::PlotWindow::replot().

Referenced by Isis::PlotWindow::setDefaultRange().

◆ showHelp

void Isis::PlotWindow::showHelp ( )
slotinherited

This method creates and shows the help dialog box for the plot window.

this is called from the Help-->Basic Help menu.

◆ showHideAllCurves

void Isis::PlotWindow::showHideAllCurves ( )
slotinherited

This method shows or hides all of the curves in the plotWindow.

◆ showHideAllMarkers

void Isis::PlotWindow::showHideAllMarkers ( )
slotinherited

Shows/Hides all the markers(symbols)

◆ showHideContour

void Isis::ScatterPlotWindow::showHideContour ( )
protectedslot

This method hides or displays the contour lines on the spectrogram.

References Isis::PlotWindow::replot().

Referenced by ScatterPlotWindow().

◆ showHideGrid

void Isis::PlotWindow::showHideGrid ( )
slotinherited

This method hides/shows the grid on the plotWindow and changes the text for the action.

◆ showTable

void Isis::PlotWindow::showTable ( )
slotinherited

This method is called from the showTable action on the tool bar There are some checks done to make sure there are data to fill the table.

References Isis::PlotWindow::fillTable(), Isis::PlotWindow::plotCurves(), Isis::TableMainWindow::setTrackListItems(), and Isis::TableMainWindow::syncColumns().

◆ showWindow()

void Isis::PlotWindow::showWindow ( )
inherited

Shows the plot window, and raises it to the front of any overlapping sibling widgets.

Referenced by Isis::AbstractPlotTool::showPlotWindow().

◆ switchBackground

void Isis::PlotWindow::switchBackground ( )
slotinherited

This method toggles the plot background color between black and white.

◆ trackerEnabled

void Isis::PlotWindow::trackerEnabled ( )
slotinherited

Enables the plot mouse tracker.

◆ update()

void Isis::PlotWindow::update ( MdiCubeViewport * activeViewport)
virtualinherited

This is provided to allow children to react to tool updates.

This is useful for example for band markers in the spectral plots.

Parameters
activeViewportThe currently selected viewport

Reimplemented in Isis::SpectralPlotWindow.

◆ userCanAddCurves()

bool Isis::PlotWindow::userCanAddCurves ( ) const
inherited

Ask if a user action can add this curve to this window in general.

This verifies that the user is allowed to add curves to this window but not that a particular curve is compatible with this window.

Returns
True if the user should be allowed to paste/drop curves in general into this window

◆ xAxisUnits()

PlotCurve::Units Isis::PlotWindow::xAxisUnits ( ) const
inherited

This is the data-type of the curves' x data in this plot window.

All of the cube plot curves must have the same units for x axis data or the display will not make sense.

Returns
X-Axis Curve Data Units

Referenced by Isis::PlotWindow::PlotWindow().

◆ yAxisUnits()

PlotCurve::Units Isis::PlotWindow::yAxisUnits ( ) const
inherited

This is the data-type of the curves' y data in this plot window.

All of the cube plot curves must have the same units for y-left axis data (y-right sometimes has different units) or the display will not make sense.

Returns
Left Y-Axis Data Units

Referenced by Isis::PlotWindow::PlotWindow().

◆ zoomer()

QwtPlotZoomer * Isis::PlotWindow::zoomer ( )
protectedinherited

Get this window's plot's zoomer.

Returns
A QwtPlotZoomer which is associated with this PlotWindow's QwtPlot

Referenced by ScatterPlotWindow().


The documentation for this class was generated from the following files: