Пожалуйста, оцените код на предмет утечек памяти и правильности вообще:В конструкторе создаетсяКод: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));Все, больше ничего нигде не удается деструктор пустой)спасибо)
|