equal
deleted
inserted
replaced
1404 Destroys the menu. |
1404 Destroys the menu. |
1405 */ |
1405 */ |
1406 QMenu::~QMenu() |
1406 QMenu::~QMenu() |
1407 { |
1407 { |
1408 Q_D(QMenu); |
1408 Q_D(QMenu); |
1409 QHash<QAction *, QWidget *>::iterator it = d->widgetItems.begin(); |
1409 if (!d->widgetItems.isEmpty()) { // avoid detach on shared null hash |
1410 for (; it != d->widgetItems.end(); ++it) { |
1410 QHash<QAction *, QWidget *>::iterator it = d->widgetItems.begin(); |
1411 if (QWidget *widget = it.value()) { |
1411 for (; it != d->widgetItems.end(); ++it) { |
1412 QWidgetAction *action = static_cast<QWidgetAction *>(it.key()); |
1412 if (QWidget *widget = it.value()) { |
1413 action->releaseWidget(widget); |
1413 QWidgetAction *action = static_cast<QWidgetAction *>(it.key()); |
1414 *it = 0; |
1414 action->releaseWidget(widget); |
|
1415 *it = 0; |
|
1416 } |
1415 } |
1417 } |
1416 } |
1418 } |
1417 |
1419 |
1418 if (d->eventLoop) |
1420 if (d->eventLoop) |
1419 d->eventLoop->exit(); |
1421 d->eventLoop->exit(); |