void CWizDocumentListView::getSelectedDocuments(CWizDocumentDataArray& arrayDocument) { QList<QListWidgetItem*> items = selectedItems(); QList<QListWidgetItem*>::const_iterator it; for (it = items.begin(); it != items.end(); it++) { QListWidgetItem* pItem = *it; CWizDocumentListViewItem* pDocumentItem = dynamic_cast<CWizDocumentListViewItem*>(pItem); if (!pDocumentItem) continue; // if document is message type if (pDocumentItem->type() == CWizDocumentListViewItem::MessageDocument) { QString strKbGUID = pDocumentItem->message().kbGUID; QString strGUID = pDocumentItem->message().documentGUID; // document must have record in database. WIZDOCUMENTDATA doc; if (!m_dbMgr.db(strKbGUID).DocumentFromGUID(strGUID, doc)) { qDebug() << "[getSelectedDocuments] failed to query document from guid"; continue; } // no matter document exist or not, just push it arrayDocument.push_back(doc); } else { arrayDocument.push_back(pDocumentItem->document()); } } }
void CWizDocumentListView::getSelectedDocuments(CWizDocumentDataArray& arrayDocument) { QList<QListWidgetItem*> items = selectedItems(); QList<QListWidgetItem*>::const_iterator it; for (it = items.begin(); it != items.end(); it++) { QListWidgetItem* pItem = *it; CWizDocumentListViewItem* pDocumentItem = dynamic_cast<CWizDocumentListViewItem*>(pItem); if (pDocumentItem) { arrayDocument.push_back(pDocumentItem->document()); } } }