3131#include " treeitem.h"
3232
3333#include < QStringList>
34+ #include < QSettings>
3435#include < QWidget>
3536#include < QSpinBox>
3637#include < QDoubleSpinBox>
5354class FieldTreeItem : public TreeItem {
5455public:
5556
56- FieldTreeItem (int index, const QList<QVariant> &data, UAVObjectField *field, TreeItem *parentItem ) :
57- TreeItem (data, parentItem ), m_index(index), m_field(field)
57+ FieldTreeItem (int index, const QList<QVariant> &data, UAVObjectField *field) :
58+ TreeItem (data), m_index(index), m_field(field)
5859 {}
59- FieldTreeItem (int index, const QVariant &data, UAVObjectField *field, TreeItem *parentItem ) :
60- TreeItem (data, parentItem ), m_index(index), m_field(field)
60+ FieldTreeItem (int index, const QVariant &data, UAVObjectField *field) :
61+ TreeItem (data), m_index(index), m_field(field)
6162 {}
6263
6364 bool isEditable () const
@@ -109,12 +110,12 @@ class FieldTreeItem : public TreeItem {
109110
110111class EnumFieldTreeItem : public FieldTreeItem {
111112public:
112- EnumFieldTreeItem (UAVObjectField *field, int index, const QList<QVariant> &data, TreeItem *parentItem ) :
113- FieldTreeItem (index, data, field, parentItem ), m_enumOptions(field->getOptions ())
113+ EnumFieldTreeItem (UAVObjectField *field, int index, const QList<QVariant> &data) :
114+ FieldTreeItem (index, data, field), m_enumOptions(field->getOptions ())
114115 {}
115116
116- EnumFieldTreeItem (UAVObjectField *field, int index, const QVariant &data, TreeItem *parentItem ) :
117- FieldTreeItem (index, data, field, parentItem ), m_enumOptions(field->getOptions ())
117+ EnumFieldTreeItem (UAVObjectField *field, int index, const QVariant &data) :
118+ FieldTreeItem (index, data, field), m_enumOptions(field->getOptions ())
118119 {}
119120
120121 QString enumOptions (int index)
@@ -174,13 +175,13 @@ class EnumFieldTreeItem : public FieldTreeItem {
174175
175176class IntFieldTreeItem : public FieldTreeItem {
176177public:
177- IntFieldTreeItem (UAVObjectField *field, int index, const QList<QVariant> &data, TreeItem *parentItem ) :
178- FieldTreeItem (index, data, field, parentItem )
178+ IntFieldTreeItem (UAVObjectField *field, int index, const QList<QVariant> &data) :
179+ FieldTreeItem (index, data, field)
179180 {
180181 setMinMaxValues ();
181182 }
182- IntFieldTreeItem (UAVObjectField *field, int index, const QVariant &data, TreeItem *parentItem ) :
183- FieldTreeItem (index, data, field, parentItem )
183+ IntFieldTreeItem (UAVObjectField *field, int index, const QVariant &data) :
184+ FieldTreeItem (index, data, field)
184185 {
185186 setMinMaxValues ();
186187 }
@@ -259,11 +260,11 @@ class IntFieldTreeItem : public FieldTreeItem {
259260
260261class FloatFieldTreeItem : public FieldTreeItem {
261262public:
262- FloatFieldTreeItem (UAVObjectField *field, int index, const QList<QVariant> &data, bool scientific, TreeItem *parentItem ) :
263- FieldTreeItem (index, data, field, parentItem ), m_useScientificNotation(scientific ) {}
263+ FloatFieldTreeItem (UAVObjectField *field, int index, const QList<QVariant> &data, const QSettings &settings ) :
264+ FieldTreeItem (index, data, field), m_settings(settings ) {}
264265
265- FloatFieldTreeItem (UAVObjectField *field, int index, const QVariant &data, bool scientific, TreeItem *parentItem ) :
266- FieldTreeItem (index, data, field, parentItem ), m_useScientificNotation(scientific ) {}
266+ FloatFieldTreeItem (UAVObjectField *field, int index, const QVariant &data, const QSettings &settings ) :
267+ FieldTreeItem (index, data, field), m_settings(settings ) {}
267268
268269 QVariant fieldToData () const
269270 {
@@ -277,7 +278,9 @@ class FloatFieldTreeItem : public FieldTreeItem {
277278
278279 QWidget *createEditor (QWidget *parent) const
279280 {
280- if (m_useScientificNotation) {
281+ bool useScientificNotation = m_settings.value (" useScientificNotation" , false ).toBool ();
282+
283+ if (useScientificNotation) {
281284 QScienceSpinBox *editor = new QScienceSpinBox (parent);
282285 editor->setDecimals (6 );
283286 editor->setMinimum (-std::numeric_limits<float >::max ());
@@ -294,7 +297,9 @@ class FloatFieldTreeItem : public FieldTreeItem {
294297
295298 QVariant getEditorValue (QWidget *editor) const
296299 {
297- if (m_useScientificNotation) {
300+ bool useScientificNotation = m_settings.value (" useScientificNotation" , false ).toBool ();
301+
302+ if (useScientificNotation) {
298303 QScienceSpinBox *spinBox = static_cast <QScienceSpinBox *>(editor);
299304 spinBox->interpretText ();
300305 return spinBox->value ();
@@ -307,7 +312,9 @@ class FloatFieldTreeItem : public FieldTreeItem {
307312
308313 void setEditorValue (QWidget *editor, QVariant value) const
309314 {
310- if (m_useScientificNotation) {
315+ bool useScientificNotation = m_settings.value (" useScientificNotation" , false ).toBool ();
316+
317+ if (useScientificNotation) {
311318 QScienceSpinBox *spinBox = static_cast <QScienceSpinBox *>(editor);
312319 spinBox->setValue (value.toDouble ());
313320 } else {
@@ -317,17 +324,17 @@ class FloatFieldTreeItem : public FieldTreeItem {
317324 }
318325
319326private:
320- bool m_useScientificNotation ;
327+ const QSettings &m_settings ;
321328};
322329
323330class HexFieldTreeItem : public FieldTreeItem {
324331public:
325- HexFieldTreeItem (UAVObjectField *field, int index, const QList<QVariant> &data, TreeItem *parentItem ) :
326- FieldTreeItem (index, data, field, parentItem )
332+ HexFieldTreeItem (UAVObjectField *field, int index, const QList<QVariant> &data) :
333+ FieldTreeItem (index, data, field)
327334 {}
328335
329- HexFieldTreeItem (UAVObjectField *field, int index, const QVariant &data, TreeItem *parentItem ) :
330- FieldTreeItem (index, data, field, parentItem )
336+ HexFieldTreeItem (UAVObjectField *field, int index, const QVariant &data) :
337+ FieldTreeItem (index, data, field)
331338 {}
332339
333340 QVariant fieldToData () const
@@ -382,12 +389,12 @@ class HexFieldTreeItem : public FieldTreeItem {
382389
383390class CharFieldTreeItem : public FieldTreeItem {
384391public:
385- CharFieldTreeItem (UAVObjectField *field, int index, const QList<QVariant> &data, TreeItem *parentItem ) :
386- FieldTreeItem (index, data, field, parentItem )
392+ CharFieldTreeItem (UAVObjectField *field, int index, const QList<QVariant> &data) :
393+ FieldTreeItem (index, data, field)
387394 {}
388395
389- CharFieldTreeItem (UAVObjectField *field, int index, const QVariant &data, TreeItem *parentItem ) :
390- FieldTreeItem (index, data, field, parentItem )
396+ CharFieldTreeItem (UAVObjectField *field, int index, const QVariant &data) :
397+ FieldTreeItem (index, data, field)
391398 {}
392399
393400 QVariant fieldToData () const
0 commit comments