00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __KDMUSERS_H__
00021 #define __KDMUSERS_H__
00022
00023 #include <tqwidget.h>
00024 #include <tqptrlist.h>
00025 #include <tqstring.h>
00026 #include <tqimage.h>
00027 #include <tqbuttongroup.h>
00028 #include <tqradiobutton.h>
00029 #include <tqcheckbox.h>
00030 #include <tqwidgetstack.h>
00031
00032 #include <klineedit.h>
00033 #include <klistview.h>
00034 #include <kcombobox.h>
00035 #include <kurl.h>
00036
00037 #include <pwd.h>
00038
00039
00040 class KDMUsersWidget : public QWidget
00041 {
00042 Q_OBJECT
00043
00044 public:
00045 KDMUsersWidget( TQWidget *parent = 0, const char *name = 0 );
00046
00047 void load();
00048 void save();
00049 void defaults();
00050 void makeReadOnly();
00051
00052 bool eventFilter( TQObject *o, TQEvent *e );
00053
00054 public slots:
00055 void slotClearUsers();
00056 void slotAddUsers( const TQMap<TQString,int> & );
00057 void slotDelUsers( const TQMap<TQString,int> & );
00058
00059 signals:
00060 void changed( bool state );
00061 void setMinMaxUID( int, int );
00062
00063 private slots:
00064 void slotMinMaxChanged();
00065 void slotShowOpts();
00066 void slotUpdateOptIn( TQListViewItem *item );
00067 void slotUpdateOptOut( TQListViewItem *item );
00068 void slotUserSelected();
00069 void slotUnsetUserPix();
00070 void slotFaceOpts();
00071 void slotUserButtonClicked();
00072 void slotChanged();
00073
00074 private:
00075 void updateOptList( TQListViewItem *item, TQStringList &list );
00076 void userButtonDropEvent( TQDropEvent *e );
00077 void changeUserPix( const TQString & );
00078
00079 QGroupBox *minGroup;
00080 QLineEdit *leminuid, *lemaxuid;
00081
00082 QButtonGroup *usrGroup;
00083 QCheckBox *cbshowlist, *cbcomplete, *cbinverted, *cbusrsrt;
00084
00085 QLabel *s_label;
00086 QWidgetStack *wstack;
00087 KListView *optoutlv, *optinlv;
00088
00089 QButtonGroup *faceGroup;
00090 QRadioButton *rbadmonly, *rbprefadm, *rbprefusr, *rbusronly;
00091
00092 KComboBox *usercombo;
00093 QPushButton *userbutton;
00094 QPushButton *rstuserbutton;
00095
00096 QString m_userPixDir;
00097 QString m_defaultText;
00098 QStringList hiddenUsers, selectedUsers;
00099 QString defminuid, defmaxuid;
00100
00101 bool m_notFirst;
00102 };
00103
00104 #endif
00105
00106