libkdepim Library API Documentation

completionordereditor.h

00001 
00031 #ifndef COMPLETIONORDEREDITOR_H
00032 #define COMPLETIONORDEREDITOR_H
00033 
00034 #include <kdialogbase.h>
00035 #include <kconfig.h>
00036 
00037 class QToolButton;
00038 class KListView;
00039 namespace KPIM {
00040 
00041 class LdapSearch;
00042 class CompletionOrderEditor;
00043 
00044 // Base class for items in the list
00045 class CompletionItem
00046 {
00047 public:
00048   virtual ~CompletionItem() {}
00049   virtual QString label() const = 0;
00050   virtual int completionWeight() const = 0;
00051   virtual void setCompletionWeight( int weight ) = 0;
00052   virtual void save( CompletionOrderEditor* ) = 0;
00053 };
00054 
00055 
00056 // I don't like QPtrList much, but it has compareItems, which QValueList doesn't
00057 class CompletionItemList : public QPtrList<CompletionItem>
00058 {
00059 public:
00060   CompletionItemList() {}
00061   virtual int compareItems( QPtrCollection::Item s1, QPtrCollection::Item s2 );
00062 };
00063 
00064 class CompletionOrderEditor : public KDialogBase {
00065   Q_OBJECT
00066 
00067 public:
00068   CompletionOrderEditor( KPIM::LdapSearch* ldapSearch, QWidget* parent, const char* name = 0 );
00069   ~CompletionOrderEditor();
00070 
00071   KConfig* configFile() { return &mConfig; }
00072 
00073 private slots:
00074   void slotSelectionChanged( QListViewItem* );
00075   void slotMoveUp();
00076   void slotMoveDown();
00077   virtual void slotOk();
00078 
00079 private:
00080   KConfig mConfig;
00081   CompletionItemList mItems;
00082   KListView* mListView;
00083   QToolButton* mUpButton;
00084   QToolButton* mDownButton;
00085 
00086   bool mDirty;
00087 };
00088 
00089 } // namespace
00090 
00091 #endif /* COMPLETIONORDEREDITOR_H */
00092 
KDE Logo
This file is part of the documentation for libkdepim Library Version 3.3.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Mar 23 22:40:51 2005 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2003