##// END OF EJS Templates
Fix drag&drop on time widget with event products
trabillard -
r1151:bd1680488073
parent child
Show More
@@ -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 0
You need to be logged in to leave comments. Login now