Isis 3.0 Developer's Reference (API) |
Home |
Parent class for plotting tools which provides common functionality. More...
#include <AbstractPlotTool.h>
Inherits Isis::Tool.
Inherited by Isis::HistogramTool, Isis::SpatialPlotTool, and Isis::SpectralPlotTool.
Public Slots | |
void | removeWindow (QObject *) |
When a user closes a window, we want to remove that window from our QComboBox. | |
void | repaintViewports (CubePlotCurve *) |
This method causes the viewports corresponding with the given CubePlotCurve to be repainted with all of the area's of interest associated with the CubePlotCurve's plotwindow. | |
void | showPlotWindow () |
displays the plot window | |
void | activate (bool) |
Activates the tool. | |
void | setCubeViewport (MdiCubeViewport *cvp) |
Sets the current viewport to the given cvp. | |
Signals | |
void | clearWarningSignal () |
void | viewportChanged () |
Public Member Functions | |
AbstractPlotTool (QWidget *parent) | |
This constructs a plot tool. | |
virtual | ~AbstractPlotTool () |
virtual void | paintViewport (MdiCubeViewport *vp, QPainter *painter) |
This method paints the polygons of the copied curves onto the cubeviewport. | |
void | addTo (ViewportMainWindow *mw) |
Adds the tool to the application. | |
void | addTo (ToolPad *toolpad) |
Adds the tool to the toolpad. | |
virtual void | addTo (QMenu *menu) |
requires the programmer to have this member | |
virtual void | addTo (Workspace *ws) |
requires the programmer to have this member | |
virtual void | addToPermanent (QToolBar *toolbar) |
requires the programmer to have this member | |
void | addToActive (QToolBar *toolbar) |
QString | toolIconDir () const |
returns the path to the icon directory. | |
Protected Types | |
typedef QVector < MdiCubeViewport * > | CubeViewportList |
A list of cubeviewports. | |
Protected Slots | |
void | repaintViewports () |
virtual void | rubberBandComplete () |
virtual void | screenPixelsChanged () |
This is called when actions change which pixels from the cube are displayed. | |
virtual void | mouseEnter () |
virtual void | mouseMove (QPoint p) |
virtual void | mouseMove (QPoint p, Qt::MouseButton) |
virtual void | mouseLeave () |
virtual void | mouseDoubleClick (QPoint p) |
virtual void | mouseButtonPress (QPoint p, Qt::MouseButton s) |
virtual void | mouseButtonRelease (QPoint p, Qt::MouseButton s) |
Resets the Warning to Nowarning when a different activity occurs on the application. | |
virtual void | updateMeasure () |
virtual void | scaleChanged () |
virtual void | stretchRequested (MdiCubeViewport *, int) |
void | registerTool (MdiCubeViewport *viewport) |
Registers the tool to the viewport. | |
Protected Member Functions | |
PlotWindow * | addWindow () |
QWidget * | createToolBarWidget (QStackedWidget *parent) |
Creates the widgets for the tool bar. | |
virtual PlotWindow * | createWindow ()=0 |
virtual void | updateTool () |
Updates the tool. | |
QList< MdiCubeViewport * > | viewportsToPlot () |
QList< PlotWindow * > | plotWindows () |
virtual void | detachCurves ()=0 |
This will be called when the selected plot window changes. | |
PlotWindow * | selectedWindow (bool createIfNeeded=true) |
MdiCubeViewport * | cubeViewport () const |
Return the current cubeviewport. | |
CubeViewportList * | cubeViewportList () const |
Return the list of cubeviewports. | |
virtual QAction * | toolPadAction (ToolPad *toolpad) |
Anytime a tool is created, you must setup a tool pad action with it. | |
virtual QString | menuName () const |
Anytime a tool is created, you must give it a name for the menu. | |
virtual void | addConnections (MdiCubeViewport *cvp) |
Anytime a tool is created, you must add the connections for it. | |
virtual void | removeConnections (MdiCubeViewport *cvp) |
Anytime a tool is created, you must be able to remove it's connections. | |
virtual void | enableRubberBandTool () |
Anytime a tool is created, you may use the rubber band tool. | |
Static Protected Member Functions | |
static CubePlotCurve * | createCurve (QString name, QPen pen, PlotCurve::Units xUnits, PlotCurve::Units yUnits) |
Protected Attributes | |
MdiCubeViewport * | p_cvp |
current cubeviewport | |
Workspace * | p_workspace |
Parent class for plotting tools which provides common functionality.
This qview tool is designed to be inherited from by tools which create plots. This class provides common functionality such as opening new plot windows.
typedef QVector< MdiCubeViewport * > Isis::Tool::CubeViewportList [protected, inherited] |
A list of cubeviewports.
Isis::AbstractPlotTool::AbstractPlotTool | ( | QWidget * | parent | ) |
This constructs a plot tool.
The plot tool graphs either DN values across a line, or statistics across a spectrum (bands).
parent |
Isis::AbstractPlotTool::~AbstractPlotTool | ( | ) | [virtual] |
void Tool::activate | ( | bool | on | ) | [slot, inherited] |
Activates the tool.
on |
References Isis::Tool::clearWarningSignal().
Referenced by Isis::Tool::addTo(), Isis::AdvancedTrackTool::addTo(), Isis::RubberBandTool::disableBanding(), Isis::RubberBandTool::enableBanding(), Isis::TrackTool::TrackTool(), and Isis::WindowTool::WindowTool().
virtual void Isis::Tool::addConnections | ( | MdiCubeViewport * | cvp | ) | [inline, protected, virtual, inherited] |
Anytime a tool is created, you must add the connections for it.
cvp |
Reimplemented in Isis::TrackTool, and Isis::WindowTool.
void Tool::addTo | ( | Workspace * | ws | ) | [virtual, inherited] |
requires the programmer to have this member
Adds the given workspace to the cubeviewport list.
ws |
Reimplemented in Isis::FileTool, and Isis::WindowTool.
References Isis::Tool::p_workspace, Isis::Tool::registerTool(), and Isis::Tool::setCubeViewport().
virtual void Isis::Tool::addTo | ( | QMenu * | menu | ) | [inline, virtual, inherited] |
requires the programmer to have this member
menu |
Reimplemented in Isis::AdvancedTrackTool, Isis::BlinkTool, Isis::FileTool, Isis::FindTool, Isis::HelpTool, Isis::MeasureTool, Isis::PanTool, Isis::SpecialPixelTool, Isis::SpectralPlotTool, Isis::StretchTool, Isis::WindowTool, and Isis::ZoomTool.
void Tool::addTo | ( | ToolPad * | toolpad | ) | [inherited] |
Adds the tool to the toolpad.
toolpad |
References Isis::Tool::activate(), Isis::ToolPad::addAction(), and Isis::Tool::toolPadAction().
void Tool::addTo | ( | ViewportMainWindow * | pViewPortMnWin | ) | [inherited] |
Adds the tool to the application.
pViewPortMnWin |
References Isis::ViewportMainWindow::activeToolBar(), Isis::Tool::addToActive(), Isis::Tool::addToPermanent(), Isis::ViewportMainWindow::getMenu(), Isis::Tool::menuName(), Isis::ViewportMainWindow::permanentToolBar(), Isis::ViewportMainWindow::toolPad(), and Isis::ViewportMainWindow::workspace().
Referenced by Isis::ViewportMainWindow::ViewportMainWindow().
void Tool::addToActive | ( | QToolBar * | toolbar | ) | [inherited] |
toolbar |
References Isis::Tool::createToolBarWidget().
Referenced by Isis::Tool::addTo().
virtual void Isis::Tool::addToPermanent | ( | QToolBar * | toolbar | ) | [inline, virtual, inherited] |
requires the programmer to have this member
toolbar |
Reimplemented in Isis::AdvancedTrackTool, Isis::BlinkTool, Isis::FileTool, Isis::HelpTool, Isis::SpecialPixelTool, and Isis::WindowTool.
Referenced by Isis::Tool::addTo().
PlotWindow * Isis::AbstractPlotTool::addWindow | ( | ) | [protected] |
Referenced by Isis::SpectralPlotTool::refreshPlot().
void Tool::clearWarningSignal | ( | ) | [signal, inherited] |
CubePlotCurve * Isis::AbstractPlotTool::createCurve | ( | QString | name, | |
QPen | pen, | |||
PlotCurve::Units | xUnits, | |||
PlotCurve::Units | yUnits | |||
) | [static, protected] |
QWidget * Isis::AbstractPlotTool::createToolBarWidget | ( | QStackedWidget * | parent | ) | [protected, virtual] |
Creates the widgets for the tool bar.
parent |
Reimplemented from Isis::Tool.
Reimplemented in Isis::HistogramTool, Isis::SpatialPlotTool, and Isis::SpectralPlotTool.
virtual PlotWindow* Isis::AbstractPlotTool::createWindow | ( | ) | [protected, pure virtual] |
Implemented in Isis::HistogramTool, Isis::SpatialPlotTool, and Isis::SpectralPlotTool.
MdiCubeViewport* Isis::Tool::cubeViewport | ( | ) | const [inline, protected, inherited] |
Return the current cubeviewport.
References Isis::Tool::p_cvp.
Referenced by Isis::WindowTool::addConnections(), Isis::TrackTool::addConnections(), Isis::StretchTool::mouseButtonRelease(), Isis::RubberBandTool::mouseButtonRelease(), Isis::PanTool::mouseButtonRelease(), Isis::TrackTool::mouseMove(), Isis::ScatterPlotTool::mouseMove(), Isis::RubberBandTool::mouseMove(), Isis::RubberBandTool::paintViewport(), Isis::SpectralPlotTool::refreshPlot(), Isis::SpatialPlotTool::refreshPlot(), Isis::WindowTool::removeConnections(), Isis::TrackTool::removeConnections(), Isis::ZoomTool::rubberBandComplete(), Isis::StretchTool::rubberBandComplete(), Isis::ScatterPlotTool::showNewScatterPlotConfig(), Isis::StretchTool::stretchGlobal(), Isis::StretchTool::stretchGlobalAllBands(), Isis::StretchTool::stretchRegional(), Isis::StretchTool::updateAdvStretchDialogforAll(), Isis::StretchTool::updateHistograms(), Isis::ZoomTool::updateTool(), Isis::WindowTool::updateTool(), Isis::StretchTool::updateTool(), Isis::SpecialPixelTool::updateTool(), and viewportsToPlot().
Tool::CubeViewportList * Tool::cubeViewportList | ( | ) | const [protected, inherited] |
Return the list of cubeviewports.
References Isis::Workspace::cubeViewportList(), and Isis::Tool::p_workspace.
Referenced by Isis::RubberBandTool::mouseButtonRelease(), Isis::PanTool::mouseButtonRelease(), Isis::RubberBandTool::mouseMove(), Isis::ScatterPlotTool::repaintViewports(), Isis::ZoomTool::rubberBandComplete(), Isis::MeasureTool::rubberBandComplete(), Isis::StretchTool::stretchGlobalAllViewports(), and Isis::WindowTool::updateTool().
virtual void Isis::AbstractPlotTool::detachCurves | ( | ) | [protected, pure virtual] |
This will be called when the selected plot window changes.
The existing curves need to be detached (forgotten, but not deleted). The curves are being detached between the previously selected window and the tool.
Implemented in Isis::HistogramTool, Isis::SpatialPlotTool, and Isis::SpectralPlotTool.
void Tool::enableRubberBandTool | ( | ) | [protected, virtual, inherited] |
Anytime a tool is created, you may use the rubber band tool.
Enable the use of the rubberband tool.
Reimplemented in Isis::EditTool, Isis::HistogramTool, Isis::MeasureTool, Isis::RubberBandTool, Isis::SpatialPlotTool, Isis::SpectralPlotTool, Isis::StretchTool, and Isis::ZoomTool.
References Isis::RubberBandTool::disable().
virtual QString Isis::Tool::menuName | ( | ) | const [inline, protected, virtual, inherited] |
Anytime a tool is created, you must give it a name for the menu.
Reimplemented in Isis::AdvancedTrackTool, Isis::BandTool, Isis::BlinkTool, Isis::FileTool, Isis::FindTool, Isis::HelpTool, Isis::MeasureTool, Isis::PanTool, Isis::SpecialPixelTool, Isis::StretchTool, Isis::WindowTool, and Isis::ZoomTool.
Referenced by Isis::Tool::addTo().
void Tool::mouseButtonPress | ( | QPoint | p, | |
Qt::MouseButton | s | |||
) | [protected, virtual, slot, inherited] |
p | ||
s |
Reimplemented in Isis::PanTool, and Isis::RubberBandTool.
References Isis::Tool::clearWarningSignal().
void Tool::mouseButtonRelease | ( | QPoint | p, | |
Qt::MouseButton | s | |||
) | [protected, virtual, slot, inherited] |
Resets the Warning to Nowarning when a different activity occurs on the application.
This is called by all the mouseButtonRelease events in all the tools.
p | ||
s |
Reimplemented in Isis::EditTool, Isis::FindTool, Isis::PanTool, Isis::RubberBandTool, Isis::StatisticsTool, and Isis::StretchTool.
References Isis::Tool::clearWarningSignal().
void Tool::mouseDoubleClick | ( | QPoint | p | ) | [protected, virtual, slot, inherited] |
virtual void Isis::Tool::mouseEnter | ( | ) | [inline, protected, virtual, slot, inherited] |
virtual void Isis::Tool::mouseLeave | ( | ) | [inline, protected, virtual, slot, inherited] |
Reimplemented in Isis::AdvancedTrackTool, Isis::MeasureTool, Isis::ScatterPlotTool, and Isis::TrackTool.
virtual void Isis::Tool::mouseMove | ( | QPoint | p, | |
Qt::MouseButton | ||||
) | [inline, protected, virtual, slot, inherited] |
Reimplemented in Isis::RubberBandTool, and Isis::ScatterPlotTool.
void Tool::mouseMove | ( | QPoint | p | ) | [protected, virtual, slot, inherited] |
p |
Reimplemented in Isis::AdvancedTrackTool, Isis::PanTool, and Isis::TrackTool.
void Isis::AbstractPlotTool::paintViewport | ( | MdiCubeViewport * | vp, | |
QPainter * | painter | |||
) | [virtual] |
This method paints the polygons of the copied curves onto the cubeviewport.
vp | ||
painter |
Reimplemented from Isis::Tool.
References Isis::PlotWindow::paint().
QList< PlotWindow * > Isis::AbstractPlotTool::plotWindows | ( | ) | [protected] |
Referenced by viewportsToPlot().
void Tool::registerTool | ( | MdiCubeViewport * | viewport | ) | [protected, slot, inherited] |
Registers the tool to the viewport.
viewport |
References Isis::Tool::p_cvp, Isis::MdiCubeViewport::registerTool(), and Isis::Tool::stretchRequested().
Referenced by Isis::Tool::addTo().
virtual void Isis::Tool::removeConnections | ( | MdiCubeViewport * | cvp | ) | [inline, protected, virtual, inherited] |
Anytime a tool is created, you must be able to remove it's connections.
cvp |
Reimplemented in Isis::MeasureTool, Isis::TrackTool, and Isis::WindowTool.
void Isis::AbstractPlotTool::removeWindow | ( | QObject * | window | ) | [slot] |
When a user closes a window, we want to remove that window from our QComboBox.
void Isis::AbstractPlotTool::repaintViewports | ( | ) | [protected, slot] |
References selectedWindow(), and Isis::PlotWindow::showWindow().
void Isis::AbstractPlotTool::repaintViewports | ( | CubePlotCurve * | pc | ) | [slot] |
This method causes the viewports corresponding with the given CubePlotCurve to be repainted with all of the area's of interest associated with the CubePlotCurve's plotwindow.
virtual void Isis::Tool::rubberBandComplete | ( | ) | [inline, protected, virtual, slot, inherited] |
Reimplemented in Isis::EditTool, Isis::HistogramTool, Isis::MeasureTool, Isis::SpatialPlotTool, Isis::SpectralPlotTool, Isis::StretchTool, and Isis::ZoomTool.
virtual void Isis::Tool::scaleChanged | ( | ) | [inline, protected, virtual, slot, inherited] |
Reimplemented in Isis::RubberBandTool.
virtual void Isis::Tool::screenPixelsChanged | ( | ) | [inline, protected, virtual, slot, inherited] |
This is called when actions change which pixels from the cube are displayed.
Reimplemented in Isis::StretchTool.
PlotWindow * Isis::AbstractPlotTool::selectedWindow | ( | bool | createIfNeeded = true |
) | [protected] |
void Tool::setCubeViewport | ( | MdiCubeViewport * | cvp | ) | [slot, inherited] |
Sets the current viewport to the given cvp.
cvp |
References Isis::Tool::p_cvp, Isis::Tool::updateTool(), and Isis::Tool::viewportChanged().
Referenced by Isis::Tool::addTo().
void Isis::AbstractPlotTool::showPlotWindow | ( | ) | [slot] |
displays the plot window
virtual void Isis::Tool::stretchRequested | ( | MdiCubeViewport * | , | |
int | ||||
) | [inline, protected, virtual, slot, inherited] |
Reimplemented in Isis::StretchTool.
Referenced by Isis::Tool::registerTool().
QString Isis::Tool::toolIconDir | ( | ) | const [inline, inherited] |
returns the path to the icon directory.
Referenced by Isis::ZoomTool::createToolBarWidget(), Isis::StretchTool::createToolBarWidget(), Isis::PanTool::createToolBarWidget(), Isis::MeasureTool::createToolBarWidget(), Isis::HistogramTool::HistogramTool(), Isis::PanTool::PanTool(), Isis::SpatialPlotTool::SpatialPlotTool(), Isis::SpecialPixelTool::SpecialPixelTool(), Isis::SpectralPlotTool::SpectralPlotTool(), Isis::RubberBandComboBox::toolIconDir(), Isis::ZoomTool::toolPadAction(), Isis::StretchTool::toolPadAction(), Isis::StatisticsTool::toolPadAction(), Isis::ScatterPlotTool::toolPadAction(), Isis::PanTool::toolPadAction(), Isis::EditTool::toolPadAction(), Isis::WindowTool::WindowTool(), and Isis::ZoomTool::ZoomTool().
virtual QAction* Isis::Tool::toolPadAction | ( | ToolPad * | toolpad | ) | [inline, protected, virtual, inherited] |
Anytime a tool is created, you must setup a tool pad action with it.
toolpad |
Reimplemented in Isis::BandTool, Isis::EditTool, Isis::FindTool, Isis::HistogramTool, Isis::MeasureTool, Isis::PanTool, Isis::ScatterPlotTool, Isis::SpatialPlotTool, Isis::SpectralPlotTool, Isis::StatisticsTool, Isis::StretchTool, and Isis::ZoomTool.
Referenced by Isis::Tool::addTo().
virtual void Isis::Tool::updateMeasure | ( | ) | [inline, protected, virtual, slot, inherited] |
Reimplemented in Isis::MeasureTool.
void Isis::AbstractPlotTool::updateTool | ( | ) | [protected, virtual] |
Updates the tool.
Reimplemented from Isis::Tool.
Reimplemented in Isis::HistogramTool, Isis::SpatialPlotTool, and Isis::SpectralPlotTool.
void Tool::viewportChanged | ( | ) | [signal, inherited] |
QList< MdiCubeViewport * > Isis::AbstractPlotTool::viewportsToPlot | ( | ) | [protected] |
References Isis::Tool::cubeViewport(), plotWindows(), and Isis::PlotWindow::update().
Referenced by Isis::SpectralPlotTool::refreshPlot(), Isis::SpatialPlotTool::refreshPlot(), and Isis::SpectralPlotTool::updateTool().
MdiCubeViewport* Isis::Tool::p_cvp [protected, inherited] |
current cubeviewport
Referenced by Isis::Tool::cubeViewport(), Isis::Tool::registerTool(), Isis::Tool::setCubeViewport(), and Isis::Tool::Tool().
Workspace* Isis::Tool::p_workspace [protected, inherited] |