summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/graphics/drawpad/drawpadcanvas.cpp6
1 files changed, 0 insertions, 6 deletions
diff --git a/noncore/graphics/drawpad/drawpadcanvas.cpp b/noncore/graphics/drawpad/drawpadcanvas.cpp
index 4e17245..21ef15c 100644
--- a/noncore/graphics/drawpad/drawpadcanvas.cpp
+++ b/noncore/graphics/drawpad/drawpadcanvas.cpp
@@ -189,102 +189,96 @@ void DrawPadCanvas::load(QIODevice* ioDevice)
189 m_pageBackups.clear(); 189 m_pageBackups.clear();
190 m_pageBackups.append(new QPixmap(*(m_pages.current()))); 190 m_pageBackups.append(new QPixmap(*(m_pages.current())));
191 191
192 resizeContents(m_pages.current()->width(), m_pages.current()->height()); 192 resizeContents(m_pages.current()->width(), m_pages.current()->height());
193 viewport()->update(); 193 viewport()->update();
194 194
195 emit pagesChanged(); 195 emit pagesChanged();
196 emit pageBackupsChanged(); 196 emit pageBackupsChanged();
197} 197}
198 198
199void DrawPadCanvas::initialPage() 199void DrawPadCanvas::initialPage()
200{ 200{
201 m_pages.append(new QPixmap(234, 233)); 201 m_pages.append(new QPixmap(234, 233));
202 m_pages.current()->fill(Qt::white); 202 m_pages.current()->fill(Qt::white);
203 203
204 m_pageBackups.clear(); 204 m_pageBackups.clear();
205 m_pageBackups.append(new QPixmap(*(m_pages.current()))); 205 m_pageBackups.append(new QPixmap(*(m_pages.current())));
206 206
207 resizeContents(m_pages.current()->width(), m_pages.current()->height()); 207 resizeContents(m_pages.current()->width(), m_pages.current()->height());
208 viewport()->update(); 208 viewport()->update();
209 209
210 emit pagesChanged(); 210 emit pagesChanged();
211 emit pageBackupsChanged(); 211 emit pageBackupsChanged();
212} 212}
213 213
214void DrawPadCanvas::save(QIODevice* ioDevice) 214void DrawPadCanvas::save(QIODevice* ioDevice)
215{ 215{
216 QTextStream textStream(ioDevice); 216 QTextStream textStream(ioDevice);
217 textStream.setCodec(QTextCodec::codecForName("UTF-8")); 217 textStream.setCodec(QTextCodec::codecForName("UTF-8"));
218 218
219 textStream << "<drawpad>" << endl; 219 textStream << "<drawpad>" << endl;
220 textStream << " <images>" << endl; 220 textStream << " <images>" << endl;
221 221
222 QListIterator<QPixmap> bufferIterator(m_pages); 222 QListIterator<QPixmap> bufferIterator(m_pages);
223 223
224 for (bufferIterator.toFirst(); bufferIterator.current() != 0; ++bufferIterator) { 224 for (bufferIterator.toFirst(); bufferIterator.current() != 0; ++bufferIterator) {
225 textStream << " <image>" << endl; 225 textStream << " <image>" << endl;
226 226
227 QImage image = bufferIterator.current()->convertToImage(); 227 QImage image = bufferIterator.current()->convertToImage();
228 QByteArray byteArray; 228 QByteArray byteArray;
229 QBuffer buffer(byteArray); 229 QBuffer buffer(byteArray);
230 QImageIO imageIO(&buffer, "PNG"); 230 QImageIO imageIO(&buffer, "PNG");
231 231
232 buffer.open(IO_WriteOnly); 232 buffer.open(IO_WriteOnly);
233 imageIO.setImage(image); 233 imageIO.setImage(image);
234 imageIO.write(); 234 imageIO.write();
235 buffer.close(); 235 buffer.close();
236 236
237/*
238 ulong size = byteArray.size() * 2;
239 QByteArray byteArrayZipped(size);
240 ::compress((uchar*)byteArrayZipped.data(), &size, (uchar*)byteArray.data(), byteArray.size());
241*/
242
243 textStream << " <data length=\"" << byteArray.size() << "\" format=\"PNG\">"; 237 textStream << " <data length=\"" << byteArray.size() << "\" format=\"PNG\">";
244 238
245 static const char hexchars[] = "0123456789abcdef"; 239 static const char hexchars[] = "0123456789abcdef";
246 240
247 for (int i = 0; i < (int)byteArray.size(); i++ ) { 241 for (int i = 0; i < (int)byteArray.size(); i++ ) {
248 uchar s = (uchar)byteArray[i]; 242 uchar s = (uchar)byteArray[i];
249 textStream << hexchars[s >> 4]; 243 textStream << hexchars[s >> 4];
250 textStream << hexchars[s & 0x0f]; 244 textStream << hexchars[s & 0x0f];
251 } 245 }
252 246
253 textStream << "</data>" << endl; 247 textStream << "</data>" << endl;
254 textStream << " </image>" << endl; 248 textStream << " </image>" << endl;
255 } 249 }
256 250
257 textStream << " </images>" << endl; 251 textStream << " </images>" << endl;
258 textStream << "</drawpad>"; 252 textStream << "</drawpad>";
259} 253}
260 254
261void DrawPadCanvas::importPage(const QString& fileName) 255void DrawPadCanvas::importPage(const QString& fileName)
262{ 256{
263 QPixmap* importedPixmap = new QPixmap(); 257 QPixmap* importedPixmap = new QPixmap();
264 258
265 importedPixmap->load(fileName); 259 importedPixmap->load(fileName);
266 m_pages.insert(m_pages.at() + 1, importedPixmap); 260 m_pages.insert(m_pages.at() + 1, importedPixmap);
267 261
268 m_pageBackups.clear(); 262 m_pageBackups.clear();
269 m_pageBackups.append(new QPixmap(*(m_pages.current()))); 263 m_pageBackups.append(new QPixmap(*(m_pages.current())));
270 264
271 resizeContents(m_pages.current()->width(), m_pages.current()->height()); 265 resizeContents(m_pages.current()->width(), m_pages.current()->height());
272 viewport()->update(); 266 viewport()->update();
273 267
274 emit pagesChanged(); 268 emit pagesChanged();
275 emit pageBackupsChanged(); 269 emit pageBackupsChanged();
276} 270}
277 271
278void DrawPadCanvas::exportPage(uint fromPage, uint toPage, const QString& name,const QString& format) 272void DrawPadCanvas::exportPage(uint fromPage, uint toPage, const QString& name,const QString& format)
279{ 273{
280 if (fromPage == toPage) { 274 if (fromPage == toPage) {
281 DocLnk docLnk; 275 DocLnk docLnk;
282 MimeType mimeType(format); 276 MimeType mimeType(format);
283 277
284 docLnk.setName(name); 278 docLnk.setName(name);
285 docLnk.setType(mimeType.id()); 279 docLnk.setType(mimeType.id());
286 280
287 FileManager fileManager; 281 FileManager fileManager;
288 QIODevice* ioDevice = fileManager.saveFile(docLnk); 282 QIODevice* ioDevice = fileManager.saveFile(docLnk);
289 QImageIO imageIO(ioDevice, format); 283 QImageIO imageIO(ioDevice, format);
290 284