Isis Developer Reference
RubberBandComboBox.h
Go to the documentation of this file.
1#ifndef RubberBandComboBox_h
2#define RubberBandComboBox_h
3
4#include <QComboBox>
5
6#include "FileName.h"
7#include "RubberBandTool.h"
8
9namespace Isis {
27 Q_OBJECT
28
29 public:
30 RubberBandComboBox(Tool *tool, unsigned int bandingOptions, unsigned int defaultOption,
31 bool showIndicatorColors = false);
32
46
48 QString toolIconDir() const {
49 return m_tool->toolIconDir();
50 }
51 void reset();
52
53 protected slots:
54 void selectionChanged(int index);
55
56 private:
58 unsigned int getDefault(unsigned int defaultOption, unsigned int bandingOptions);
59
61 void showAngle() {
62 m_tool->rubberBandTool()->enable(RubberBandTool::AngleMode, m_showIndicatorColors);
63 }
65 void showCircle() {
66 m_tool->rubberBandTool()->enable(RubberBandTool::CircleMode, m_showIndicatorColors);
67 }
69 void showEllipse() {
70 m_tool->rubberBandTool()->enable(RubberBandTool::EllipseMode, m_showIndicatorColors);
71 }
73 void showLine() {
74 m_tool->rubberBandTool()->enable(RubberBandTool::LineMode, m_showIndicatorColors);
75 }
77 void showRectangle() {
78 m_tool->rubberBandTool()->enable(RubberBandTool::RectangleMode, m_showIndicatorColors);
79 }
81 void showRotatedRectangle() {
83 m_showIndicatorColors);
84 }
86 void showPolygon() {
87 m_tool->rubberBandTool()->enable(RubberBandTool::PolygonMode, m_showIndicatorColors);
88 }
90 void showSegmentedLine() {
91 m_tool->rubberBandTool()->enable(RubberBandTool::SegmentedLineMode, m_showIndicatorColors);
92 }
93
94 QStringList m_bandingOptionStrings;
95 bool m_showIndicatorColors;
96 Tool *m_tool;
97 };
98};
99
100#endif
Defines an angle and provides unit conversions.
Definition Angle.h:45
Combo box for choosing a rubber band type.
Definition RubberBandComboBox.h:26
void selectionChanged(int index)
This slot is called whenever the rubberband shape selection has changed.
Definition RubberBandComboBox.cpp:189
RubberBandComboBox(Tool *tool, unsigned int bandingOptions, unsigned int defaultOption, bool showIndicatorColors=false)
RubberBandComboBox constructor.
Definition RubberBandComboBox.cpp:16
QString toolIconDir() const
Returns the icon directory.
Definition RubberBandComboBox.h:48
void reset()
Resets the selection.
Definition RubberBandComboBox.cpp:226
RubberBandOptions
Enum to store rubber band shapes.
Definition RubberBandComboBox.h:36
@ Line
Line.
Definition RubberBandComboBox.h:42
@ SegmentedLine
Segmented Line.
Definition RubberBandComboBox.h:43
@ Polygon
Polygon.
Definition RubberBandComboBox.h:41
@ RotatedRectangle
RotatedRectangle.
Definition RubberBandComboBox.h:40
@ Circle
Circle.
Definition RubberBandComboBox.h:37
@ Rectangle
Rectangle.
Definition RubberBandComboBox.h:39
@ SegmentedLineMode
Definition RubberBandTool.h:65
@ EllipseMode
Definition RubberBandTool.h:60
@ RectangleMode
Definition RubberBandTool.h:62
@ PolygonMode
Definition RubberBandTool.h:64
@ CircleMode
Definition RubberBandTool.h:59
@ LineMode
Definition RubberBandTool.h:61
@ RotatedRectangleMode
Definition RubberBandTool.h:63
@ AngleMode
Definition RubberBandTool.h:58
void enable(RubberBandMode mode, bool showIndicatorColors=false)
This is called when changing modes or turning on.
Definition RubberBandTool.cpp:301
Base class for the Qisis tools.
Definition Tool.h:67
RubberBandTool * rubberBandTool()
Definition Tool.cpp:57
QString toolIconDir() const
returns the path to the icon directory.
Definition Tool.h:113
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16
This is free and unencumbered software released into the public domain.
Definition Selection.h:14