YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
customtree.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-License-Identifier: LGPL-2.1-or-later
4 */
5
6#include "customtree.h"
7#include <QMimeData>
8#include <QDrag>
9#include <qdebug.h>
10#include "commons.h"
11
12CustomTree::CustomTree(QWidget *parent) :
13 QTreeWidget(parent)
14{
15 QTreeWidgetItem *it = new QTreeWidgetItem(this,QStringList() << "Modulo");
16 it->setData(0,Qt::UserRole,(int)1);
17 addTopLevelItem(it);
18
19 QTreeWidgetItem *it1 = new QTreeWidgetItem(this,QStringList() << "Source Port");
20 it1->setData(0,Qt::UserRole,(int)2);
21 addTopLevelItem(it1);
22
23 QTreeWidgetItem *it2 = new QTreeWidgetItem(this,QStringList() << "Destination Port");
24 it2->setData(0,Qt::UserRole,(int)3);
25 addTopLevelItem(it2);
26 //addTopLevelItem(new QTreeWidgetItem(this,QStringList() << "Model4"));
27
28 setDragEnabled(true);
29 setDragDropMode(DragOnly);
30}
31
32
33void CustomTree::mousePressEvent(QMouseEvent *event)
34{
35 QTreeWidgetItem *selectedItem = currentItem();
36
37 // If the selected Item exists
38 if (selectedItem){
39
40 auto* mimeData = new QMimeData;
41 //qDebug() << "DRAG " << selectedItem->data(0,Qt::UserRole).toInt();
42 mimeData->setText(QString("%1").arg(selectedItem->data(0,Qt::UserRole).toInt()));
43 // Create drag
44 auto* drag = new QDrag(this);
45 drag->setMimeData(mimeData);
46
47
48 //qDebug() << "mousePressEvent before exec";
49 drag->exec(Qt::CopyAction);
50 //qDebug() << "mousePressEvent after exec";
51 }
52
53 QTreeWidget::mousePressEvent(event);
54}
void mousePressEvent(QMouseEvent *event) override
CustomTree(QWidget *parent=0)