Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. [SOLVED]How to delete an item from the treeview by droping an item to pushbutton or to an group box
Forum Updated to NodeBB v4.3 + New Features

[SOLVED]How to delete an item from the treeview by droping an item to pushbutton or to an group box

Scheduled Pinned Locked Moved General and Desktop
drag and droptreeview
54 Posts 4 Posters 22.3k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • RatzzR Offline
    RatzzR Offline
    Ratzz
    wrote on last edited by
    #19

    @mrjj
    Yes, i Tried you code which turns out to be a Dropbutton. How to implement it in my code ?

    --Alles ist gut.

    mrjjM 1 Reply Last reply
    0
    • RatzzR Ratzz

      @mrjj
      Yes, i Tried you code which turns out to be a Dropbutton. How to implement it in my code ?

      mrjjM Offline
      mrjjM Offline
      mrjj
      Lifetime Qt Champion
      wrote on last edited by
      #20

      @Ratzz
      As I wrote in answer ?
      Using the promote feature.
      Which will runtime replace a normal button with the DropButton.
      Or you can new a button you self
      Like
      Dropbutton *but=Dropbutton (this)
      and insert into your window/layout.

      RatzzR 1 Reply Last reply
      0
      • mrjjM mrjj

        @Ratzz
        As I wrote in answer ?
        Using the promote feature.
        Which will runtime replace a normal button with the DropButton.
        Or you can new a button you self
        Like
        Dropbutton *but=Dropbutton (this)
        and insert into your window/layout.

        RatzzR Offline
        RatzzR Offline
        Ratzz
        wrote on last edited by
        #21

        @mrjj
        Yes its working now fine..
        I have group box adjacent to treeview. Can i implement the same to groupbox?

        --Alles ist gut.

        mrjjM 1 Reply Last reply
        0
        • RatzzR Ratzz

          @mrjj
          Yes its working now fine..
          I have group box adjacent to treeview. Can i implement the same to groupbox?

          mrjjM Offline
          mrjjM Offline
          mrjj
          Lifetime Qt Champion
          wrote on last edited by mrjj
          #22

          @Ratzz
          Super.
          Well If you promote the GroupBox, there might be issue with
          Parent. I have never tried it.
          Try it :)
          If it says funny stuff , just demote it to a groupbox again.

          Else its pretty much the same, except new filename and new name.

          #include <QGroupBox>
          #include <QDragMoveEvent>
          
          class DropGroupBox : public QGroupBox {
            Q_OBJECT
           public:
            explicit  DropGroupBox(QWidget* parent = 0) : QGroupBox(parent) {
              setAcceptDrops(true);
            }
           protected:
            void dragEnterEvent(QDragEnterEvent* event) {
              event->acceptProposedAction();
            }
          
            void dropEvent(QDropEvent* event) {
              event->setDropAction(Qt::MoveAction);
              event->accept();
            }
          };
          
          RatzzR 1 Reply Last reply
          0
          • mrjjM mrjj

            @Ratzz
            Super.
            Well If you promote the GroupBox, there might be issue with
            Parent. I have never tried it.
            Try it :)
            If it says funny stuff , just demote it to a groupbox again.

            Else its pretty much the same, except new filename and new name.

            #include <QGroupBox>
            #include <QDragMoveEvent>
            
            class DropGroupBox : public QGroupBox {
              Q_OBJECT
             public:
              explicit  DropGroupBox(QWidget* parent = 0) : QGroupBox(parent) {
                setAcceptDrops(true);
              }
             protected:
              void dragEnterEvent(QDragEnterEvent* event) {
                event->acceptProposedAction();
              }
            
              void dropEvent(QDropEvent* event) {
                event->setDropAction(Qt::MoveAction);
                event->accept();
              }
            };
            
            RatzzR Offline
            RatzzR Offline
            Ratzz
            wrote on last edited by Ratzz
            #23

            @mrjj
            i promoted the group using Qpushbutton but not allow me to promote the GroupBox. so i added dropgroupBox.h and promoted it.
            But its not working.

            --Alles ist gut.

            mrjjM 1 Reply Last reply
            0
            • RatzzR Ratzz

              @mrjj
              i promoted the group using Qpushbutton but not allow me to promote the GroupBox. so i added dropgroupBox.h and promoted it.
              But its not working.

              mrjjM Offline
              mrjjM Offline
              mrjj
              Lifetime Qt Champion
              wrote on last edited by
              #24

              @Ratzz
              Hi
              Something must gone wrong. maybe.
              Tried it here and it does accept drops

              https://www.dropbox.com/s/7bkqatzm6vt1kmz/promotedgb.zip?dl=0

              RatzzR 1 Reply Last reply
              0
              • SGaistS Offline
                SGaistS Offline
                SGaist
                Lifetime Qt Champion
                wrote on last edited by
                #25

                Out of curiosity… Why are you creating so many widgets that should allow to delete items from your view using dnd ? It doesn't feel very intuitive nor following the guidelines of major OSs

                Interested in AI ? www.idiap.ch
                Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                RatzzR 1 Reply Last reply
                0
                • mrjjM mrjj

                  @Ratzz
                  Hi
                  Something must gone wrong. maybe.
                  Tried it here and it does accept drops

                  https://www.dropbox.com/s/7bkqatzm6vt1kmz/promotedgb.zip?dl=0

                  RatzzR Offline
                  RatzzR Offline
                  Ratzz
                  wrote on last edited by Ratzz
                  #26

                  @mrjj
                  Yes your code is working . But do not know in my case its not working .
                  You have used Listwidget and i have used list view . Does it matters??

                  --Alles ist gut.

                  1 Reply Last reply
                  0
                  • SGaistS SGaist

                    Out of curiosity… Why are you creating so many widgets that should allow to delete items from your view using dnd ? It doesn't feel very intuitive nor following the guidelines of major OSs

                    RatzzR Offline
                    RatzzR Offline
                    Ratzz
                    wrote on last edited by
                    #27

                    @SGaist
                    Yes , My treeview is in between listview and groupbox . even if the listview items are dragged to the pushbutton_delete its getting deleted. which in my case should not. what is the best way to do ??

                    --Alles ist gut.

                    1 Reply Last reply
                    0
                    • SGaistS Offline
                      SGaistS Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on last edited by
                      #28

                      Implement it in one of the usual ways:

                      • React to the delete or backspace key
                      • Have a delete button that will delete the currently selected row/column etc.
                      • Have a dedicated column with e.g. a QPushButton to delete the row completely.

                      Interested in AI ? www.idiap.ch
                      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                      RatzzR 1 Reply Last reply
                      0
                      • SGaistS SGaist

                        Implement it in one of the usual ways:

                        • React to the delete or backspace key
                        • Have a delete button that will delete the currently selected row/column etc.
                        • Have a dedicated column with e.g. a QPushButton to delete the row completely.
                        RatzzR Offline
                        RatzzR Offline
                        Ratzz
                        wrote on last edited by
                        #29

                        @SGaist
                        I already have a delete button which deletes entire row.

                        --Alles ist gut.

                        RatzzR 1 Reply Last reply
                        0
                        • RatzzR Ratzz

                          @SGaist
                          I already have a delete button which deletes entire row.

                          RatzzR Offline
                          RatzzR Offline
                          Ratzz
                          wrote on last edited by
                          #30

                          @mrjj
                          The code you shared is working (group box).

                          --Alles ist gut.

                          mrjjM 1 Reply Last reply
                          0
                          • RatzzR Ratzz

                            @mrjj
                            The code you shared is working (group box).

                            mrjjM Offline
                            mrjjM Offline
                            mrjj
                            Lifetime Qt Champion
                            wrote on last edited by
                            #31

                            @Ratzz
                            Ok. super.

                            RatzzR 1 Reply Last reply
                            0
                            • mrjjM mrjj

                              @Ratzz
                              Ok. super.

                              RatzzR Offline
                              RatzzR Offline
                              Ratzz
                              wrote on last edited by
                              #32

                              @mrjj
                              But now i can drag items from treeview as well as listview to pushbutton and groupbox. But i do not want the user to allow listview items to dragged to pushbutton/groupbox

                              --Alles ist gut.

                              mrjjM 1 Reply Last reply
                              0
                              • RatzzR Ratzz

                                @mrjj
                                But now i can drag items from treeview as well as listview to pushbutton and groupbox. But i do not want the user to allow listview items to dragged to pushbutton/groupbox

                                mrjjM Offline
                                mrjjM Offline
                                mrjj
                                Lifetime Qt Champion
                                wrote on last edited by
                                #33

                                @Ratzz
                                Hmm maybe you can check with
                                sender();
                                in dragEnterEvent
                                and if its the not a Treeview then reject the drop

                                like

                                QTreeView* theone= dynamic_cast<QTreeView*>(sender());
                                   if( theone!= NULL ) 
                                   { 
                                      event->acceptProposedAction();
                                   }
                                
                                RatzzR 1 Reply Last reply
                                0
                                • mrjjM mrjj

                                  @Ratzz
                                  Hmm maybe you can check with
                                  sender();
                                  in dragEnterEvent
                                  and if its the not a Treeview then reject the drop

                                  like

                                  QTreeView* theone= dynamic_cast<QTreeView*>(sender());
                                     if( theone!= NULL ) 
                                     { 
                                        event->acceptProposedAction();
                                     }
                                  
                                  RatzzR Offline
                                  RatzzR Offline
                                  Ratzz
                                  wrote on last edited by
                                  #34

                                  @mrjj
                                  I do not have dragEnterEvent event yet! . we have a custom event using dropMimeData .

                                  --Alles ist gut.

                                  mrjjM 1 Reply Last reply
                                  0
                                  • RatzzR Ratzz

                                    @mrjj
                                    I do not have dragEnterEvent event yet! . we have a custom event using dropMimeData .

                                    mrjjM Offline
                                    mrjjM Offline
                                    mrjj
                                    Lifetime Qt Champion
                                    wrote on last edited by mrjj
                                    #35

                                    @Ratzz
                                    how does this custom event look like ?

                                    and its not an options just to disable Drag from listview?

                                    RatzzR 1 Reply Last reply
                                    0
                                    • mrjjM mrjj

                                      @Ratzz
                                      how does this custom event look like ?

                                      and its not an options just to disable Drag from listview?

                                      RatzzR Offline
                                      RatzzR Offline
                                      Ratzz
                                      wrote on last edited by Ratzz
                                      #36

                                      @mrjj
                                      All drag drop events are handled in this. I am not aware how Bec, previous programmer has done it.

                                      bool MessageModel::dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)
                                      {
                                          if(action == Qt::CopyAction)
                                          {
                                      //        QStringList format = data->formats();
                                              QByteArray encodedData = data->data("application/x-qabstractitemmodeldatalist");
                                              QDataStream stream(&encodedData, QIODevice::ReadOnly);
                                              QMap<int,  QVariant> roleDataMap;
                                      //        roleDataMap.setInsertInOrder(true);
                                              QMap<int, QString> sortMsgs;
                                      
                                              while (!stream.atEnd())
                                              {
                                                  int row, col;
                                                  stream >> row >> col >> roleDataMap;
                                                  QString tmp = roleDataMap.value(0).toString();
                                                  //MsgId1.append(tmp);
                                                  sortMsgs.insert(row,tmp);
                                              }
                                              QList < QString > MsgId1 = sortMsgs.values();
                                      
                                              if(parent.parent().isValid() && !parent.parent().parent().isValid())
                                              {
                                                  QStandardItemModel::dropMimeData(data,action,row,column,parent);
                                                  emit addFrameMessageIds(parent.row(), -1, MsgId1);
                                                  return true;
                                              }
                                              if(parent.parent().parent().isValid() && column == -1)
                                              {
                                                  QStandardItemModel::dropMimeData(data,action,parent.row() +1,column,parent.parent());
                                                  emit addFrameMessageIds(parent.parent().row(),parent.row() +1, MsgId1);
                                                  return true;
                                              }
                                              if(parent.parent().parent().isValid() && column == 0)
                                              {
                                                  QStandardItemModel::dropMimeData(data,action,row,column,parent);
                                                  emit addFrameMessageIds(parent.row(), row, MsgId1);
                                                  return true;
                                              }
                                          }
                                          else if(action == Qt::MoveAction)
                                          {
                                              if(!parent.isValid())
                                              {
                                                  return QStandardItemModel::dropMimeData(data,action,indexesLocal.row(),indexesLocal.column(),indexesLocal.parent());
                                              }
                                              if(indexesLocal.parent().parent().isValid() && !parent.parent().isValid() && column == -1)
                                              {
                                                  //Msg is dropped on major frame
                                                  return QStandardItemModel::dropMimeData(data,action,indexesLocal.row(),indexesLocal.column(),indexesLocal.parent());
                                              }
                                              if(indexesLocal.parent().parent().isValid() && !parent.parent().parent().isValid() && column == -1)
                                              {
                                                  //Msg is dropped on minor frame
                                                  if(indexesLocal.parent().row() != parent.row())
                                                  {
                                                      QStandardItemModel::dropMimeData(data,action,row,column,parent);
                                                      emit moveFrameMessageIds(indexesLocal.parent().row(),parent.row(),indexesLocal.row(),-1);
                                                      return true;
                                                  }
                                                  else
                                                  {
                                                      QStandardItemModel::dropMimeData(data,action, 0 ,column,parent);
                                                      emit moveFrameMessageIds(indexesLocal.parent().row(),parent.row(),indexesLocal.row(),0);
                                                      return true;
                                                  }
                                              }
                                              if(indexesLocal.parent().parent().isValid() && parent.parent().parent().isValid() && column == -1)
                                              {
                                                  //      Msg is dropped on another msg
                                                  QStandardItemModel::dropMimeData(data,action,parent.row()+1,column,parent.parent());
                                                  emit moveFrameMessageIds(indexesLocal.parent().row(),parent.parent().row(),indexesLocal.row(),parent.row()+1);
                                                  return true;
                                              }
                                              if(indexesLocal.parent().isValid() && !(indexesLocal.parent().parent().isValid()) && !parent.parent().isValid() && column == -1)
                                              {
                                                  //      Minor frame is dropped on Major frame
                                                  QStandardItemModel::dropMimeData(data,action,0,indexesLocal.column(),indexesLocal.parent());
                                                  emit moveFrame(indexesLocal.row(),0);
                                                  return true;
                                              }
                                              if(indexesLocal.parent().isValid() && !(indexesLocal.parent().parent().isValid()) && parent.parent().isValid() && !(parent.parent().parent().isValid()) && column == -1)
                                              {
                                                  // Minor frame is dropped on another minor frame
                                                  int pre = indexesLocal.row();
                                                  int cur = parent.row();
                                                  QStandardItemModel::dropMimeData(data,action,parent.row()+1,column,parent.parent());
                                                  emit moveFrame(indexesLocal.row(),parent.row());
                                                  return true;
                                              }
                                              if(indexesLocal.parent().isValid() && !(indexesLocal.parent().parent().isValid()) && parent.parent().parent().isValid() && column == -1)
                                              {
                                                  return QStandardItemModel::dropMimeData(data,action,indexesLocal.row(),indexesLocal.column(),indexesLocal.parent());
                                                  //      Minor frame is dropped on msg
                                              }
                                              if(indexesLocal.parent().isValid() && !(indexesLocal.parent().parent().isValid()) && !parent.parent().isValid() && column == 0)
                                              {
                                                  QStandardItemModel::dropMimeData(data,action,row,indexesLocal.column(),indexesLocal.parent());
                                                  emit moveFrame(indexesLocal.row(),row);
                                                  return true;
                                                  //      Minor frame is dropped after minor
                                              }
                                              if(indexesLocal.parent().isValid() && !(indexesLocal.parent().parent().isValid()) && !parent.parent().parent().isValid() && column == 0)
                                              {
                                                  return QStandardItemModel::dropMimeData(data,action,indexesLocal.row(),indexesLocal.column(),indexesLocal.parent());
                                                  //      Minor frame is dropped after msg
                                              }
                                              if(indexesLocal.parent().parent().isValid() && parent.isValid() && !parent.parent().isValid() && column == 0)
                                              {
                                                  return QStandardItemModel::dropMimeData(data,action,indexesLocal.row(),indexesLocal.column(),indexesLocal.parent());
                                                  //      Msg is dropped after minor
                                              }
                                              if(indexesLocal.parent().parent().isValid() && parent.parent().isValid() && !parent.parent().parent().isValid() && column == 0)
                                              {
                                                  QStandardItemModel::dropMimeData(data,action,row,parent.column(),parent);
                                                  emit moveFrameMessageIds(indexesLocal.parent().row(),parent.row(),indexesLocal.row(),row);
                                                  return true;
                                                  //      Msg is dropped after msg
                                              }
                                      }
                                      }
                                      

                                      And one more thing. If i drag items to pushbutton/group box the listview count is not getting updated.. ex:if i have 5 items and drag 1 item to pushbutton_delete then the count will be 5 . if i manually press delete button now then the list is getting updated to 3.

                                      --Alles ist gut.

                                      mrjjM 1 Reply Last reply
                                      0
                                      • RatzzR Ratzz

                                        @mrjj
                                        All drag drop events are handled in this. I am not aware how Bec, previous programmer has done it.

                                        bool MessageModel::dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)
                                        {
                                            if(action == Qt::CopyAction)
                                            {
                                        //        QStringList format = data->formats();
                                                QByteArray encodedData = data->data("application/x-qabstractitemmodeldatalist");
                                                QDataStream stream(&encodedData, QIODevice::ReadOnly);
                                                QMap<int,  QVariant> roleDataMap;
                                        //        roleDataMap.setInsertInOrder(true);
                                                QMap<int, QString> sortMsgs;
                                        
                                                while (!stream.atEnd())
                                                {
                                                    int row, col;
                                                    stream >> row >> col >> roleDataMap;
                                                    QString tmp = roleDataMap.value(0).toString();
                                                    //MsgId1.append(tmp);
                                                    sortMsgs.insert(row,tmp);
                                                }
                                                QList < QString > MsgId1 = sortMsgs.values();
                                        
                                                if(parent.parent().isValid() && !parent.parent().parent().isValid())
                                                {
                                                    QStandardItemModel::dropMimeData(data,action,row,column,parent);
                                                    emit addFrameMessageIds(parent.row(), -1, MsgId1);
                                                    return true;
                                                }
                                                if(parent.parent().parent().isValid() && column == -1)
                                                {
                                                    QStandardItemModel::dropMimeData(data,action,parent.row() +1,column,parent.parent());
                                                    emit addFrameMessageIds(parent.parent().row(),parent.row() +1, MsgId1);
                                                    return true;
                                                }
                                                if(parent.parent().parent().isValid() && column == 0)
                                                {
                                                    QStandardItemModel::dropMimeData(data,action,row,column,parent);
                                                    emit addFrameMessageIds(parent.row(), row, MsgId1);
                                                    return true;
                                                }
                                            }
                                            else if(action == Qt::MoveAction)
                                            {
                                                if(!parent.isValid())
                                                {
                                                    return QStandardItemModel::dropMimeData(data,action,indexesLocal.row(),indexesLocal.column(),indexesLocal.parent());
                                                }
                                                if(indexesLocal.parent().parent().isValid() && !parent.parent().isValid() && column == -1)
                                                {
                                                    //Msg is dropped on major frame
                                                    return QStandardItemModel::dropMimeData(data,action,indexesLocal.row(),indexesLocal.column(),indexesLocal.parent());
                                                }
                                                if(indexesLocal.parent().parent().isValid() && !parent.parent().parent().isValid() && column == -1)
                                                {
                                                    //Msg is dropped on minor frame
                                                    if(indexesLocal.parent().row() != parent.row())
                                                    {
                                                        QStandardItemModel::dropMimeData(data,action,row,column,parent);
                                                        emit moveFrameMessageIds(indexesLocal.parent().row(),parent.row(),indexesLocal.row(),-1);
                                                        return true;
                                                    }
                                                    else
                                                    {
                                                        QStandardItemModel::dropMimeData(data,action, 0 ,column,parent);
                                                        emit moveFrameMessageIds(indexesLocal.parent().row(),parent.row(),indexesLocal.row(),0);
                                                        return true;
                                                    }
                                                }
                                                if(indexesLocal.parent().parent().isValid() && parent.parent().parent().isValid() && column == -1)
                                                {
                                                    //      Msg is dropped on another msg
                                                    QStandardItemModel::dropMimeData(data,action,parent.row()+1,column,parent.parent());
                                                    emit moveFrameMessageIds(indexesLocal.parent().row(),parent.parent().row(),indexesLocal.row(),parent.row()+1);
                                                    return true;
                                                }
                                                if(indexesLocal.parent().isValid() && !(indexesLocal.parent().parent().isValid()) && !parent.parent().isValid() && column == -1)
                                                {
                                                    //      Minor frame is dropped on Major frame
                                                    QStandardItemModel::dropMimeData(data,action,0,indexesLocal.column(),indexesLocal.parent());
                                                    emit moveFrame(indexesLocal.row(),0);
                                                    return true;
                                                }
                                                if(indexesLocal.parent().isValid() && !(indexesLocal.parent().parent().isValid()) && parent.parent().isValid() && !(parent.parent().parent().isValid()) && column == -1)
                                                {
                                                    // Minor frame is dropped on another minor frame
                                                    int pre = indexesLocal.row();
                                                    int cur = parent.row();
                                                    QStandardItemModel::dropMimeData(data,action,parent.row()+1,column,parent.parent());
                                                    emit moveFrame(indexesLocal.row(),parent.row());
                                                    return true;
                                                }
                                                if(indexesLocal.parent().isValid() && !(indexesLocal.parent().parent().isValid()) && parent.parent().parent().isValid() && column == -1)
                                                {
                                                    return QStandardItemModel::dropMimeData(data,action,indexesLocal.row(),indexesLocal.column(),indexesLocal.parent());
                                                    //      Minor frame is dropped on msg
                                                }
                                                if(indexesLocal.parent().isValid() && !(indexesLocal.parent().parent().isValid()) && !parent.parent().isValid() && column == 0)
                                                {
                                                    QStandardItemModel::dropMimeData(data,action,row,indexesLocal.column(),indexesLocal.parent());
                                                    emit moveFrame(indexesLocal.row(),row);
                                                    return true;
                                                    //      Minor frame is dropped after minor
                                                }
                                                if(indexesLocal.parent().isValid() && !(indexesLocal.parent().parent().isValid()) && !parent.parent().parent().isValid() && column == 0)
                                                {
                                                    return QStandardItemModel::dropMimeData(data,action,indexesLocal.row(),indexesLocal.column(),indexesLocal.parent());
                                                    //      Minor frame is dropped after msg
                                                }
                                                if(indexesLocal.parent().parent().isValid() && parent.isValid() && !parent.parent().isValid() && column == 0)
                                                {
                                                    return QStandardItemModel::dropMimeData(data,action,indexesLocal.row(),indexesLocal.column(),indexesLocal.parent());
                                                    //      Msg is dropped after minor
                                                }
                                                if(indexesLocal.parent().parent().isValid() && parent.parent().isValid() && !parent.parent().parent().isValid() && column == 0)
                                                {
                                                    QStandardItemModel::dropMimeData(data,action,row,parent.column(),parent);
                                                    emit moveFrameMessageIds(indexesLocal.parent().row(),parent.row(),indexesLocal.row(),row);
                                                    return true;
                                                    //      Msg is dropped after msg
                                                }
                                        }
                                        }
                                        

                                        And one more thing. If i drag items to pushbutton/group box the listview count is not getting updated.. ex:if i have 5 items and drag 1 item to pushbutton_delete then the count will be 5 . if i manually press delete button now then the list is getting updated to 3.

                                        mrjjM Offline
                                        mrjjM Offline
                                        mrjj
                                        Lifetime Qt Champion
                                        wrote on last edited by
                                        #37

                                        @Ratzz said:

                                        But i do not want the user to allow listview items to dragged to pushbutton/groupbox

                                        So why can you not check there ?

                                        also
                                        http://doc.qt.io/qt-5/qtreewidget.html#dropMimeData
                                        Seems to be when something is dropped on Tree and im confused what it has to do with the
                                        Groupbox ?

                                        RatzzR 1 Reply Last reply
                                        0
                                        • mrjjM mrjj

                                          @Ratzz said:

                                          But i do not want the user to allow listview items to dragged to pushbutton/groupbox

                                          So why can you not check there ?

                                          also
                                          http://doc.qt.io/qt-5/qtreewidget.html#dropMimeData
                                          Seems to be when something is dropped on Tree and im confused what it has to do with the
                                          Groupbox ?

                                          RatzzR Offline
                                          RatzzR Offline
                                          Ratzz
                                          wrote on last edited by
                                          #38

                                          @mrjj
                                          Since the groupbox is deletes item as you suggested it also deletes listview items when dragged.

                                          --Alles ist gut.

                                          mrjjM 1 Reply Last reply
                                          0

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved