[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: koffice/krita/ui
From: Cyrille Berger <cyb () lepi ! org>
Date: 2007-07-31 22:38:07
Message-ID: 1185921487.920255.14250.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 694858 by berger:
fix saving png file to a file
M +23 -22 kis_png_converter.cpp
--- trunk/koffice/krita/ui/kis_png_converter.cpp #694857:694858
@@ -188,10 +188,10 @@
KisImageBuilder_Result KisPNGConverter::buildImage(QIODevice* iod)
{
- kDebug(41008) <<"Start decoding PNG File";
+ kDebug(41008) << "Start decoding PNG File" << endl;
if(not iod->open(QIODevice::ReadOnly))
{
- kDebug(41008) <<"Failed to open PNG File";
+ kDebug(41008) << "Failed to open PNG File" << endl;
return (KisImageBuilder_RESULT_FAILURE);
}
@@ -283,24 +283,24 @@
profile = new KoIccColorProfile(profile_rawdata);
Q_CHECK_PTR(profile);
if (profile) {
-// kDebug(41008) <<"profile name:" << \
profile->productName() <<" profile description:" << \
profile->productDescription() <<" information sur le produit:" << \
profile->productInfo(); +// kDebug(41008) << "profile name: \
" << profile->productName() << " profile description: " << \
profile->productDescription() << " information sur le produit: " << \
profile->productInfo() << endl; if(!profile->isSuitableForOutput())
{
- kDebug(41008) <<"the profile is not suitable for \
output and therefore cannot be used in krita, we need to convert the image \
to a standard profile"; // TODO: in ko2 popup a selection menu to inform \
the user + kDebug(41008) << "the profile is not suitable \
for output and therefore cannot be used in krita, we need to convert the \
image to a standard profile" << endl; // TODO: in ko2 popup a selection \
menu to inform the user }
}
} else {
- kDebug(41008) <<"Profile isn't ICC, skiped.";
+ kDebug(41008) << "Profile isn't ICC, skiped." << endl;
}
} else {
- kDebug(41008) <<"no embedded profile, will use the default \
profile"; + kDebug(41008) << "no embedded profile, will use the \
default profile" << endl; }
// Retrieve a pointer to the colorspace
KoColorSpace* cs;
if (profile && profile->isSuitableForOutput())
{
- kDebug(41008) <<"image has embedded profile:" << profile -> name() \
<<""; + kDebug(41008) << "image has embedded profile: " << profile \
-> name() << "\n";
cs = KoColorSpaceRegistry::instance()->colorSpace(csName, \
profile); }
else
@@ -330,10 +330,10 @@
if(m_doc)
{
KoDocumentInfo * info = m_doc->documentInfo();
- kDebug(41008) <<"There are" << num_comments <<" comments in the \
text"; + kDebug(41008) << "There are " << num_comments << " comments \
in the text" << endl; for(int i = 0; i < num_comments; i++)
{
- kDebug(41008) <<"key is" << text_ptr[i].key <<" containing" << \
text_ptr[i].text; + kDebug(41008) << "key is " << \
text_ptr[i].key << " containing " << text_ptr[i].text << endl; \
if(QString::compare(text_ptr[i].key, "title") == 0) {
info->setAboutInfo("title", text_ptr[i].text);
@@ -358,7 +358,7 @@
{
// new png_byte[] may raise such an exception if the image
// is invalid / to large.
- kDebug(41008) <<"bad alloc:" << e.what();
+ kDebug(41008) << "bad alloc: " << e.what() << endl;
// Free only the already allocated png_byte instances.
png_destroy_read_struct(&png_ptr, &info_ptr, &end_info);
return (KisImageBuilder_RESULT_FAILURE);
@@ -494,7 +494,7 @@
KisImageBuilder_Result KisPNGConverter::buildImage(const KUrl& uri)
{
- kDebug(41008) << QFile::encodeName(uri.path()) <<"" << uri.path() <<"" \
<< uri; + kDebug(41008) << QFile::encodeName(uri.path()) << " " << \
uri.path() << " " << uri << endl; if (uri.isEmpty())
return KisImageBuilder_RESULT_NO_URI;
@@ -511,7 +511,7 @@
uriTF.setPath( tmpFile );
// open the file
- kDebug(41008) << QFile::encodeName(uriTF.path()) <<"" << \
uriTF.path() <<"" << uriTF; + kDebug(41008) << \
QFile::encodeName(uriTF.path()) << " " << uriTF.path() << " " << uriTF << \
endl; QFile *fp = new QFile(QFile::encodeName(uriTF.path()) );
if (fp->exists())
{
@@ -535,15 +535,17 @@
KisImageBuilder_Result KisPNGConverter::buildFile(const KUrl& uri, \
KisImageSP img, KisPaintDeviceSP device, vKisAnnotationSP_it \
annotationsStart, vKisAnnotationSP_it annotationsEnd, int compression, bool \
interlace, bool alpha) {
- kDebug(41008) <<"Start writing PNG File";
+ kDebug(41008) << "Start writing PNG File " << uri << endl;
if (uri.isEmpty())
return KisImageBuilder_RESULT_NO_URI;
if (!uri.isLocalFile())
return KisImageBuilder_RESULT_NOT_LOCAL;
// Open a QIODevice for writting
- QFile *fp = new QFile(QFile::encodeName(uri.path()) );
- return buildFile(fp, img, device, annotationsStart, annotationsEnd, \
compression, interlace, alpha); + QFile *fp = new QFile( \
QFile::encodeName(uri.path()) ); + KisImageBuilder_Result result = \
buildFile(fp, img, device, annotationsStart, annotationsEnd, compression, \
interlace, alpha); + delete fp;
+ return result;
// TODO: if failure do KIO::del(uri); // async
}
@@ -552,7 +554,7 @@
{
if(not iodevice->open(QIODevice::WriteOnly))
{
- kDebug(41008) <<"Failed to open PNG File for writting";
+ kDebug(41008) << "Failed to open PNG File for writting" << endl;
return (KisImageBuilder_RESULT_FAILURE);
}
@@ -651,7 +653,7 @@
}
if(!toomuchcolor)
{
- kDebug(41008) <<"Found a palette of" << num_palette <<" \
colors"; + kDebug(41008) << "Found a palette of " << num_palette \
<< " colors" << endl; color_type = PNG_COLOR_TYPE_PALETTE;
if( num_palette <= 2)
{
@@ -689,16 +691,16 @@
vKisAnnotationSP_it it = annotationsStart;
while(it != annotationsEnd) {
if (!(*it) || (*it) -> type() == QString()) {
- kDebug(41008) <<"Warning: empty annotation";
+ kDebug(41008) << "Warning: empty annotation" << endl;
++it;
continue;
}
- kDebug(41008) <<"Trying to store annotation of type" << (*it) -> \
type() <<" of size" << (*it) -> annotation() . size(); + \
kDebug(41008) << "Trying to store annotation of type " << (*it) -> type() \
<< " of size " << (*it) -> annotation() . size() << endl;
if ((*it) -> type().startsWith("krita_attribute:")) { // Attribute
// FIXME: it should be possible to save krita_attributes in \
the "CHUNKs"
- kDebug(41008) <<"can't save this annotation :" << (*it) -> \
type(); + kDebug(41008) << "can't save this annotation : " << \
(*it) -> type() << endl; } else { // Profile
char* name = new char[(*it)->type().length()+1];
strcpy(name, (*it)->type().toAscii());
@@ -749,7 +751,6 @@
// Fill the data structure
png_byte** row_pointers= new png_byte*[height];
-
for (int y = 0; y < height; y++) {
KisHLineConstIterator it = device->createHLineConstIterator(0, y, \
width); row_pointers[y] = new png_byte[width*device->pixelSize()];
@@ -844,7 +845,7 @@
{
delete [] palette;
}
-
+ iodevice->close();
return KisImageBuilder_RESULT_OK;
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic