66 QGridLayout *gL =
new QGridLayout;
68 for (
int i = 0; i < 16; i++)
76 if (_hints.contains (
"default"))
78 QStringList sl = _hints[
"default"].split (
',');
80 if (sl.length () == 16)
82 for (
int i = 0; i < 16 && ok; i++)
83 default_[i] = sl[i].toFloat (&ok);
86 for (
int i = 0; i < 16; i++)
91 for (
int i = 0; i < 16; i++)
92 fields_[i] =
new QLineEdit;
94 for (
int i = 0; i < 4; i++)
96 gL->addWidget (
new QLabel (
"("),i, 0);
97 gL->addWidget (fields_[i], i, 1);
98 gL->addWidget (
new QLabel (
","), i, 2);
99 gL->addWidget (fields_[i + 4], i, 3);
100 gL->addWidget (
new QLabel (
","), i, 4);
101 gL->addWidget (fields_[i + 8], i, 5);
102 gL->addWidget (
new QLabel (
","), i, 6);
103 gL->addWidget (fields_[i + 12], i, 7);
104 gL->addWidget (
new QLabel (
")"), i, 8);
107 for (
int i = 0; i < 16; i++)
109 fields_[i]->setText (QString::number (default_[i]));
110 connect (fields_[i], SIGNAL (editingFinished ()),
this, SLOT (editingFinished ()));
115 for (
int i = 0; i < 16; i++)
116 current_[i] = default_[i];
143 if (_from.startsWith (
"["))
145 if (_from.endsWith (
"]"))
146 _from.remove (_from.length () - 1, 1);
148 QStringList sl = _from.split (
',');
153 if (sl.length () == 16)
155 for (
int i = 0; i < 16 && ok; i++)
156 v[i] = sl[i].toFloat (&ok);
159 for (
int i = 0; i < 16; i++)
162 fields_[i]->setText (QString::number (current_[i]));