]> ToastFreeware Gitweb - toast/confclerk.git/blobdiff - src/gui/mainwindow.cpp
Bump copyright years.
[toast/confclerk.git] / src / gui / mainwindow.cpp
index 3b2582a213eab1f72b0a87d5ac4e5c4283005957..867f60abd7f25a19d4057d332eece8e6f918a61e 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2010 Ixonos Plc.
- * Copyright (C) 2011-2017 Philipp Spitzer, gregor herrmann, Stefan Stahl
+ * Copyright (C) 2011-2024 Philipp Spitzer, gregor herrmann, Stefan Stahl
  *
  * This file is part of ConfClerk.
  *
 #include <QNetworkAccessManager>
 #include <QNetworkReply>
 #include <QSslConfiguration>
+#include <QDialog>
+#include <QMessageBox>
 
 #include "sqlengine.h"
-
 #include "track.h"
 #include "eventmodel.h"
 #include "delegate.h"
 #include "room.h"
-
 #include "conference.h"
-
-#include <QDialog>
-#include <QMessageBox>
-
 #include "ui_about.h"
 #include "eventdialog.h"
 #include "daynavigatorwidget.h"
 #include "conferenceeditor.h"
 #include "schedulexmlparser.h"
 #include "errormessage.h"
-
 #include "tabcontainer.h"
 #include "appsettings.h"
-
-const QString PROXY_USERNAME;
-const QString PROXY_PASSWD;
+#include "application.h"
 
 MainWindow::MainWindow(QWidget* parent): QMainWindow(parent) {
     setupUi(this);
@@ -82,11 +75,11 @@ MainWindow::MainWindow(QWidget* parent): QMainWindow(parent) {
         AppSettings::setDirectConnection(true);
 
     QNetworkProxy proxy(
-            AppSettings::isDirectConnection() ? QNetworkProxy::NoProxy : QNetworkProxy::HttpProxy,
+            AppSettings::isDirectConnection() ? QNetworkProxy::NoProxy : (QNetworkProxy::ProxyType)AppSettings::proxyType(),
             AppSettings::proxyAddress(),
             AppSettings::proxyPort(),
-            PROXY_USERNAME,
-            PROXY_PASSWD);
+            AppSettings::proxyUsername(),
+            AppSettings::proxyPassword());
     QNetworkProxy::setApplicationProxy(proxy);
 
     // event details have changed
@@ -241,22 +234,24 @@ void MainWindow::onSystemTrayMessageClicked() {
 
 void MainWindow::onAlarmTimerTimeout() {
     // determine if an alarm is set on an event that's starting soon
-    QList<Event> events = Event::getImminentAlarmEvents(AppSettings::preEventAlarmSec(), Conference::activeConference());
+    int conferenceId = Conference::activeConference();
+    QList<Event> events = Event::getImminentAlarmEvents(AppSettings::preEventAlarmSec(), conferenceId);
     if (events.empty()) return;
 
     // build a message string
+    const Conference conference = Conference::getById(conferenceId);
     Event event;
     QString title;
     QString message;
     if (events.size() == 1) {
         event = events.first();
-        title = tr("Next event at %1").arg(event.start().toString("HH:mm"));
+        title = tr("Next event at %1").arg(conference.shiftTime(event.start().time()).toString("HH:mm"));
         message = tr("\"%1\"\n(%2)").arg(event.title()).arg(event.room()->name());
     } else {
         title = tr("%1 upcoming events").arg(events.size());
         QStringList messages;
         foreach (event, events) {
-            messages += tr("%1: \"%2\" (%3)").arg(event.start().toString("HH:mm")).arg(event.title()).arg(event.room()->name());
+            messages += tr("%1: \"%2\" (%3)").arg(conference.shiftTime(event.start().time()).toString("HH:mm")).arg(event.title()).arg(event.room()->name());
         }
         message = messages.join("\n");
     }
@@ -325,6 +320,7 @@ void MainWindow::initTabs()
     if (confId != -1)   // only init tabs if a conference is active
     {
         Conference active = Conference::getById(confId);
+        ((Application*) qApp)->setActiveConference(active);
         QDate startDate = active.start();
         QDate endDate = active.end();
 
@@ -348,6 +344,7 @@ void MainWindow::unsetConference()
     clearTabs();
     dayNavigator->unsetDates();
     setWindowTitle(saved_title);
+    ((Application*) qApp)->unsetActiveConference();
 }
 
 
@@ -363,11 +360,11 @@ void MainWindow::on_settingsAction_triggered()
     if (dialog.exec() == QDialog::Accepted) {
         dialog.saveDialogData();
         QNetworkProxy proxy(
-                AppSettings::isDirectConnection() ? QNetworkProxy::NoProxy : QNetworkProxy::HttpProxy,
+                AppSettings::isDirectConnection() ? QNetworkProxy::NoProxy : (QNetworkProxy::ProxyType)AppSettings::proxyType(),
                 AppSettings::proxyAddress(),
                 AppSettings::proxyPort(),
-                PROXY_USERNAME,
-                PROXY_PASSWD);
+                AppSettings::proxyUsername(),
+                AppSettings::proxyPassword());
         QNetworkProxy::setApplicationProxy(proxy);
     }
 }