diff options
author | Arno <arno@disconnect.de> | 2017-02-18 12:16:34 +0100 |
---|---|---|
committer | Arno <arno@disconnect.de> | 2017-02-18 12:16:34 +0100 |
commit | 1803f4a72385856920aeeeaeab1e04b7f0a123dc (patch) | |
tree | 4226507a0c2afeeb4e274c2a271f81f4605f680f /beetplayer.cpp | |
download | BeetPlayer-1803f4a72385856920aeeeaeab1e04b7f0a123dc.tar.gz BeetPlayer-1803f4a72385856920aeeeaeab1e04b7f0a123dc.tar.bz2 BeetPlayer-1803f4a72385856920aeeeaeab1e04b7f0a123dc.zip |
Initial commit
Create database and connect. Does nothing yet...
Diffstat (limited to 'beetplayer.cpp')
-rw-r--r-- | beetplayer.cpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/beetplayer.cpp b/beetplayer.cpp new file mode 100644 index 0000000..52c80e4 --- /dev/null +++ b/beetplayer.cpp @@ -0,0 +1,38 @@ +#include <QSettings> +#include <QSqlDatabase> +#include <QMessageBox> +#include <QApplication> + +#include "beetplayer.h" +#include "configurationdialog.h" + +BeetPlayer::BeetPlayer(QWidget *parent, Qt::WindowFlags f) : QMainWindow(parent, f) { + //general setup + setMinimumWidth(800); + setMinimumHeight(600); + openDatabase(); +} + +void BeetPlayer::openDatabase(){ + QSettings s; + QString dbhost = s.value("dbhost").toString(); + QString dbuser = s.value("dbuser").toString(); + QString dbpass = s.value("dbpass").toString(); + QString dbname = s.value("dbname").toString(); + if(!QSqlDatabase::contains("beetplayerdb")){ + QSqlDatabase db = QSqlDatabase::addDatabase("QPSQL", "beetplayerdb"); + db.setHostName(dbhost); + db.setUserName(dbuser); + db.setPassword(dbpass); + db.setDatabaseName(dbname); + if(!db.open()){ + int res = ConfigurationDialog(this).exec(); + if(res == QDialog::Accepted){ + openDatabase(); + }else{ + QMessageBox::critical(this, tr("Error"), tr("Could not open database. Giving up!")); + qApp->closeAllWindows(); + } + } + } +} |