Isis Developer Reference
Isis::GuiCameraDisplayProperties Class Reference

The GUI communication mechanism for target body objects. More...

#include <GuiCameraDisplayProperties.h>

Inheritance diagram for Isis::GuiCameraDisplayProperties:
Inheritance graph
Collaboration diagram for Isis::GuiCameraDisplayProperties:
Collaboration graph

Public Types

enum  Property { None = 0, Color = 1, Selected = 2, ShowLabel = 16 }
 This is a list of properties and actions that are possible. More...
 

Public Slots

void setColor (QColor newColor)
 Change the color associated with this target. More...
 
void setShowLabel (bool)
 Change the visibility of the display name associated with this target. More...
 
void setSelected (bool)
 Change the selected state associated with this target. More...
 

Signals

void propertyChanged (GuiCameraDisplayProperties *)
 
void supportAdded (Property)
 
void propertyChanged (DisplayProperties *)
 
void supportAdded (int)
 

Public Member Functions

 GuiCameraDisplayProperties (QString displayName, QObject *parent=NULL)
 GuiCameraDisplayProperties constructor. More...
 
 GuiCameraDisplayProperties (XmlStackedHandlerReader *xmlReader, QObject *parent=NULL)
 GuiCameraDisplayProperties constructor. More...
 
virtual ~GuiCameraDisplayProperties ()
 destructor More...
 
void addSupport (Property prop)
 Call this with every property you support, otherwise they will not communicate properly between widgets. More...
 
bool supports (Property prop)
 Support may come later, please make sure you are connected to the supportAdded signal. More...
 
QVariant getValue (Property prop) const
 Get a property's associated data. More...
 
void save (QXmlStreamWriter &stream, const Project *project, FileName newProjectRoot) const
 Write the Gui Camera Display Properties out to an XML file. More...
 
void fromPvl (const PvlObject &pvl)
 
PvlObject toPvl () const
 Convert to Pvl for project files. More...
 
void addSupport (int property)
 Call this with every property you support, otherwise they will not communicate properly between widgets. More...
 
bool supports (int property)
 Support may come later, please make sure you are connected to the supportAdded signal. More...
 
QVariant getValue (int property) const
 Get a property's associated data. More...
 
void setDisplayName (QString displayName)
 Sets display name. More...
 
QString displayName () const
 Returns the display name. More...
 

Static Public Member Functions

static QColor randomColor ()
 Creates and returns a random color for the intial color of the footprint polygon. More...
 

Protected Member Functions

void setValue (int prop, QVariant value)
 This is the generic mutator for properties. More...
 

Detailed Description

The GUI communication mechanism for target body objects.

This class is the connector between various GUI interfaces for target body objects. We use this to communicate shared properties that various widgets need to know/should react to in a generic way.

This is how this class is supposed to "connect" widgets:

widgetA widgetB widgetC | | | ---—DisplayProperties ----—

When a user selects a target in widgetA, widgetB and widgetC now have a chance to also select the same target. This applies to all shared properties. Some of the properties are actions - such as ?????. This also allows a widget with no ??? (such as a list) to have an option to ???? (if any of the widgets support it*) and have that option work. There is no state associated with ????? - it's an action connected to a signal.

The proper way to detect a target going away is to connect to the destroyed signal (from the parent QObject). Once that is emitted you cannot call any methods on this object.

Author
2015-05-27 Ken Edmundson

Member Enumeration Documentation

◆ Property

This is a list of properties and actions that are possible.

Enumerator
None 

Null display property for bit-flag purposes.

Color 

The color of the control net, default randomized (QColor)

Selected 

The selection state of this control net (bool)

ShowLabel 

True if the control net should show its display name (bool)

Constructor & Destructor Documentation

◆ GuiCameraDisplayProperties() [1/2]

Isis::GuiCameraDisplayProperties::GuiCameraDisplayProperties ( QString  displayName,
QObject parent = NULL 
)

GuiCameraDisplayProperties constructor.

This sets default values and constructs the object pointer.

Parameters
displayNameThe filename (fully expanded) of the object.
parentQt parent object (this is destroyed when parent is destroyed)

References None, randomColor(), setSelected(), and setShowLabel().

◆ GuiCameraDisplayProperties() [2/2]

Isis::GuiCameraDisplayProperties::GuiCameraDisplayProperties ( XmlStackedHandlerReader xmlReader,
QObject parent = NULL 
)

GuiCameraDisplayProperties constructor.

Parameters
xmlReaderXML reader class for loading the Gui Camera Display Properties
parent

References None, and Isis::XmlStackedHandlerReader::pushContentHandler().

◆ ~GuiCameraDisplayProperties()

Isis::GuiCameraDisplayProperties::~GuiCameraDisplayProperties ( )
virtual

destructor

Member Function Documentation

◆ addSupport() [1/2]

void Isis::DisplayProperties::addSupport ( int  property)
inherited

Call this with every property you support, otherwise they will not communicate properly between widgets.

Parameters
propThe property you are adding support for

References Isis::DisplayProperties::supportAdded(), and Isis::DisplayProperties::supports().

Referenced by Isis::ImageTreeWidgetItem::ImageTreeWidgetItem(), and Isis::MosaicSceneItem::MosaicSceneItem().

◆ addSupport() [2/2]

void Isis::GuiCameraDisplayProperties::addSupport ( Property  prop)

Call this with every property you support, otherwise they will not communicate properly between widgets.

Parameters
propThe property you are adding support for

References supportAdded(), and supports().

◆ displayName()

◆ fromPvl()

void Isis::DisplayProperties::fromPvl ( const PvlObject pvl)
inherited

◆ getValue() [1/2]

◆ getValue() [2/2]

QVariant Isis::GuiCameraDisplayProperties::getValue ( Property  prop) const

Get a property's associated data.

Parameters
propThe property
Returns
QVariant Returns the value of the property.

◆ propertyChanged [1/2]

void Isis::DisplayProperties::propertyChanged ( DisplayProperties )
signalinherited

◆ propertyChanged [2/2]

void Isis::GuiCameraDisplayProperties::propertyChanged ( GuiCameraDisplayProperties )
signal

◆ randomColor()

QColor Isis::GuiCameraDisplayProperties::randomColor ( )
static

Creates and returns a random color for the intial color of the footprint polygon.

Returns
QColor Returns a random color.

Referenced by GuiCameraDisplayProperties().

◆ save()

void Isis::GuiCameraDisplayProperties::save ( QXmlStreamWriter &  stream,
const Project project,
FileName  newProjectRoot 
) const

Write the Gui Camera Display Properties out to an XML file.

Parameters
streamThe output data stream.
projectNot used in this function.
newProjectRootNot used in this function.

References Isis::DisplayProperties::displayName(), and Isis::ReadWrite.

◆ setColor

void Isis::GuiCameraDisplayProperties::setColor ( QColor  newColor)
slot

Change the color associated with this target.

Parameters
newColoris the color to associate with this target.

◆ setDisplayName()

void Isis::DisplayProperties::setDisplayName ( QString  displayName)
inherited

Sets display name.

Parameters
displayNameDisplay name of the object.

References Isis::DisplayProperties::displayName().

Referenced by Isis::DisplayProperties::fromPvl().

◆ setSelected

void Isis::GuiCameraDisplayProperties::setSelected ( bool  newValue)
slot

Change the selected state associated with this target.

Parameters
newValueis the new state associated with this target.

References Selected.

Referenced by GuiCameraDisplayProperties().

◆ setShowLabel

void Isis::GuiCameraDisplayProperties::setShowLabel ( bool  newValue)
slot

Change the visibility of the display name associated with this target.

Parameters
newValueShows/hides the display name of the associated target.

References ShowLabel.

Referenced by GuiCameraDisplayProperties().

◆ setValue()

void Isis::DisplayProperties::setValue ( int  property,
QVariant  value 
)
protectedinherited

◆ supportAdded [1/2]

void Isis::DisplayProperties::supportAdded ( int  )
signalinherited

◆ supportAdded [2/2]

void Isis::GuiCameraDisplayProperties::supportAdded ( Property  )
signal

Referenced by addSupport().

◆ supports() [1/2]

bool Isis::DisplayProperties::supports ( int  property)
inherited

Support may come later, please make sure you are connected to the supportAdded signal.

Returns
True if the property has support, false otherwise

Referenced by Isis::DisplayProperties::addSupport(), Isis::ImageList::allSupport(), Isis::DisplayProperties::setValue(), and Isis::ImageTreeWidgetItem::update().

◆ supports() [2/2]

bool Isis::GuiCameraDisplayProperties::supports ( Property  prop)

Support may come later, please make sure you are connected to the supportAdded signal.

Returns
bool Returns true if the property has support, false otherwise.

Referenced by addSupport().

◆ toPvl()

PvlObject Isis::DisplayProperties::toPvl ( ) const
inherited

Convert to Pvl for project files.

This stores all of the data associated with all of the properties (but not what is supported). This also stores the cube filename.

References Isis::DisplayProperties::displayName(), and Isis::ReadWrite.

Referenced by Isis::Image::toPvl(), and Isis::Shape::toPvl().


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