From 8df9466ada46e4b07990b9cb7e8b1cd61b96844a Mon Sep 17 00:00:00 2001 From: me_desk Date: Sun, 17 Jun 2012 21:15:12 +0000 Subject: todo list update git-svn-id: svn://localhost/project_picapica/trunk@128 fb96df88-216d-11de-830c-f3023f12d8ac --- pica-client/picasystray.cpp | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 pica-client/picasystray.cpp (limited to 'pica-client/picasystray.cpp') diff --git a/pica-client/picasystray.cpp b/pica-client/picasystray.cpp new file mode 100644 index 0000000..ab31887 --- /dev/null +++ b/pica-client/picasystray.cpp @@ -0,0 +1,39 @@ +#include "picasystray.h" +#include "globals.h" +#include "picaactioncenter.h" + +PicaSysTray::PicaSysTray(QObject *parent) : + QObject(parent) +{ + systrayMenu_ = new QMenu(); + + systrayMenu_->addAction(action_center->AboutAct()); + systrayMenu_->addSeparator(); + systrayMenu_->addAction(action_center->ExitAct()); + + systray_ = new QSystemTrayIcon(picapica_ico_sit); + systray_->setContextMenu(systrayMenu_); + systray_->show(); + + connect(systray_, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(systray_activated(QSystemTrayIcon::ActivationReason))); + connect(skynet, SIGNAL(BecameSelfAware()), this, SLOT(skynet_became_self_aware())); + connect(skynet, SIGNAL(LostSelfAwareness()), this, SLOT(skynet_lost_self_awareness())); +} + +void PicaSysTray::systray_activated(QSystemTrayIcon::ActivationReason r) +{ + if (r == QSystemTrayIcon::DoubleClick && mainwindow!=NULL) + { + mainwindow->showNormal(); + } +} + +void PicaSysTray::skynet_became_self_aware() +{ + systray_->setIcon(picapica_ico_fly); +} + +void PicaSysTray::skynet_lost_self_awareness() +{ + systray_->setIcon(picapica_ico_sit); +} -- cgit v1.2.1