Isis 3.0 Developer's Reference (API) |
Home |
Handles zoom operations for Isis qt apps. More...
#include <ZoomTool.h>
Inherits Isis::Tool.
Public Slots | |
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 | |
ZoomTool (QWidget *parent) | |
ZoomTool constructor. | |
void | addTo (QMenu *menu) |
Adds the zoom action to the given menu. | |
void | addTo (ViewportMainWindow *mw) |
Adds the tool to the application. | |
void | addTo (ToolPad *toolpad) |
Adds the tool to the toolpad. | |
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. | |
virtual void | paintViewport (MdiCubeViewport *vp, QPainter *painter) |
requires the programmer to have this member | |
Protected Types | |
typedef QVector < MdiCubeViewport * > | CubeViewportList |
A list of cubeviewports. | |
Protected Slots | |
void | rubberBandComplete () |
This method is called when the RubberBandTool is complete. | |
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 | |
QAction * | toolPadAction (ToolPad *toolpad) |
Adds the action to the toolpad. | |
QString | menuName () const |
Returns the name of the menu. | |
void | updateTool () |
This method updates the line edits text to the correct zoom value. | |
QWidget * | createToolBarWidget (QStackedWidget *parent) |
Creates the widget to add to the tool bar. | |
void | enableRubberBandTool () |
This methods enables the RubberBandTool, it also sets the RubberBandTool to allow points and to allow all clicks. | |
MdiCubeViewport * | cubeViewport () const |
Return the current cubeviewport. | |
CubeViewportList * | cubeViewportList () const |
Return the list of cubeviewports. | |
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. | |
Protected Attributes | |
MdiCubeViewport * | p_cvp |
current cubeviewport | |
Workspace * | p_workspace |
Handles zoom operations for Isis qt apps.
typedef QVector< MdiCubeViewport * > Isis::Tool::CubeViewportList [protected, inherited] |
A list of cubeviewports.
Isis::ZoomTool::ZoomTool | ( | QWidget * | parent | ) |
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().
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 Isis::ZoomTool::addTo | ( | QMenu * | menu | ) | [virtual] |
Adds the zoom action to the given menu.
This will include the Zoom In (by factor of 2), Zoom Out (by factor of 1/2), Zoom Actual (1:1) and Zoom Fit actions.
menu | Pointer to the QMenu |
Reimplemented from Isis::Tool.
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().
void Tool::clearWarningSignal | ( | ) | [signal, inherited] |
QWidget * Isis::ZoomTool::createToolBarWidget | ( | QStackedWidget * | parent | ) | [protected, virtual] |
Creates the widget to add to the tool bar.
For each button, this method assigns the icons, ToolTips, WhatsThis, and connects a slot to the clicked signal. The following buttons are included
parent | Parent stacked widget |
Reimplemented from Isis::Tool.
References Isis::Tool::toolIconDir().
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(), rubberBandComplete(), Isis::StretchTool::rubberBandComplete(), Isis::ScatterPlotTool::showNewScatterPlotConfig(), Isis::StretchTool::stretchGlobal(), Isis::StretchTool::stretchGlobalAllBands(), Isis::StretchTool::stretchRegional(), Isis::StretchTool::updateAdvStretchDialogforAll(), Isis::StretchTool::updateHistograms(), updateTool(), Isis::WindowTool::updateTool(), Isis::StretchTool::updateTool(), Isis::SpecialPixelTool::updateTool(), and Isis::AbstractPlotTool::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(), rubberBandComplete(), Isis::MeasureTool::rubberBandComplete(), Isis::StretchTool::stretchGlobalAllViewports(), and Isis::WindowTool::updateTool().
void Isis::ZoomTool::enableRubberBandTool | ( | ) | [protected, virtual] |
This methods enables the RubberBandTool, it also sets the RubberBandTool to allow points and to allow all clicks.
Reimplemented from Isis::Tool.
References Isis::RubberBandTool::allowAllClicks(), Isis::RubberBandTool::allowPoints(), Isis::RubberBandTool::enable(), and Isis::RubberBandTool::Rectangle.
QString Isis::ZoomTool::menuName | ( | ) | const [inline, protected, virtual] |
Returns the name of the menu.
Reimplemented from Isis::Tool.
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.
virtual void Isis::Tool::paintViewport | ( | MdiCubeViewport * | vp, | |
QPainter * | painter | |||
) | [inline, virtual, inherited] |
requires the programmer to have this member
vp | ||
painter |
Reimplemented in Isis::AbstractPlotTool, Isis::FindTool, Isis::RubberBandTool, and Isis::ScatterPlotTool.
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::ZoomTool::rubberBandComplete | ( | ) | [protected, virtual, slot] |
This method is called when the RubberBandTool is complete.
It will either zoom the CubeViewport to the rectangle specified by the RubberBandTool or will handle different zoom methods specified by the last RubberBandTool's mouse button.
Reimplemented from Isis::Tool.
References Isis::Tool::cubeViewport(), Isis::Tool::cubeViewportList(), Isis::RubberBandTool::getVertices(), Isis::MdiCubeViewport::isLinked(), Isis::RubberBandTool::isPoint(), Isis::RubberBandTool::isValid(), Isis::RubberBandTool::mouseButton(), Isis::RubberBandTool::rectangle(), Isis::CubeViewport::scale(), updateTool(), x, and y.
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.
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().
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 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(), toolPadAction(), Isis::StretchTool::toolPadAction(), Isis::StatisticsTool::toolPadAction(), Isis::ScatterPlotTool::toolPadAction(), Isis::PanTool::toolPadAction(), Isis::EditTool::toolPadAction(), Isis::WindowTool::WindowTool(), and ZoomTool().
Adds the action to the toolpad.
The icon used will be the magnifying glass. The tool tip reads "Zoom (Z)" with shortcut key "Z".
toolpad | Toolpad to which the zoom tool will be added |
Reimplemented from Isis::Tool.
References Isis::Tool::toolIconDir().
virtual void Isis::Tool::updateMeasure | ( | ) | [inline, protected, virtual, slot, inherited] |
Reimplemented in Isis::MeasureTool.
void Isis::ZoomTool::updateTool | ( | ) | [protected, virtual] |
This method updates the line edits text to the correct zoom value.
Reimplemented from Isis::Tool.
References Isis::Tool::cubeViewport(), and Isis::CubeViewport::scale().
Referenced by rubberBandComplete().
void Tool::viewportChanged | ( | ) | [signal, inherited] |
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] |