summaryrefslogtreecommitdiffstats
path: root/qt-ui/divecomputermanagementdialog.cpp
diff options
context:
space:
mode:
authorGravatar Tomaz Canabrava <tcanabrava@kde.org>2013-06-07 15:34:27 -0300
committerGravatar Tomaz Canabrava <tcanabrava@kde.org>2013-06-07 15:34:27 -0300
commit7681895fe09aa81c83143c6a58459e354a4234b1 (patch)
treeed3718f1410cb1c79c31f42cd9caf75508ec5578 /qt-ui/divecomputermanagementdialog.cpp
parent54128aa52fe5c765ce6ced8bd05611e202195d6b (diff)
downloadsubsurface-7681895fe09aa81c83143c6a58459e354a4234b1.tar.gz
Remove the dive computer clicking on the trash icon.
This code removes the dive computer clicking on the trash icon, the result is not saved on the XML, this will need a bit of hacking from some of the older guys. :) Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Diffstat (limited to 'qt-ui/divecomputermanagementdialog.cpp')
-rw-r--r--qt-ui/divecomputermanagementdialog.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/qt-ui/divecomputermanagementdialog.cpp b/qt-ui/divecomputermanagementdialog.cpp
index 867ca2d49..7a96b4c63 100644
--- a/qt-ui/divecomputermanagementdialog.cpp
+++ b/qt-ui/divecomputermanagementdialog.cpp
@@ -1,6 +1,8 @@
#include "divecomputermanagementdialog.h"
#include "models.h"
#include "ui_divecomputermanagementdialog.h"
+#include "mainwindow.h"
+#include <QMessageBox>
DiveComputerManagementDialog::DiveComputerManagementDialog(QWidget* parent, Qt::WindowFlags f): QDialog(parent, f)
, ui( new Ui::DiveComputerManagementDialog())
@@ -8,6 +10,8 @@ DiveComputerManagementDialog::DiveComputerManagementDialog(QWidget* parent, Qt::
ui->setupUi(this);
model = new DiveComputerModel();
ui->tableView->setModel(model);
+ connect(ui->tableView, SIGNAL(clicked(QModelIndex)), this, SLOT(tryRemove(QModelIndex)));
+ ui->tableView->setColumnWidth(DiveComputerModel::REMOVE, 22);
}
DiveComputerManagementDialog* DiveComputerManagementDialog::instance()
@@ -20,3 +24,21 @@ void DiveComputerManagementDialog::update()
{
model->update();
}
+
+void DiveComputerManagementDialog::tryRemove(const QModelIndex& index)
+{
+ if (index.column() != DiveComputerModel::REMOVE){
+ return;
+ }
+
+ QMessageBox::StandardButton response = QMessageBox::question(
+ this,
+ tr("Remove the selected Dive Computer?"),
+ tr("Are you sure that you want to \n remove the selected dive computer?"),
+ QMessageBox::Ok | QMessageBox::Cancel
+ );
+
+ if (response == QMessageBox::Ok){
+ model->remove(index);
+ }
+}