Auto status change to "Under Review"
@@ -321,19 +321,36 QMimeData *CatalogueEventsModel::mimeData(const QModelIndexList &indexes) const | |||
|
321 | 321 | { |
|
322 | 322 | auto mimeData = new QMimeData; |
|
323 | 323 | |
|
324 | bool isFirst = true; | |
|
325 | ||
|
324 | 326 | QVector<std::shared_ptr<DBEvent> > eventList; |
|
327 | QVector<std::shared_ptr<DBEventProduct> > eventProductList; | |
|
325 | 328 | |
|
326 | 329 | SqpRange firstTimeRange; |
|
327 | 330 | for (const auto &index : indexes) { |
|
328 | 331 | if (index.column() == 0) { // only the first column |
|
329 | auto event = getEvent(index); | |
|
330 | if (eventList.isEmpty()) { | |
|
331 | // Gets the range of the first variable | |
|
332 | // firstTimeRange.m_TStart = event->getTStart(); | |
|
333 | // firstTimeRange.m_TEnd = event->getTEnd(); | |
|
334 | } | |
|
335 | 332 | |
|
336 | eventList << event; | |
|
333 | auto type = itemTypeOf(index); | |
|
334 | if (type == ItemType::Event) { | |
|
335 | auto event = getEvent(index); | |
|
336 | eventList << event; | |
|
337 | ||
|
338 | if (isFirst) { | |
|
339 | isFirst = false; | |
|
340 | // firstTimeRange.m_TStart = event->getTStart(); | |
|
341 | // firstTimeRange.m_TEnd = event->getTEnd(); | |
|
342 | } | |
|
343 | } | |
|
344 | else if (type == ItemType::EventProduct) { | |
|
345 | auto product = getEventProduct(index); | |
|
346 | eventProductList << product; | |
|
347 | ||
|
348 | if (isFirst) { | |
|
349 | isFirst = false; | |
|
350 | firstTimeRange.m_TStart = product->getTStart(); | |
|
351 | firstTimeRange.m_TEnd = product->getTEnd(); | |
|
352 | } | |
|
353 | } | |
|
337 | 354 | } |
|
338 | 355 | } |
|
339 | 356 | |
@@ -341,7 +358,7 QMimeData *CatalogueEventsModel::mimeData(const QModelIndexList &indexes) const | |||
|
341 | 358 | = QByteArray{}; // sqpApp->catalogueController().->mimeDataForEvents(eventList); //TODO |
|
342 | 359 | mimeData->setData(MIME_TYPE_EVENT_LIST, eventsEncodedData); |
|
343 | 360 | |
|
344 | if (eventList.count() == 1) { | |
|
361 | if (eventList.count() + eventProductList.count() == 1) { | |
|
345 | 362 | // No time range MIME data if multiple events are dragged |
|
346 | 363 | auto timeEncodedData = TimeController::mimeDataForTimeRange(firstTimeRange); |
|
347 | 364 | mimeData->setData(MIME_TYPE_TIME_RANGE, timeEncodedData); |
General Comments 3
Status change > Approved
You need to be logged in to leave comments.
Login now