void ViewManager::ViewManagerPrivate::slotLockedChanged(bool locked) { if(locked) { // When the view is locked, all draggers should be destroyed QMapIterator<WidgetProperties *, QDeclarativeItem *> iterator = QMapIterator<WidgetProperties *, QDeclarativeItem *>(registeredDraggers); while (iterator.hasNext()) { iterator.next(); QDeclarativeItem *item = iterator.value(); registeredDraggers.remove(iterator.key()); item->deleteLater(); } q->setCurrentDraggedWidget(""); } else { // For each item in the current page, a dragger should // be created DisplayedPageWidgetsModel * pageModel = displayedPagesModel->pageModel(currentPageIndex); for (int i = 0; i < pageModel->rowCount(); i++) { emit q->requestCreateDragger(pageModel->widget(i)); } } }