kio Library API Documentation

kdirselectdialog.h

00001 /* 00002 Copyright (C) 2001 Michael Jarrett <michaelj@corel.com> 00003 Copyright (C) 2001 Carsten Pfeiffer <pfeiffer@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 License 00015 along with this library; see the file COPYING.LIB. If not, write to 00016 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 00017 Boston, MA 02111-1307, USA. 00018 */ 00019 00020 #ifndef KDIRSELECTDIALOG_H 00021 #define KDIRSELECTDIALOG_H 00022 00023 #include <kdialogbase.h> 00024 #include <kurl.h> 00025 00026 class QPopupMenu; 00027 class QVBoxLayout; 00028 class KConfig; 00029 class KFileTreeBranch; 00030 class KFileTreeView; 00031 class KFileTreeViewItem; 00032 class KToggleAction; 00033 00039 class KDirSelectDialog : public KDialogBase 00040 { 00041 Q_OBJECT 00042 00043 public: 00052 KDirSelectDialog(const QString& startDir = QString::null, 00053 bool localOnly = false, 00054 QWidget *parent = 0L, 00055 const char *name = 0, bool modal = false); 00056 00059 ~KDirSelectDialog(); 00060 00065 KURL url() const; 00066 00067 KFileTreeView * view() const { return m_treeView; } 00068 00069 bool localOnly() const { return m_localOnly; } 00070 00079 static KURL selectDirectory( const QString& startDir = QString::null, 00080 bool localOnly = false, QWidget *parent = 0L, 00081 const QString& caption = QString::null); 00082 00086 QString startDir() const { return m_startDir; } 00087 00088 public slots: 00089 void setCurrentURL( const KURL& url ); 00090 00091 protected: 00092 virtual void accept(); 00093 00094 // Layouts protected so that subclassing is easy 00095 QVBoxLayout *m_mainLayout; 00096 QString m_startDir; 00097 00098 private slots: 00099 void slotCurrentChanged(); 00100 void slotURLActivated( const QString& ); 00101 void slotNextDirToList( KFileTreeViewItem *dirItem ); 00102 void slotComboTextChanged( const QString& text ); 00103 void slotContextMenu( KListView *, QListViewItem *, const QPoint & ); 00104 void slotShowHiddenFoldersToggled(); 00105 00106 private: 00107 void readConfig( KConfig *config, const QString& group ); 00108 void saveConfig( KConfig *config, const QString& group ); 00109 void openNextDir( KFileTreeViewItem *parent ); 00110 KFileTreeBranch * createBranch( const KURL& url ); 00111 00112 KFileTreeView *m_treeView; 00113 QPopupMenu *m_contextMenu; 00114 KToggleAction *m_showHiddenFolders; 00115 bool m_localOnly; 00116 00117 protected: 00118 virtual void virtual_hook( int id, void* data ); 00119 private: 00120 class KDirSelectDialogPrivate; 00121 KDirSelectDialogPrivate *d; 00122 }; 00123 00124 #endif
KDE Logo
This file is part of the documentation for kio Library Version 3.3.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Sep 29 09:43:51 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003