swift
columnformatters.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (C) 2013 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
5 
6 #ifndef SWIFT_GUI_MODELS_COLUMNFORMATTERS_H
7 #define SWIFT_GUI_MODELS_COLUMNFORMATTERS_H
8 
9 #include <QFlags>
10 #include <QList>
11 #include <QString>
12 #include <Qt>
13 #include <QtGlobal>
14 
15 #include "gui/led.h"
16 #include "gui/swiftguiexport.h"
17 #include "misc/icon.h"
18 #include "misc/icons.h"
19 #include "misc/pq/angle.h"
20 #include "misc/pq/frequency.h"
21 #include "misc/pq/length.h"
22 #include "misc/pq/speed.h"
23 #include "misc/pq/units.h"
24 #include "misc/variant.h"
25 
26 namespace swift::gui::models
27 {
30  {
31  public:
33  CDefaultFormatter(int alignment = alignDefault(), bool i18n = true,
34  const QList<int> &supportedRoles = { Qt::DisplayRole })
35  : m_supportedRoles(supportedRoles), m_alignment(alignment), m_useI18n(i18n)
36  {}
37 
39  virtual ~CDefaultFormatter() {}
40 
43 
46 
48  virtual Qt::ItemFlags flags(Qt::ItemFlags flags, bool editable) const;
49 
52  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const;
53 
56  virtual swift::misc::CVariant editRole(const swift::misc::CVariant &dataCVariant) const;
57 
60  virtual swift::misc::CVariant tooltipRole(const swift::misc::CVariant &value) const;
61 
65  virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &dataCVariant) const;
66 
68  virtual swift::misc::CVariant alignmentRole() const;
69 
71  virtual swift::misc::CVariant checkStateRole(const swift::misc::CVariant &value) const;
72 
74  virtual bool hasAlignment() const { return m_alignment >= 0; }
75 
77  bool supportsRole(int role) const;
78 
81  virtual swift::misc::CVariant data(int role, const swift::misc::CVariant &inputData) const;
82 
84  static int alignDefault();
85 
87  static int alignLeftVCenter() { return Qt::AlignVCenter | Qt::AlignLeft; }
88 
90  static int alignLeftTop() { return Qt::AlignTop | Qt::AlignLeft; }
91 
93  static int alignCentered() { return Qt::AlignVCenter | Qt::AlignHCenter; }
94 
96  static int alignRightVCenter() { return Qt::AlignVCenter | Qt::AlignRight; }
97 
99  static const QList<int> &roleDisplay()
100  {
101  static const QList<int> r({ Qt::DisplayRole });
102  return r;
103  }
104 
106  static const QList<int> &rolesDisplayAndEdit()
107  {
108  static const QList<int> r({ Qt::DisplayRole, Qt::EditRole });
109  return r;
110  }
111 
113  static const QList<int> &rolesDecorationAndToolTip()
114  {
115  static const QList<int> r({ Qt::DecorationRole, Qt::ToolTipRole });
116  return r;
117  }
118 
120  static const QList<int> &roleCheckState()
121  {
122  static const QList<int> r({ Qt::CheckStateRole });
123  return r;
124  }
125 
127  static const QList<int> &rolesNone()
128  {
129  static const QList<int> r;
130  return r;
131  }
132 
133  protected:
135  virtual swift::misc::CVariant
136  keepStandardTypesConvertToStringOtherwise(const swift::misc::CVariant &inputData) const;
137 
139  static const swift::misc::CVariant &emptyStringVariant();
140 
142  static const swift::misc::CVariant &emptyPixmapVariant();
143 
144  QList<int> m_supportedRoles = roleDisplay();
145  int m_alignment = -1;
146  bool m_useI18n = true;
147  };
148 
151  {
152  public:
154  CPixmapFormatter(int alignment = alignDefault(), const QList<int> &supportedRoles = rolesDecorationAndToolTip())
155  : CDefaultFormatter(alignment, false, supportedRoles)
156  {}
157 
159  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
160 
162  virtual swift::misc::CVariant tooltipRole(const swift::misc::CVariant &dataCVariant) const override;
163 
165  virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &dataCVariant) const override;
166 
169  int getMaxWidth() const { return m_maxWidth; }
170  int getMaxHeight() const { return m_maxHeight; }
171  void setMaxWidth(int w) { m_maxWidth = w; }
172  void setMaxHeight(int h) { m_maxHeight = h; }
174 
175  private:
176  int m_maxWidth = -1;
177  int m_maxHeight = -1;
178  };
179 
182  {
183  public:
185  CStringFormatter(int alignment = alignDefault()) : CDefaultFormatter(alignment, false, roleDisplay()) {}
186 
188  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
189  };
190 
193  {
194  public:
196  CEmptyFormatter(int alignment = alignDefault()) : CDefaultFormatter(alignment, false, roleDisplay()) {}
197 
199  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
200  };
201 
204  {
205  public:
207  CIncognitoFormatter(int alignment = alignDefault()) : CDefaultFormatter(alignment, false, roleDisplay()) {}
208 
210  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
211  };
212 
215  {
216  public:
219  const QList<int> &supportedRoles = rolesDecorationAndToolTip())
220  : CDefaultFormatter(alignment, false, supportedRoles)
221  {}
222 
224  virtual Qt::ItemFlags flags(Qt::ItemFlags flags, bool editable) const override;
225  };
226 
229  {
230  public:
232  CBoolTextFormatter(int alignment = alignDefault(), const QString &trueName = "true",
233  const QString &falseName = "false", const QList<int> &supportedRoles = roleDisplay())
234  : CDefaultFormatter(alignment, false, supportedRoles),
235  m_trueNameVariant(swift::misc::CVariant::from(trueName)),
236  m_falseNameVariant(swift::misc::CVariant::from(falseName))
237  {}
238 
240  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
241 
243  virtual Qt::ItemFlags flags(Qt::ItemFlags flags, bool editable) const override;
244 
245  protected:
248  };
249 
252  {
253  public:
255  CBoolLedFormatter(int alignment = alignDefault());
256 
258  CBoolLedFormatter(const QString &onName, const QString &offName, int alignment = alignDefault());
259 
261  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
262 
264  virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &dataCVariant) const override;
265 
267  virtual swift::misc::CVariant tooltipRole(const swift::misc::CVariant &dataCVariant) const override
268  {
269  return CBoolTextFormatter::displayRole(dataCVariant);
270  }
271 
272  protected:
275 
276  private:
278  static CLedWidget *createLedDefault()
279  {
280  return new CLedWidget(false, CLedWidget::Yellow, CLedWidget::Black, CLedWidget::Rounded);
281  }
282  };
283 
286  {
287  public:
289  CBoolIconFormatter(int alignment = alignCentered());
290 
292  CBoolIconFormatter(const QString &onName, const QString &offName, int alignment = alignCentered());
293 
295  CBoolIconFormatter(const swift::misc::CIcon &onIcon, const swift::misc::CIcon &offIcon, const QString &onName,
296  const QString &offName, int alignment = alignCentered());
297 
300  const QString &onName, const QString &offName, int alignment = alignCentered());
301 
303  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
304 
306  virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &dataCVariant) const override;
307 
309  virtual swift::misc::CVariant tooltipRole(const swift::misc::CVariant &dataCVariant) const override;
310 
311  protected:
314  };
315 
318  {
319  public:
321  CValueObjectFormatter(int alignment = alignDefault(), bool i18n = true,
322  const QList<int> &supportedRoles = roleDisplay())
323  : CDefaultFormatter(alignment, i18n, supportedRoles)
324  {}
325 
327  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &valueObject) const override;
328 
330  virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &valueObject) const override;
331  };
332 
335  {
336  public:
338  CDateTimeFormatter(const QString &formatString = formatYmd(), int alignment = alignDefault(), bool i18n = true);
339 
341  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dateTime) const override;
342 
344  static const QString &formatYmd()
345  {
346  static const QString f = "yyyy-MM-dd";
347  return f;
348  }
349 
351  static const QString &formatYmdhm()
352  {
353  static const QString f = "yyyy-MM-dd HH:mm";
354  return f;
355  }
356 
358  static const QString &formatHm()
359  {
360  static const QString f = "HH:mm";
361  return f;
362  }
363 
365  static const QString &formatHms()
366  {
367  static const QString f = "HH:mm:ss";
368  return f;
369  }
370 
372  static const QString &formatHmsz()
373  {
374  static const QString f = "HH:mm:ss.zzz";
375  return f;
376  }
377 
378  private:
379  const QString m_formatString = "yyyy-MM-dd HH:mm";
380  };
381 
384  {
385  public:
387  CIntegerFormatter(int alignment = alignRightVCenter()) : CDefaultFormatter(alignment, false) {}
388 
390  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &expectedInteger) const override;
391  };
392 
395  {
396  public:
398  CAltitudeFormatter(bool flightlevel = false, int alignment = alignRightVCenter(), bool i18n = true)
399  : CDefaultFormatter(alignment, i18n), m_flightLevel(flightlevel)
400  {}
401 
404  int alignment = alignRightVCenter(), bool i18n = true)
405  : CDefaultFormatter(alignment, i18n), m_unit(unit), m_flightLevel(flightlevel)
406  {}
407 
410 
412  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &altitude) const override;
413 
414  private:
416  const bool m_flightLevel = false;
417  };
418 
421  {
422  public:
424  CColorFormatter(int alignment = alignCentered(), bool i18n = true);
425 
427  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
428 
430  virtual swift::misc::CVariant tooltipRole(const swift::misc::CVariant &dataCVariant) const override;
431 
433  virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &dataCVariant) const override;
434  };
435 
437  template <class MU, class PQ>
439  {
440  public:
442  CPhysiqalQuantiyFormatter(MU unit = MU::defaultUnit(), int digits = 2, int alignment = alignRightVCenter(),
443  bool withUnit = true, bool i18n = true,
444  const QList<int> &supportedRoles = roleDisplay())
445  : CValueObjectFormatter(alignment, i18n, supportedRoles), m_unit(unit), m_digits(digits),
446  m_withUnit(withUnit)
447  {}
448 
450  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &physicalQuantity) const override
451  {
452  if (physicalQuantity.canConvert<PQ>())
453  {
454  const PQ pq = physicalQuantity.value<PQ>();
455  return this->displayRole(pq);
456  }
457  else
458  {
459  Q_ASSERT_X(false, "CPhysiqalQuantiyFormatter::displayRole", "No CPhysicalQuantity class");
460  return emptyStringVariant();
461  }
462  }
463 
465  swift::misc::CVariant displayRole(const PQ &pq) const
466  {
467  if (pq.isNull())
468  {
469  static const swift::misc::CVariant null("null");
470  return null;
471  }
472  return pq.valueRoundedWithUnit(m_unit, m_digits, m_useI18n);
473  }
474 
476  virtual void setUnit(const MU &unit) { m_unit = unit; }
477 
479  virtual void enableUnit(bool enable) { m_withUnit = enable; }
480 
482  virtual void setDigits(int digits) { m_digits = digits; }
483 
484  protected:
485  MU m_unit;
486  int m_digits = 2;
487  bool m_withUnit = true;
488  };
489 
492  public CPhysiqalQuantiyFormatter<swift::misc::physical_quantities::CFrequencyUnit,
493  swift::misc::physical_quantities::CFrequency>
494  {
495  public:
497  CComFrequencyFormatter(int alignment = alignRightVCenter(), bool withUnit = true, bool i18n = true)
498  : CPhysiqalQuantiyFormatter(swift::misc::physical_quantities::CFrequencyUnit::MHz(), 3, alignment, withUnit,
499  i18n)
500  {}
501 
503  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
504  };
505 
508  public CPhysiqalQuantiyFormatter<swift::misc::physical_quantities::CAngleUnit,
509  swift::misc::physical_quantities::CAngle>
510  {
511  public:
513  CAngleDegreeFormatter(int alignment = alignRightVCenter(), bool withUnit = true, bool i18n = true)
514  : CPhysiqalQuantiyFormatter(swift::misc::physical_quantities::CAngleUnit::deg(), 0, alignment, withUnit,
515  i18n)
516  {}
517  };
518 
521  {
522  public:
524  CLatLonFormatter(int alignment = alignRightVCenter()) : CValueObjectFormatter(alignment) {}
525  };
526 
529  public CPhysiqalQuantiyFormatter<swift::misc::physical_quantities::CLengthUnit,
530  swift::misc::physical_quantities::CLength>
531  {
532  public:
534  CAirspaceDistanceFormatter(int alignment = alignRightVCenter(), bool withUnit = true, bool i18n = true)
535  : CPhysiqalQuantiyFormatter(swift::misc::physical_quantities::CLengthUnit::NM(), 1, alignment, withUnit,
536  i18n)
537  {}
538 
540  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
541  };
542 
545  public CPhysiqalQuantiyFormatter<swift::misc::physical_quantities::CSpeedUnit,
546  swift::misc::physical_quantities::CSpeed>
547  {
548  public:
550  CSpeedKtsFormatter(int alignment = alignRightVCenter(), bool withUnit = true, bool i18n = true)
551  : CPhysiqalQuantiyFormatter(swift::misc::physical_quantities::CSpeedUnit::kts(), 0, alignment, withUnit,
552  i18n)
553  {}
554 
556  virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const override;
557  };
558 } // namespace swift::gui::models
559 
560 #endif // SWIFT_GUI_MODELS_COLUMNFORMATTERS_H
Displaying an LED as widget. Non copyable.
Definition: led.h:29
Airspace distance displayed in NM.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
CAirspaceDistanceFormatter(int alignment=alignRightVCenter(), bool withUnit=true, bool i18n=true)
Constructor.
Formatter when column contains an altitude.
CAltitudeFormatter(bool flightlevel=false, int alignment=alignRightVCenter(), bool i18n=true)
Constructor.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &altitude) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
CAltitudeFormatter(const swift::misc::physical_quantities::CLengthUnit &unit, bool flightlevel=false, int alignment=alignRightVCenter(), bool i18n=true)
Constructor.
void setUnit(const swift::misc::physical_quantities::CLengthUnit &unit)
Set the unit, normally ft/m.
CAngleDegreeFormatter(int alignment=alignRightVCenter(), bool withUnit=true, bool i18n=true)
Constructor.
virtual swift::misc::CVariant tooltipRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to QString. Used with Qt::ToolTipRole displaying a tex...
virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &dataCVariant) const
Display the icon.
CBoolIconFormatter(int alignment=alignCentered())
Constructor.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
const swift::misc::CVariant m_iconOffVariant
Used when off.
const swift::misc::CVariant m_iconOnVariant
Used when on.
swift::misc::CVariant m_pixmapOnLedVariant
Pixmap used when on.
CBoolLedFormatter(int alignment=alignDefault())
Constructor.
virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &dataCVariant) const
Display the LED.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
virtual swift::misc::CVariant tooltipRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to QString. Used with Qt::ToolTipRole displaying a tex...
swift::misc::CVariant m_pixmapOffLedVariant
Pixmap used when off.
const swift::misc::CVariant m_trueNameVariant
displayed when true
const swift::misc::CVariant m_falseNameVariant
displayed when false
virtual Qt::ItemFlags flags(Qt::ItemFlags flags, bool editable) const
Flags.
CBoolTextFormatter(int alignment=alignDefault(), const QString &trueName="true", const QString &falseName="false", const QList< int > &supportedRoles=roleDisplay())
Constructor.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
Formatter when column contains a color.
CColorFormatter(int alignment=alignCentered(), bool i18n=true)
Constructor.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &dataCVariant) const
Display the icon.
virtual swift::misc::CVariant tooltipRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to QString. Used with Qt::ToolTipRole displaying a tex...
CComFrequencyFormatter(int alignment=alignRightVCenter(), bool withUnit=true, bool i18n=true)
Constructor.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
Formatter when column contains QDateTime, QDate or QTime.
static const QString & formatHmsz()
Hour minute second and milliseconds.
static const QString & formatHm()
Hour minute.
static const QString & formatYmdhm()
Year month day hour minute.
CDateTimeFormatter(const QString &formatString=formatYmd(), int alignment=alignDefault(), bool i18n=true)
Constructor.
static const QString & formatHms()
Hour minute second.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dateTime) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
static const QString & formatYmd()
Year month day.
Column formatter default implementation, also serving as interface.
static const QList< int > & rolesDisplayAndEdit()
Display role.
static const QList< int > & rolesDecorationAndToolTip()
Decoration + ToolTip role.
CDefaultFormatter(const CDefaultFormatter &)=default
Copy constructor.
static int alignLeftVCenter()
Align left/vertically centered.
static int alignDefault()
Default value.
static const QList< int > & rolesNone()
No roles.
static const QList< int > & roleCheckState()
CheckState role.
CDefaultFormatter & operator=(const CDefaultFormatter &)=default
Copy assignment operator.
virtual ~CDefaultFormatter()
Virtual destructor.
static int alignCentered()
Align centered.
CDefaultFormatter(int alignment=alignDefault(), bool i18n=true, const QList< int > &supportedRoles={ Qt::DisplayRole })
Constructor.
static int alignRightVCenter()
Align right/vertically centered.
static int alignLeftTop()
Align left/vertically on top.
static const swift::misc::CVariant & emptyStringVariant()
Empty string CVariant.
virtual bool hasAlignment() const
Alignment available?
static const QList< int > & roleDisplay()
Display role.
Layout will be defined by a delegate.
CDelegateFormatter(int alignment=alignCentered(), const QList< int > &supportedRoles=rolesDecorationAndToolTip())
Constructor.
virtual Qt::ItemFlags flags(Qt::ItemFlags flags, bool editable) const
Flags.
Just returns a empty "" value.
CEmptyFormatter(int alignment=alignDefault())
Constructor.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
Just returns a empty "" value.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
CIncognitoFormatter(int alignment=alignDefault())
Constructor.
Formatter when column contains an integer.
CIntegerFormatter(int alignment=alignRightVCenter())
Constructor.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &expectedInteger) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
Latitude or Longitude formatter.
CLatLonFormatter(int alignment=alignRightVCenter())
Constructor.
Formatter for physical quantities.
virtual void setUnit(const MU &unit)
Set unit.
swift::misc::CVariant displayRole(const PQ &pq) const
Version if value is already available as PQ.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &physicalQuantity) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
virtual void enableUnit(bool enable)
Enable unit display.
CPhysiqalQuantiyFormatter(MU unit=MU::defaultUnit(), int digits=2, int alignment=alignRightVCenter(), bool withUnit=true, bool i18n=true, const QList< int > &supportedRoles=roleDisplay())
Constructor.
virtual void setDigits(int digits)
Digits.
void setMaxHeight(int h)
Width/height.
virtual swift::misc::CVariant tooltipRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to QString. Used with Qt::ToolTipRole displaying a tex...
CPixmapFormatter(int alignment=alignDefault(), const QList< int > &supportedRoles=rolesDecorationAndToolTip())
Constructor.
virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatted as icon (Qt docu: "The data to be rendered as a decoration in t...
int getMaxWidth() const
Width/height.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
void setMaxWidth(int w)
Width/height.
int getMaxHeight() const
Width/height.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
CSpeedKtsFormatter(int alignment=alignRightVCenter(), bool withUnit=true, bool i18n=true)
Constructor.
String formatter, if known the variant already contains the appropriate string.
CStringFormatter(int alignment=alignDefault())
Constructor.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &dataCVariant) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
Default formatter when column contains CValueObject.
virtual swift::misc::CVariant displayRole(const swift::misc::CVariant &valueObject) const
Value provided as CVariant, formatter converts to standard types or string. Used with Qt::DisplayRole...
virtual swift::misc::CVariant decorationRole(const swift::misc::CVariant &valueObject) const
Value provided as CVariant, formatted as icon (Qt docu: "The data to be rendered as a decoration in t...
CValueObjectFormatter(int alignment=alignDefault(), bool i18n=true, const QList< int > &supportedRoles=roleDisplay())
Constructor.
Value object for icons. An icon is stored in the global icon repository and identified by its index....
Definition: icon.h:39
IconIndex
Index for each icon, allows to send them via DBus, efficiently store them, etc.
Definition: icons.h:32
Wrapper around QVariant which provides transparent access to CValueObject methods of the contained ob...
Definition: variant.h:66
T value() const
Return the value converted to the type T.
Definition: variant.h:169
bool canConvert(int typeId) const
True if this variant can be converted to the type with the given metatype ID.
Specialized class for distance units (meter, foot, nautical miles).
Definition: units.h:95
static CLengthUnit ft()
Foot ft.
Definition: units.h:159
Models to be used with views, mainly QTableView.
#define SWIFT_GUI_EXPORT
Export a class or function from the library.