summaryrefslogtreecommitdiff
authorzecke <zecke>2005-02-06 11:15:32 (UTC)
committer zecke <zecke>2005-02-06 11:15:32 (UTC)
commitc1d8b585ac60438bfb237579da829b4110204009 (patch) (unidiff)
tree81848a11c6b006ed4b6ac5a036de8402dde8e25d
parent8e3d226f1ab8aea28b6100966f11adb97ee41659 (diff)
downloadopie-c1d8b585ac60438bfb237579da829b4110204009.zip
opie-c1d8b585ac60438bfb237579da829b4110204009.tar.gz
opie-c1d8b585ac60438bfb237579da829b4110204009.tar.bz2
Sorry lorn the patch is inapproriate.
1.) one click 'accept' is the wished feature and makes sense for opening files. 2.) Just uncommenting code that is not used is bad, we've cvs you can remove the lines Now I'll revert and afterwards I'll patch OFileDialog again and please tell me if that works for you as well.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/opieui/fileselector/ofiledialog.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/libopie2/opieui/fileselector/ofiledialog.cpp b/libopie2/opieui/fileselector/ofiledialog.cpp
index 6e9833e..e01fbe5 100644
--- a/libopie2/opieui/fileselector/ofiledialog.cpp
+++ b/libopie2/opieui/fileselector/ofiledialog.cpp
@@ -1,256 +1,256 @@
1/* 1/*
2               =. This file is part of the OPIE Project 2               =. This file is part of the OPIE Project
3             .=l. Copyright (C) Holger Freyther <zecke@handhelds.org> 3             .=l. Copyright (C) Holger Freyther <zecke@handhelds.org>
4           .>+-= 4           .>+-=
5 _;:,     .>    :=|. This library is free software; you can 5 _;:,     .>    :=|. This library is free software; you can
6.> <`_,   >  .   <= redistribute it and/or modify it under 6.> <`_,   >  .   <= redistribute it and/or modify it under
7:`=1 )Y*s>-.--   : the terms of the GNU Library General Public 7:`=1 )Y*s>-.--   : the terms of the GNU Library General Public
8.="- .-=="i,     .._ License as published by the Free Software 8.="- .-=="i,     .._ License as published by the Free Software
9 - .   .-<_>     .<> Foundation; either version 2 of the License, 9 - .   .-<_>     .<> Foundation; either version 2 of the License,
10     ._= =}       : or (at your option) any later version. 10     ._= =}       : or (at your option) any later version.
11    .%`+i>       _;_. 11    .%`+i>       _;_.
12    .i_,=:_.      -<s. This library is distributed in the hope that 12    .i_,=:_.      -<s. This library is distributed in the hope that
13     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY; 13     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY;
14    : ..    .:,     . . . without even the implied warranty of 14    : ..    .:,     . . . without even the implied warranty of
15    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A 15    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A
16  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU 16  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU
17..}^=.=       =       ; Library General Public License for more 17..}^=.=       =       ; Library General Public License for more
18++=   -.     .`     .: details. 18++=   -.     .`     .: details.
19 :     =  ...= . :.=- 19 :     =  ...= . :.=-
20 -.   .:....=;==+<; You should have received a copy of the GNU 20 -.   .:....=;==+<; You should have received a copy of the GNU
21  -_. . .   )=.  = Library General Public License along with 21  -_. . .   )=.  = Library General Public License along with
22    --        :-=` this library; see the file COPYING.LIB. 22    --        :-=` this library; see the file COPYING.LIB.
23 If not, write to the Free Software Foundation, 23 If not, write to the Free Software Foundation,
24 Inc., 59 Temple Place - Suite 330, 24 Inc., 59 Temple Place - Suite 330,
25 Boston, MA 02111-1307, USA. 25 Boston, MA 02111-1307, USA.
26 26
27*/ 27*/
28 28
29 29
30/* OPIE */ 30/* OPIE */
31#include <opie2/ofiledialog.h> 31#include <opie2/ofiledialog.h>
32#include <qpe/applnk.h> 32#include <qpe/applnk.h>
33#include <qpe/config.h> 33#include <qpe/config.h>
34#include <qpe/qpeapplication.h> 34#include <qpe/qpeapplication.h>
35 35
36/* QT */ 36/* QT */
37#include <qfileinfo.h> 37#include <qfileinfo.h>
38#include <qstring.h> 38#include <qstring.h>
39#include <qapplication.h> 39#include <qapplication.h>
40#include <qlayout.h> 40#include <qlayout.h>
41 41
42 42
43/* TRANSLATOR Opie::Ui::OFileDialog */ 43/* TRANSLATOR Opie::Ui::OFileDialog */
44 44
45using namespace Opie::Ui; 45using namespace Opie::Ui;
46 46
47namespace 47namespace
48{ 48{
49/* 49/*
50 * helper functions to load the start dir 50 * helper functions to load the start dir
51 * and to save it 51 * and to save it
52 * helper to extract the dir out of a file name 52 * helper to extract the dir out of a file name
53 */ 53 */
54/** 54/**
55 * This method will use Config( argv[0] ); 55 * This method will use Config( argv[0] );
56 * @param key The group key used 56 * @param key The group key used
57 */ 57 */
58QString lastUsedDir( const QString& key ) 58QString lastUsedDir( const QString& key )
59{ 59{
60 if ( qApp->argc() < 1 ) 60 if ( qApp->argc() < 1 )
61 return QString::null; 61 return QString::null;
62 62
63 Config cfg( QFileInfo(qApp->argv()[0]).fileName() ); // appname 63 Config cfg( QFileInfo(qApp->argv()[0]).fileName() ); // appname
64 cfg.setGroup( key ); 64 cfg.setGroup( key );
65 return cfg.readEntry("LastDir", QPEApplication::documentDir() ); 65 return cfg.readEntry("LastDir", QPEApplication::documentDir() );
66} 66}
67 67
68void saveLastDir( const QString& key, const QString& file ) 68void saveLastDir( const QString& key, const QString& file )
69{ 69{
70 if ( qApp->argc() < 1 ) 70 if ( qApp->argc() < 1 )
71 return; 71 return;
72 72
73 Config cfg( QFileInfo(qApp->argv()[0]).fileName() ); 73 Config cfg( QFileInfo(qApp->argv()[0]).fileName() );
74 cfg.setGroup( key ); 74 cfg.setGroup( key );
75 QFileInfo inf( file ); 75 QFileInfo inf( file );
76 if ( inf.isFile() ) 76 if ( inf.isFile() )
77 cfg.writeEntry("LastDir", inf.dirPath( true ) ); 77 cfg.writeEntry("LastDir", inf.dirPath( true ) );
78 else 78 else
79 cfg.writeEntry("LastDir", file ); 79 cfg.writeEntry("LastDir", file );
80} 80}
81}; 81};
82 82
83/** 83/**
84 * This constructs a modal dialog 84 * This constructs a modal dialog
85 * 85 *
86 * @param caption The caption of the dialog 86 * @param caption The caption of the dialog
87 * @param wid The parent widget 87 * @param wid The parent widget
88 * @param mode The mode of the OFileSelector @see OFileSelector 88 * @param mode The mode of the OFileSelector @see OFileSelector
89 * @param selector The selector of the OFileSelector 89 * @param selector The selector of the OFileSelector
90 * @param dirName the dir or resource to start from 90 * @param dirName the dir or resource to start from
91 * @param fileName a proposed or existing filename 91 * @param fileName a proposed or existing filename
92 * @param mimetypes The mimeTypes 92 * @param mimetypes The mimeTypes
93 */ 93 */
94OFileDialog::OFileDialog(const QString &caption, 94OFileDialog::OFileDialog(const QString &caption,
95 QWidget *wid, int mode, int selector, 95 QWidget *wid, int mode, int selector,
96 const QString &dirName, 96 const QString &dirName,
97 const QString &fileName, 97 const QString &fileName,
98 const QMap<QString,QStringList>& mimetypes ) 98 const QMap<QString,QStringList>& mimetypes )
99 : QDialog( wid, "OFileDialog", true ) 99 : QDialog( wid, "OFileDialog", true )
100{ 100{
101 // QVBoxLayout *lay = new QVBoxLayout(this); 101 // QVBoxLayout *lay = new QVBoxLayout(this);
102 //showMaximized(); 102 //showMaximized();
103 QVBoxLayout *lay = new QVBoxLayout(this ); 103 QVBoxLayout *lay = new QVBoxLayout(this );
104 file = new OFileSelector(this , mode, selector, 104 file = new OFileSelector(this , mode, selector,
105 dirName, fileName, 105 dirName, fileName,
106 mimetypes ); 106 mimetypes );
107 lay->addWidget( file ); 107 lay->addWidget( file );
108 108
109 //lay->addWidget( file ); 109 //lay->addWidget( file );
110 //showFullScreen(); 110 //showFullScreen();
111 setCaption( caption.isEmpty() ? tr("FileDialog") : caption ); 111 setCaption( caption.isEmpty() ? tr("FileDialog") : caption );
112 connect(file, SIGNAL(fileSelected(const QString&) ), 112 connect(file, SIGNAL(fileSelected(const QString&) ),
113 this, SLOT(slotFileSelected(const QString&) ) ); 113 this, SLOT(slotFileSelected(const QString&) ) );
114 connect(file, SIGNAL(ok() ), 114 connect(file, SIGNAL(ok() ),
115 this, SLOT(slotSelectorOk()) ) ; 115 this, SLOT(slotSelectorOk()) ) ;
116 116
117 connect(file, SIGNAL(dirSelected(const QString&) ), this, SLOT(slotDirSelected(const QString&) ) ); 117 connect(file, SIGNAL(dirSelected(const QString&) ), this, SLOT(slotDirSelected(const QString&) ) );
118 118
119#if 0 119#if 0
120 connect(file, SIGNAL(dirSelected(const QString&) ), 120 connect(file, SIGNAL(dirSelected(const QString&) ),
121 this, SLOT(slotDirSelected(const QString&) ) ); 121 this, SLOT(slotDirSelected(const QString&) ) );
122#endif 122#endif
123} 123}
124/** 124/**
125 * @returns the mimetype of the selected 125 * @returns the mimetype of the selected
126 * currently it return QString::null 126 * currently it return QString::null
127 */ 127 */
128QString OFileDialog::mimetype()const 128QString OFileDialog::mimetype()const
129{ 129{
130 return QString::null; 130 return QString::null;
131} 131}
132 132
133/** 133/**
134 * @return the fileName 134 * @return the fileName
135 */ 135 */
136QString OFileDialog::fileName()const 136QString OFileDialog::fileName()const
137{ 137{
138 return file->selectedName(); 138 return file->selectedName();
139} 139}
140 140
141/** 141/**
142 * return a DocLnk to the current file 142 * return a DocLnk to the current file
143 */ 143 */
144DocLnk OFileDialog::selectedDocument()const 144DocLnk OFileDialog::selectedDocument()const
145{ 145{
146 return file->selectedDocument(); 146 return file->selectedDocument();
147} 147}
148 148
149/** 149/**
150 * This opens up a filedialog in Open mode 150 * This opens up a filedialog in Open mode
151 * 151 *
152 * @param selector the Selector Mode 152 * @param selector the Selector Mode
153 * @param startDir Where to start from 153 * @param startDir Where to start from
154 * @param file A proposed filename 154 * @param file A proposed filename
155 * @param mimes A list of MimeTypes 155 * @param mimes A list of MimeTypes
156 * @param wid the parent 156 * @param wid the parent
157 * @param caption of the dialog if QString::null tr("Open") will be used 157 * @param caption of the dialog if QString::null tr("Open") will be used
158 * @return the fileName or QString::null 158 * @return the fileName or QString::null
159 */ 159 */
160QString OFileDialog::getOpenFileName(int selector, 160QString OFileDialog::getOpenFileName(int selector,
161 const QString &_startDir, 161 const QString &_startDir,
162 const QString &file, 162 const QString &file,
163 const MimeTypes &mimes, 163 const MimeTypes &mimes,
164 QWidget *wid, 164 QWidget *wid,
165 const QString &caption ) 165 const QString &caption )
166{ 166{
167 QString ret; 167 QString ret;
168 QString startDir = _startDir; 168 QString startDir = _startDir;
169 if (startDir.isEmpty() ) 169 if (startDir.isEmpty() )
170 startDir = lastUsedDir( "FileDialog-OPEN" ); 170 startDir = lastUsedDir( "FileDialog-OPEN" );
171 171
172 172
173 OFileDialog dlg( caption.isEmpty() ? tr("Open") : caption, 173 OFileDialog dlg( caption.isEmpty() ? tr("Open") : caption,
174 wid, OFileSelector::Open, selector, startDir, file, mimes); 174 wid, OFileSelector::Open, selector, startDir, file, mimes);
175 if( QPEApplication::execDialog(&dlg ) ) 175 if( QPEApplication::execDialog(&dlg ) )
176 { 176 {
177 ret = dlg.fileName(); 177 ret = dlg.fileName();
178 saveLastDir( "FileDialog-OPEN", ret ); 178 saveLastDir( "FileDialog-OPEN", ret );
179 } 179 }
180 180
181 return ret; 181 return ret;
182} 182}
183 183
184/** 184/**
185 * This opens up a file dialog in save mode 185 * This opens up a file dialog in save mode
186 * @see getOpenFileName 186 * @see getOpenFileName
187 */ 187 */
188QString OFileDialog::getSaveFileName(int selector, 188QString OFileDialog::getSaveFileName(int selector,
189 const QString &_startDir, 189 const QString &_startDir,
190 const QString &file, 190 const QString &file,
191 const MimeTypes &mimes, 191 const MimeTypes &mimes,
192 QWidget *wid, 192 QWidget *wid,
193 const QString &caption ) 193 const QString &caption )
194{ 194{
195 QString ret; 195 QString ret;
196 QString startDir = _startDir; 196 QString startDir = _startDir;
197 if (startDir.isEmpty() ) 197 if (startDir.isEmpty() )
198 startDir = lastUsedDir( "FileDialog-SAVE" ); 198 startDir = lastUsedDir( "FileDialog-SAVE" );
199 199
200 OFileDialog dlg( caption.isEmpty() ? tr("Save") : caption, 200 OFileDialog dlg( caption.isEmpty() ? tr("Save") : caption,
201 wid, OFileSelector::Save, selector, startDir, file, mimes); 201 wid, OFileSelector::Save, selector, startDir, file, mimes);
202 if( QPEApplication::execDialog(&dlg) ) 202 if( QPEApplication::execDialog(&dlg) )
203 { 203 {
204 ret = dlg.fileName(); 204 ret = dlg.fileName();
205 saveLastDir( "FileDialog-SAVE", ret ); 205 saveLastDir( "FileDialog-SAVE", ret );
206 } 206 }
207 207
208 return ret; 208 return ret;
209} 209}
210 210
211/** 211/**
212 * This opens up a filedialog in select directory mode 212 * This opens up a filedialog in select directory mode
213 * 213 *
214 * @param selector the Selector Mode 214 * @param selector the Selector Mode
215 * @param startDir Where to start from 215 * @param startDir Where to start from
216 * @param wid the parent 216 * @param wid the parent
217 * @param caption of the dialog if QString::null tr("Open") will be used 217 * @param caption of the dialog if QString::null tr("Open") will be used
218 * @return the directoryName or QString::null 218 * @return the directoryName or QString::null
219 */ 219 */
220QString OFileDialog::getDirectory(int selector, 220QString OFileDialog::getDirectory(int selector,
221 const QString &_startDir, 221 const QString &_startDir,
222 QWidget *wid, 222 QWidget *wid,
223 const QString &caption ) 223 const QString &caption )
224{ 224{
225 QString ret; 225 QString ret;
226 QString startDir = _startDir; 226 QString startDir = _startDir;
227 if ( startDir.isEmpty() ) 227 if ( startDir.isEmpty() )
228 startDir = lastUsedDir( "FileDialog-SELECTDIR" ); 228 startDir = lastUsedDir( "FileDialog-SELECTDIR" );
229 229
230 OFileDialog dlg( caption.isEmpty() ? tr( "Select Directory" ) : caption, 230 OFileDialog dlg( caption.isEmpty() ? tr( "Select Directory" ) : caption,
231 wid, OFileSelector::DirectorySelector, selector, startDir ); 231 wid, OFileSelector::DirectorySelector, selector, startDir );
232 232
233 if ( QPEApplication::execDialog(&dlg) ) 233 if ( QPEApplication::execDialog(&dlg) )
234 { 234 {
235 ret = dlg.fileName(); 235 ret = dlg.fileName();
236 saveLastDir( "FileDialog-SELECTDIR", ret ); 236 saveLastDir( "FileDialog-SELECTDIR", ret );
237 } 237 }
238 return ret; 238 return ret;
239} 239}
240 240
241void OFileDialog::slotFileSelected(const QString & ) 241void OFileDialog::slotFileSelected(const QString & )
242{ 242{
243// accept(); 243 accept();
244} 244}
245 245
246void OFileDialog::slotSelectorOk( ) 246void OFileDialog::slotSelectorOk( )
247{ 247{
248// accept(); 248 accept();
249} 249}
250 250
251void OFileDialog::slotDirSelected(const QString &dir ) 251void OFileDialog::slotDirSelected(const QString &dir )
252{ 252{
253 setCaption( dir ); 253 setCaption( dir );
254 // if mode 254 // if mode
255 //accept(); 255 //accept();
256} 256}