+void DvdWizardMenu::prepareUnderLines()
+{
+ QList<QGraphicsItem *> list = m_scene->items();
+ for (int i = 0; i < list.count(); ++i) {
+ if (list.at(i)->type() == DvdButtonItem) {
+ QRectF r = list.at(i)->sceneBoundingRect();
+ int bottom = r.bottom() - 1;
+ if (bottom % 2 == 1) bottom = bottom - 1;
+ int underlineHeight = r.height() / 10;
+ if (underlineHeight % 2 == 1) underlineHeight = underlineHeight - 1;
+ underlineHeight = qMin(underlineHeight, 10);
+ underlineHeight = qMax(underlineHeight, 2);
+ r.setTop(bottom - underlineHeight);
+ r.setBottom(bottom);
+ r.adjust(2, 0, -2, 0);
+ DvdButtonUnderline *underline = new DvdButtonUnderline(r);
+ m_scene->addItem(underline);
+ list.at(i)->setVisible(false);
+ }
+ }
+}
+
+void DvdWizardMenu::resetUnderLines()
+{
+ QList<QGraphicsItem *> list = m_scene->items();
+ QList<QGraphicsItem *> toDelete;
+ for (int i = 0; i < list.count(); ++i) {
+ if (list.at(i)->type() == DvdButtonUnderlineItem) {
+ toDelete.append(list.at(i));
+ }
+ if (list.at(i)->type() == DvdButtonItem) {
+ list.at(i)->setVisible(true);
+ }
+ }
+ while (!toDelete.isEmpty()) {
+ QGraphicsItem *item = toDelete.takeFirst();
+ delete item;
+ }
+}
+
+void DvdWizardMenu::updateUnderlineColor(QColor c)
+{
+ QList<QGraphicsItem *> list = m_scene->items();
+ for (int i = 0; i < list.count(); ++i) {
+ if (list.at(i)->type() == DvdButtonUnderlineItem) {
+ DvdButtonUnderline *underline = static_cast < DvdButtonUnderline* >(list.at(i));
+ underline->setPen(Qt::NoPen);
+ c.setAlpha(150);
+ underline->setBrush(c);
+ }
+ }
+}
+
+
+void DvdWizardMenu::updateColor(const QColor &c)