summaryrefslogtreecommitdiffstats
path: root/beetplayer.cpp
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2017-02-18 12:16:34 +0100
committerArno <arno@disconnect.de>2017-02-18 12:16:34 +0100
commit1803f4a72385856920aeeeaeab1e04b7f0a123dc (patch)
tree4226507a0c2afeeb4e274c2a271f81f4605f680f /beetplayer.cpp
downloadBeetPlayer-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.cpp38
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();
+ }
+ }
+ }
+}