-rw-r--r-- | libopie/ofileselector.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libopie/ofileselector.h b/libopie/ofileselector.h index 757a960..a90219f 100644 --- a/libopie/ofileselector.h +++ b/libopie/ofileselector.h @@ -37,96 +37,102 @@ #include <qwidget.h> #include <qstring.h> #include <qpixmap.h> #include <qstringlist.h> #include <qlistview.h> /** This is OPIEs FileDialog Widget. You can use it * as a dropin replacement of the fileselector and * or use any of the new features. * This is also a complete FileSave and FileLoad widget * If you look for a Dialog check OFileDialog * */ class DocLnk; class QCheckBox; class QComboBox; class QPushButton; class FileSelector; class QGridLayout; class QLineEdit; class QLabel; class QWidgetStack; class QHBoxLayout; class QVBoxLayout; +class QPopupMenu; + class OFileSelectorItem : public QListViewItem { public: OFileSelectorItem(QListView *view, const QPixmap &pixmap, const QString &path, const QString &date, const QString &size, bool isDir=false ): QListViewItem(view) { setPixmap(0, pixmap ); setText(1, path ); setText(2, size ); setText(3, date ); dir = isDir; } bool isDir()const{ return dir; } QString path()const{ return text(1 ); } private: bool dir:1; }; class OFileSelector : public QWidget { Q_OBJECT public: enum Mode {OPEN=1, SAVE, FILESELECTOR }; enum Selector{NORMAL=1, EXTENDED = 2, EXTENDED_ALL =4 }; enum View { DIRS = 1, FILES = 2, TREE = 4, ICON = 8 }; OFileSelector(QWidget *wid, int mode, int selector, const QString &dirName, const QString &fileName = QString::null, const QStringList mimetypes = QStringList() ); bool showToolbar() const { return m_shTool; }; bool showPermissionBar() const { return m_shPerm; }; bool showLineEdit()const { return m_shLne; }; bool showChooser( )const { return m_shChooser; }; bool showYesCancel()const { return m_shYesNo; }; void setShowYesCancel( bool show ); void setShowToolbar( bool show ); void setShowPermissionBar( bool show ); void setShowLineEdit(bool show) ; void setShowChooser( bool chooser ); QCheckBox* permissionCheckbox(); bool setPermission() const; void setPermissionChecked( bool check ); void setMode( int ); + void setShowDirs(bool dir ) { }; + bool showDirs() {bool turn; return turn; } int mode()const { return m_mode; }; int selector()const { return m_selector; }; void setSelector( int ); QString selectedName( ); + void setPopupMenu( const QPopupMenu * ); + const DocLnk* selectedDocument()const; void updateLay(); void reparse(); // re reads the dir QString directory(); int fileCount(); signals: void fileSelected( const DocLnk & ); void fileSelected( const QString & ); void closeMe(); void ok(); void cancel(); protected slots: void slotOk(); void slotCancel(); void slotViewCheck(const QString & ); void slotMimeCheck(const QString & ); protected: void init(); void updateMimes(); int m_mode, m_selector; QComboBox *m_location, *m_mimeCheck, *m_viewCheck; @@ -141,36 +147,42 @@ class OFileSelector : public QWidget { FileSelector *m_select; QWidgetStack *m_stack; QVBoxLayout *m_lay; QGridLayout *m_Oselector; QHBoxLayout *m_boxToolbar; QHBoxLayout *m_boxOk; QHBoxLayout *m_boxName; QHBoxLayout *m_boxView; QLineEdit *m_edit; QLabel *m_fnLabel; bool m_shTool:1; bool m_shPerm:1; bool m_shLne:1; bool m_shChooser:1; bool m_shYesNo:1; bool m_boCheckPerm:1; bool m_autoMime:1; protected: private: + // implementation todo + virtual void addFile(const QString &path, const QString &name, bool symlink = FALSE ) {}; + virtual void addDir( const QString &path, const QString &dir , bool symlink = FALSE ){}; + virtual void addSymlink(const QString &path, const QString &name, bool broken = FALSE ){}; void delItems(); void initializeName(); void initializeYes(); void initializeChooser(); + void initializeListView(); + bool compliesMime(const QString &path, const QString &mime); class OFileSelectorPrivate; OFileSelectorPrivate *d; }; #endif |