kaddressbook

kaddressbookcardview.h

00001 #ifndef KADDRESSBOOKCARDVIEW_H
00002 #define KADDRESSBOOKCARDVIEW_H
00003 
00004 /*
00005     This file is part of KAddressBook.
00006     Copyright (c) 2002 Mike Pilone <mpilone@slac.com>
00007 
00008     This program is free software; you can redistribute it and/or modify
00009     it under the terms of the GNU General Public License as published by
00010     the Free Software Foundation; either version 2 of the License, or
00011     (at your option) any later version.
00012 
00013     This program is distributed in the hope that it will be useful,
00014     but WITHOUT ANY WARRANTY; without even the implied warranty of
00015     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00016     GNU General Public License for more details.
00017 
00018     You should have received a copy of the GNU General Public License
00019     along with this program; if not, write to the Free Software
00020     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00021 
00022     As a special exception, permission is given to link this program
00023     with any edition of Qt, and distribute the resulting executable,
00024     without including the source code for Qt in the source distribution.
00025 */
00026 
00027 #include <qstring.h>
00028 #include <kiconview.h>
00029 
00030 #include "cardview.h"
00031 #include "kaddressbookview.h"
00032 
00033 class QDragEntryEvent;
00034 class QDropEvent;
00035 class KConfig;
00036 class AddresseeCardView;
00037 
00043 class KAddressBookCardView : public KAddressBookView
00044 {
00045   Q_OBJECT
00046 
00047   public:
00048     KAddressBookCardView( KAB::Core *core, QWidget *parent,
00049                           const char *name = 0 );
00050     virtual ~KAddressBookCardView();
00051 
00052     virtual QStringList selectedUids();
00053     virtual QString type() const { return "Card"; }
00054     virtual KABC::Field *sortField() const;
00055 
00056     virtual void readConfig( KConfig *config );
00057     virtual void writeConfig( KConfig *config );
00058 
00059     void scrollUp();
00060     void scrollDown();
00061 
00062   public slots:
00063     void refresh( const QString &uid = QString() );
00064     void setSelected( const QString &uid = QString(), bool selected = true );
00065     virtual void setFirstSelected( bool selected = true );
00066 
00067   protected slots:
00068     void addresseeExecuted( CardViewItem* );
00069     void addresseeSelected();
00070     void rmbClicked( CardViewItem*, const QPoint& );
00071 
00072   private:
00073     AddresseeCardView *mCardView;
00074     bool mShowEmptyFields;
00075 };
00076 
00077 class AddresseeCardView : public CardView
00078 {
00079   Q_OBJECT
00080   public:
00081     AddresseeCardView( QWidget *parent, const char *name = 0 );
00082     ~AddresseeCardView();
00083 
00084   signals:
00085     void startAddresseeDrag();
00086     void addresseeDropped( QDropEvent* );
00087 
00088   protected:
00089     virtual void dragEnterEvent( QDragEnterEvent* );
00090     virtual void dropEvent( QDropEvent* );
00091     virtual void startDrag();
00092 };
00093 
00094 #endif
KDE Home | KDE Accessibility Home | Description of Access Keys