make animation of the tray icon and the displaying of the popup messages configurable
authorAlexander von Renteln <phon@quassel-irc.org>
Tue, 25 Mar 2008 18:40:43 +0000 (18:40 +0000)
committerAlexander von Renteln <phon@quassel-irc.org>
Tue, 25 Mar 2008 18:40:43 +0000 (18:40 +0000)
src/qtui/mainwin.cpp
src/qtui/settingspages/generalsettingspage.cpp
src/qtui/settingspages/generalsettingspage.ui
version.inc

index 4b1c38f..f5afc10 100644 (file)
@@ -430,9 +430,17 @@ void MainWin::receiveMessage(const Message &msg) {
       title += QString(" - %1").arg(sender);
     }
     QString text = QtUi::style()->styleString(Message::mircToInternal(msg.text())).text;
-    displayTrayIconMessage(title, text);
-    QApplication::alert(this);
-    setTrayIconActivity(true);
+
+    UiSettings uiSettings;
+
+    if(uiSettings.value("DisplayPopupMessages", QVariant(true)).toBool()) {
+      displayTrayIconMessage(title, text);
+    }
+
+    if(uiSettings.value("AnimateTrayIcon", QVariant(true)).toBool()) {
+      QApplication::alert(this);
+      setTrayIconActivity(true);
+    }
   }
 }
 
index 1e11e49..5111b4e 100644 (file)
@@ -43,6 +43,9 @@ GeneralSettingsPage::GeneralSettingsPage(QWidget *parent)
   connect(ui.minimizeOnMinimize, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
   connect(ui.minimizeOnClose, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
 
+  connect(ui.animateTrayIcon, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
+  connect(ui.displayPopupMessages, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
+
   connect(ui.userMessagesInStatusBuffer, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
   connect(ui.userMessagesInQueryBuffer, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
   connect(ui.userMessagesInCurrentBuffer, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
@@ -56,12 +59,14 @@ bool GeneralSettingsPage::hasDefaults() const {
 }
 
 void GeneralSettingsPage::defaults() {
-  qDebug() << "defaults in generalsettingspage";
   ui.useSystemTrayIcon->setChecked(true);
   ui.showSystemTrayIcon->setChecked(true);
   ui.minimizeOnMinimize->setChecked(false);
   ui.minimizeOnClose->setChecked(false);
 
+  ui.animateTrayIcon->setChecked(true);
+  ui.displayPopupMessages->setChecked(true);
+
   ui.userMessagesInStatusBuffer->setChecked(true);
   ui.userMessagesInQueryBuffer->setChecked(false);
   ui.userMessagesInCurrentBuffer->setChecked(false);
@@ -88,6 +93,12 @@ void GeneralSettingsPage::load() {
   settings["MouseWheelChangesBuffers"] = uiSettings.value("MouseWheelChangesBuffers", QVariant(true));
   ui.mouseWheelChangesBuffers->setChecked(settings["MouseWheelChangesBuffers"].toBool());
 
+  settings["AnimateTrayIcon"] = uiSettings.value("AnimateTrayIcon", QVariant(true));
+  ui.animateTrayIcon->setChecked(settings["AnimateTrayIcon"].toBool());
+
+  settings["DisplayPopupMessages"] = uiSettings.value("DisplayPopupMessages", QVariant(true));
+  ui.displayPopupMessages->setChecked(settings["DisplayPopupMessages"].toBool());
+
   // bufferSettings:
   BufferSettings bufferSettings;
   settings["UserMessagesInStatusBuffer"] = bufferSettings.value("UserMessagesInStatusBuffer", QVariant(true));
@@ -112,6 +123,9 @@ void GeneralSettingsPage::save() {
   uiSettings.setValue("MinimizeOnClose", ui.minimizeOnClose->isChecked());
   uiSettings.setValue("MouseWheelChangesBuffers", ui.mouseWheelChangesBuffers->isChecked());
 
+  uiSettings.setValue("AnimateTrayIcon", ui.animateTrayIcon->isChecked());
+  uiSettings.setValue("DisplayPopupMessages", ui.displayPopupMessages->isChecked());
+
   BufferSettings bufferSettings;
   bufferSettings.setValue("UserMessagesInStatusBuffer", ui.userMessagesInStatusBuffer->isChecked());
   bufferSettings.setValue("UserMessagesInQueryBuffer", ui.userMessagesInQueryBuffer->isChecked());
@@ -133,6 +147,9 @@ bool GeneralSettingsPage::testHasChanged() {
   if(settings["MinimizeOnMinimize"].toBool() != ui.minimizeOnMinimize->isChecked()) return true;
   if(settings["MinimizeOnClose"].toBool() != ui.minimizeOnClose->isChecked()) return true;
 
+  if(settings["AnimateTrayIcon"].toBool() != ui.animateTrayIcon->isChecked()) return true;
+  if(settings["DisplayPopupMessages"].toBool() != ui.displayPopupMessages->isChecked()) return true;
+
   if(settings["UserMessagesInStatusBuffer"].toBool() != ui.userMessagesInStatusBuffer->isChecked()) return true;
   if(settings["UserMessagesInQueryBuffer"].toBool() != ui.userMessagesInQueryBuffer->isChecked()) return true;
   if(settings["UserMessagesInCurrentBuffer"].toBool() != ui.userMessagesInCurrentBuffer->isChecked()) return true;
index 4620bb4..03feae5 100644 (file)
@@ -6,7 +6,7 @@
     <x>0</x>
     <y>0</y>
     <width>448</width>
-    <height>480</height>
+    <height>488</height>
    </rect>
   </property>
   <property name="windowTitle" >
      </layout>
     </widget>
    </item>
+   <item>
+    <widget class="QGroupBox" name="groupBox_3" >
+     <property name="title" >
+      <string>User Notification:</string>
+     </property>
+     <layout class="QGridLayout" >
+      <item row="0" column="0" >
+       <widget class="QCheckBox" name="animateTrayIcon" >
+        <property name="text" >
+         <string>Animate tray icon</string>
+        </property>
+        <property name="checked" >
+         <bool>true</bool>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="0" >
+       <widget class="QCheckBox" name="displayPopupMessages" >
+        <property name="text" >
+         <string>Display pop-up messages</string>
+        </property>
+        <property name="checked" >
+         <bool>true</bool>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </widget>
+   </item>
    <item>
     <widget class="QGroupBox" name="groupBox" >
      <property name="title" >
index 98a8133..60d47a7 100644 (file)
@@ -5,7 +5,7 @@
 
   quasselVersion = "0.2.0-alpha4-pre";
   quasselDate = "2008-03-25";
-  quasselBuild = 657;
+  quasselBuild = 659;
 
   //! Minimum client build number the core needs
   clientBuildNeeded = 642;