File failed to load: https://isis.astrogeology.usgs.gov/6.0.0/Object/assets/jax/output/NativeMML/config.js
Isis 3 Programmer Reference
GuiCameraDisplayProperties.h
Go to the documentation of this file.
1 #ifndef GuiCameraDisplayProperties_H
2 #define GuiCameraDisplayProperties_H
3 
25 #include <QColor> // This is required since QColor is in a slot
26 #include <QObject>
27 #include <QMetaType> // required since we're adding to QVariant
28 
29 
30 #include "DisplayProperties.h"
31 #include "XmlStackedHandler.h"
32 
33 class QAction;
34 class QXmlStreamWriter;
35 
36 namespace Isis {
37  class FileName;
38  class Project;
39  class Pvl;
40  class PvlObject;
41  class XmlStackedHandlerReader;
42 
77  Q_OBJECT
78  public:
82  enum Property {
84  None = 0,
86  Color = 1,
88  Selected = 2,
90  ShowLabel = 16,
91  };
92 
93 
94  GuiCameraDisplayProperties(QString displayName, QObject *parent = NULL);
97 
98 // void fromPvl(const PvlObject &pvl);
99 // PvlObject toPvl() const;
100 
101  void addSupport(Property prop);
102  bool supports(Property prop);
103 
104  QVariant getValue(Property prop) const;
105 
106  static QColor randomColor();
107 
108  void save(QXmlStreamWriter &stream, const Project *project, FileName newProjectRoot) const;
109 
110  signals:
111  void propertyChanged(GuiCameraDisplayProperties *);
112  void supportAdded(Property);
113 
114  public slots:
115  void setColor(QColor newColor);
116  void setShowLabel(bool);
117  void setSelected(bool);
118 
119  private slots:
120  void toggleShowLabel();
121 
122  private:
140  class XmlHandler : public XmlStackedHandler {
141  public:
142  XmlHandler(GuiCameraDisplayProperties *displayProperties);
143 
144  virtual bool startElement(const QString &namespaceURI, const QString &localName,
145  const QString &qName, const QXmlAttributes &atts);
146 
147  virtual bool characters(const QString &ch);
148 
149  virtual bool endElement(const QString &namespaceURI, const QString &localName,
150  const QString &qName);
151 
152  private:
153  Q_DISABLE_COPY(XmlHandler);
154 
159 
164  QString m_hexData;
165  };
166 
167  private:
170 
171  void setValue(Property prop, QVariant value);
173 
180 
186  };
187 }
188 
190 
191 #endif
192 
Isis::GuiCameraDisplayProperties::ShowLabel
@ ShowLabel
True if the control net should show its display name (bool)
Definition: GuiCameraDisplayProperties.h:90
Isis::Color
This class is designed to serialize QColor in a human-readable form.
Definition: Color.h:26
Isis::GuiCameraDisplayProperties::~GuiCameraDisplayProperties
virtual ~GuiCameraDisplayProperties()
destructor
Definition: GuiCameraDisplayProperties.cpp:57
Isis::GuiCameraDisplayProperties::setShowLabel
void setShowLabel(bool)
Change the visibility of the display name associated with this target.
Definition: GuiCameraDisplayProperties.cpp:196
Isis::GuiCameraDisplayProperties::m_propertiesUsed
Property m_propertiesUsed
This indicates whether any widgets with this DisplayProperties is using a particular property.
Definition: GuiCameraDisplayProperties.h:179
Isis::GuiCameraDisplayProperties::setSelected
void setSelected(bool)
Change the selected state associated with this target.
Definition: GuiCameraDisplayProperties.cpp:187
QList
This is free and unencumbered software released into the public domain.
Definition: BoxcarCachingAlgorithm.h:13
Isis::FileName
File name manipulation and expansion.
Definition: FileName.h:100
Isis::GuiCameraDisplayProperties::supports
bool supports(Property prop)
Support may come later, please make sure you are connected to the supportAdded signal.
Definition: GuiCameraDisplayProperties.cpp:112
Isis::GuiCameraDisplayProperties::setValue
void setValue(Property prop, QVariant value)
This is the generic mutator for properties.
Definition: GuiCameraDisplayProperties.cpp:307
Isis::GuiCameraDisplayProperties::XmlHandler::m_hexData
QString m_hexData
An internal QString variable used to store character data found in the content of XML elements.
Definition: GuiCameraDisplayProperties.h:164
Isis::GuiCameraDisplayProperties::save
void save(QXmlStreamWriter &stream, const Project *project, FileName newProjectRoot) const
Write the Gui Camera Display Properties out to an XML file.
Definition: GuiCameraDisplayProperties.cpp:155
Isis::DisplayProperties
Definition: DisplayProperties.h:34
Isis::GuiCameraDisplayProperties::Property
Property
This is a list of properties and actions that are possible.
Definition: GuiCameraDisplayProperties.h:82
Isis::GuiCameraDisplayProperties::randomColor
static QColor randomColor()
Creates and returns a random color for the intial color of the footprint polygon.
Definition: GuiCameraDisplayProperties.cpp:132
Isis::GuiCameraDisplayProperties::senderToData
static QList< GuiCameraDisplayProperties * > senderToData(QObject *sender)
This is for the slots that have a list of display properties as associated data.
Definition: GuiCameraDisplayProperties.cpp:323
Isis::GuiCameraDisplayProperties::toggleShowLabel
void toggleShowLabel()
Change the visibility of the display name.
Definition: GuiCameraDisplayProperties.cpp:206
Isis::GuiCameraDisplayProperties::XmlHandler
Process a GuiCameraDisplayProperties in a stack-oriented way.
Definition: GuiCameraDisplayProperties.h:140
Isis::XmlStackedHandlerReader
Manage a stack of content handlers for reading XML files.
Definition: XmlStackedHandlerReader.h:30
Isis::Project
The main project for ipce.
Definition: Project.h:289
Isis::GuiCameraDisplayProperties::addSupport
void addSupport(Property prop)
Call this with every property you support, otherwise they will not communicate properly between widge...
Definition: GuiCameraDisplayProperties.cpp:98
Isis::GuiCameraDisplayProperties::Selected
@ Selected
The selection state of this control net (bool)
Definition: GuiCameraDisplayProperties.h:88
Isis::GuiCameraDisplayProperties::getValue
QVariant getValue(Property prop) const
Get a property's associated data.
Definition: GuiCameraDisplayProperties.cpp:122
Isis::GuiCameraDisplayProperties::XmlHandler::startElement
virtual bool startElement(const QString &namespaceURI, const QString &localName, const QString &qName, const QXmlAttributes &atts)
The XML reader invokes this method at the start of every element in the XML document.
Definition: GuiCameraDisplayProperties.cpp:243
Isis::DisplayProperties::displayName
QString displayName() const
Returns the display name.
Definition: DisplayProperties.cpp:88
Isis::GuiCameraDisplayProperties::None
@ None
Null display property for bit-flag purposes.
Definition: GuiCameraDisplayProperties.h:84
Isis::GuiCameraDisplayProperties::GuiCameraDisplayProperties
GuiCameraDisplayProperties(QString displayName, QObject *parent=NULL)
GuiCameraDisplayProperties constructor.
Definition: GuiCameraDisplayProperties.cpp:24
Isis::GuiCameraDisplayProperties::m_propertyValues
QMap< int, QVariant > * m_propertyValues
This is a map from Property to value – the reason I use an int is so Qt knows how to serialize this Q...
Definition: GuiCameraDisplayProperties.h:185
Isis::GuiCameraDisplayProperties::XmlHandler::characters
virtual bool characters(const QString &ch)
This implementation of a virtual function calls QXmlDefaultHandler::characters(QString &ch) which in ...
Definition: GuiCameraDisplayProperties.cpp:269
Isis::XmlStackedHandler
XML Handler that parses XMLs in a stack-oriented way.
Definition: XmlStackedHandler.h:118
Isis::GuiCameraDisplayProperties::XmlHandler::XmlHandler
XmlHandler(GuiCameraDisplayProperties *displayProperties)
Sets the GuiCameraDisplayProperties variable pointer.
Definition: GuiCameraDisplayProperties.cpp:224
QMap< int, QVariant >
Isis::GuiCameraDisplayProperties::setColor
void setColor(QColor newColor)
Change the color associated with this target.
Definition: GuiCameraDisplayProperties.cpp:178
QObject
Isis::GuiCameraDisplayProperties::XmlHandler::endElement
virtual bool endElement(const QString &namespaceURI, const QString &localName, const QString &qName)
The XML reader invokes this method at the end of every element in the XML document.
Definition: GuiCameraDisplayProperties.cpp:287
QAction
Isis::GuiCameraDisplayProperties
The GUI communication mechanism for target body objects.
Definition: GuiCameraDisplayProperties.h:76
Isis::GuiCameraDisplayProperties::XmlHandler::m_displayProperties
GuiCameraDisplayProperties * m_displayProperties
An internal pointer to GuiCameraDisplayProperties object.
Definition: GuiCameraDisplayProperties.h:158
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Q_DECLARE_METATYPE
Q_DECLARE_METATYPE(Isis::PlotWindow *)
We have plot windows as QVariant data types, so here it's enabled.

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the USGS Astrogeology Discussion Board
To report a bug, or suggest a feature go to: ISIS Github
File Modified: 07/13/2023 15:16:31