diff --git a/qad/application/ribbon.cpp b/qad/application/ribbon.cpp index ed29d56..8e1bd3d 100644 --- a/qad/application/ribbon.cpp +++ b/qad/application/ribbon.cpp @@ -69,7 +69,7 @@ void Ribbon::init() { if (parent == 0) return; if (parent->menuBar() == 0) return; QList lm = parent->menuBar()->actions(), la; - if (tab) delete tab; + clear(); if (scroll_area) delete scroll_area; buttons.clear(); tab = new ETabWidget(); @@ -84,7 +84,14 @@ void Ribbon::init() { foreach (QAction * i, lm) { if (i->menu() == 0) continue; la = i->menu()->actions(); - tab->addTab(new QWidget(), i->icon(), i->text()); + QIcon tic = i->icon(); + if (!tic.isNull()) + i->setProperty("__icon", QVariant::fromValue(tic)); + else + tic = i->property("__icon").value(); + tab->addTab(new QWidget(), tic, i->text()); + //qDebug() << this << i->icon() << i->text(); + //continue; /*QScrollArea * sa = new QScrollArea(); sa->setWidget(new QWidget()); sa->setWidgetResizable(true);