+ keyframe_list->blockSignals(true);
+ m_params.append(e.cloneNode().toElement());
+
+ QDomElement na = e.firstChildElement("name");
+ QString paramName = i18n(na.text().toUtf8().data());
+ QDomElement commentElem = e.firstChildElement("comment");
+ QString comment;
+ if (!commentElem.isNull())
+ comment = i18n(commentElem.text().toUtf8().data());
+
+ int columnId = keyframe_list->columnCount();
+ keyframe_list->insertColumn(columnId);
+ keyframe_list->setHorizontalHeaderItem(columnId, new QTableWidgetItem(paramName));
+
+ DoubleParameterWidget *doubleparam = new DoubleParameterWidget(paramName, 0,
+ m_params.at(columnId).attribute("min").toInt(), m_params.at(columnId).attribute("max").toInt(),
+ m_params.at(columnId).attribute("default").toInt(), comment, m_params.at(columnId).attribute("suffix"), this);
+ connect(doubleparam, SIGNAL(valueChanged(int)), this, SLOT(slotAdjustKeyframeValue(int)));
+ connect(this, SIGNAL(showComments(bool)), doubleparam, SLOT(slotShowComment(bool)));
+ m_slidersLayout->addWidget(doubleparam, columnId, 0);
+
+ QRadioButton *radio = new QRadioButton(this);
+ radio->setToolTip(i18n("Show %1 in timeline").arg(paramName));
+ m_showButtons->addButton(radio, columnId);
+ if (e.attribute("intimeline") == "1")
+ radio->setChecked(true);
+
+ QVBoxLayout *radioLayout = new QVBoxLayout;
+ radioLayout->addWidget(radio, 0, Qt::AlignTop);
+ m_slidersLayout->addLayout(radioLayout, columnId, 1);
+
+ QStringList frames = e.attribute("keyframes").split(";", QString::SkipEmptyParts);