summaryrefslogtreecommitdiffstats
path: root/libkdepim/addresseeselector.h
diff options
context:
space:
mode:
Diffstat (limited to 'libkdepim/addresseeselector.h')
-rw-r--r--libkdepim/addresseeselector.h234
1 files changed, 0 insertions, 234 deletions
diff --git a/libkdepim/addresseeselector.h b/libkdepim/addresseeselector.h
deleted file mode 100644
index 7ce70fb84..000000000
--- a/libkdepim/addresseeselector.h
+++ /dev/null
@@ -1,234 +0,0 @@
-/*
- This file is part of libtdepim.
-
- Copyright (c) 2004 Tobias Koenig <tokoe@kde.org>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License as published by the Free Software Foundation; either
- version 2 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
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public License
- along with this library; see the file COPYING.LIB. If not, write to
- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA.
-*/
-
-#ifndef KPIM_ADDRESSEESELECTOR_H
-#define KPIM_ADDRESSEESELECTOR_H
-
-#include <kabc/addressee.h>
-#include <kabc/distributionlist.h>
-#include <kabc/resource.h>
-#include <kdialogbase.h>
-#include <tdepimmacros.h>
-
-#include <tqbitarray.h>
-#include <tqpixmap.h>
-#include <tqwidget.h>
-
-class KComboBox;
-class KLineEdit;
-class KListView;
-class TQSignalMapper;
-
-namespace KPIM {
-
-class AddresseeSelector;
-
-class KDE_EXPORT Selection
-{
- friend class AddresseeSelector;
-
- public:
- virtual ~Selection() {}
-
- /**
- Returns the number of fields the selection offers.
- */
- virtual uint fieldCount() const = 0;
-
- /**
- Returns the title for the field specified by index.
- */
- virtual TQString fieldTitle( uint index ) const = 0;
-
- /**
- Returns the number of items for the given addressee.
- */
- virtual uint itemCount( const KABC::Addressee &addresse ) const = 0;
-
- /**
- Returns the text that's used for the item specified by index.
- */
- virtual TQString itemText( const KABC::Addressee &addresse, uint index ) const = 0;
-
- /**
- Returns the icon that's used for the item specified by index.
- */
- virtual TQPixmap itemIcon( const KABC::Addressee &addresse, uint index ) const = 0;
-
- /**
- Returns whether the item specified by index is enabled.
- */
- virtual bool itemEnabled( const KABC::Addressee &addresse, uint index ) const = 0;
-
- /**
- Returns whether the item specified by index matches the passed pattern.
- */
- virtual bool itemMatches( const KABC::Addressee &addresse, uint index, const TQString &pattern ) const = 0;
-
- /**
- Returns whether the item specified by index equals the passed pattern.
- */
- virtual bool itemEquals( const KABC::Addressee &addresse, uint index, const TQString &pattern ) const = 0;
-
- /**
- Returns the text that's used for the given distribution list.
- */
- virtual TQString distributionListText( const KABC::DistributionList *distributionList ) const = 0;
-
- /**
- Returns the icon that's used for the given distribution list.
- */
- virtual TQPixmap distributionListIcon( const KABC::DistributionList *distributionList ) const = 0;
-
- /**
- Returns whether the given distribution list is enabled.
- */
- virtual bool distributionListEnabled( const KABC::DistributionList *distributionList ) const = 0;
-
- /**
- Returns whether the given distribution list matches the passed pattern.
- */
- virtual bool distributionListMatches( const KABC::DistributionList *distributionList,
- const TQString &pattern ) const = 0;
-
- /**
- Returns the number of additional address books.
- */
- virtual uint addressBookCount() const = 0;
-
- /**
- Returns the title for an additional address book.
- */
- virtual TQString addressBookTitle( uint index ) const = 0;
-
- /**
- Returns the content for an additional address book.
- */
- virtual KABC::Addressee::List addressBookContent( uint index ) const = 0;
-
- protected:
- AddresseeSelector* selector() { return mSelector; }
-
- private:
- virtual void addSelectedAddressees( uint fieldIndex, const KABC::Addressee&, uint itemIndex ) = 0;
- virtual void addSelectedDistributionList( uint fieldIndex, const KABC::DistributionList* ) = 0;
-
- void setSelector( AddresseeSelector *selector ) { mSelector = selector; }
-
- AddresseeSelector *mSelector;
-};
-
-/**
- Internal helper class
- */
-class SelectionItem
-{
- public:
- typedef TQValueList<SelectionItem> List;
-
- SelectionItem( const KABC::Addressee &addressee, uint index );
- SelectionItem( KABC::DistributionList *list, uint index );
- SelectionItem();
-
- void addToField( int index );
- void removeFromField( int index );
- bool isInField( int index );
-
- KABC::Addressee addressee() const;
- KABC::DistributionList* distributionList() const;
- uint index() const;
-
- private:
- KABC::Addressee mAddressee;
- KABC::DistributionList *mDistributionList;
- uint mIndex;
- TQBitArray mField;
-};
-
-class KDE_EXPORT AddresseeSelector : public TQWidget
-{
- Q_OBJECT
- TQ_OBJECT
-
- public:
- AddresseeSelector( Selection *selection,
- TQWidget *parent, const char *name = 0 );
- ~AddresseeSelector();
-
- /**
- Writes back the selected items to the selection.
- */
- void finish();
-
- void setItemSelected( uint fieldIndex, const KABC::Addressee&, uint itemIndex );
- void setItemSelected( uint fieldIndex, const KABC::Addressee&,
- uint itemIndex, const TQString& );
-
- private slots:
- void move( int index );
- void remove( int index );
-
- void updateAddresseeView();
- void reloadAddressBook();
-
- private:
- void init();
- void initGUI();
-
- void updateSelectionView( int index );
- void updateSelectionViews();
-
- Selection *mSelection;
-
- KComboBox *mAddressBookCombo;
- KLineEdit *mAddresseeFilter;
- KListView *mAddresseeView;
- SelectionItem::List mSelectionItems;
-
- TQValueList<KListView*> mSelectionViews;
- TQSignalMapper *mMoveMapper;
- TQSignalMapper *mRemoveMapper;
-
- KABC::DistributionListManager *mManager;
-
- class AddressBookManager;
- AddressBookManager *mAddressBookManager;
-};
-
-class KDE_EXPORT AddresseeSelectorDialog : public KDialogBase
-{
- Q_OBJECT
- TQ_OBJECT
-
- public:
- AddresseeSelectorDialog( Selection *selection,
- TQWidget *parent = 0, const char *name = 0 );
-
- protected slots:
- void accept();
-
- private:
- AddresseeSelector *mSelector;
-};
-
-}
-
-#endif