summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Smith <git@kismith.co.uk>2010-03-23 08:25:32 (GMT)
committerKevin Smith <git@kismith.co.uk>2010-03-23 08:25:32 (GMT)
commitfc5c7de3221610446e35b01a47756fa833b526e4 (patch)
tree1212472dfe9e2062df7522e93e883497fc0618ed /Swift/QtUI/QtMainWindow.cpp
parentc1c973e8afe9826f82cc0bcda6e855aa76eeeabc (diff)
downloadswift-fc5c7de3221610446e35b01a47756fa833b526e4.zip
swift-fc5c7de3221610446e35b01a47756fa833b526e4.tar.bz2
Show EventWindow activity in roster tab.
Resolves: #295
Diffstat (limited to 'Swift/QtUI/QtMainWindow.cpp')
-rw-r--r--Swift/QtUI/QtMainWindow.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/Swift/QtUI/QtMainWindow.cpp b/Swift/QtUI/QtMainWindow.cpp
index 618a887..5a6c620 100644
--- a/Swift/QtUI/QtMainWindow.cpp
+++ b/Swift/QtUI/QtMainWindow.cpp
@@ -3,6 +3,7 @@
#include "QtAddContactDialog.h"
#include "QtJoinMUCDialog.h"
#include "QtSwiftUtil.h"
+#include "QtTabWidget.h"
#include "Roster/QtTreeWidgetFactory.h"
#include "Roster/QtTreeWidget.h"
#include "Swift/Controllers/UIEvents/AddContactUIEvent.h"
@@ -31,7 +32,7 @@ QtMainWindow::QtMainWindow(UIEventStream* uiEventStream, QtTreeWidgetFactory *tr
mainLayout->addWidget(meView_);
connect(meView_, SIGNAL(onChangeStatusRequest(StatusShow::Type, const QString&)), this, SLOT(handleStatusChanged(StatusShow::Type, const QString&)));
- tabs_ = new QTabWidget(this);
+ tabs_ = new QtTabWidget(this);
tabs_->setDocumentMode(true);
tabs_->setTabPosition(QTabWidget::South);
mainLayout->addWidget(tabs_);
@@ -49,6 +50,7 @@ QtMainWindow::QtMainWindow(UIEventStream* uiEventStream, QtTreeWidgetFactory *tr
tabs_->addTab(contactsTabWidget_, "Contacts");
eventWindow_ = new QtEventWindow(uiEventStream_);
+ connect(eventWindow_, SIGNAL(onNewEventCountUpdated(int)), this, SLOT(handleEventCountUpdated(int)));
tabs_->addTab(eventWindow_, "Events");
@@ -79,6 +81,17 @@ QtEventWindow* QtMainWindow::getEventWindow() {
return eventWindow_;
}
+void QtMainWindow::handleEventCountUpdated(int count) {
+ QColor eventTabColor = (count == 0) ? QColor(-1, -1, -1) : QColor(255, 0, 0); // invalid resets to default
+ int eventIndex = 1;
+ tabs_->tabBar()->setTabTextColor(eventIndex, eventTabColor);
+ QString text = "Events";
+ if (count > 0) {
+ text += QString(" (%1)").arg(count);
+ }
+ tabs_->setTabText(eventIndex, text);
+}
+
void QtMainWindow::handleAddActionTriggered(bool checked) {
Q_UNUSED(checked);
QtAddContactDialog* addContact = new QtAddContactDialog(this);