Isis 3 Programmer Reference
MosaicZoomTool.h
1 #ifndef MosaicZoomTool_h
2 #define MosaicZoomTool_h
3 
4 #include "MosaicTool.h"
5 
6 #include <QPointer>
7 
8 class QAction;
9 class QDoubleSpinBox;
10 class QGraphicsSceneMouseEvent;
11 class QLineEdit;
12 class QRect;
13 
14 namespace Isis {
26  class MosaicZoomTool : public MosaicTool {
27  Q_OBJECT
28 
29  public:
31  void updateResolutionBox();
32 
33  QList<QAction *> getViewActions();
34 
35  protected slots:
36  void updateTool();
37 
38  protected:
41  void mouseButtonRelease(QPointF, Qt::MouseButton s);
42  void mouseWheel(QPointF, int);
43  void rubberBandComplete(QRectF r, Qt::MouseButton s);
44 
45  public slots:
46  void zoomIn2X(QPointF center = QPointF());
47  void zoomOut2X(QPointF center = QPointF());
48 
49  void zoomActual(QPointF center = QPointF());
50  void zoomFit();
51  void zoomFitWidth();
52  void zoomFitHeight();
53  void zoomManual();
54 
55  private:
56  double limitZoomBy(double factor);
57  void zoomBy(double factor, QPointF center = QPointF());
58  QLineEdit *p_zoomLineEdit;
59  QDoubleSpinBox *p_scaleBox;
60  double p_screenResolution;
61 
62  QPointer<QAction> m_zoomInAction;
63  QPointer<QAction> m_zoomOutAction;
64  QPointer<QAction> m_zoomFitAction;
65  };
66 };
67 
68 #endif
69 
Isis::MosaicZoomTool::getToolBarWidget
QWidget * getToolBarWidget()
Creates the widget to add to the tool bar.
Definition: MosaicZoomTool.cpp:143
Isis::MosaicZoomTool::zoomManual
void zoomManual()
This method zooms by the value input in the line edit next to the zoom tools.
Definition: MosaicZoomTool.cpp:346
QWidget
Isis::MosaicZoomTool::updateTool
void updateTool()
This method updates the line edits text to the correct zoom value.
Definition: MosaicZoomTool.cpp:359
QList< QAction * >
Isis::MosaicZoomTool::zoomBy
void zoomBy(double factor, QPointF center=QPointF())
Zoom IN by the given factor.
Definition: MosaicZoomTool.cpp:295
Isis::MosaicZoomTool::getPrimaryAction
QAction * getPrimaryAction()
This method returns an action that is used to activate this tool.
Definition: MosaicZoomTool.cpp:116
Isis::MosaicSceneWidget
This widget encompasses the entire mosaic scene.
Definition: MosaicSceneWidget.h:153
Isis::MosaicTool
Base class for the MosaicTools.
Definition: MosaicTool.h:37
Isis::MosaicZoomTool::rubberBandComplete
void rubberBandComplete(QRectF r, Qt::MouseButton s)
This method is called when the RubberBandTool is complete.
Definition: MosaicZoomTool.cpp:382
Isis::MosaicZoomTool::updateResolutionBox
void updateResolutionBox()
Updates the text in the screen resolution display box to the current screen resolution,...
Definition: MosaicZoomTool.cpp:83
Isis::MosaicZoomTool::MosaicZoomTool
MosaicZoomTool(MosaicSceneWidget *)
MosaicZoomTool constructor.
Definition: MosaicZoomTool.cpp:27
Isis::MosaicZoomTool::zoomFit
void zoomFit()
Fits the in the graphics view.
Definition: MosaicZoomTool.cpp:312
Isis::MosaicZoomTool::zoomFitHeight
void zoomFitHeight()
Slot for the "Fit to Heighth" menu item on the Fit button.
Definition: MosaicZoomTool.cpp:332
Isis::MosaicZoomTool::zoomOut2X
void zoomOut2X(QPointF center=QPointF())
Zoom out 2 times.
Definition: MosaicZoomTool.cpp:238
Isis::MosaicZoomTool::p_zoomLineEdit
QLineEdit * p_zoomLineEdit
Line edit for manual zoom factor.
Definition: MosaicZoomTool.h:58
Isis::MosaicZoomTool::zoomFitWidth
void zoomFitWidth()
Slot for the "Fit to Width" menu item on the Fit button.
Definition: MosaicZoomTool.cpp:322
QAction
Isis::MosaicZoomTool::zoomIn2X
void zoomIn2X(QPointF center=QPointF())
Zooms in 2 times.
Definition: MosaicZoomTool.cpp:229
Isis::MosaicZoomTool
Handles zoom operations for Isis qt apps.
Definition: MosaicZoomTool.h:26
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::MosaicZoomTool::zoomActual
void zoomActual(QPointF center=QPointF())
Zoom back to 1 to 1.
Definition: MosaicZoomTool.cpp:247