kio
kurlrequester.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef KURLREQUESTER_H
00021 #define KURLREQUESTER_H
00022
00023 #include <qhbox.h>
00024
00025 #include <keditlistbox.h>
00026 #include <kfile.h>
00027 #include <kpushbutton.h>
00028 #include <kurl.h>
00029
00030 class KComboBox;
00031 class KFileDialog;
00032 class KLineEdit;
00033 class KURLCompletion;
00034 class KURLDragPushButton;
00035
00036 class QString;
00037 class QTimer;
00038
00056 class KIO_EXPORT KURLRequester : public QHBox
00057 {
00058 Q_OBJECT
00059 Q_PROPERTY( QString url READ url WRITE setURL )
00060 Q_PROPERTY( bool showLocalProtocol READ showLocalProtocol WRITE setShowLocalProtocol )
00061 Q_PROPERTY( QString filter READ filter WRITE setFilter )
00062 Q_PROPERTY( uint mode READ mode WRITE setMode )
00063
00064 public:
00068 KURLRequester( QWidget *parent=0, const char *name=0 );
00069
00074 KURLRequester( const QString& url, QWidget *parent=0, const char *name=0 );
00075
00082 KURLRequester( QWidget *editWidget, QWidget *parent, const char *name=0 );
00086 ~KURLRequester();
00087
00094 QString url() const;
00095
00102 void setShowLocalProtocol( bool b );
00103
00110 void setMode( uint m );
00111
00117 uint mode() const;
00118
00119
00124 void setFilter( const QString& filter );
00125
00131 QString filter() const;
00132
00138 bool showLocalProtocol() const { return myShowLocalProt; }
00139
00140
00149 virtual KFileDialog * fileDialog() const;
00150
00158 KLineEdit * lineEdit() const;
00159
00164 KComboBox * comboBox() const;
00165
00170 KPushButton * button() const;
00171
00175 KURLCompletion *completionObject() const { return myCompletion; }
00176
00188 KEditListBox::CustomEditor customEditor();
00189
00190 public slots:
00197 void setURL( const QString& url );
00198
00204 void setKURL( const KURL& url );
00205
00210 virtual void setCaption( const QString& caption );
00211
00215 void clear();
00216
00217 signals:
00218
00224 void textChanged( const QString& );
00225
00229 void returnPressed();
00230
00235 void returnPressed( const QString& );
00236
00248 void openFileDialog( KURLRequester * );
00249
00255 void urlSelected( const QString& );
00256
00257 protected:
00258 void init();
00259
00260 KURLCompletion * myCompletion;
00261
00262
00263 private:
00264 KURLDragPushButton * myButton;
00265 bool myShowLocalProt;
00266 mutable KFileDialog * myFileDialog;
00267
00268
00269 protected slots:
00274 void slotOpenDialog();
00275
00276 private slots:
00277 void slotUpdateURL();
00278
00279 protected:
00280 virtual void virtual_hook( int id, void* data );
00281 bool eventFilter( QObject *obj, QEvent *ev );
00282 private:
00283 class KURLRequesterPrivate;
00284 KURLRequesterPrivate *d;
00285 };
00286
00290 class KIO_EXPORT KURLComboRequester : public KURLRequester
00291 {
00292 Q_OBJECT
00293 public:
00297 KURLComboRequester( QWidget *parent=0, const char *name=0 );
00298 };
00299
00300
00301 #endif // KURLREQUESTER_H