-rw-r--r-- | libopie/TODO | 5 | ||||
-rw-r--r-- | libopie/ofileselector.h | 55 |
2 files changed, 45 insertions, 15 deletions
diff --git a/libopie/TODO b/libopie/TODO index 98baf72..22d8088 100644 --- a/libopie/TODO +++ b/libopie/TODO @@ -1,13 +1,18 @@ - xmltree done - tododb - set Alarms - OFileSelector - DocLnk when not in Document Mode ( and vice versa ) - MultipleDocuments - Move OFileSelectorItem to it's own files - new Dirs created inside the listview + - implemenent the compability functions + - implement close and new icons + - have a persistent QWidgetStack so we can add plugins + - mode switching + - better Layout handling - Clickable labels? Harlekin you wanted them in the libs?
\ No newline at end of file diff --git a/libopie/ofileselector.h b/libopie/ofileselector.h index 8173d76..5c38ac4 100644 --- a/libopie/ofileselector.h +++ b/libopie/ofileselector.h @@ -41,68 +41,90 @@ #include <qmap.h> #include <qvaluelist.h> #include <qpe/applnk.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 QFileInfo; // class OFileSelector : public QWidget { Q_OBJECT public: enum Mode {OPEN=1, SAVE=2, FILESELECTOR=4, DIR=8 }; - enum Selector{NORMAL=1, EXTENDED = 2, EXTENDED_ALL =4 }; + enum Selector{NORMAL=0, EXTENDED = 1, EXTENDED_ALL =2 }; 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() ); + + OFileSelector(QWidget *wid, int mode, int selector, + const QString &dirName, + const QString &fileName = QString::null, + const QStringList &mimetypes = QStringList() ); + + + OFileSelector(const QString &mimeFilter, QWidget *parent, + const char *name, bool newVisible = TRUE, + bool closeVisible = FALSE ) { }; + ~OFileSelector() {}; + + // currently only for the FILESELECTOR Mode + void setNewVisible( bool /*b*/ ) { }; + void setCloseVisible(bool /*b*/ ) { }; + + // end file selector mode + // deprecated + void reread() { reparse(); }; + // make sure not to leak please + const DocLnk *selected(); + // end deprecated + bool isToolbarVisible() const { return m_shTool; }; bool isPermissionBarVisible() const { return m_shPerm; }; bool isLineEditVisible()const { return m_shLne; }; bool isChooserVisible( )const { return m_shChooser; }; bool isYesCancelVisible()const { return m_shYesNo; }; void setYesCancelVisible( bool show ); void setToolbarVisible( bool show ); void setPermissionBarVisible( bool show ); void setLineEditVisible(bool show) ; void setChooserVisible( bool chooser ); QCheckBox* permissionCheckbox(); bool setPermission() const; void setPermissionChecked( bool check ); void setMode( int ); bool showDirs()const { return m_dir; } void setShowDirs(bool ); const QListView* listView() { return m_View; }; bool isCaseSensetive()const { return m_case; } void setCaseSensetive(bool caSe ); bool showFiles()const { return m_files; }; void setShowFiles(bool ); bool cd(const QString &path ); int mode()const { return m_mode; }; int selector()const { return m_selector; }; @@ -151,84 +173,87 @@ class OFileSelector : public QWidget { void updateMimes(); protected: private: int m_mode, m_selector; QComboBox *m_location, *m_mimeCheck, *m_viewCheck; QPushButton *m_homeButton, *m_docButton, *m_hideButton, *m_ok, *m_cancel; QPushButton *m_reread, *m_up; QListView *m_View; QCheckBox *m_checkPerm; QWidget *m_pseudo; QVBoxLayout *m_pseudoLayout; QString m_currentDir; QString m_name; QStringList m_mimetypes, requestedMimeTypesList; FileSelector *m_select; QWidgetStack *m_stack; QVBoxLayout *m_lay; QGridLayout *m_Oselector; QHBoxLayout *m_boxToolbar; QHBoxLayout *m_boxOk; QHBoxLayout *m_boxName; QHBoxLayout *m_boxView; QPopupMenu *m_custom; 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; - bool m_case:1; - bool m_dir:1; - bool m_files:1; - bool m_showPopup:1; + + bool m_shClose : 1; + bool m_shNew : 1; + 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; + bool m_case : 1; + bool m_dir : 1; + bool m_files : 1; + bool m_showPopup : 1; // implementation todo virtual void addFile(const QString &mime, QFileInfo *info, bool symlink = FALSE ); virtual void addDir( const QString &mime, QFileInfo *info , bool symlink = FALSE ); virtual void addSymlink(const QString &, QFileInfo *, bool = FALSE ){}; void delItems(); void initializeName(); void initializeYes(); void initializeChooser(); void initializeListView(); void initPics(); bool compliesMime(const QString &path, const QString &mime); class OFileSelectorPrivate; OFileSelectorPrivate *d; static QMap<QString,QPixmap> *m_pixmaps; private slots: void slotFileSelected(const QString & ); // not really meant to be a slot void slotFileBridgeSelected( const DocLnk & ); virtual void slotSelectionChanged(); virtual void slotCurrentChanged(QListViewItem* ); virtual void slotClicked( int, QListViewItem *item, const QPoint &, int); virtual void slotRightButton(int, QListViewItem *, const QPoint &, int ); virtual void slotContextMenu( QListViewItem *item); - // listview crap see above - // PopupMenu crap + // listview above + // popup below virtual void slotChangedDir(); virtual void slotOpen(); virtual void slotRescan(); virtual void slotRename(); virtual void slotDelete(); virtual void cdUP(); virtual void slotHome(); virtual void slotDoc(); virtual void slotNavigate( ); }; #endif |