summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/ofileselector.cc49
-rw-r--r--libopie/ofileselector.h49
2 files changed, 49 insertions, 49 deletions
diff --git a/libopie/ofileselector.cc b/libopie/ofileselector.cc
index 3a11032..0a6e595 100644
--- a/libopie/ofileselector.cc
+++ b/libopie/ofileselector.cc
@@ -28,97 +28,144 @@
28 28
29#include <qnamespace.h> 29#include <qnamespace.h>
30#include <qpushbutton.h> 30#include <qpushbutton.h>
31#include <qcombobox.h> 31#include <qcombobox.h>
32#include <qhbox.h> 32#include <qhbox.h>
33#include <qvbox.h> 33#include <qvbox.h>
34#include <qlayout.h> 34#include <qlayout.h>
35#include <qwidgetstack.h> 35#include <qwidgetstack.h>
36#include <qlineedit.h> 36#include <qlineedit.h>
37#include <qcheckbox.h> 37#include <qcheckbox.h>
38#include <qlabel.h> 38#include <qlabel.h>
39#include <qheader.h> 39#include <qheader.h>
40#include <qdir.h> 40#include <qdir.h>
41#include <qpainter.h> 41#include <qpainter.h>
42#include <qaction.h> 42#include <qaction.h>
43#include <qpopupmenu.h> 43#include <qpopupmenu.h>
44#include <qcursor.h> 44#include <qcursor.h>
45#include <qstringlist.h> 45#include <qstringlist.h>
46#include <qmessagebox.h> 46#include <qmessagebox.h>
47 47
48#include <qpe/qpeapplication.h> 48#include <qpe/qpeapplication.h>
49#include <qpe/fileselector.h> 49#include <qpe/fileselector.h>
50#include <qpe/applnk.h> 50#include <qpe/applnk.h>
51#include <qpe/global.h> 51#include <qpe/global.h>
52#include <qpe/mimetype.h> 52#include <qpe/mimetype.h>
53#include <qpe/resource.h> 53#include <qpe/resource.h>
54#include <qpe/storage.h> 54#include <qpe/storage.h>
55 55
56#include <unistd.h> 56#include <unistd.h>
57#include <stdlib.h> 57#include <stdlib.h>
58#include <sys/stat.h> 58#include <sys/stat.h>
59 59
60#include "ofileselector.h" 60#include "ofileselector.h"
61 61
62QMap<QString,QPixmap> *OFileSelector::m_pixmaps = 0; 62QMap<QString,QPixmap> *OFileSelector::m_pixmaps = 0;
63 63
64namespace { 64namespace {
65 65
66 int indexByString( const QComboBox *box, const QString &str ){ 66 int indexByString( const QComboBox *box, const QString &str ){
67 int index= -1; 67 int index= -1;
68 for(int i= 0; i < box->count(); i++ ){ 68 for(int i= 0; i < box->count(); i++ ){
69 if( str == box->text(i ) ){ 69 if( str == box->text(i ) ){
70 index= i; 70 index= i;
71 break; 71 break;
72 } 72 }
73 } 73 }
74 return index; 74 return index;
75 } 75 }
76 76 class OFileSelectorItem : public QListViewItem {
77 public:
78 OFileSelectorItem(QListView *view, const QPixmap &pixmap, const QString &path,
79 const QString &date, const QString &size, const QString &mDir,
80 bool isLocked=false, bool isDir=false ): QListViewItem(view) {
81 setPixmap(0, pixmap );
82 setText(1, path );
83 setText(2, size );
84 setText(3, date );
85 //setText(4, mDir );
86 m_dir = mDir;
87 dir = isDir;
88 mLocked = isLocked;
89 }
90 bool isLocked() const{
91 return mLocked;
92 }
93 QString directory()const{
94 return m_dir;
95 }
96 bool isDir()const{
97 return dir;
98 }
99 QString path()const{
100 return text(1 );
101 }
102 QString key(int id, bool )const {
103 QString ke;
104 if( id == 0 || id == 1 ){ // name
105 if( dir ){
106 ke.append("0" );
107 ke.append( text(1) );
108 }else{
109 ke.append("1" );
110 ke.append( text(1) );
111 }
112 }else if( id == 2 ){ // size
113 return text(2);
114 }else if( id == 3 ){ // date
115 return text(3);
116 }
117 return ke;
118 };
119 private:
120 bool mLocked:1;
121 bool dir:1;
122 QString m_dir;
123 };
77}; 124};
78 125
79 126
80OFileSelector::OFileSelector(QWidget *wid, int mode, int selector, const QString &dirName, 127OFileSelector::OFileSelector(QWidget *wid, int mode, int selector, const QString &dirName,
81 const QString &fileName, const QStringList &mimetypes ) : QWidget( wid ) 128 const QString &fileName, const QStringList &mimetypes ) : QWidget( wid )
82{ 129{
83 if(wid!=0) 130 if(wid!=0)
84 resize(wid->width(),wid->height()); 131 resize(wid->width(),wid->height());
85 m_selector = selector; 132 m_selector = selector;
86 m_currentDir = dirName; 133 m_currentDir = dirName;
87 m_name = fileName; 134 m_name = fileName;
88 m_mimetypes = mimetypes; 135 m_mimetypes = mimetypes;
89 136
90 if( mimetypes.isEmpty() ) 137 if( mimetypes.isEmpty() )
91 m_autoMime = true; 138 m_autoMime = true;
92 139
93 qWarning("OFileSelector mimetypes %s", mimetypes.join(" ").latin1() ); 140 qWarning("OFileSelector mimetypes %s", mimetypes.join(" ").latin1() );
94 m_mode = mode; 141 m_mode = mode;
95 m_shTool = true; 142 m_shTool = true;
96 m_shPerm = true; 143 m_shPerm = true;
97 m_shLne = true; 144 m_shLne = true;
98 m_shChooser = true; 145 m_shChooser = true;
99 m_shYesNo = true; 146 m_shYesNo = true;
100 147
101 // for FILESELECTOR only view is interesting 148 // for FILESELECTOR only view is interesting
102 m_location = 0; 149 m_location = 0;
103 m_homeButton = 0; 150 m_homeButton = 0;
104 m_docButton = 0; 151 m_docButton = 0;
105 m_hideButton = 0; 152 m_hideButton = 0;
106 m_ok = 0; 153 m_ok = 0;
107 m_cancel = 0; 154 m_cancel = 0;
108 m_reread = 0; 155 m_reread = 0;
109 m_up = 0; 156 m_up = 0;
110 m_View = 0; 157 m_View = 0;
111 m_select = 0; 158 m_select = 0;
112 m_stack = 0; 159 m_stack = 0;
113 160
114 m_select = 0; 161 m_select = 0;
115 m_stack = 0; 162 m_stack = 0;
116 m_lay = 0; 163 m_lay = 0;
117 m_boxToolbar = 0; 164 m_boxToolbar = 0;
118 m_boxOk = 0; 165 m_boxOk = 0;
119 m_edit = 0; 166 m_edit = 0;
120 167
121 m_fnLabel = 0; 168 m_fnLabel = 0;
122 m_checkPerm = 0; 169 m_checkPerm = 0;
123 m_mimeCheck = 0; 170 m_mimeCheck = 0;
124 m_viewCheck = 0; 171 m_viewCheck = 0;
diff --git a/libopie/ofileselector.h b/libopie/ofileselector.h
index babe09f..8173d76 100644
--- a/libopie/ofileselector.h
+++ b/libopie/ofileselector.h
@@ -19,144 +19,97 @@
19    : ..    .:,     . . . without even the implied warranty of 19    : ..    .:,     . . . without even the implied warranty of
20    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A 20    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A
21  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU 21  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU
22..}^=.=       =       ; Library General Public License for more 22..}^=.=       =       ; Library General Public License for more
23++=   -.     .`     .: details. 23++=   -.     .`     .: details.
24 :     =  ...= . :.=- 24 :     =  ...= . :.=-
25 -.   .:....=;==+<; You should have received a copy of the GNU 25 -.   .:....=;==+<; You should have received a copy of the GNU
26  -_. . .   )=.  = Library General Public License along with 26  -_. . .   )=.  = Library General Public License along with
27    --        :-=` this library; see the file COPYING.LIB. 27    --        :-=` this library; see the file COPYING.LIB.
28 If not, write to the Free Software Foundation, 28 If not, write to the Free Software Foundation,
29 Inc., 59 Temple Place - Suite 330, 29 Inc., 59 Temple Place - Suite 330,
30 Boston, MA 02111-1307, USA. 30 Boston, MA 02111-1307, USA.
31 31
32*/ 32*/
33 33
34#ifndef opiefileselector_h 34#ifndef opiefileselector_h
35#define opiefileselector_h 35#define opiefileselector_h
36 36
37#include <qwidget.h> 37#include <qwidget.h>
38#include <qstring.h> 38#include <qstring.h>
39#include <qpixmap.h> 39#include <qpixmap.h>
40#include <qstringlist.h> 40#include <qstringlist.h>
41#include <qmap.h> 41#include <qmap.h>
42#include <qvaluelist.h> 42#include <qvaluelist.h>
43 43
44#include <qpe/applnk.h> 44#include <qpe/applnk.h>
45#include <qlistview.h> 45#include <qlistview.h>
46/** This is OPIEs FileDialog Widget. You can use it 46/** This is OPIEs FileDialog Widget. You can use it
47 * as a dropin replacement of the fileselector and 47 * as a dropin replacement of the fileselector and
48 * or use any of the new features. 48 * or use any of the new features.
49 * This is also a complete FileSave and FileLoad widget 49 * This is also a complete FileSave and FileLoad widget
50 * If you look for a Dialog check OFileDialog 50 * If you look for a Dialog check OFileDialog
51 * 51 *
52 */ 52 */
53class DocLnk; 53class DocLnk;
54class QCheckBox; 54class QCheckBox;
55class QComboBox; 55class QComboBox;
56class QPushButton; 56class QPushButton;
57class FileSelector; 57class FileSelector;
58class QGridLayout; 58class QGridLayout;
59class QLineEdit; 59class QLineEdit;
60class QLabel; 60class QLabel;
61class QWidgetStack; 61class QWidgetStack;
62class QHBoxLayout; 62class QHBoxLayout;
63class QVBoxLayout; 63class QVBoxLayout;
64class QPopupMenu; 64class QPopupMenu;
65class QFileInfo; 65class QFileInfo;
66// 66//
67class OFileSelectorItem : public QListViewItem { 67
68 public:
69 OFileSelectorItem(QListView *view, const QPixmap &pixmap, const QString &path,
70 const QString &date, const QString &size, const QString &mDir,
71 bool isLocked=false, bool isDir=false ): QListViewItem(view) {
72 setPixmap(0, pixmap );
73 setText(1, path );
74 setText(2, size );
75 setText(3, date );
76 //setText(4, mDir );
77 m_dir = mDir;
78 dir = isDir;
79 mLocked = isLocked;
80 }
81 bool isLocked() const{
82 return mLocked;
83 }
84 QString directory()const{
85 return m_dir;
86 }
87 bool isDir()const{
88 return dir;
89 }
90 QString path()const{
91 return text(1 );
92 }
93 QString key(int id, bool )const {
94 QString ke;
95 if( id == 0 || id == 1 ){ // name
96 if( dir ){
97 ke.append("0" );
98 ke.append( text(1) );
99 }else{
100 ke.append("1" );
101 ke.append( text(1) );
102 }
103 }else if( id == 2 ){ // size
104 return text(2);
105 }else if( id == 3 ){ // date
106 return text(3);
107 }
108 return ke;
109 };
110 private:
111 bool mLocked:1;
112 bool dir:1;
113 QString m_dir;
114};
115 68
116class OFileSelector : public QWidget { 69class OFileSelector : public QWidget {
117 Q_OBJECT 70 Q_OBJECT
118 public: 71 public:
119 enum Mode {OPEN=1, SAVE=2, FILESELECTOR=4, DIR=8 }; 72 enum Mode {OPEN=1, SAVE=2, FILESELECTOR=4, DIR=8 };
120 enum Selector{NORMAL=1, EXTENDED = 2, EXTENDED_ALL =4 }; 73 enum Selector{NORMAL=1, EXTENDED = 2, EXTENDED_ALL =4 };
121 enum View { DIRS = 1, FILES = 2, TREE = 4, ICON = 8 }; 74 enum View { DIRS = 1, FILES = 2, TREE = 4, ICON = 8 };
122 OFileSelector(QWidget *wid, int mode, int selector, const QString &dirName, const QString &fileName = QString::null, const QStringList &mimetypes = QStringList() ); 75 OFileSelector(QWidget *wid, int mode, int selector, const QString &dirName, const QString &fileName = QString::null, const QStringList &mimetypes = QStringList() );
123 ~OFileSelector() {}; 76 ~OFileSelector() {};
124 bool isToolbarVisible() const { return m_shTool; }; 77 bool isToolbarVisible() const { return m_shTool; };
125 bool isPermissionBarVisible() const { return m_shPerm; }; 78 bool isPermissionBarVisible() const { return m_shPerm; };
126 bool isLineEditVisible()const { return m_shLne; }; 79 bool isLineEditVisible()const { return m_shLne; };
127 bool isChooserVisible( )const { return m_shChooser; }; 80 bool isChooserVisible( )const { return m_shChooser; };
128 bool isYesCancelVisible()const { return m_shYesNo; }; 81 bool isYesCancelVisible()const { return m_shYesNo; };
129 void setYesCancelVisible( bool show ); 82 void setYesCancelVisible( bool show );
130 void setToolbarVisible( bool show ); 83 void setToolbarVisible( bool show );
131 void setPermissionBarVisible( bool show ); 84 void setPermissionBarVisible( bool show );
132 void setLineEditVisible(bool show) ; 85 void setLineEditVisible(bool show) ;
133 void setChooserVisible( bool chooser ); 86 void setChooserVisible( bool chooser );
134 87
135 QCheckBox* permissionCheckbox(); 88 QCheckBox* permissionCheckbox();
136 bool setPermission() const; 89 bool setPermission() const;
137 void setPermissionChecked( bool check ); 90 void setPermissionChecked( bool check );
138 91
139 void setMode( int ); 92 void setMode( int );
140 93
141 bool showDirs()const { return m_dir; } 94 bool showDirs()const { return m_dir; }
142 void setShowDirs(bool ); 95 void setShowDirs(bool );
143 96
144 const QListView* listView() { return m_View; }; 97 const QListView* listView() { return m_View; };
145 98
146 bool isCaseSensetive()const { return m_case; } 99 bool isCaseSensetive()const { return m_case; }
147 void setCaseSensetive(bool caSe ); 100 void setCaseSensetive(bool caSe );
148 101
149 bool showFiles()const { return m_files; }; 102 bool showFiles()const { return m_files; };
150 void setShowFiles(bool ); 103 void setShowFiles(bool );
151 bool cd(const QString &path ); 104 bool cd(const QString &path );
152 105
153 106
154 int mode()const { return m_mode; }; 107 int mode()const { return m_mode; };
155 int selector()const { return m_selector; }; 108 int selector()const { return m_selector; };
156 void setSelector( int ); 109 void setSelector( int );
157 110
158 bool showPopup()const { return m_showPopup; }; 111 bool showPopup()const { return m_showPopup; };
159 void setShowPopup( bool pop ) { m_showPopup = pop; }; 112 void setShowPopup( bool pop ) { m_showPopup = pop; };
160 void setPopupMenu( QPopupMenu * ); 113 void setPopupMenu( QPopupMenu * );
161 114
162 void updateLay(); 115 void updateLay();