From ffeb653ae038d4e17bfb055acc5e99fb8ddc246d Mon Sep 17 00:00:00 2001 From: Manjeet Dahiya Date: Sat, 9 Oct 2010 12:58:37 +0000 Subject: class name change: customListView -> rosterListView --- examples/GuiClient/GuiClient.pro | 4 +- examples/GuiClient/customListView.cpp | 120 ---------------------------------- examples/GuiClient/customListView.h | 66 ------------------- examples/GuiClient/mainDialog.ui | 6 +- examples/GuiClient/rosterListView.cpp | 120 ++++++++++++++++++++++++++++++++++ examples/GuiClient/rosterListView.h | 66 +++++++++++++++++++ 6 files changed, 191 insertions(+), 191 deletions(-) delete mode 100644 examples/GuiClient/customListView.cpp delete mode 100644 examples/GuiClient/customListView.h create mode 100644 examples/GuiClient/rosterListView.cpp create mode 100644 examples/GuiClient/rosterListView.h (limited to 'examples') diff --git a/examples/GuiClient/GuiClient.pro b/examples/GuiClient/GuiClient.pro index 0718a197..1f518795 100644 --- a/examples/GuiClient/GuiClient.pro +++ b/examples/GuiClient/GuiClient.pro @@ -13,7 +13,7 @@ SOURCES += main.cpp \ rosterItem.cpp \ rosterItemSortFilterProxyModel.cpp \ utils.cpp \ - customListView.cpp \ + rosterListView.cpp \ searchLineEdit.cpp \ statusWidget.cpp \ customLabel.cpp \ @@ -34,7 +34,7 @@ HEADERS += messageGraphicsItem.h \ rosterItem.h \ rosterItemSortFilterProxyModel.h \ utils.h \ - customListView.h \ + rosterListView.h \ searchLineEdit.h \ statusWidget.h \ customLabel.h \ diff --git a/examples/GuiClient/customListView.cpp b/examples/GuiClient/customListView.cpp deleted file mode 100644 index 8e64ea01..00000000 --- a/examples/GuiClient/customListView.cpp +++ /dev/null @@ -1,120 +0,0 @@ -/* - * Copyright (C) 2008-2010 The QXmpp developers - * - * Author: - * Manjeet Dahiya - * - * Source: - * http://code.google.com/p/qxmpp - * - * This file is a part of QXmpp library. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - */ - - -#include "customListView.h" -#include "rosterItem.h" -#include -#include -#include - -customListView::customListView(QWidget* parent):QListView(parent), m_chat("Chat", this), -m_profile("View Profile", this), m_removeContact("Remove", this) -{ - bool check = connect(this, SIGNAL(pressed(const QModelIndex&)), this, - SLOT(mousePressed(const QModelIndex&))); - Q_ASSERT(check); - check = connect(this, SIGNAL(doubleClicked(const QModelIndex&)), this, - SLOT(doubleClicked(const QModelIndex&))); - Q_ASSERT(check); - check = connect(this, SIGNAL(clicked(const QModelIndex&)), this, - SLOT(clicked(const QModelIndex&))); - Q_ASSERT(check); - check = connect(&m_chat, SIGNAL(triggered()), this, - SLOT(showChatDialog_helper())); - Q_ASSERT(check); - - check = connect(&m_profile, SIGNAL(triggered()), this, - SLOT(showProfile_helper())); - Q_ASSERT(check); - - check = connect(&m_removeContact, SIGNAL(triggered()), this, - SLOT(removeContact_helper())); - Q_ASSERT(check); -} - -bool customListView::event(QEvent* e) -{ - return QListView::event(e); -} - -void customListView::mousePressed(const QModelIndex& index) -{ - if(QApplication::mouseButtons() == Qt::RightButton) - { - QString bareJid = index.data().toString(); - QMenu menu(this); - menu.addAction(&m_chat); - menu.setDefaultAction(&m_chat); - menu.addAction(&m_profile); - menu.addAction(&m_removeContact); - menu.exec(QCursor::pos()); - } -} - -void customListView::doubleClicked(const QModelIndex& index) -{ - m_chat.trigger(); -} - -void customListView::clicked(const QModelIndex& index) -{ -} - -QString customListView::selectedBareJid() -{ - if(selectedIndexes().size() > 0) - return selectedIndexes().at(0).data(rosterItem::BareJid).toString(); - else - return ""; -} - -void customListView::showChatDialog_helper() -{ - QString bareJid = selectedBareJid(); - if(!bareJid.isEmpty()) - emit showChatDialog(bareJid); -} - -void customListView::showProfile_helper() -{ - QString bareJid = selectedBareJid(); - if(!bareJid.isEmpty()) - emit showProfile(bareJid); -} - -void customListView::keyPressEvent(QKeyEvent* event1) -{ - if(event1->key() == Qt::Key_Return) - { - showChatDialog_helper(); - } - QListView::keyPressEvent(event1); -} - -void customListView::removeContact_helper() -{ - QString bareJid = selectedBareJid(); - if(!bareJid.isEmpty()) - emit removeContact(bareJid); -} diff --git a/examples/GuiClient/customListView.h b/examples/GuiClient/customListView.h deleted file mode 100644 index 1b2b54d4..00000000 --- a/examples/GuiClient/customListView.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright (C) 2008-2010 The QXmpp developers - * - * Author: - * Manjeet Dahiya - * - * Source: - * http://code.google.com/p/qxmpp - * - * This file is a part of QXmpp library. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - */ - - -#ifndef CUSTOMLISTVIEW_H -#define CUSTOMLISTVIEW_H - -#include -#include - -class customListView : public QListView -{ - Q_OBJECT - -public: - customListView(QWidget* parent = 0); - bool event(QEvent* e); - -public slots: - void mousePressed(const QModelIndex& index); - void doubleClicked(const QModelIndex& index); - void clicked(const QModelIndex& index); - -private slots: - void showChatDialog_helper(); - void showProfile_helper(); - void removeContact_helper(); - -protected: - void keyPressEvent(QKeyEvent*); - -signals: - void showChatDialog(const QString& bareJid); - void showProfile(const QString& bareJid); - void removeContact(const QString& bareJid); - -private: - QString selectedBareJid(); - -private: - QAction m_chat; - QAction m_profile; - QAction m_removeContact; -}; - -#endif // CUSTOMLISTVIEW_H diff --git a/examples/GuiClient/mainDialog.ui b/examples/GuiClient/mainDialog.ui index 7ba0ea10..69bc7f36 100644 --- a/examples/GuiClient/mainDialog.ui +++ b/examples/GuiClient/mainDialog.ui @@ -54,7 +54,7 @@ - + QAbstractItemView::NoEditTriggers @@ -341,9 +341,9 @@ - customListView + rosterListView QListView -
customListView.h
+
rosterListView.h
searchLineEdit diff --git a/examples/GuiClient/rosterListView.cpp b/examples/GuiClient/rosterListView.cpp new file mode 100644 index 00000000..23eab321 --- /dev/null +++ b/examples/GuiClient/rosterListView.cpp @@ -0,0 +1,120 @@ +/* + * Copyright (C) 2008-2010 The QXmpp developers + * + * Author: + * Manjeet Dahiya + * + * Source: + * http://code.google.com/p/qxmpp + * + * This file is a part of QXmpp library. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + */ + + +#include "rosterListView.h" +#include "rosterItem.h" +#include +#include +#include + +rosterListView::rosterListView(QWidget* parent):QListView(parent), m_chat("Chat", this), +m_profile("View Profile", this), m_removeContact("Remove", this) +{ + bool check = connect(this, SIGNAL(pressed(const QModelIndex&)), this, + SLOT(mousePressed(const QModelIndex&))); + Q_ASSERT(check); + check = connect(this, SIGNAL(doubleClicked(const QModelIndex&)), this, + SLOT(doubleClicked(const QModelIndex&))); + Q_ASSERT(check); + check = connect(this, SIGNAL(clicked(const QModelIndex&)), this, + SLOT(clicked(const QModelIndex&))); + Q_ASSERT(check); + check = connect(&m_chat, SIGNAL(triggered()), this, + SLOT(showChatDialog_helper())); + Q_ASSERT(check); + + check = connect(&m_profile, SIGNAL(triggered()), this, + SLOT(showProfile_helper())); + Q_ASSERT(check); + + check = connect(&m_removeContact, SIGNAL(triggered()), this, + SLOT(removeContact_helper())); + Q_ASSERT(check); +} + +bool rosterListView::event(QEvent* e) +{ + return QListView::event(e); +} + +void rosterListView::mousePressed(const QModelIndex& index) +{ + if(QApplication::mouseButtons() == Qt::RightButton) + { + QString bareJid = index.data().toString(); + QMenu menu(this); + menu.addAction(&m_chat); + menu.setDefaultAction(&m_chat); + menu.addAction(&m_profile); + menu.addAction(&m_removeContact); + menu.exec(QCursor::pos()); + } +} + +void rosterListView::doubleClicked(const QModelIndex& index) +{ + m_chat.trigger(); +} + +void rosterListView::clicked(const QModelIndex& index) +{ +} + +QString rosterListView::selectedBareJid() +{ + if(selectedIndexes().size() > 0) + return selectedIndexes().at(0).data(rosterItem::BareJid).toString(); + else + return ""; +} + +void rosterListView::showChatDialog_helper() +{ + QString bareJid = selectedBareJid(); + if(!bareJid.isEmpty()) + emit showChatDialog(bareJid); +} + +void rosterListView::showProfile_helper() +{ + QString bareJid = selectedBareJid(); + if(!bareJid.isEmpty()) + emit showProfile(bareJid); +} + +void rosterListView::keyPressEvent(QKeyEvent* event1) +{ + if(event1->key() == Qt::Key_Return) + { + showChatDialog_helper(); + } + QListView::keyPressEvent(event1); +} + +void rosterListView::removeContact_helper() +{ + QString bareJid = selectedBareJid(); + if(!bareJid.isEmpty()) + emit removeContact(bareJid); +} diff --git a/examples/GuiClient/rosterListView.h b/examples/GuiClient/rosterListView.h new file mode 100644 index 00000000..20772e1e --- /dev/null +++ b/examples/GuiClient/rosterListView.h @@ -0,0 +1,66 @@ +/* + * Copyright (C) 2008-2010 The QXmpp developers + * + * Author: + * Manjeet Dahiya + * + * Source: + * http://code.google.com/p/qxmpp + * + * This file is a part of QXmpp library. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + */ + + +#ifndef CUSTOMLISTVIEW_H +#define CUSTOMLISTVIEW_H + +#include +#include + +class rosterListView : public QListView +{ + Q_OBJECT + +public: + rosterListView(QWidget* parent = 0); + bool event(QEvent* e); + +public slots: + void mousePressed(const QModelIndex& index); + void doubleClicked(const QModelIndex& index); + void clicked(const QModelIndex& index); + +private slots: + void showChatDialog_helper(); + void showProfile_helper(); + void removeContact_helper(); + +protected: + void keyPressEvent(QKeyEvent*); + +signals: + void showChatDialog(const QString& bareJid); + void showProfile(const QString& bareJid); + void removeContact(const QString& bareJid); + +private: + QString selectedBareJid(); + +private: + QAction m_chat; + QAction m_profile; + QAction m_removeContact; +}; + +#endif // CUSTOMLISTVIEW_H -- cgit v1.2.3