author | tille <tille> | 2002-07-24 11:37:36 (UTC) |
---|---|---|
committer | tille <tille> | 2002-07-24 11:37:36 (UTC) |
commit | adfb21cd5e2fcf750543570ab9c6427f1fba9968 (patch) (unidiff) | |
tree | 1a55eb15bd48b373cd3a88a41cb5733af9f9a4b9 | |
parent | 0948a167e4e46e6d2082809ec47be6a08a5de9d7 (diff) | |
download | opie-adfb21cd5e2fcf750543570ab9c6427f1fba9968.zip opie-adfb21cd5e2fcf750543570ab9c6427f1fba9968.tar.gz opie-adfb21cd5e2fcf750543570ab9c6427f1fba9968.tar.bz2 |
fix bug #116 -- subsections
-rw-r--r-- | noncore/unsupported/oipkg/packagelist.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/noncore/unsupported/oipkg/packagelist.cpp b/noncore/unsupported/oipkg/packagelist.cpp index 998dae9..edb9cc5 100644 --- a/noncore/unsupported/oipkg/packagelist.cpp +++ b/noncore/unsupported/oipkg/packagelist.cpp | |||
@@ -106,110 +106,109 @@ void PackageList::filterPackages( QString f ) | |||
106 | } | 106 | } |
107 | 107 | ||
108 | Package* PackageList::find( QString n ) | 108 | Package* PackageList::find( QString n ) |
109 | { | 109 | { |
110 | return packageList.find( n ); | 110 | return packageList.find( n ); |
111 | } | 111 | } |
112 | 112 | ||
113 | Package* PackageList::first() | 113 | Package* PackageList::first() |
114 | { | 114 | { |
115 | packageIter.toFirst(); | 115 | packageIter.toFirst(); |
116 | return packageIter.current(); | 116 | return packageIter.current(); |
117 | } | 117 | } |
118 | 118 | ||
119 | Package* PackageList::next() | 119 | Package* PackageList::next() |
120 | { | 120 | { |
121 | ++packageIter; | 121 | ++packageIter; |
122 | return packageIter.current(); | 122 | return packageIter.current(); |
123 | } | 123 | } |
124 | 124 | ||
125 | QStringList PackageList::getSections() | 125 | QStringList PackageList::getSections() |
126 | { | 126 | { |
127 | sections.sort(); | 127 | sections.sort(); |
128 | return sections; | 128 | return sections; |
129 | } | 129 | } |
130 | 130 | ||
131 | QStringList PackageList::getSubSections() | 131 | QStringList PackageList::getSubSections() |
132 | { | 132 | { |
133 | QStringList ss; | 133 | QStringList ss; |
134 | if ( !subSections[aktSection] ) return ss; | 134 | if ( !subSections[aktSection] ) return ss; |
135 | ss = *subSections[aktSection]; | 135 | ss = *subSections[aktSection]; |
136 | ss.sort(); | 136 | ss.sort(); |
137 | return ss; | 137 | return ss; |
138 | } | 138 | } |
139 | 139 | ||
140 | void PackageList::setSection( QString sec ) | 140 | void PackageList::setSection( QString sec ) |
141 | { | 141 | { |
142 | aktSection = sec; | 142 | aktSection = sec; |
143 | } | 143 | } |
144 | 144 | ||
145 | void PackageList::setSubSection( QString ssec ) | 145 | void PackageList::setSubSection( QString ssec ) |
146 | { | 146 | { |
147 | aktSubSection = ssec; | 147 | aktSubSection = ssec; |
148 | } | 148 | } |
149 | 149 | ||
150 | void PackageList::updateSections( Package* pack ) | 150 | void PackageList::updateSections( Package* pack ) |
151 | { | 151 | { |
152 | QString s = pack->section(); | 152 | QString s = pack->section(); |
153 | if ( s.isEmpty() || s == "") return; | 153 | if ( s.isEmpty() || s == "") return; |
154 | if ( sections.contains(s) ) return; | 154 | if ( !sections.contains(s) ) sections += s; |
155 | sections += s; | ||
156 | QString ss = pack->subSection(); | 155 | QString ss = pack->subSection(); |
157 | if ( ss.isEmpty() || ss == "" ) return; | 156 | if ( ss.isEmpty() || ss == "" ) return; |
158 | if ( !subSections[s] ) { | 157 | if ( !subSections[s] ) { |
159 | subSections.insert( s, new QStringList() ); | 158 | subSections.insert( s, new QStringList() ); |
160 | QStringList *subsecs = subSections[s]; | 159 | QStringList *subsecs = subSections[s]; |
161 | *subsecs += "All"; | 160 | *subsecs += "All"; |
162 | } | 161 | } |
163 | QStringList *subsecs = subSections[s]; | 162 | QStringList *subsecs = subSections[s]; |
164 | *subsecs += ss; | 163 | if ( !subsecs->contains(ss) ) *subsecs += ss; |
165 | if ( !subSections["All"] ) subSections.insert( "All", new QStringList() ); | 164 | // if ( !subSections["All"] ) subSections.insert( "All", new QStringList() ); |
166 | subsecs = subSections["All"]; | 165 | // subsecs = subSections["All"]; |
167 | *subsecs += ss; | 166 | // *subsecs += ss; |
168 | } | 167 | } |
169 | 168 | ||
170 | 169 | ||
171 | void PackageList::readFileEntries( QString filename, QString dest ) | 170 | void PackageList::readFileEntries( QString filename, QString dest ) |
172 | { | 171 | { |
173 | pvDebug(5,"PackageList::readFileEntries "+filename+" dest "+dest); | 172 | pvDebug(5,"PackageList::readFileEntries "+filename+" dest "+dest); |
174 | QStringList packEntry; | 173 | QStringList packEntry; |
175 | QFile f( filename ); | 174 | QFile f( filename ); |
176 | if ( !f.open(IO_ReadOnly) ) return; | 175 | if ( !f.open(IO_ReadOnly) ) return; |
177 | QTextStream *statusStream = new QTextStream( &f ); | 176 | QTextStream *statusStream = new QTextStream( &f ); |
178 | while ( !statusStream ->eof() ) | 177 | while ( !statusStream ->eof() ) |
179 | { | 178 | { |
180 | QString line = statusStream->readLine(); | 179 | QString line = statusStream->readLine(); |
181 | if ( line.find(QRegExp("[\n\t ]*")) || line == "" ) | 180 | if ( line.find(QRegExp("[\n\t ]*")) || line == "" ) |
182 | { | 181 | { |
183 | //end of package | 182 | //end of package |
184 | if ( ! packEntry.isEmpty() ) | 183 | if ( ! packEntry.isEmpty() ) |
185 | { | 184 | { |
186 | Package *p = new Package( packEntry, settings ); | 185 | Package *p = new Package( packEntry, settings ); |
187 | if ( p ) | 186 | if ( p ) |
188 | { | 187 | { |
189 | p->setDest( dest ); | 188 | p->setDest( dest ); |
190 | insertPackage( p ); | 189 | insertPackage( p ); |
191 | packEntry.clear(); | 190 | packEntry.clear(); |
192 | } | 191 | } |
193 | } | 192 | } |
194 | }else{ | 193 | }else{ |
195 | packEntry << line; | 194 | packEntry << line; |
196 | }; | 195 | }; |
197 | } | 196 | } |
198 | //there might be no nl at the end of the package file | 197 | //there might be no nl at the end of the package file |
199 | if ( ! packEntry.isEmpty() ) | 198 | if ( ! packEntry.isEmpty() ) |
200 | { | 199 | { |
201 | Package *p = new Package( packEntry, settings ); | 200 | Package *p = new Package( packEntry, settings ); |
202 | if ( p ) | 201 | if ( p ) |
203 | { | 202 | { |
204 | p->setDest( dest ); | 203 | p->setDest( dest ); |
205 | insertPackage( p ); | 204 | insertPackage( p ); |
206 | packEntry.clear(); | 205 | packEntry.clear(); |
207 | } | 206 | } |
208 | } | 207 | } |
209 | delete statusStream; | 208 | delete statusStream; |
210 | return; | 209 | return; |
211 | } | 210 | } |
212 | 211 | ||
213 | void PackageList::setSettings( PackageManagerSettings *s ) | 212 | void PackageList::setSettings( PackageManagerSettings *s ) |
214 | { | 213 | { |
215 | settings = s; | 214 | settings = s; |