coincontroltreewidget.cpp raw

   1  // Copyright (c) 2011-present The Bitcoin Core developers
   2  // Distributed under the MIT software license, see the accompanying
   3  // file COPYING or http://www.opensource.org/licenses/mit-license.php.
   4  
   5  #include <qt/coincontroltreewidget.h>
   6  #include <qt/coincontroldialog.h>
   7  
   8  CoinControlTreeWidget::CoinControlTreeWidget(QWidget *parent) :
   9      QTreeWidget(parent)
  10  {
  11  
  12  }
  13  
  14  void CoinControlTreeWidget::keyPressEvent(QKeyEvent *event)
  15  {
  16      if (event->key() == Qt::Key_Space) // press spacebar -> select checkbox
  17      {
  18          event->ignore();
  19          if (this->currentItem()) {
  20              int COLUMN_CHECKBOX = 0;
  21              this->currentItem()->setCheckState(COLUMN_CHECKBOX, ((this->currentItem()->checkState(COLUMN_CHECKBOX) == Qt::Checked) ? Qt::Unchecked : Qt::Checked));
  22          }
  23      }
  24      else if (event->key() == Qt::Key_Escape) // press esc -> close dialog
  25      {
  26          event->ignore();
  27          CoinControlDialog *coinControlDialog = static_cast<CoinControlDialog*>(this->parentWidget());
  28          coinControlDialog->done(QDialog::Accepted);
  29      }
  30      else
  31      {
  32          this->QTreeWidget::keyPressEvent(event);
  33      }
  34  }
  35