Version: 9.15.0
QDS_Datum Class Referenceabstract

Base class for all controls using the data dictionary. More...

#include <QDS_Datum.h>

Inheritance diagram for QDS_Datum:
Inheritance graph

Classes

class  Wrapper
 Wrapper for sub widgets. More...
 

Public Slots

void setEnabled (bool)
 Enable/disable main control subwidget (QDS::Control). More...
 

Signals

void paramChanged ()
 The signal is emitted when the datum value is changed. More...
 
void paramChanged (QString &)
 

Public Member Functions

 QDS_Datum (const QString &, QWidget *=0, const int=All, const QString &=QString())
 Constructor. More...
 
virtual ~QDS_Datum ()
 Destructor. More...
 
QString id () const
 Get the datum ID. More...
 
int type () const
 Get the datum value type. More...
 
QString label () const
 Get the datum label text. More...
 
QString units () const
 Get the datum units text. More...
 
QString filter () const
 Get the datum filter string. More...
 
QString format () const
 Get the datum format string. More...
 
QString longDescription () const
 Get the datum long description. More...
 
QString shortDescription () const
 Get the datum short description. More...
 
QString defaultValue () const
 Get the datum default value. More...
 
QString minimumValue () const
 Get the datum minimum value. More...
 
QString maximumValue () const
 Get the datum maximum value. More...
 
QStringList options () const
 Get the datum options names. More...
 
QVariant option (const QString &) const
 Get datum option specified by name as QVariant. More...
 
QString optionString (const QString &) const
 Get datum option specified by name as string. More...
 
double optionDouble (const QString &) const
 Get datum option specified by name as double. More...
 
int optionInteger (const QString &) const
 Get datum option specified by name as integer. More...
 
virtual QVariant value () const
 Get the datum value as QVariant. More...
 
virtual QString stringValue () const
 Get the datum value as string. More...
 
virtual double doubleValue () const
 Get the datum value as double. More...
 
virtual int integerValue () const
 Get the datum value as integer. More...
 
QString text () const
 Get the text data from datum. More...
 
virtual bool isEmpty () const
 Check if the datum is empty. More...
 
virtual void reset ()
 Reset datum state and set default value as current. More...
 
virtual void clear ()
 Clear the control. More...
 
virtual void setValue (const QVariant &)
 Set datum value from QVariant object. More...
 
virtual void setStringValue (const QString &)
 Set datum value from string data. More...
 
virtual void setDoubleValue (const double)
 Set datum value from double data. More...
 
virtual void setIntegerValue (const int)
 Set datum value from integer data. More...
 
virtual bool isEnabled (const int=Control) const
 Get 'enabled' state of the specified subwidget. More...
 
virtual void setEnabled (const bool, const int)
 Enable/disable subwidgets specified by element. More...
 
void show (const int=All)
 Show subwidgets specified by element. More...
 
void hide (const int=All)
 Hide subwidgets specified by element. More...
 
virtual void setShown (const bool, const int=All)
 Show/hide subwidgets specified by flags. More...
 
QWidgetwidget (const int) const
 Get subwidget specified by element. More...
 
void setFocus ()
 Set the input focus to the control widget. More...
 
virtual bool isValid (const bool=true, const QString &=QString(), const QString &=QString()) const
 Check if input data is valid. More...
 
virtual QValidatorvalidator (const bool=false) const
 Create validator according to the datum type of value. More...
 
void addTo (QVBoxLayout *)
 Add widgets to the vertical box layout. More...
 
void addTo (QHBoxLayout *)
 Add widgets to the horizontal box layout. More...
 
void addTo (QGridLayout *, const int, const int, const bool=false)
 Add widgets to the grid layout. More...
 
virtual void setAlignment (const int, const int=Label)
 Set the aligment for QDS::Label and/or QDS::Units subwidgets. More...
 
virtual QString getString () const =0
 Get string value from datum. More...
 
virtual bool eventFilter (QObject *, QEvent *)
 Event filter. More...
 
 operator QWidget * () const
 Overloaded operator used to retrieve main subwidget named QDS::Control. More...
 
bool isCustomTr () const
 Return state of custom translation. More...
 
void enableCustomTr (const bool)
 Change state of custom translation. More...
 

Static Public Member Functions

static QString unitsToText (const QString &)
 Convert units into text presentation. More...
 
static QString textToUnits (const QString &)
 Convert text presentation into internal units format. More...
 
static QString format (const QString &, const QString &, const bool=false)
 Format the specified string as dictionary item value. More...
 
static QString format (const int, const QString &, const bool=false)
 Format the specified integer as dictionary item value. More...
 
static QString format (const double, const QString &, const bool=false)
 Format the specified double as dictionary item value. More...
 
static QString units (const QString &)
 Get displayable units string for specified data dictionary item. More...
 
- Static Public Member Functions inherited from QDS
static bool load (const QString &)
 Load datum definitions from XML file dictPath to the dictionary. More...
 
static QString unitSystemLabel (const QString &, const QString &=QString())
 Get the label of unit system sys. More...
 
static QString activeUnitSystem (const QString &=QString())
 Get the name of active unit system from the specified component comp. More...
 
static void setActiveUnitSystem (const QString &, const QString &=QString())
 Set the active unit system. More...
 
static QString toQString (const TCollection_AsciiString &)
 Convert the OpenCascade ASCII string to Qt string. More...
 
static QString toQString (const TCollection_ExtendedString &)
 Convert the OpenCascade Unicode string to Qt string. More...
 
static QString toQString (const Handle(TCollection_HAsciiString)&)
 Convert the OpenCascade ASCII string to Qt string. More...
 
static QString toQString (const Handle(TCollection_HExtendedString)&)
 Convert the OpenCascade Unicode string to Qt string. More...
 
static TCollection_AsciiString toAsciiString (const QString &)
 Convert the Qt string to OpenCascade ASCII string. More...
 
static TCollection_AsciiString toAsciiString (const TCollection_ExtendedString &)
 Convert the OpenCascade Unicode string to OpenCascade ASCII string. More...
 
static TCollection_AsciiString toAsciiString (const Handle(TCollection_HExtendedString)&)
 Convert the OpenCascade Unicode string to OpenCascade ASCII string. More...
 
static TCollection_ExtendedString toExtString (const QString &)
 Convert the Qt string to OpenCascade Unicode string. More...
 
static TCollection_ExtendedString toExtString (const TCollection_AsciiString &)
 Convert the OpenCascade ASCII string to OpenCascade Unicode string. More...
 

Protected Slots

virtual void onParamChanged ()
 Called when datum value is changed. More...
 

Protected Member Functions

QLabellabelWidget () const
 Get QDS::Label widget. More...
 
QLabelunitsWidget () const
 Get QDS::Units widget. More...
 
QWidgetcontrolWidget () const
 Get QDS::Control widget. More...
 
 Handle (DDS_DicItem) dicItem() const
 
void setDicItem (const Handle(DDS_DicItem)&)
 
int flags () const
 Get datum flags. More...
 
void invalidateCache ()
 Reset the numeric value cache. More...
 
virtual QLabelcreateLabel (QWidget *)
 Create QDS::Label widget. More...
 
virtual QLabelcreateUnits (QWidget *)
 Create QDS::Units widget. More...
 
virtual QWidgetcreateControl (QWidget *)=0
 Create QDS::Control widget. More...
 
virtual void setString (const QString &)=0
 
virtual bool validate (const QString &) const
 Validate the specified string. More...
 
QString prefix () const
 Get prefix string from format. More...
 
QString suffix () const
 Get suffix string from format. More...
 
virtual QString minValue () const
 Get minimum value. More...
 
virtual QString maxValue () const
 Get maximum value. More...
 
virtual void unitSystemChanged (const QString &)
 Process notification about active units system changing. More...
 
void initDatum () const
 Perform initialization if it needed. More...
 

Static Protected Member Functions

static QString format (const QString &, const int, const int)
 Format the given value according to the data dictionary item type. More...
 
static QString format (const QString &, const int, const double)
 Format the given value according to the data dictionary item type. More...
 
static QString format (const QString &, const int, const QString &)
 Format the given value according to the data dictionary item type. More...
 
static QString sprintf (const QString &, const int)
 Wrapper around the standard sprintf() function. More...
 
static QString sprintf (const QString &, const double)
 Wrapper around the standard sprintf() function. This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Process some non standard flags from format string. More...
 
static QString sprintf (const QString &, const QString &)
 Wrapper around the standard sprintf() function. This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Process some non standard flags from format string. More...
 
- Static Protected Member Functions inherited from QDS
static void insertDatum (QDS_Datum *)
 Register given datum datum in the global list. More...
 
static void removeDatum (QDS_Datum *)
 Remove given datum datum from the global list. More...
 

Private Types

typedef QPointer< QLabelGuardedLabel
 
typedef QPointer< QWidgetGuardedWidget
 

Private Slots

void onInitDatum ()
 Perform delayed initialization. More...
 
void onDestroyed (QObject *)
 Called when child subwidget is destroued. More...
 

Private Member Functions

void initialize ()
 Initialize datum. More...
 
Wrapperwrapper (QWidget *) const
 Get wrapper for specified subwidget. More...
 
Wrapperwrapper (const int) const
 Get wrapper for specified subwidget. More...
 
int wrapperType (Wrapper *) const
 Get subwidget type for specified wrapper. More...
 
 Handle (DDS_DicItem) myDicItem
 

Static Private Member Functions

static QString removeAccel (const QString &)
 Remove the acceleartor tags '&' from specified label string src. More...
 
static bool isDoubleFormat (const QString &)
 Check if given format specified doube value. More...
 
static QString canonicalFormat (const QString &)
 Get the canonical sprintf() format. More...
 
static QString canonicalFormat (const QString &, QString &)
 Get the canonical sprintf() format and non standard flags. More...
 

Private Attributes

QString myId
 
int myFlags
 
QMap< int, Wrapper * > myWrapper
 
GuardedLabel myLabel
 
GuardedLabel myUnits
 
GuardedWidget myControl
 
QString mySourceValue
 
QString myTargetValue
 
bool myInitialised
 
bool myTr
 

Friends

class QDS
 

Additional Inherited Members

- Public Types inherited from QDS
enum  DatumFlags {
  None = 0x00 , Label = 0x01 , Control = 0x02 , Units = 0x04 ,
  NotFormat = 0x08 , NotAccel = 0x10 , NotConvert = 0x20 , UnitsWithLabel = 0x40 ,
  All = Label | Control | Units
}
 Enum describes bit flags of the Qt datum view and behaviour. More...
 

Detailed Description

Base class for all controls using the data dictionary.

Datum is successor of QObject (not QWidget). This object can have up to three sub widgets named as QDS::Label, QDS::Control and QDS::Units. User can prevent creation of any of them by setting corresponding subwidgets IDs in the parameter flags of the constructor. QDS::Label widget displays label of datum, QDS::Control widget allows entering the value and QDS::Units widget displays measure units in the active units system.

These widgets are constructed under the parent widget of the datum. The sub widgets are layouted in the parent widget in the following order: first widget is QDS::Label, it is followed by QDS::Control, and in the end is QDS::Units. User can add these widgets to layout manually using method addTo(). Method widget() can be used to retrieve desired widget and place it into layout.

When QGroupBox is used as parent widget for datum object, all subwidgets are arranged automatically by the group box according to the column and orientation properties of the QGroupBox.

Example:

QGroupBox* box = new QGroupBox( 3, Qt::Horizontal, "datum box" );
QDS_Datum* d1 = new QDS_Datum( "datum_1", box, All );
QDS_Datum* d2 = new QDS_Datum( "datum_2", box, All );
QDS_Datum* d3 = new QDS_Datum( "datum_3", box, All );
@ Horizontal
Horizontal orientation.
Definition: SalomePyQt.h:138
Base class for all controls using the data dictionary.
Definition: QDS_Datum.h:41
QDS_Datum(const QString &, QWidget *=0, const int=All, const QString &=QString())
Constructor.
Definition: QDS_Datum.cxx:200
@ All
Create all subwidgets.
Definition: QDS.h:64

In this example we create the QGroupBox with 3 horizontal columns. All the created datum widgets will be placed automatically in 3 rows. Datums will be placed from top to bottom one by one and aligned in he grid.

Datum value is stored as string. User can get/set this value:

User can enable/disable datum subwidgets with setEnabled() method, show/hide them with show()/hide() methods, set input focus to datum with setFocus(), set widgets alignment with setAlignment(), etc.

Member Typedef Documentation

◆ GuardedLabel

typedef QPointer<QLabel> QDS_Datum::GuardedLabel
private

◆ GuardedWidget

typedef QPointer<QWidget> QDS_Datum::GuardedWidget
private

Constructor & Destructor Documentation

◆ QDS_Datum()

QDS_Datum::QDS_Datum ( const QString &  id,
QWidget parent = 0,
const int  flags = All,
const QString &  comp = QString() 
)

Constructor.

Create datum object with datum identifier id and parent widget parent.

Parameter flags defines behaviour of datum and set of created subwidgets. Default value of this parameter is QDS::All.

Parameter comp specifies the component name which will be used when searching the dictionary item.

Datum is self-registered in the global list by QDS::insertDatum().

Parameters
iddatum identifier
parentparent widget
flagsdatum flags
compcomponent

References QDS::Control, Handle(), QDS::insertDatum(), QDS::Label, myFlags, myWrapper, onDestroyed(), onInitDatum(), setDicItem(), QDS::toAsciiString(), and QDS::Units.

◆ ~QDS_Datum()

QDS_Datum::~QDS_Datum ( )
virtual

Destructor.

Destroy all subwidget. Datum is unregistered from the global list by QDS::removeDatum().

References myControl, myLabel, myUnits, and QDS::removeDatum().

Member Function Documentation

◆ addTo() [1/3]

void QDS_Datum::addTo ( QGridLayout *  theLay,
const int  theRow,
const int  theCol,
const bool  vertical = false 
)

Add widgets to the grid layout.

Parameters
theLaylayout
theRowlayout row index
theCollayout column index
verticalif true subwidgets are layouted vertically, otherwise - horizontally

References QDS::Control, initDatum(), QDS::Label, QDS::Units, and wrapper().

◆ addTo() [2/3]

void QDS_Datum::addTo ( QHBoxLayout *  l)

Add widgets to the horizontal box layout.

Parameters
llayout

References QDS::Control, initDatum(), QDS::Label, QDS::Units, and wrapper().

◆ addTo() [3/3]

void QDS_Datum::addTo ( QVBoxLayout *  l)

Add widgets to the vertical box layout.

Parameters
llayout

References QDS::Control, initDatum(), QDS::Label, QDS::Units, and wrapper().

◆ canonicalFormat() [1/2]

QString QDS_Datum::canonicalFormat ( const QString &  fmt)
staticprivate

Get the canonical sprintf() format.

Parameters
fmtstring format
Returns
canonical sprintf() format

References flags().

◆ canonicalFormat() [2/2]

QString QDS_Datum::canonicalFormat ( const QString &  fmt,
QString &  flags 
)
staticprivate

Get the canonical sprintf() format and non standard flags.

Parameters
fmtstring format
flagsformat flags
Returns
canonical sprintf() format

References flags(), and rx.

◆ clear()

void QDS_Datum::clear ( )
virtual

◆ controlWidget()

QWidget * QDS_Datum::controlWidget ( ) const
protected

Get QDS::Control widget.

Returns
control widget

References initDatum(), and myControl.

◆ createControl()

QWidget * QDS_Datum::createControl ( QWidget parent)
protectedpure virtual

Create QDS::Control widget.

This method should be implemented in the successor classes.

Parameters
parentparent widget
Returns
control widget

Implemented in QDS_TextEdit, QDS_SpinBoxDbl, QDS_SpinBox, QDS_RadioBox, QDS_LineEdit, QDS_ComboBox, and QDS_CheckBox.

◆ createLabel()

QLabel * QDS_Datum::createLabel ( QWidget parent)
protectedvirtual

Create QDS::Label widget.

Parameters
parentparent widget
Returns
label widget

◆ createUnits()

QLabel * QDS_Datum::createUnits ( QWidget parent)
protectedvirtual

Create QDS::Units widget.

Parameters
parentparent widget
Returns
units widget

◆ defaultValue()

QString QDS_Datum::defaultValue ( ) const

Get the datum default value.

Returns
default value

References initDatum(), prefix(), suffix(), and QDS::toQString().

◆ doubleValue()

double QDS_Datum::doubleValue ( ) const
virtual

Get the datum value as double.

The value is converted according to the measure units in the active units system to measure units in "SI" units system.

Returns
datum value converted to double

Reimplemented in QDS_ComboBox.

References flags(), getString(), initDatum(), mySourceValue, myTargetValue, and QDS::NotConvert.

◆ enableCustomTr()

void QDS_Datum::enableCustomTr ( const bool  on)

Change state of custom translation.

Custom translation means that text labels of datums are translated with help of standard Qt mechanism of internationalization. In this case special records should be placed into *.ts files under context "QDS". For example, if label has name "myLabel", the corresponding translation should be written: <context> <name>QDS</name> <message> <source>myLabel</source> <translation>myLabel translation</translation> </message> ...

If custom translation mechanism is deactivated, then labels will be shown with text got from xml data dictionary file

By default, the custom translation is deactivated

Parameters
on- if it is true, custom translation is activated, otherwise, deactivated

References label(), labelWidget(), and myTr.

◆ eventFilter()

bool QDS_Datum::eventFilter ( QObject o,
QEvent e 
)
virtual

Event filter.

Perform delayed initialisation. Reimplemented for internal reasons.

Parameters
oevent reciever object
eevent
Returns
true if event should be filtered

References initDatum().

◆ filter()

QString QDS_Datum::filter ( ) const

Get the datum filter string.

Returns
filter string

References initDatum(), and QDS::toQString().

◆ flags()

int QDS_Datum::flags ( ) const
protected

Get datum flags.

Returns
datum flags (QDS::DatumFlags)

References myFlags.

◆ format() [1/7]

QString QDS_Datum::format ( ) const

Get the datum format string.

Returns
format string

References initDatum(), and QDS::toQString().

◆ format() [2/7]

QString QDS_Datum::format ( const double  num,
const QString &  id,
const bool  convert = false 
)
static

Format the specified double as dictionary item value.

Parameters
numdouble value being formatted
iddata dictionary ID
convertif true, perform conversion from "SI" units system
Returns
formatted value

References format(), Handle(), QDS::toAsciiString(), QDS::toQString(), and DDS_DicItem::Unknown.

◆ format() [3/7]

QString QDS_Datum::format ( const int  num,
const QString &  id,
const bool  convert = false 
)
static

Format the specified integer as dictionary item value.

Parameters
numinteger value being formatted
iddata dictionary ID
convertif true, perform conversion from "SI" units system
Returns
formatted value

References format(), Handle(), QDS::toAsciiString(), QDS::toQString(), and DDS_DicItem::Unknown.

◆ format() [4/7]

QString QDS_Datum::format ( const QString &  aFormat,
const int  aType,
const double  aValue 
)
staticprotected

Format the given value according to the data dictionary item type.

Parameters
aFormatformat string
aTypedata dictionary item type
aValuedouble value being formatted
Returns
formatted value

References DDS_DicItem::Float, DDS_DicItem::Integer, and DDS_DicItem::String.

◆ format() [5/7]

QString QDS_Datum::format ( const QString &  aFormat,
const int  aType,
const int  aValue 
)
staticprotected

Format the given value according to the data dictionary item type.

Parameters
aFormatformat string
aTypedata dictionary item type
aValueinteger value being formatted
Returns
formatted value

References DDS_DicItem::Float, DDS_DicItem::Integer, sprintf(), and DDS_DicItem::String.

◆ format() [6/7]

QString QDS_Datum::format ( const QString &  aFormat,
const int  aType,
const QString &  aValue 
)
staticprotected

Format the given value according to the data dictionary item type.

Parameters
aFormatformat string
aTypedata dictionary item type
aValuestring value being formatted
Returns
formatted value

References DDS_DicItem::Float, DDS_DicItem::Integer, sprintf(), and DDS_DicItem::String.

◆ format() [7/7]

QString QDS_Datum::format ( const QString &  str,
const QString &  id,
const bool  convert = false 
)
static

Format the specified string as dictionary item value.

Parameters
strstring value being formatted
iddata dictionary ID
convertif true, perform conversion from "SI" units system
Returns
formatted value

References format(), Handle(), QDS::toAsciiString(), QDS::toQString(), and DDS_DicItem::Unknown.

◆ getString()

QString QDS_Datum::getString ( ) const
pure virtual

Get string value from datum.

This method should be implemented in the successor classes.

Returns
datum string value

Implemented in QDS_TextEdit, QDS_SpinBoxDbl, QDS_SpinBox, QDS_RadioBox, QDS_LineEdit, QDS_ComboBox, and QDS_CheckBox.

◆ Handle() [1/2]

QDS_Datum::Handle ( DDS_DicItem  ) const
protected

◆ Handle() [2/2]

QDS_Datum::Handle ( DDS_DicItem  )
private

◆ hide()

void QDS_Datum::hide ( const int  element = All)

Hide subwidgets specified by element.

Possible values of element: QDS::Label, QDS::Control, QDS::Units or their ORed combinations.

Parameters
elementORed subwidget flags (QDS::DatumFlags)
See also
show(), setShown()

References setShown().

◆ id()

QString QDS_Datum::id ( ) const

Get the datum ID.

Returns
datum ID

References initDatum(), and myId.

◆ initDatum()

void QDS_Datum::initDatum ( ) const
protected

Perform initialization if it needed.

References initialize(), and myInitialised.

◆ initialize()

void QDS_Datum::initialize ( )
private

Initialize datum.

Retrieve information from data dictionary and create subwidgets using virtual mechanism.

Virtual mechanism doesn't work in the constructor, therefore this method should be called outside the constructor.

References QDS::Control, controlWidget(), createControl(), createLabel(), createUnits(), flags(), Handle(), QDS::Label, labelWidget(), longDescription(), myControl, myLabel, myUnits, QDS::NotAccel, QDS_Datum::Wrapper::setWidget(), shortDescription(), QDS::toQString(), QDS::Units, unitSystemChanged(), and wrapper().

◆ integerValue()

int QDS_Datum::integerValue ( ) const
virtual

Get the datum value as integer.

The value is converted according to the measure units in the active units system to measure units in "SI" units system.

Returns
datum value converted to integer

Reimplemented in QDS_ComboBox.

References flags(), getString(), initDatum(), mySourceValue, myTargetValue, and QDS::NotConvert.

◆ invalidateCache()

void QDS_Datum::invalidateCache ( )
protected

Reset the numeric value cache.

References myTargetValue.

◆ isCustomTr()

bool QDS_Datum::isCustomTr ( ) const

Return state of custom translation.

Returns
true if custom translation is enabled

References myTr.

◆ isDoubleFormat()

bool QDS_Datum::isDoubleFormat ( const QString &  theFormat)
staticprivate

Check if given format specified doube value.

Parameters
theFormatformat string
Returns
true if theFormat has specificator for double values

◆ isEmpty()

bool QDS_Datum::isEmpty ( ) const
virtual

Check if the datum is empty.

Returns
false if datum control has value entered

References stringValue().

◆ isEnabled()

bool QDS_Datum::isEnabled ( const int  element = Control) const
virtual

Get 'enabled' state of the specified subwidget.

Parameters
elementORed subwidget flags (QDS::DatumFlags)
Returns
true if all subwidgets specified by element are enabled
See also
setEnabled()

References QDS::Control, controlWidget(), initDatum(), QDS::Label, labelWidget(), QDS::Units, and unitsWidget().

◆ isValid()

bool QDS_Datum::isValid ( const bool  msgBox = true,
const QString &  extMsg = QString(),
const QString &  extLabel = QString() 
) const
virtual

Check if input data is valid.

If data is invalid and msgBox is true, the warning message box is shown.

Parameters
msgBoxif true, show warning message box if input is invalid
extMsgwarning message
extLabeloptional name of the variable (if QDS::Label control is not used)
Returns
true if input data is valid

References controlWidget(), DDS_DicItem::Float, format(), getString(), initDatum(), DDS_DicItem::Integer, isDoubleFormat(), isEmpty(), label(), maxValue(), minValue(), DDS_DicItem::String, QDS::toQString(), type(), and validate().

◆ label()

QString QDS_Datum::label ( ) const

Get the datum label text.

Returns
label text

References flags(), initDatum(), myTr, QDS::NotAccel, removeAccel(), and QDS::toQString().

◆ labelWidget()

QLabel * QDS_Datum::labelWidget ( ) const
protected

Get QDS::Label widget.

Returns
label widget

References initDatum(), and myLabel.

◆ longDescription()

QString QDS_Datum::longDescription ( ) const

Get the datum long description.

Returns
datum long description

References initDatum(), and QDS::toQString().

◆ maximumValue()

QString QDS_Datum::maximumValue ( ) const

Get the datum maximum value.

Returns
maximum value

References format(), initDatum(), DDS_DicItem::MaxValue, and type().

◆ maxValue()

QString QDS_Datum::maxValue ( ) const
protectedvirtual

Get maximum value.

Returns
maximum value

References maximumValue(), prefix(), and suffix().

◆ minimumValue()

QString QDS_Datum::minimumValue ( ) const

Get the datum minimum value.

Returns
minimum value

References format(), initDatum(), DDS_DicItem::MinValue, and type().

◆ minValue()

QString QDS_Datum::minValue ( ) const
protectedvirtual

Get minimum value.

Returns
minimum value

References minimumValue(), prefix(), and suffix().

◆ onDestroyed

void QDS_Datum::onDestroyed ( QObject obj)
privateslot

Called when child subwidget is destroued.

Allows avoiding crash of extra calling of the child subwidget destructor.

Parameters
objobject being destroyed

References myWrapper, and wrapperType().

◆ onInitDatum

void QDS_Datum::onInitDatum ( )
privateslot

Perform delayed initialization.

References initDatum().

◆ onParamChanged

void QDS_Datum::onParamChanged ( )
protectedvirtualslot

Called when datum value is changed.

◆ operator QWidget *()

QDS_Datum::operator QWidget * ( ) const

Overloaded operator used to retrieve main subwidget named QDS::Control.

Returns
QDS::Control subwidget

◆ option()

QVariant QDS_Datum::option ( const QString &  name) const

Get datum option specified by name as QVariant.

Returns
the option value or invalid QVariant if the option does not exist

References QDS::toAsciiString(), and QDS::toQString().

◆ optionDouble()

double QDS_Datum::optionDouble ( const QString &  name) const

Get datum option specified by name as double.

Returns
the option value or 0 if the option does not exist

References option().

◆ optionInteger()

int QDS_Datum::optionInteger ( const QString &  name) const

Get datum option specified by name as integer.

Returns
the option value or 0 if the option does not exist

References option().

◆ options()

QStringList QDS_Datum::options ( ) const

Get the datum options names.

Returns
datum options

References QDS::toQString().

◆ optionString()

QString QDS_Datum::optionString ( const QString &  name) const

Get datum option specified by name as string.

Returns
the option value or null QString if the option does not exist

References QDS::toAsciiString(), and QDS::toQString().

◆ paramChanged [1/2]

void QDS_Datum::paramChanged ( )
signal

The signal is emitted when the datum value is changed.

◆ paramChanged [2/2]

void QDS_Datum::paramChanged ( QString &  )
signal

◆ prefix()

QString QDS_Datum::prefix ( ) const
protected

Get prefix string from format.

Returns
current implementation returns null string

◆ removeAccel()

QString QDS_Datum::removeAccel ( const QString &  src)
staticprivate

Remove the acceleartor tags '&' from specified label string src.

Parameters
srcprocessed string
Returns
string after removing '&' symbols

◆ reset()

void QDS_Datum::reset ( )
virtual

Reset datum state and set default value as current.

Reimplemented in QDS_ComboBox.

References defaultValue(), format(), getString(), initDatum(), invalidateCache(), myFlags, mySourceValue, QDS::NotFormat, onParamChanged(), paramChanged(), setString(), and type().

◆ setAlignment()

void QDS_Datum::setAlignment ( const int  align,
const int  type = Label 
)
virtual

Set the aligment for QDS::Label and/or QDS::Units subwidgets.

Parameters
alignalignment type (Qt::Alignment)
typeORed subwidget flags

Reimplemented in QDS_LineEdit.

References initDatum(), QDS::Label, labelWidget(), type(), QDS::Units, and unitsWidget().

◆ setDicItem()

void QDS_Datum::setDicItem ( const Handle(DDS_DicItem)&  )
protected

◆ setDoubleValue()

void QDS_Datum::setDoubleValue ( const double  num)
virtual

Set datum value from double data.

The value is converted from measure units in "SI" units system to the measure units in the active units system. Format the value using datum format internal if it is required.

Parameters
numnew value

Reimplemented in QDS_ComboBox.

References flags(), format(), getString(), initDatum(), mySourceValue, myTargetValue, QDS::NotConvert, QDS::NotFormat, onParamChanged(), paramChanged(), setString(), and type().

◆ setEnabled [1/2]

void QDS_Datum::setEnabled ( bool  on)
slot

Enable/disable main control subwidget (QDS::Control).

Parameters
onnew 'enabled' state

References QDS::Control, and setEnabled().

◆ setEnabled() [2/2]

void QDS_Datum::setEnabled ( const bool  on,
const int  element 
)
virtual

Enable/disable subwidgets specified by element.

Possible values of element: QDS::Label, QDS::Control, QDS::Units or their ORed combinations.

Parameters
onnew 'enabled' state
elementORed subwidget flags (QDS::DatumFlags)
See also
isEnabled()

References QDS::Control, controlWidget(), initDatum(), QDS::Label, labelWidget(), QDS::Units, and unitsWidget().

◆ setFocus()

void QDS_Datum::setFocus ( )

Set the input focus to the control widget.

References controlWidget(), and initDatum().

◆ setIntegerValue()

void QDS_Datum::setIntegerValue ( const int  num)
virtual

Set datum value from integer data.

The value is converted from measure units in "SI" units system to the measure units in the active units system. Format the value using datum format if it is required.

Parameters
numnew value

Reimplemented in QDS_ComboBox.

References flags(), format(), getString(), initDatum(), mySourceValue, myTargetValue, QDS::NotConvert, QDS::NotFormat, onParamChanged(), paramChanged(), setString(), and type().

◆ setShown()

void QDS_Datum::setShown ( const bool  visible,
const int  flags = All 
)
virtual

Show/hide subwidgets specified by flags.

Possible values of flags: QDS::Label, QDS::Control, QDS::Units or their ORed combinations.

Parameters
visiblenew 'visibility' state
flagsORed subwidget flags (QDS::DatumFlags)
See also
show(), hide()

References flags(), initDatum(), QDS::Units, and widget().

◆ setString()

virtual void QDS_Datum::setString ( const QString &  )
protectedpure virtual

◆ setStringValue()

void QDS_Datum::setStringValue ( const QString &  txt)
virtual

Set datum value from string data.

Parameters
txtnew value

References flags(), format(), getString(), initDatum(), mySourceValue, myTargetValue, QDS::NotFormat, onParamChanged(), paramChanged(), setString(), and type().

◆ setValue()

void QDS_Datum::setValue ( const QVariant &  val)
virtual

◆ shortDescription()

QString QDS_Datum::shortDescription ( ) const

Get the datum short description.

Returns
datum short description

References initDatum(), and QDS::toQString().

◆ show()

void QDS_Datum::show ( const int  element = All)

Show subwidgets specified by element.

Possible values of element: QDS::Label, QDS::Control, QDS::Units or their ORed combinations.

Parameters
elementORed subwidget flags (QDS::DatumFlags)
See also
hide(), setShown()

References setShown().

◆ sprintf() [1/3]

QString QDS_Datum::sprintf ( const QString &  fmt,
const double  val 
)
staticprotected

Wrapper around the standard sprintf() function. This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Process some non standard flags from format string.

Parameters
fmtstring format
valvalue
Returns
formatted value

References canonicalFormat().

◆ sprintf() [2/3]

QString QDS_Datum::sprintf ( const QString &  fmt,
const int  val 
)
staticprotected

Wrapper around the standard sprintf() function.

Process some non standard flags from format string.

Parameters
fmtstring format
valvalue
Returns
formatted value

References canonicalFormat().

◆ sprintf() [3/3]

QString QDS_Datum::sprintf ( const QString &  fmt,
const QString &  val 
)
staticprotected

Wrapper around the standard sprintf() function. This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Process some non standard flags from format string.

Parameters
fmtstring format
valvalue
Returns
formatted value

References canonicalFormat(), isDoubleFormat(), rx, and sprintf().

◆ stringValue()

QString QDS_Datum::stringValue ( ) const
virtual

Get the datum value as string.

Returns
datum value converted to string

References getString(), initDatum(), mySourceValue, and myTargetValue.

◆ suffix()

QString QDS_Datum::suffix ( ) const
protected

Get suffix string from format.

Returns
current implementation returns null string

◆ text()

QString QDS_Datum::text ( ) const

Get the text data from datum.

Text consists of label, string value and units.

Returns
datum text data

References initDatum(), label(), stringValue(), and units().

◆ textToUnits()

QString QDS_Datum::textToUnits ( const QString &  txt)
static

Convert text presentation into internal units format.

Parameters
txttext presentation of units (rich-text)
Returns
units value

◆ type()

int QDS_Datum::type ( ) const

Get the datum value type.

Returns
datum value type

References initDatum(), and DDS_DicItem::Unknown.

◆ units() [1/2]

QString QDS_Datum::units ( ) const

Get the datum units text.

Returns
units text

References initDatum(), and QDS::toQString().

◆ units() [2/2]

QString QDS_Datum::units ( const QString &  id)
static

Get displayable units string for specified data dictionary item.

Parameters
iddata dictionary item ID
Returns
units string

References Handle(), QDS::toAsciiString(), QDS::toQString(), and unitsToText().

◆ unitsToText()

QString QDS_Datum::unitsToText ( const QString &  uni)
static

Convert units into text presentation.

Parameters
uniunits to be converted
Returns
text presentation of units (rich-text)

◆ unitsWidget()

QLabel * QDS_Datum::unitsWidget ( ) const
protected

Get QDS::Units widget.

Returns
units widget

References initDatum(), and myUnits.

◆ unitSystemChanged()

void QDS_Datum::unitSystemChanged ( const QString &  )
protectedvirtual

Process notification about active units system changing.

Update label and units widgets.

Parameters
unitSystemnew active units system

Reimplemented in QDS_SpinBoxDbl, QDS_SpinBox, QDS_RadioBox, QDS_LineEdit, and QDS_ComboBox.

References flags(), label(), labelWidget(), reset(), units(), unitsToText(), unitsWidget(), and QDS::UnitsWithLabel.

◆ validate()

bool QDS_Datum::validate ( const QString &  txt) const
protectedvirtual

Validate the specified string.

Parameters
txtstring to be validated
Returns
true if string contains valid data

References format(), isDoubleFormat(), DDS_DicItem::String, type(), DDS_DicItem::Unknown, and validator().

◆ validator()

QValidator * QDS_Datum::validator ( const bool  limits = false) const
virtual

Create validator according to the datum type of value.

Parameters
limitsif true use minimum and maximum value limits
Returns
validator

References canonicalFormat(), filter(), DDS_DicItem::Float, format(), DDS_DicItem::Integer, maxValue(), minValue(), QDS_StringValidator::setLength(), DDS_DicItem::String, and type().

◆ value()

QVariant QDS_Datum::value ( ) const
virtual

◆ widget()

QWidget * QDS_Datum::widget ( const int  element) const

Get subwidget specified by element.

Possible values of element: QDS::Label, QDS::Control, QDS::Units.

Parameters
elementsubwidget
Returns
widget

References initDatum(), and wrapper().

◆ wrapper() [1/2]

QDS_Datum::Wrapper * QDS_Datum::wrapper ( const int  id) const
private

Get wrapper for specified subwidget.

Parameters
idsubwidget ID
Returns
wrapper

References id(), and myWrapper.

◆ wrapper() [2/2]

QDS_Datum::Wrapper * QDS_Datum::wrapper ( QWidget wid) const
private

Get wrapper for specified subwidget.

Parameters
widsubwidget
Returns
wrapper

References myWrapper.

◆ wrapperType()

int QDS_Datum::wrapperType ( QDS_Datum::Wrapper wrap) const
private

Get subwidget type for specified wrapper.

Parameters
wrapwrapper
Returns
subwidget ID

References id(), and myWrapper.

Friends And Related Function Documentation

◆ QDS

friend class QDS
friend

Member Data Documentation

◆ myControl

GuardedWidget QDS_Datum::myControl
private

◆ myFlags

int QDS_Datum::myFlags
private

◆ myId

QString QDS_Datum::myId
private

◆ myInitialised

bool QDS_Datum::myInitialised
private

◆ myLabel

GuardedLabel QDS_Datum::myLabel
private

◆ mySourceValue

QString QDS_Datum::mySourceValue
private

◆ myTargetValue

QString QDS_Datum::myTargetValue
private

◆ myTr

bool QDS_Datum::myTr
private

◆ myUnits

GuardedLabel QDS_Datum::myUnits
private

◆ myWrapper

QMap<int, Wrapper*> QDS_Datum::myWrapper
private

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