author | zecke <zecke> | 2005-02-05 16:05:04 (UTC) |
---|---|---|
committer | zecke <zecke> | 2005-02-05 16:05:04 (UTC) |
commit | 23fc6bad8aa84ee1a690a07124ba9e59650e2aea (patch) (unidiff) | |
tree | 73f5efbf4ae055b781c78d395fa32bebc2705344 | |
parent | 8ba13dd38e7da296177719dcc8fddbbe978a4b9a (diff) | |
download | opie-23fc6bad8aa84ee1a690a07124ba9e59650e2aea.zip opie-23fc6bad8aa84ee1a690a07124ba9e59650e2aea.tar.gz opie-23fc6bad8aa84ee1a690a07124ba9e59650e2aea.tar.bz2 |
Implement deletion for the Document and Camera Liste
This should fix 1540
-rw-r--r-- | noncore/graphics/opie-eye/impl/dcim/dcim_lister.cpp | 2 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/impl/doc/doc_lister.cpp | 12 |
2 files changed, 12 insertions, 2 deletions
diff --git a/noncore/graphics/opie-eye/impl/dcim/dcim_lister.cpp b/noncore/graphics/opie-eye/impl/dcim/dcim_lister.cpp index 3c3d702..147eb9c 100644 --- a/noncore/graphics/opie-eye/impl/dcim/dcim_lister.cpp +++ b/noncore/graphics/opie-eye/impl/dcim/dcim_lister.cpp | |||
@@ -91,91 +91,91 @@ QString DCIM_DirLister::dirUp( const QString& p )const { | |||
91 | QString str; | 91 | QString str; |
92 | 92 | ||
93 | switch( m_mode ) { | 93 | switch( m_mode ) { |
94 | case ListingFiles: | 94 | case ListingFiles: |
95 | m_mode = ListingReFolder; | 95 | m_mode = ListingReFolder; |
96 | str = PDirLister::dirUp( p ); | 96 | str = PDirLister::dirUp( p ); |
97 | break; | 97 | break; |
98 | case ListingFolder: | 98 | case ListingFolder: |
99 | m_mode = ListingStart; | 99 | m_mode = ListingStart; |
100 | break; | 100 | break; |
101 | case ListingUnknown: | 101 | case ListingUnknown: |
102 | case ListingStart: | 102 | case ListingStart: |
103 | default: | 103 | default: |
104 | break; | 104 | break; |
105 | } | 105 | } |
106 | 106 | ||
107 | /* down cases */ | 107 | /* down cases */ |
108 | owarn << " New String " << str << " old path " << m_mode << oendl; | 108 | owarn << " New String " << str << " old path " << m_mode << oendl; |
109 | m_path = str; | 109 | m_path = str; |
110 | return str; | 110 | return str; |
111 | } | 111 | } |
112 | 112 | ||
113 | 113 | ||
114 | QStringList DCIM_DirLister::findCameras()const { | 114 | QStringList DCIM_DirLister::findCameras()const { |
115 | QStringList lst; | 115 | QStringList lst; |
116 | StorageInfo inf; | 116 | StorageInfo inf; |
117 | 117 | ||
118 | m_map.clear(); | 118 | m_map.clear(); |
119 | 119 | ||
120 | const QList<FileSystem> &list = inf.fileSystems(); | 120 | const QList<FileSystem> &list = inf.fileSystems(); |
121 | QListIterator<FileSystem> it( list ); | 121 | QListIterator<FileSystem> it( list ); |
122 | 122 | ||
123 | 123 | ||
124 | FileSystem *sys; | 124 | FileSystem *sys; |
125 | for ( sys = it.current(); (sys=it.current())!=0 ; ++it ) | 125 | for ( sys = it.current(); (sys=it.current())!=0 ; ++it ) |
126 | if ( QFileInfo( sys->path() + "/dcim/" ).exists() ) { | 126 | if ( QFileInfo( sys->path() + "/dcim/" ).exists() ) { |
127 | lst << sys->name(); | 127 | lst << sys->name(); |
128 | m_map.insert( sys->name(), sys->path() ); | 128 | m_map.insert( sys->name(), sys->path() ); |
129 | } | 129 | } |
130 | 130 | ||
131 | if ( lst.isEmpty() ) { | 131 | if ( lst.isEmpty() ) { |
132 | m_mode = ListingUnknown; | 132 | m_mode = ListingUnknown; |
133 | lst << QObject::tr("Error no Camera Dir found"); | 133 | lst << QObject::tr("Error no Camera Dir found"); |
134 | }else | 134 | }else |
135 | m_mode = ListingStart; | 135 | m_mode = ListingStart; |
136 | 136 | ||
137 | return lst; | 137 | return lst; |
138 | } | 138 | } |
139 | 139 | ||
140 | QStringList DCIM_DirLister::findAlbums()const { | 140 | QStringList DCIM_DirLister::findAlbums()const { |
141 | QStringList lst = QDir( m_path ).entryList( QDir::Dirs ); | 141 | QStringList lst = QDir( m_path ).entryList( QDir::Dirs ); |
142 | lst.remove( "." ); | 142 | lst.remove( "." ); |
143 | lst.remove( ".." ); | 143 | lst.remove( ".." ); |
144 | 144 | ||
145 | return lst; | 145 | return lst; |
146 | } | 146 | } |
147 | 147 | ||
148 | QStringList DCIM_DirLister::findImages()const { | 148 | QStringList DCIM_DirLister::findImages()const { |
149 | return QDir( m_path ).entryList("*.jpg *.jpeg *.png", QDir::Files ); | 149 | return QDir( m_path ).entryList("*.jpg *.jpeg *.png", QDir::Files ); |
150 | } | 150 | } |
151 | 151 | ||
152 | void DCIM_DirLister::deleteImage( const QString& fl ) { | 152 | void DCIM_DirLister::deleteImage( const QString& fl ) { |
153 | QFileInfo inf( fl ); | 153 | QFileInfo inf( fl ); |
154 | QFile::remove( fl ); | 154 | QFile::remove( fl ); |
155 | QFile::remove( inf.dirPath ()+"/preview"+ | 155 | QFile::remove( inf.dirPath ()+"/preview/"+ |
156 | inf.fileName() ); | 156 | inf.fileName() ); |
157 | } | 157 | } |
158 | 158 | ||
159 | void DCIM_DirLister::thumbNail( const QString& _str, int w, int h ) { | 159 | void DCIM_DirLister::thumbNail( const QString& _str, int w, int h ) { |
160 | QFileInfo inf( _str ); | 160 | QFileInfo inf( _str ); |
161 | QString str = QFileInfo( inf.dirPath()+"/preview"+ inf.fileName() ).exists() ? | 161 | QString str = QFileInfo( inf.dirPath()+"/preview"+ inf.fileName() ).exists() ? |
162 | inf.dirPath()+"/preview"+ inf.fileName() : _str; | 162 | inf.dirPath()+"/preview"+ inf.fileName() : _str; |
163 | 163 | ||
164 | SlaveMaster::self()->thumbNail( str, w, h ); | 164 | SlaveMaster::self()->thumbNail( str, w, h ); |
165 | } | 165 | } |
166 | 166 | ||
167 | QImage DCIM_DirLister::image( const QString& str, Factor f, int m ) { | 167 | QImage DCIM_DirLister::image( const QString& str, Factor f, int m ) { |
168 | return SlaveMaster::self()->image( str, f, m ); | 168 | return SlaveMaster::self()->image( str, f, m ); |
169 | } | 169 | } |
170 | 170 | ||
171 | void DCIM_DirLister::imageInfo( const QString& str ) { | 171 | void DCIM_DirLister::imageInfo( const QString& str ) { |
172 | SlaveMaster::self()->thumbInfo( str ); | 172 | SlaveMaster::self()->thumbInfo( str ); |
173 | } | 173 | } |
174 | 174 | ||
175 | void DCIM_DirLister::fullImageInfo( const QString& str ) { | 175 | void DCIM_DirLister::fullImageInfo( const QString& str ) { |
176 | SlaveMaster::self()->imageInfo( str ); | 176 | SlaveMaster::self()->imageInfo( str ); |
177 | } | 177 | } |
178 | 178 | ||
179 | QString DCIM_DirLister::nameToFname( const QString& name )const { | 179 | QString DCIM_DirLister::nameToFname( const QString& name )const { |
180 | return name; | 180 | return name; |
181 | } | 181 | } |
diff --git a/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp b/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp index 4a491e2..5281b75 100644 --- a/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp +++ b/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp | |||
@@ -32,130 +32,140 @@ Doc_DirLister::Doc_DirLister() | |||
32 | connect( master, SIGNAL(sig_start()), this, SIGNAL(sig_start()) ); | 32 | connect( master, SIGNAL(sig_start()), this, SIGNAL(sig_start()) ); |
33 | connect( master, SIGNAL(sig_end()), this, SIGNAL(sig_end()) ); | 33 | connect( master, SIGNAL(sig_end()), this, SIGNAL(sig_end()) ); |
34 | connect( master, SIGNAL(sig_thumbInfo(const QString&, const QString&)), | 34 | connect( master, SIGNAL(sig_thumbInfo(const QString&, const QString&)), |
35 | this, SLOT(slotThumbInfo(const QString&, const QString&)) ); | 35 | this, SLOT(slotThumbInfo(const QString&, const QString&)) ); |
36 | connect( master, SIGNAL(sig_fullInfo(const QString&, const QString&)), | 36 | connect( master, SIGNAL(sig_fullInfo(const QString&, const QString&)), |
37 | this, SLOT(slotFullInfo(const QString&, const QString&)) ); | 37 | this, SLOT(slotFullInfo(const QString&, const QString&)) ); |
38 | connect( master, SIGNAL(sig_thumbNail(const QString&, const QPixmap&)), | 38 | connect( master, SIGNAL(sig_thumbNail(const QString&, const QPixmap&)), |
39 | this, SLOT(slotThumbNail(const QString&, const QPixmap&)) ); | 39 | this, SLOT(slotThumbNail(const QString&, const QPixmap&)) ); |
40 | m_docreads = false; | 40 | m_docreads = false; |
41 | syschannel = new QCopChannel("QPE/System", this); | 41 | syschannel = new QCopChannel("QPE/System", this); |
42 | connect(syschannel, SIGNAL(received(const QCString&,const QByteArray&)), | 42 | connect(syschannel, SIGNAL(received(const QCString&,const QByteArray&)), |
43 | this, SLOT(systemMsg(const QCString&,const QByteArray&)) ); | 43 | this, SLOT(systemMsg(const QCString&,const QByteArray&)) ); |
44 | } | 44 | } |
45 | 45 | ||
46 | Doc_DirLister::~Doc_DirLister() | 46 | Doc_DirLister::~Doc_DirLister() |
47 | { | 47 | { |
48 | } | 48 | } |
49 | 49 | ||
50 | QString Doc_DirLister::defaultPath()const { | 50 | QString Doc_DirLister::defaultPath()const { |
51 | return QString::null; | 51 | return QString::null; |
52 | } | 52 | } |
53 | 53 | ||
54 | bool Doc_DirLister::matchCat(const AppLnk* app)const | 54 | bool Doc_DirLister::matchCat(const AppLnk* app)const |
55 | { | 55 | { |
56 | if (!app) return false; | 56 | if (!app) return false; |
57 | if (m_catFilter==0 || app->categories().contains(m_catFilter) || m_catFilter == -1 && app->categories().count() == 0 ) { | 57 | if (m_catFilter==0 || app->categories().contains(m_catFilter) || m_catFilter == -1 && app->categories().count() == 0 ) { |
58 | return true; | 58 | return true; |
59 | } | 59 | } |
60 | return false; | 60 | return false; |
61 | } | 61 | } |
62 | 62 | ||
63 | QString Doc_DirLister::setStartPath(const QString&) { | 63 | QString Doc_DirLister::setStartPath(const QString&) { |
64 | static const QString Mtype_str("image/jpeg;image/gif;image/bmp;image/png"); | 64 | static const QString Mtype_str("image/jpeg;image/gif;image/bmp;image/png"); |
65 | if (!m_docreads) { | 65 | if (!m_docreads) { |
66 | Global::findDocuments(&m_ds,Mtype_str); | 66 | Global::findDocuments(&m_ds,Mtype_str); |
67 | m_docreads = true; | 67 | m_docreads = true; |
68 | } | 68 | } |
69 | return QString::null; | 69 | return QString::null; |
70 | } | 70 | } |
71 | 71 | ||
72 | QString Doc_DirLister::currentPath()const | 72 | QString Doc_DirLister::currentPath()const |
73 | { | 73 | { |
74 | return QString::null; | 74 | return QString::null; |
75 | } | 75 | } |
76 | 76 | ||
77 | 77 | ||
78 | QStringList Doc_DirLister::folders()const { | 78 | QStringList Doc_DirLister::folders()const { |
79 | return QStringList(); | 79 | return QStringList(); |
80 | } | 80 | } |
81 | 81 | ||
82 | QStringList Doc_DirLister::files()const { | 82 | QStringList Doc_DirLister::files()const { |
83 | QStringList out; | 83 | QStringList out; |
84 | QListIterator<DocLnk> dit(m_ds.children()); | 84 | QListIterator<DocLnk> dit(m_ds.children()); |
85 | for( ; dit.current(); ++dit) { | 85 | for( ; dit.current(); ++dit) { |
86 | if (!(*dit)->isValid()) continue; | 86 | if (!(*dit)->isValid()) continue; |
87 | if (!matchCat((*dit))) continue; | 87 | if (!matchCat((*dit))) continue; |
88 | QString s = (*dit)->name(); | 88 | QString s = (*dit)->name(); |
89 | s+=char(0); | 89 | s+=char(0); |
90 | s+=(*dit)->file(); | 90 | s+=(*dit)->file(); |
91 | out.append(s); | 91 | out.append(s); |
92 | } | 92 | } |
93 | return out; | 93 | return out; |
94 | } | 94 | } |
95 | 95 | ||
96 | void Doc_DirLister::deleteImage( const QString& ) | 96 | void Doc_DirLister::deleteImage( const QString& f) |
97 | { | 97 | { |
98 | /* | ||
99 | * find the file in the set of doclnks | ||
100 | */ | ||
101 | QListIterator<DocLnk> dit(m_ds.children()); | ||
102 | for( ; dit.current(); ++dit) { | ||
103 | if ( f == (*dit)->file() ) { | ||
104 | (*dit)->removeFiles(); | ||
105 | return; | ||
106 | } | ||
107 | } | ||
98 | } | 108 | } |
99 | 109 | ||
100 | void Doc_DirLister::thumbNail( const QString& str, int w, int h) | 110 | void Doc_DirLister::thumbNail( const QString& str, int w, int h) |
101 | { | 111 | { |
102 | SlaveMaster::self()->thumbNail( str, w, h ); | 112 | SlaveMaster::self()->thumbNail( str, w, h ); |
103 | } | 113 | } |
104 | 114 | ||
105 | QImage Doc_DirLister::image( const QString& str, Factor f, int m) | 115 | QImage Doc_DirLister::image( const QString& str, Factor f, int m) |
106 | { | 116 | { |
107 | return SlaveMaster::self()->image(str, f, m ); | 117 | return SlaveMaster::self()->image(str, f, m ); |
108 | } | 118 | } |
109 | 119 | ||
110 | void Doc_DirLister::imageInfo( const QString& str) { | 120 | void Doc_DirLister::imageInfo( const QString& str) { |
111 | SlaveMaster::self()->thumbInfo( str ); | 121 | SlaveMaster::self()->thumbInfo( str ); |
112 | } | 122 | } |
113 | 123 | ||
114 | void Doc_DirLister::fullImageInfo( const QString& str) { | 124 | void Doc_DirLister::fullImageInfo( const QString& str) { |
115 | SlaveMaster::self()->imageInfo(str); | 125 | SlaveMaster::self()->imageInfo(str); |
116 | } | 126 | } |
117 | 127 | ||
118 | void Doc_DirLister::slotFullInfo(const QString&f, const QString&t) | 128 | void Doc_DirLister::slotFullInfo(const QString&f, const QString&t) |
119 | { | 129 | { |
120 | emit sig_fullInfo(f, t); | 130 | emit sig_fullInfo(f, t); |
121 | } | 131 | } |
122 | 132 | ||
123 | void Doc_DirLister::slotThumbInfo(const QString&f, const QString&t) | 133 | void Doc_DirLister::slotThumbInfo(const QString&f, const QString&t) |
124 | { | 134 | { |
125 | emit sig_thumbInfo(f, t); | 135 | emit sig_thumbInfo(f, t); |
126 | } | 136 | } |
127 | 137 | ||
128 | void Doc_DirLister::slotThumbNail(const QString&f, const QPixmap&p) | 138 | void Doc_DirLister::slotThumbNail(const QString&f, const QPixmap&p) |
129 | { | 139 | { |
130 | emit sig_thumbNail(f, p); | 140 | emit sig_thumbNail(f, p); |
131 | } | 141 | } |
132 | 142 | ||
133 | QString Doc_DirLister::nameToFname(const QString&name)const | 143 | QString Doc_DirLister::nameToFname(const QString&name)const |
134 | { | 144 | { |
135 | return name; | 145 | return name; |
136 | } | 146 | } |
137 | 147 | ||
138 | QString Doc_DirLister::dirUp( const QString& p ) const{ | 148 | QString Doc_DirLister::dirUp( const QString& p ) const{ |
139 | return p; | 149 | return p; |
140 | } | 150 | } |
141 | 151 | ||
142 | QWidget* Doc_DirLister::widget(QWidget*parent) | 152 | QWidget* Doc_DirLister::widget(QWidget*parent) |
143 | { | 153 | { |
144 | CategorySelect * catmb = new CategorySelect(parent); | 154 | CategorySelect * catmb = new CategorySelect(parent); |
145 | Categories cats( 0 ); | 155 | Categories cats( 0 ); |
146 | cats.load( categoryFileName() ); | 156 | cats.load( categoryFileName() ); |
147 | QArray<int> vl( 0 ); | 157 | QArray<int> vl( 0 ); |
148 | catmb->setCategories( vl, "Document View", // No tr | 158 | catmb->setCategories( vl, "Document View", // No tr |
149 | "Document View" ); | 159 | "Document View" ); |
150 | catmb->setRemoveCategoryEdit( TRUE ); | 160 | catmb->setRemoveCategoryEdit( TRUE ); |
151 | catmb->setAllCategories( TRUE ); | 161 | catmb->setAllCategories( TRUE ); |
152 | connect(catmb, SIGNAL(signalSelected(int)), this, SLOT(showCategory(int))); | 162 | connect(catmb, SIGNAL(signalSelected(int)), this, SLOT(showCategory(int))); |
153 | catmb->setCurrentCategory(-2); | 163 | catmb->setCurrentCategory(-2); |
154 | return catmb; | 164 | return catmb; |
155 | } | 165 | } |
156 | 166 | ||
157 | void Doc_DirLister::showCategory(int which) | 167 | void Doc_DirLister::showCategory(int which) |
158 | { | 168 | { |
159 | odebug<<"Show cat " << which << oendl; | 169 | odebug<<"Show cat " << which << oendl; |
160 | m_catFilter = which==-2?0:which; | 170 | m_catFilter = which==-2?0:which; |
161 | setStartPath(""); | 171 | setStartPath(""); |