32 #ifndef FOLDERDIAACL_H
33 #define FOLDERDIAACL_H
35 #include "kmfolderdia.h"
37 #include "kmfoldertype.h"
45 namespace KIO { class Job; }
49 enum IMAPUserIdFormat { FullEmail, UserName };
52 typedef TQValueVector<KMail::ACLListEntry> ACLList;
54 class ImapAccountBase;
65 ACLEntryDialog( IMAPUserIdFormat userIdFormat, const TQString& caption, TQWidget* parent, const char* name = 0 );
67 void setValues( const TQString& userId, unsigned int permissions );
69 TQString userId() const;
70 TQStringList userIds() const;
71 unsigned int permissions() const;
74 void slotSelectAddresses();
78 TQVButtonGroup* mButtonGroup;
79 KLineEdit* mUserIdLineEdit;
80 IMAPUserIdFormat mUserIdFormat;
97 virtual AccepStatus accept();
99 static bool supports( KMFolder* refFolder );
103 void slotConnectionResult( int, const TQString& );
104 void slotReceivedACL( KMFolder*, KIO::Job*, const KMail::ACLList& );
105 void slotMultiSetACLResult(KIO::Job *);
106 void slotACLChanged( const TQString&, int );
107 void slotReceivedUserRights( KMFolder* folder );
108 void slotDirectoryListingFinished(KMFolderImap*);
111 void slotEditACL(TQListViewItem*);
112 void slotSelectionChanged(TQListViewItem*);
117 void slotRemoveACL();
119 void slotChanged( bool b );
122 KURL imapURL() const;
123 void initializeWithValuesFromFolder( KMFolder* folder );
125 void loadListView( const KMail::ACLList& aclList );
126 void loadFinished( const KMail::ACLList& aclList );
127 void addACLs( const TQStringList& userIds, unsigned int permissions );
134 KListView* mListView;
135 KPushButton* mAddACL;
136 KPushButton* mEditACL;
137 KPushButton* mRemoveACL;
139 TQStringList mRemovedACLs;
141 ImapAccountBase* mImapAccount;
144 KMFolderType mFolderType;
145 ACLList mInitialACLList;
147 IMAPUserIdFormat mUserIdFormat;
150 TQWidgetStack* mStack;
|