diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | 460c52653ab0dcca6f19a4f492ed2c5e4e963ab0 (patch) | |
tree | 67208f7c145782a7e90b123b982ca78d88cc2c87 /kaddressbook/views/kaddressbooktableview.h | |
download | tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.tar.gz tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kaddressbook/views/kaddressbooktableview.h')
-rw-r--r-- | kaddressbook/views/kaddressbooktableview.h | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/kaddressbook/views/kaddressbooktableview.h b/kaddressbook/views/kaddressbooktableview.h new file mode 100644 index 000000000..0d328ce86 --- /dev/null +++ b/kaddressbook/views/kaddressbooktableview.h @@ -0,0 +1,115 @@ +/* + This file is part of KAddressBook. + Copyright (c) 2002 Mike Pilone <[email protected]> + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program 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 General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + As a special exception, permission is given to link this program + with any edition of Qt, and distribute the resulting executable, + without including the source code for Qt in the source distribution. +*/ + +#ifndef KADDRESSBOOKTABLEVIEW_H +#define KADDRESSBOOKTABLEVIEW_H + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#include <qwidget.h> +#include <qlistview.h> +#include <qstring.h> +#include <qdialog.h> +#include <qtabdialog.h> +#include <qstringlist.h> +#include <qvaluelist.h> + +#include "kaddressbookview.h" + +class QListViewItem; +class QListBox; +class QVBoxLayout; +class KConfig; +class KIMProxy; + +class ContactListViewItem; +class ContactListView; + +namespace KABC { class AddressBook; } + +/** + * This class is the table view for kaddressbook. This view is a KListView + * with multiple columns for the selected fields. + * + * @short Table View + * @author Don Sanders <[email protected]> + * @version 0.1 + */ +class KAddressBookTableView : public KAddressBookView +{ +friend class ContactListView; + + Q_OBJECT + + public: + KAddressBookTableView( KAB::Core *core, QWidget *parent, + const char *name = 0 ); + virtual ~KAddressBookTableView(); + + virtual void refresh( const QString &uid = QString() ); + virtual QStringList selectedUids(); + virtual void setSelected( const QString &uid = QString(), bool selected = false ); + virtual void setFirstSelected( bool selected = true ); + virtual KABC::Field *sortField() const; + + virtual void readConfig( KConfig *config ); + virtual void writeConfig( KConfig *config ); + virtual QString type() const { return "Table"; } + + void scrollUp(); + void scrollDown(); + + public slots: + virtual void reconstructListView(); + + protected slots: + /** + Called whenever the user selects an addressee in the list view. + */ + void addresseeSelected(); + + /** + Called whenever the user executes an addressee. In terms of the + list view, this is probably a double click + */ + void addresseeExecuted( QListViewItem* ); + + /** + RBM menu called. + */ + void rmbClicked( KListView*, QListViewItem*, const QPoint& ); + + /** + * Called to update the presence of a single item + */ + void updatePresence( const QString &uid ); + + private: + QVBoxLayout *mMainLayout; + ContactListView *mListView; + KIMProxy *mIMProxy; +}; + +#endif |