Пожалуйста, оцените код на предмет утечек памяти и правильности вообще:
В конструкторе создается
len = 0;
menu = new QMenu(this);
signalMapper = new QSignalMapper(this);
connect(signalMapper, SIGNAL(mapped(int)), this, SLOT(setColor(int)));
Далее в цикле добавляется несколько Action:
void ColorButton::addColor(const QColor color, const QString name){
QIcon icon;
setupIcon(&icon, color);
QAction *act = menu->addAction(icon, name);
connect(act, SIGNAL(triggered()), signalMapper, SLOT(map()));
signalMapper->setMapping( act, len );
len++;
}
void ColorButton::setupIcon(QIcon *icon, QColor color, QSize sz){
QPixmap pixmap(sz);
pixmap.fill(color);
icon->addPixmap(pixmap);
}
В h-файле setupIcon описан так:
void setupIcon(QIcon *icon, QColor color, QSize sz = QSize(16, 16));
Все, больше ничего нигде не удается деструктор пустой)
спасибо)