All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Classes | Public Member Functions | Static Public Attributes | Protected Member Functions
GeopsyGui::PickFormat Class Reference

Brief description of class still missing. More...

#include <PickFormat.h>

Inheritance diagram for GeopsyGui::PickFormat:
QGpCoreTools::XMLClass

List of all members.

Classes

class  Format

Public Member Functions

QColor color (const QString &pickName) const
QList< int > indexList () const
bool isVisible (const QString &pickName) const
 PickFormat ()
 PickFormat (const PickFormat &o)
void setColor (const QString &pickName, const QColor &c)
void setVisible (const QString &pickName, bool v)
virtual const QString & xml_tagName () const

Static Public Attributes

static const QString xmlPickFormatTag = "PickFormat"

Protected Member Functions

virtual XMLMember xml_member (XML_MEMBER_ARGS)
virtual bool xml_setProperty (XML_SETPROPERTY_ARGS)
virtual void xml_writeProperties (XML_WRITEPROPERTIES_ARGS) const

Detailed Description

Brief description of class still missing.

Full description of class still missing


Constructor & Destructor Documentation

Description of constructor still missing

{}

Copy constructor

References TRACE.

    : XMLClass()
  {
    TRACE;
    _formats=o._formats;
  }

Member Function Documentation

QColor GeopsyGui::PickFormat::color ( const QString &  pickName) const

References TRACE.

Referenced by GeopsyGui::PickLayer::paintData(), GeopsyGui::PickLayer::properties(), and xml_writeProperties().

  {
    TRACE;
    int pickIndex=TimePick::pickIndex(pickName);
    QMap<int, Format>::const_iterator it=_formats.find(pickIndex);
    if(it!=_formats.end()) {
      return it.value().color;
    } else {
      return Qt::blue;
    }
  }
QList<int> GeopsyGui::PickFormat::indexList ( ) const [inline]
{return _formats.keys();}
bool GeopsyGui::PickFormat::isVisible ( const QString &  pickName) const

References TRACE.

Referenced by GeopsyGui::PickLayer::paintData(), and GeopsyGui::PickLayer::properties().

  {
    TRACE;
    int pickIndex=TimePick::pickIndex(pickName);
    QMap<int, Format>::const_iterator it=_formats.find(pickIndex);
    if(it!=_formats.end()) {
      return it.value().visible;
    } else {
      return false;
    }
  }
void GeopsyGui::PickFormat::setColor ( const QString &  pickName,
const QColor &  c 
)

References TRACE.

Referenced by MainWidget::MainWidget(), ManualPick::ManualPick(), and GeopsyGui::PickLayer::setProperty().

  {
    TRACE;
    int pickIndex=TimePick::pickIndex(pickName);
    _formats[pickIndex].color=c;
  }
void GeopsyGui::PickFormat::setVisible ( const QString &  pickName,
bool  v 
)

References TRACE.

Referenced by GeopsyGui::PickLayer::keyPressEvent(), MainWidget::MainWidget(), ManualPick::ManualPick(), GeopsyGui::PickLayer::setPick(), and GeopsyGui::PickLayer::setProperty().

  {
    TRACE;
    int pickIndex=TimePick::pickIndex(pickName);
    _formats[pickIndex].visible=v;
  }

Re-implement this function to offer XML restore (children and properties) support to your class.

From tag and map (with contains the attibute value) return a unique identifier under the format of a XMLMember. XMLMember is initialized with 3 types of contructors:

  • An integer: id number of a property
  • A XMLClass * : a child of this object identified by tag
  • Default constructor: error, unknow child or property

Map of attributes can be inspected in this way (can be achived also in xml_setProperty()):

    static const QString tmp("childrenName");
    XMLRestoreAttributeIterator it=map.find(tmp);
    if(it!=map.end()) {
      // found attribute "childrenName"
    }

If the map of attributes is not used:

    Q_UNUSED(attributes);
    if(tag=="x1") return XMLMember(0);
    else if(tag=="y1") return XMLMember(1);
    else if(tag=="x2") return XMLMember(2);
    else if(tag=="y2") return XMLMember(3);
    else return XMLMember(XMLMember::Unknown);

Arithmetic operations + and - apply to XMLMember to avoid confusion of property id numbers between inherited objects. Offset 3 corresponds to the number of properties defined in this object.

    if(tag=="anInteger") return XMLMember(0);
    else if(tag=="aString") return XMLMember(1);
    else if(tag=="aDouble") return XMLMember(2);
    return AbstractLine::xml_member(tag, attributes, context)+3;

For the arguments of this function use Macro XML_MEMBER_ARGS.

Reimplemented from QGpCoreTools::XMLClass.

References TRACE.

  {
    TRACE;
    Q_UNUSED(attributes);
    Q_UNUSED(context);
    if(tag=="timePick") return XMLMember(0);
    return XMLMember(XMLMember::Unknown);
  }

Re-implement this function to offer XML restore properties support to your class.

From memberID set the corresponding property with value content. The map of attributes is given as a supplementary information (not useful in all cases).

For a general case:

  Q_UNUSED(attributes);
  double val=content.toDouble();
  switch (memberID) {
  case 0:
    _x1=val;
    return true;
  case 1:
    _y1=val;
    return true;
  case 2:
    _x2=val;
    return true;
  case 3:
    _y2=val;
    return true;
  default:
    return false;
  }

For classes inheriting other classes (see also xml_member())

  switch (memberID) {
  case 0:
    _anInteger=content.toString();
    return true;
  case 1:
    _aString=content.toInt();
    return true;
  case 2:
    _aDouble=content.toDouble();
    return true;
  default:
    return AbstractLine::xml_setProperty(memberID-3, map, content);

For the arguments of this function use Macro XML_SETPROPERTY_ARGS.

Reimplemented from QGpCoreTools::XMLClass.

References TRACE.

  {
    TRACE;
    Q_UNUSED(tag);
    Q_UNUSED(context);
    if(memberID!=0) return false;
    int index=TimePick::pickIndex(content.toString());
    XMLRestoreAttributeIterator it;
    it=attributes.find(keys[0]);
    if(it!=attributes.end()) {
      _formats[index].visible=(it.value()=="true");
    } else {
      _formats[index].visible=false;
    }
    it=attributes.find(keys[1]);
    if(it!=attributes.end()) {
      _formats[index].color.setNamedColor(it.value().toString());
    } else {
      _formats[index].color=Qt::blue;
    }
    return true;
  }
virtual const QString& GeopsyGui::PickFormat::xml_tagName ( ) const [inline, virtual]

Reimplemented from QGpCoreTools::XMLClass.

References QGpCoreTools::XMLSaveAttributes::add(), color(), TRACE, and QGpCoreTools::XMLClass::writeProperty().

  {
    TRACE;
    Q_UNUSED(context);
    XMLSaveAttributes att;
    QString& visible=att.add(keys[0]);
    QString& color=att.add(keys[1]);
    for(QMap<int, Format>::const_iterator it=_formats.begin(); it!=_formats.end(); it++) {
      visible=it.value().visible ? "true" : "false";
      color=it.value().color.name();
      writeProperty(s, "timePick", att, TimePick::pickName(it.key()));
    }
  }

Member Data Documentation

const QString GeopsyGui::PickFormat::xmlPickFormatTag = "PickFormat" [static]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines