From ddccc1a81948a3dabc95609f0d356d67d26c4bc3 Mon Sep 17 00:00:00 2001 From: Manjeet Dahiya Date: Sun, 26 Sep 2010 05:20:07 +0000 Subject: add system icon --- examples/GuiClient/mainDialog.cpp | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'examples/GuiClient/mainDialog.cpp') diff --git a/examples/GuiClient/mainDialog.cpp b/examples/GuiClient/mainDialog.cpp index c4e2f920..0748422d 100644 --- a/examples/GuiClient/mainDialog.cpp +++ b/examples/GuiClient/mainDialog.cpp @@ -46,9 +46,12 @@ mainDialog::mainDialog(QWidget *parent): QDialog(parent, Qt::Window), ui(new Ui::mainDialogClass), m_rosterItemModel(this), m_rosterItemSortFilterModel(this), m_vCardManager(&m_xmppClient), - m_capabilitiesCollection(&m_xmppClient), m_accountsCache(this) + m_capabilitiesCollection(&m_xmppClient), m_accountsCache(this), + m_trayIcon(this), m_trayIconMenu(this), m_quitAction("Quit", this) { ui->setupUi(this); + createTrayIconAndMenu(); + ui->pushButton_cancel->setDisabled(true); ui->label_throbber->setMovie(new QMovie(":/icons/resource/ajax-loader.gif")); ui->label_throbber->movie()->start(); @@ -557,3 +560,19 @@ void mainDialog::addAccountToCache() passwd = ""; m_accountsCache.addAccount(bareJid, passwd); } + +void mainDialog::action_quit() +{ + m_xmppClient.disconnectFromServer(); + close(); +} + +void mainDialog::createTrayIconAndMenu() +{ + bool check = connect(&m_quitAction, SIGNAL(triggered()), SLOT(action_quit())); + Q_ASSERT(check); + + m_trayIconMenu.addAction(&m_quitAction); + m_trayIcon.setContextMenu(&m_trayIconMenu); + m_trayIcon.show(); +} -- cgit v1.2.3