From a41eba9e8404fb6321097e86736e23fbce4ead7a Mon Sep 17 00:00:00 2001 From: zecke Date: Sat, 07 Feb 2004 09:58:31 +0000 Subject: Forward port the recent API docu of the FileSelector --- diff --git a/libopie2/opieui/fileselector/ofileselector.cpp b/libopie2/opieui/fileselector/ofileselector.cpp index 71d765c..600daff 100644 --- a/libopie2/opieui/fileselector/ofileselector.cpp +++ b/libopie2/opieui/fileselector/ofileselector.cpp @@ -811,6 +811,35 @@ void OFileViewFileSystem::activate( const QString& str) } /* Selector */ +/** + * @short new and complete c'tor + * + * Create a OFileSelector to let the user select a file. It can + * either be used to open a file, select a save name in a dir or + * as a dropin for the FileSelector. + * + *
+ *  QMap mimeTypes;
+ *  QStringList types;
+ *  types << "text@slash* ";
+ *  types << "audio@slash*";
+ *  mimeTypes.insert( tr("Audio and Text"), types );
+ *  mimeTypes.insert( tr("All"), "*@slash*);
+ *
+ *  now you could create your fileselector
+ * 
+ * + * + * @param parent the parent of this widget + * @param mode The mode from the enum Mode (Open,Save,FILESELECTOR) + * @param sel The selector to be used + * @param dirName The name of the dir to start int + * @param fileName The fileName placed in the fileselector lineedit + * @param mimetypes The MimeType map of used mimetypes + * @param showNew Show a New Button. Most likely to be used in the FileSelector view. + * @param showClose Show a Close Button. Most likely to be used in FileSelector view. + * + */ OFileSelector::OFileSelector( QWidget* parent, int mode, int sel, const QString& dirName, const QString& fileName, const MimeTypes& mimetypes, @@ -852,6 +881,10 @@ OFileSelector::OFileSelector( QWidget* parent, int mode, int sel, } + +/** + * This a convience c'tor to just substitute the use of FileSelector + */ OFileSelector::OFileSelector( const QString& mimeFilter, QWidget* parent, const char* name, bool showNew, bool showClose ) : QWidget( parent, name ) @@ -958,41 +991,73 @@ void OFileSelector::initViews() m_views.insert( QObject::tr("All Files"), in ); } +/** + * d'tor + */ OFileSelector::~OFileSelector() { } + + +/** + * Convience function for the fileselector + * make sure to delete the DocLnk + * + * @see DocLnk + * @todo remove in ODP + */ const DocLnk* OFileSelector::selected() { DocLnk* lnk = new DocLnk( currentView()->selectedDocument() ); return lnk; } +/** + * + * @return the name of the selected file + */ QString OFileSelector::selectedName()const { return currentView()->selectedName(); } + +/** + * @return the selected path + */ QString OFileSelector::selectedPath()const { return currentView()->selectedPath(); } +/** + * @return the directory name + */ QString OFileSelector::directory()const { return currentView()->directory(); } +/** + * @return a DocLnk for the selected document + */ DocLnk OFileSelector::selectedDocument()const { return currentView()->selectedDocument(); } +/** + * @return the number of items for the current view + */ int OFileSelector::fileCount()const { return currentView()->fileCount(); } +/** + * @return reparse the file content + */ void OFileSelector::reread() { return currentView()->reread(); @@ -1018,11 +1083,18 @@ MimeTypes OFileSelector::mimeTypes()const return m_mimeType; } +/** + * @return the Mode of the OFileSelector + */ int OFileSelector::mode()const { return m_mode; } + +/** + * @return the Selector of the OFileSelector + */ int OFileSelector::selector()const { return m_selector; diff --git a/libopie2/opieui/fileselector/ofileselector.h b/libopie2/opieui/fileselector/ofileselector.h index 7abe8b7..7fa657b 100644 --- a/libopie2/opieui/fileselector/ofileselector.h +++ b/libopie2/opieui/fileselector/ofileselector.h @@ -58,6 +58,18 @@ namespace Opie class OFileViewInterface; class OFileViewFileListView; + +/** + * @short a dropin replacement for the FileSelector + * + * This class is first used insert the OFileDialog. + * It supports multiple view and mimetype filtering for now. + * + * @see OFileDialog + * @see FileSelector + * @author zecke + * @version 0.1 + */ class OFileSelector : public QWidget { Q_OBJECT @@ -65,8 +77,20 @@ class OFileSelector : public QWidget friend class Opie::OFileViewFileListView; public: + /** + * The Mode of the Fileselector + * Open = Open A File + * Save = Save a File + * FILESELECTOR = As A GUI in a screen to select a file + */ enum Mode { Open=1, Save=2, FileSelector=4, OPEN=1, SAVE=2, FILESELECTOR=4 }; // enum OldMode { OPEN=1, SAVE=2, FILESELECTOR = 4 }; + /** + * Normal = The old FileSelector + * Extended = Dir View + * ExtendedAll = Dir View with all hidden files + * Default = What the vendor considers best + */ enum Selector { Normal = 0, Extended=1, ExtendedAll =2, Default=3, NORMAL=0,EXTENDED=1, EXTENDED_ALL =2, DEFAULT=3 }; // enum OldSelector { NORMAL = 0, EXTENDED =1, EXTENDED_ALL = 2}; @@ -94,17 +118,51 @@ public: int mode()const; int selector()const; - + /** + * Set the Icon visible + * @param b Show or Hide the New Button + */ void setNewVisible( bool b ); + + /** + * Set the Icon visible + */ void setCloseVisible( bool b ); + + /** + * Set the Name Line visible + */ void setNameVisible( bool b ); signals: + /** + * dirSelected is emitted whenever changed into a different dir + */ void dirSelected( const QString& ); + + /** + * fileSelected is emitted when a file is selected + * it uses a DocLnk as parameter + */ void fileSelected( const DocLnk& ); + + /** + * fileSelected is emitted when a file is selected + * the complete path is a parameter + */ void fileSelected( const QString& ); + + /** + * Create a new File with a DocLnk + */ void newSelected( const DocLnk& ); + void closeMe(); + + /** + * Ok is emitted on a Qt::Key_Return or Q::Key_Enter + * in the line edit + */ void ok(); void cancel(); -- cgit v0.9.0.2