USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::BandTool Class Reference

#include <BandTool.h>

Inheritance diagram for Isis::BandTool:
Inheritance graph
[legend]
Collaboration diagram for Isis::BandTool:
Collaboration graph
[legend]

List of all members.

Public Slots

void activate (bool)
 Activates the tool.
void setCubeViewport (MdiCubeViewport *cvp)
 Sets the current viewport to the given cvp.

Signals

void clearWarningSignal ()
void toolActivated ()
void viewportChanged ()

Public Member Functions

 BandTool (QWidget *parent)
 BandTool constructor.
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.
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

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

QString menuName () const
 returns the name of the menu.
QActiontoolPadAction (ToolPad *pad)
QWidgetcreateToolBarWidget (QStackedWidget *active)
void updateTool ()
 updates the band tool
MdiCubeViewportcubeViewport () const
 Return the current cubeviewport.
CubeViewportListcubeViewportList () 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.
virtual void enableRubberBandTool ()
 Anytime a tool is created, you may use the rubber band tool.

Protected Attributes

MdiCubeViewportp_cvp
 current cubeviewport
Workspacep_workspace

Private Slots

void changeView ()
 This method is connected to the qspinboxes.
void setList ()
 This method sets the p_lineEditValueList to the proper values according to what the user has selected in the p_comboBox.
void setBandBin (Pvl &pvl)
 This method fills the p_comboBox with the keywords from the band bin group of the currently selected cube.
void setDisplay ()
 This method updates the values displayed in the gray boxes.
void copyLinkedViewports ()
 This method copies the selected bands to all linked viewports.
void copyAllViewports ()
 This methods copies the selected bands to all viewports.

Private Attributes

QRadioButton * p_rgbButton
 RGB radio button.
QRadioButton * p_blackwhiteButton
 Black and White radio button.
QSpinBoxp_graySpin
 Gray spin box.
QSpinBoxp_redSpin
 Red spin box.
QSpinBoxp_grnSpin
 Green spin box.
QSpinBoxp_bluSpin
 Blue spin box.
QLabel * p_grayDisplay
 gray display
QLabel * p_redDisplay
 red display
QLabel * p_greenDisplay
 green display
QLabel * p_blueDisplay
 blue display
QComboBoxp_comboBox
 display selection combo box
QStackedWidget * p_stack
 Stacked widget for spin boxes.
QStackedWidget * p_stack2
 Stacked widget for displays and combo box.
CubeViewportp_bandBinViewport
int p_bands
 Number of possible bands.
Pvl p_pvl
 pvl
QStringList p_lineEditValueList
 Value list.

Detailed Description

Author:
????-??-?? Unknown

For internal use only.

History:
2010-06-26 Eric Hyer - Now uses MdiCubeViewport instead of CubeViewport
History:
2010-12-01 Steven Lambright - No longer calls setBandBin() if the viewport doesn't change.

Definition at line 32 of file BandTool.h.


Member Typedef Documentation

typedef QVector< MdiCubeViewport * > Isis::Tool::CubeViewportList [protected, inherited]

A list of cubeviewports.

Definition at line 207 of file Tool.h.


Constructor & Destructor Documentation

Isis::BandTool::BandTool ( QWidget parent  ) 

BandTool constructor.

Parameters:
parent 

Definition at line 27 of file BandTool.cpp.


Member Function Documentation

void Tool::activate ( bool  on  )  [slot, inherited]
virtual void Isis::Tool::addConnections ( MdiCubeViewport cvp  )  [inline, protected, virtual, inherited]

Anytime a tool is created, you must add the connections for it.

Parameters:
cvp 

Reimplemented in Isis::TrackTool, and Isis::WindowTool.

Definition at line 258 of file Tool.h.

Referenced by Isis::Tool::addViewportConnections().

void Tool::addTo ( Workspace ws  )  [virtual, inherited]

requires the programmer to have this member

Adds the given workspace to the cubeviewport list.

Parameters:
ws 

Reimplemented in Isis::EditTool, Isis::FileTool, Isis::SpecialPixelTool, and Isis::WindowTool.

Definition at line 41 of file Tool.cpp.

References Isis::Tool::registerTool(), and Isis::Tool::setCubeViewport().

virtual void Isis::Tool::addTo ( QMenu *  menu  )  [inline, virtual, inherited]
void Tool::addTo ( ToolPad toolpad  )  [inherited]

Adds the tool to the toolpad.

Parameters:
toolpad 

Definition at line 77 of file Tool.cpp.

References Isis::Tool::activate(), Isis::ToolPad::addAction(), Isis::Tool::p_toolPadAction, and Isis::Tool::toolPadAction().

void Tool::addTo ( ViewportMainWindow pViewPortMnWin  )  [inherited]
void Tool::addToActive ( QToolBar toolbar  )  [inherited]
virtual void Isis::Tool::addToPermanent ( QToolBar toolbar  )  [inline, virtual, inherited]

requires the programmer to have this member

Parameters:
toolbar 

Reimplemented in Isis::AdvancedTrackTool, Isis::BlinkTool, Isis::FileTool, Isis::HelpTool, Isis::SpecialPixelTool, and Isis::WindowTool.

Definition at line 103 of file Tool.h.

Referenced by Isis::Tool::addTo().

void Isis::BandTool::changeView (  )  [private, slot]

This method is connected to the qspinboxes.

When the user selects a new band, the viewport needs to be updated and the values display next to the p_comboBox also need to be updated.

Definition at line 305 of file BandTool.cpp.

References Isis::CubeViewport::blueBand(), Isis::Tool::cubeViewport(), Isis::CubeViewport::grayBand(), Isis::CubeViewport::greenBand(), Isis::CubeViewport::isColor(), Isis::CubeViewport::isGray(), p_bluSpin, p_graySpin, p_grnSpin, p_redSpin, p_rgbButton, p_stack, p_stack2, Isis::CubeViewport::redBand(), setDisplay(), Isis::MdiCubeViewport::viewGray(), and Isis::MdiCubeViewport::viewRGB().

Referenced by updateTool().

void Isis::BandTool::copyAllViewports (  )  [private, slot]
void Isis::BandTool::copyLinkedViewports (  )  [private, slot]
QWidget * Isis::BandTool::createToolBarWidget ( QStackedWidget *  active  )  [protected, virtual]
MdiCubeViewport* Isis::Tool::cubeViewport (  )  const [inline, protected, inherited]

Return the current cubeviewport.

Returns:
CubeViewport*

Definition at line 205 of file Tool.h.

References Isis::Tool::p_cvp.

Referenced by Isis::WindowTool::addConnections(), Isis::TrackTool::addConnections(), Isis::StretchTool::advancedStretchChanged(), Isis::FindTool::centerLinkedViewports(), Isis::StretchTool::changeStretch(), changeView(), copyLinkedViewports(), Isis::FileTool::discard(), Isis::Tool::enableToolBar(), Isis::FileTool::exportView(), Isis::StatisticsTool::getStatistics(), Isis::FindTool::handleRecordClicked(), Isis::EditTool::LineToPoints(), Isis::TrackTool::locateCursor(), Isis::SunShadowTool::mouseButtonPress(), Isis::StretchTool::mouseButtonRelease(), Isis::RubberBandTool::mouseButtonRelease(), Isis::PanTool::mouseButtonRelease(), Isis::MatchTool::mouseButtonRelease(), Isis::FindTool::mouseButtonRelease(), Isis::FeatureNomenclatureTool::mouseButtonRelease(), Isis::EditTool::mouseButtonRelease(), Isis::AdvancedTrackTool::mouseLeave(), Isis::TrackTool::mouseMove(), Isis::SunShadowTool::mouseMove(), Isis::ScatterPlotTool::mouseMove(), Isis::RubberBandTool::mouseMove(), Isis::SunShadowTool::paintViewport(), Isis::RubberBandTool::paintViewport(), Isis::FindTool::paintViewport(), Isis::FileTool::print(), Isis::SunShadowTool::recalculateShadowHeight(), Isis::EditTool::redoEdit(), Isis::FindTool::refresh(), Isis::SpectralPlotTool::refreshPlot(), Isis::SpatialPlotTool::refreshPlot(), Isis::HistogramTool::refreshPlot(), Isis::WindowTool::removeConnections(), Isis::TrackTool::removeConnections(), Isis::WindowTool::resizeWindows(), Isis::ZoomTool::rubberBandComplete(), Isis::StretchTool::rubberBandComplete(), Isis::HistogramTool::rubberBandComplete(), Isis::EditTool::rubberBandComplete(), Isis::FileTool::save(), Isis::FileTool::saveAs(), Isis::FileTool::saveAsCubeByOption(), Isis::FileTool::saveAsReducedCube(), Isis::FileTool::saveInfo(), Isis::StretchTool::setStretchAcrossBands(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::showAdvancedDialog(), Isis::ScatterPlotTool::showNewScatterPlotConfig(), Isis::StretchTool::stretchChanged(), Isis::StretchTool::stretchGlobal(), Isis::StretchTool::stretchGlobalAllBands(), Isis::StretchTool::stretchRegional(), Isis::EditTool::undoEdit(), Isis::StretchTool::updateAdvStretchDialogforAll(), Isis::StretchTool::updateHistograms(), Isis::TrackTool::updateLabels(), Isis::MeasureTool::updateMeasure(), Isis::AdvancedTrackTool::updateRow(), Isis::ZoomTool::updateTool(), Isis::WindowTool::updateTool(), Isis::SunShadowTool::updateTool(), Isis::StretchTool::updateTool(), Isis::SpecialPixelTool::updateTool(), Isis::FindTool::updateTool(), Isis::FileTool::updateTool(), Isis::EditTool::updateTool(), Isis::BlinkTool::updateTool(), updateTool(), Isis::AbstractPlotTool::updateTool(), Isis::AbstractPlotTool::viewportsToPlot(), Isis::EditTool::writeToCube(), Isis::ZoomTool::zoomBy(), Isis::ZoomTool::zoomFit(), Isis::ZoomTool::zoomFitHeight(), Isis::ZoomTool::zoomFitWidth(), and Isis::ZoomTool::zoomManual().

Tool::CubeViewportList * Tool::cubeViewportList (  )  const [protected, inherited]

Return the list of cubeviewports.

Returns:
CubeViewportList*

Definition at line 357 of file Tool.cpp.

References Isis::Workspace::cubeViewportList().

Referenced by Isis::BlinkTool::advance(), Isis::SpecialPixelTool::apply(), Isis::FindTool::centerLinkedViewports(), Isis::WindowTool::changeCursor(), Isis::FileTool::closeAll(), copyAllViewports(), copyLinkedViewports(), Isis::MatchTool::createPoint(), Isis::BlinkTool::eventFilter(), Isis::FeatureNomenclatureTool::featuresIdentified(), Isis::FeatureNomenclatureTool::findMissingNomenclature(), Isis::FeatureNomenclatureTool::findNomenclatureStateChanged(), Isis::FindTool::handleLinkClicked(), Isis::WindowTool::linkWindows(), Isis::RubberBandTool::mouseButtonRelease(), Isis::PanTool::mouseButtonRelease(), Isis::RubberBandTool::mouseMove(), Isis::StereoTool::paintAllViewports(), Isis::MatchTool::paintAllViewports(), Isis::FindTool::refresh(), Isis::ScatterPlotTool::repaintViewports(), Isis::AbstractPlotTool::repaintViewports(), Isis::WindowTool::resizeWindows(), Isis::BlinkTool::reverse(), Isis::ZoomTool::rubberBandComplete(), Isis::MatchTool::serialNumberList(), Isis::FeatureNomenclatureTool::setFontColor(), Isis::FeatureNomenclatureTool::setFontSize(), Isis::FeatureNomenclatureTool::setShowApprovedOnly(), Isis::StretchTool::setStretchAllViewports(), Isis::FeatureNomenclatureTool::setVectorType(), Isis::StretchTool::stretchGlobalAllViewports(), Isis::BlinkTool::toggleLink(), Isis::WindowTool::unlinkWindows(), Isis::MeasureTool::updateMeasure(), Isis::AdvancedTrackTool::updateRow(), Isis::WindowTool::updateTool(), Isis::FindTool::updateTool(), Isis::BlinkTool::updateTool(), Isis::AbstractPlotTool::viewportsToPlot(), Isis::ZoomTool::zoomBy(), Isis::ZoomTool::zoomFit(), Isis::ZoomTool::zoomFitHeight(), Isis::ZoomTool::zoomFitWidth(), and Isis::ZoomTool::zoomManual().

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::StereoTool, Isis::StretchTool, and Isis::ZoomTool.

Definition at line 311 of file Tool.cpp.

Referenced by Isis::Tool::addViewportConnections().

QString Isis::BandTool::menuName (  )  const [inline, protected, virtual]

returns the name of the menu.

Returns:
QString

Reimplemented from Isis::Tool.

Definition at line 45 of file BandTool.h.

void Tool::mouseButtonPress ( QPoint  p,
Qt::MouseButton  s 
) [protected, virtual, slot, inherited]
Parameters:
p 
s 

Reimplemented in Isis::PanTool, Isis::RubberBandTool, and Isis::SunShadowTool.

Definition at line 334 of file Tool.cpp.

Referenced by Isis::Tool::addViewportConnections(), and Isis::Tool::removeViewportConnections().

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.

Parameters:
p 
s 

Reimplemented in Isis::EditTool, Isis::FeatureNomenclatureTool, Isis::FindTool, Isis::MatchTool, Isis::PanTool, Isis::RubberBandTool, Isis::StatisticsTool, Isis::StretchTool, and Isis::SunShadowTool.

Definition at line 347 of file Tool.cpp.

Referenced by Isis::Tool::addViewportConnections(), and Isis::Tool::removeViewportConnections().

void Tool::mouseDoubleClick ( QPoint  p  )  [protected, virtual, slot, inherited]
Parameters:
p 

Reimplemented in Isis::RubberBandTool.

Definition at line 325 of file Tool.cpp.

Referenced by Isis::Tool::addViewportConnections(), and Isis::Tool::removeViewportConnections().

void Tool::mouseMove ( QPoint  p  )  [protected, virtual, slot, inherited]
virtual void Isis::Tool::paintViewport ( MdiCubeViewport vp,
QPainter *  painter 
) [inline, virtual, inherited]

requires the programmer to have this member

Parameters:
vp 
painter 

Reimplemented in Isis::AbstractPlotTool, Isis::FeatureNomenclatureTool, Isis::FindTool, Isis::MatchTool, Isis::RubberBandTool, Isis::ScatterPlotTool, Isis::StereoTool, and Isis::SunShadowTool.

Definition at line 132 of file Tool.h.

void Tool::registerTool ( MdiCubeViewport viewport  )  [protected, slot, inherited]

Registers the tool to the viewport.

Parameters:
viewport 

Definition at line 299 of file Tool.cpp.

References Isis::Tool::p_cvp, and Isis::MdiCubeViewport::registerTool().

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.

Parameters:
cvp 

Reimplemented in Isis::MeasureTool, Isis::TrackTool, and Isis::WindowTool.

Definition at line 266 of file Tool.h.

Referenced by Isis::Tool::removeViewportConnections().

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.

Definition at line 156 of file Tool.h.

Referenced by Isis::Tool::addViewportConnections(), Isis::Tool::removeViewportConnections(), and Isis::FeatureNomenclatureTool::viewportDone().

void Isis::BandTool::setBandBin ( Pvl pvl  )  [private, slot]

This method fills the p_comboBox with the keywords from the band bin group of the currently selected cube.

If there are values for 'Center', that is choosen as the default.

Parameters:
pvl 

Definition at line 251 of file BandTool.cpp.

References Isis::PvlObject::FindObject(), Isis::PvlContainer::Keywords(), Isis::PvlContainer::Name(), p_bands, p_bluSpin, p_comboBox, p_graySpin, p_grnSpin, p_pvl, p_redSpin, and setList().

Referenced by updateTool().

void Tool::setCubeViewport ( MdiCubeViewport cvp  )  [slot, inherited]
void Isis::BandTool::setDisplay (  )  [private, slot]

This method updates the values displayed in the gray boxes.

Called from changeView.

Definition at line 337 of file BandTool.cpp.

References p_blueDisplay, p_bluSpin, p_grayDisplay, p_graySpin, p_greenDisplay, p_grnSpin, p_lineEditValueList, p_redDisplay, and p_redSpin.

Referenced by changeView(), and updateTool().

void Isis::BandTool::setList (  )  [private, slot]

This method sets the p_lineEditValueList to the proper values according to what the user has selected in the p_comboBox.

These are the values shown in the gray boxes.

Definition at line 210 of file BandTool.cpp.

References Isis::PvlObject::FindObject(), Isis::PvlContainer::Keywords(), p_bands, p_blueDisplay, p_comboBox, p_grayDisplay, p_greenDisplay, p_lineEditValueList, p_pvl, and p_redDisplay.

Referenced by setBandBin(), and updateTool().

QString Isis::Tool::toolIconDir (  )  const [inline, inherited]
QAction * Isis::BandTool::toolPadAction ( ToolPad pad  )  [protected, virtual]
Parameters:
pad 
Returns:
QAction*

Reimplemented from Isis::Tool.

Definition at line 38 of file BandTool.cpp.

References Isis::Tool::toolIconDir().

void Isis::BandTool::updateTool (  )  [protected, virtual]

Member Data Documentation

int Isis::BandTool::p_bands [private]

Number of possible bands.

Definition at line 76 of file BandTool.h.

Referenced by setBandBin(), and setList().

QRadioButton* Isis::BandTool::p_blackwhiteButton [private]

Black and White radio button.

Definition at line 62 of file BandTool.h.

Referenced by createToolBarWidget(), and updateTool().

QLabel* Isis::BandTool::p_blueDisplay [private]

blue display

Definition at line 70 of file BandTool.h.

Referenced by createToolBarWidget(), setDisplay(), and setList().

display selection combo box

Definition at line 71 of file BandTool.h.

Referenced by createToolBarWidget(), setBandBin(), setList(), and updateTool().

MdiCubeViewport* Isis::Tool::p_cvp [protected, inherited]
QLabel* Isis::BandTool::p_grayDisplay [private]

gray display

Definition at line 67 of file BandTool.h.

Referenced by createToolBarWidget(), setDisplay(), and setList().

QLabel* Isis::BandTool::p_greenDisplay [private]

green display

Definition at line 69 of file BandTool.h.

Referenced by createToolBarWidget(), setDisplay(), and setList().

Value list.

Definition at line 78 of file BandTool.h.

Referenced by setDisplay(), and setList().

pvl

Definition at line 77 of file BandTool.h.

Referenced by setBandBin(), and setList().

QLabel* Isis::BandTool::p_redDisplay [private]

red display

Definition at line 68 of file BandTool.h.

Referenced by createToolBarWidget(), setDisplay(), and setList().

QRadioButton* Isis::BandTool::p_rgbButton [private]

RGB radio button.

Definition at line 61 of file BandTool.h.

Referenced by changeView(), copyAllViewports(), copyLinkedViewports(), createToolBarWidget(), and updateTool().

QStackedWidget* Isis::BandTool::p_stack [private]

Stacked widget for spin boxes.

Definition at line 72 of file BandTool.h.

Referenced by changeView(), createToolBarWidget(), and updateTool().

QStackedWidget* Isis::BandTool::p_stack2 [private]

Stacked widget for displays and combo box.

Definition at line 73 of file BandTool.h.

Referenced by changeView(), createToolBarWidget(), and updateTool().


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