passdlg.h

00001 /* This file is part of the KDE libraries
00002    Copyright (C) 2000 David Faure <faure@kde.org>
00003    Copyright (C) 2000 Dawit Alemayehu <adawit@kde.org>
00004 
00005    This library is free software; you can redistribute it and/or
00006    modify it under the terms of the GNU Library General Public
00007    License version 2 as published by the Free Software Foundation.
00008 
00009    This library is distributed in the hope that it will be useful,
00010    but WITHOUT ANY WARRANTY; without even the implied warranty of
00011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012    Library General Public License for more details.
00013 
00014    You should have received a copy of the GNU Library General Public
00015    License along with this library; see the file COPYING.LIB.  If
00016    not, write to the Free Software Foundation, Inc., 51 Franklin Street,
00017    Fifth Floor, Boston, MA 02110-1301, USA.
00018 */
00019 
00020 #ifndef __kio_pass_dlg_h__
00021 #define __kio_pass_dlg_h__
00022 
00023 #include <kdialogbase.h>
00024 
00025 class QGridLayout;
00026 
00027 namespace KIO {
00028 
00036 class KIO_EXPORT PasswordDialog : public KDialogBase
00037 {
00038     Q_OBJECT
00039 
00040 public:
00051     PasswordDialog( const QString& prompt, const QString& user,
00052                     bool enableKeep = false, bool modal=true,
00053                     QWidget* parent=0, const char* name=0 );
00054 
00058     ~PasswordDialog();
00059 
00064     void setPrompt( const QString& prompt );
00065 
00076     void addCommentLine( const QString& label, const QString comment );
00077 
00082     QString password() const;
00083 
00088     QString username() const;
00089 
00095     bool keepPassword() const;
00096 
00103     void setKeepPassword( bool b );
00104 
00111     void setUserReadOnly( bool readOnly );
00112 
00116     KDE_DEPRECATED void setEnableUserField( bool enable, bool=false ) {
00117     setUserReadOnly( !enable );
00118     };
00119 
00125     void setPassword( const QString& password );
00126 
00134     void setKnownLogins( const QMap<QString, QString>& knownLogins );
00135 
00152     static int getNameAndPassword( QString& user, QString& pass, bool* keep,
00153                                    const QString& prompt = QString::null,
00154                                    bool readOnly = false,
00155                                    const QString& caption = QString::null,
00156                                    const QString& comment = QString::null,
00157                                    const QString& label = QString::null );
00158 
00159 private slots:
00160     void slotKeep( bool );
00161     void slotActivated( const QString& userName );
00162 
00163 private:
00164     void init( const QString&, const QString&, bool );
00165 
00166 protected:
00167     virtual void virtual_hook( int id, void* data );
00168 private:
00169     struct PasswordDialogPrivate;
00170     PasswordDialogPrivate* d;
00171 };
00172 
00173 }
00174 
00175 #endif
KDE Home | KDE Accessibility Home | Description of Access Keys