aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--qt-ui/mainwindow.cpp3
-rw-r--r--qt-ui/renumber.ui85
-rw-r--r--qt-ui/simplewidgets.cpp30
-rw-r--r--qt-ui/simplewidgets.h20
4 files changed, 135 insertions, 3 deletions
diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp
index 53546fa67..f477a0d4f 100644
--- a/qt-ui/mainwindow.cpp
+++ b/qt-ui/mainwindow.cpp
@@ -30,6 +30,7 @@
#include "preferences.h"
#include "subsurfacewebservices.h"
#include "divecomputermanagementdialog.h"
+#include "simplewidgets.h"
static MainWindow* instance = 0;
@@ -224,7 +225,7 @@ void MainWindow::on_actionAddDive_triggered()
void MainWindow::on_actionRenumber_triggered()
{
- qDebug("actionRenumber");
+ RenumberDialog::instance()->show();
}
void MainWindow::on_actionAutoGroup_triggered()
diff --git a/qt-ui/renumber.ui b/qt-ui/renumber.ui
new file mode 100644
index 000000000..cbe7eaf29
--- /dev/null
+++ b/qt-ui/renumber.ui
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>RenumberDialog</class>
+ <widget class="QDialog" name="RenumberDialog">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>181</width>
+ <height>95</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Renumber</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout_2">
+ <property name="spacing">
+ <number>0</number>
+ </property>
+ <property name="margin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="QGroupBox" name="groupBox">
+ <property name="title">
+ <string>New starting number</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <property name="margin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="QSpinBox" name="spinBox"/>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <widget class="QDialogButtonBox" name="buttonBox">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="standardButtons">
+ <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>accepted()</signal>
+ <receiver>RenumberDialog</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>248</x>
+ <y>254</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>157</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>rejected()</signal>
+ <receiver>RenumberDialog</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>316</x>
+ <y>260</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>286</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
diff --git a/qt-ui/simplewidgets.cpp b/qt-ui/simplewidgets.cpp
index c389a34c3..a6e01a724 100644
--- a/qt-ui/simplewidgets.cpp
+++ b/qt-ui/simplewidgets.cpp
@@ -4,6 +4,14 @@
#include <QLabel>
#include <QFormLayout>
#include <QIcon>
+#include <QAbstractButton>
+#include <QSpinBox>
+#include <QButtonGroup>
+#include <QDebug>
+
+#include "../dive.h"
+
+#include "ui_renumber.h"
class MinMaxAvgWidgetPrivate{
public:
@@ -24,7 +32,7 @@ public:
avgValue = new QLabel(owner);
minValue = new QLabel(owner);
maxValue = new QLabel(owner);
-
+
QGridLayout *formLayout = new QGridLayout();
formLayout->addWidget(maxIco, 0, 0);
formLayout->addWidget(maxValue, 0, 1);
@@ -90,3 +98,23 @@ void MinMaxAvgWidget::setMinimum(const QString& minimum)
{
d->minValue->setText(minimum);
}
+
+RenumberDialog* RenumberDialog::instance()
+{
+ static RenumberDialog* self = new RenumberDialog();
+ return self;
+}
+
+void RenumberDialog::buttonClicked(QAbstractButton* button)
+{
+ if (ui->buttonBox->buttonRole(button) == QDialogButtonBox::AcceptRole){
+ qDebug() << "Renumbering.";
+ renumber_dives(ui->spinBox->value());
+ }
+}
+
+RenumberDialog::RenumberDialog(): QDialog(), ui( new Ui::RenumberDialog())
+{
+ ui->setupUi(this);
+ connect(ui->buttonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(buttonClicked(QAbstractButton*)));
+}
diff --git a/qt-ui/simplewidgets.h b/qt-ui/simplewidgets.h
index b05dd8f0e..ffd415767 100644
--- a/qt-ui/simplewidgets.h
+++ b/qt-ui/simplewidgets.h
@@ -2,7 +2,10 @@
#define SIMPLEWIDGETS_H
class MinMaxAvgWidgetPrivate;
+class QAbstractButton;
+
#include <QWidget>
+#include <QDialog>
class MinMaxAvgWidget : public QWidget{
Q_OBJECT
@@ -25,4 +28,19 @@ private:
MinMaxAvgWidgetPrivate *d;
};
-#endif \ No newline at end of file
+namespace Ui{
+ class RenumberDialog;
+};
+
+class RenumberDialog : public QDialog {
+ Q_OBJECT
+public:
+ static RenumberDialog *instance();
+private slots:
+ void buttonClicked(QAbstractButton *button);
+private:
+ explicit RenumberDialog();
+ Ui::RenumberDialog *ui;
+};
+
+#endif