summaryrefslogtreecommitdiffstats
path: root/plugins/src/imageformats/png
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-11-08 12:31:36 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-11-08 12:31:36 -0600
commitd796c9dd933ab96ec83b9a634feedd5d32e1ba3f (patch)
tree6e3dcca4f77e20ec8966c666aac7c35bd4704053 /plugins/src/imageformats/png
downloadtqt3-d796c9dd933ab96ec83b9a634feedd5d32e1ba3f.tar.gz
tqt3-d796c9dd933ab96ec83b9a634feedd5d32e1ba3f.zip
Test conversion to TQt3 from Qt3 8c6fc1f8e35fd264dd01c582ca5e7549b32ab731
Diffstat (limited to 'plugins/src/imageformats/png')
-rw-r--r--plugins/src/imageformats/png/main.cpp76
-rw-r--r--plugins/src/imageformats/png/png.pro55
2 files changed, 131 insertions, 0 deletions
diff --git a/plugins/src/imageformats/png/main.cpp b/plugins/src/imageformats/png/main.cpp
new file mode 100644
index 000000000..7c1cd03b2
--- /dev/null
+++ b/plugins/src/imageformats/png/main.cpp
@@ -0,0 +1,76 @@
+#ifndef QT_CLEAN_NAMESPACE
+#define QT_CLEAN_NAMESPACE
+#endif
+#include <qimageformatplugin.h>
+
+#ifndef QT_NO_IMAGEFORMATPLUGIN
+
+#ifdef QT_NO_IMAGEIO_PNG
+#undef QT_NO_IMAGEIO_PNG
+#endif
+#include "../../../../src/kernel/qpngio.cpp"
+
+class PNGFormat : public TQImageFormatPlugin
+{
+public:
+ PNGFormat();
+
+ TQStringList keys() const;
+ bool loadImage( const TQString &format, const TQString &filename, TQImage * );
+ bool saveImage( const TQString &format, const TQString &filename, const TQImage& );
+ bool installIOHandler( const TQString & );
+};
+
+PNGFormat::PNGFormat()
+{
+}
+
+
+TQStringList PNGFormat::keys() const
+{
+ TQStringList list;
+ list << "PNG";
+
+ return list;
+}
+
+bool PNGFormat::loadImage( const TQString &format, const TQString &filename, TQImage *image )
+{
+ if ( format != "PNG" )
+ return FALSE;
+
+ TQImageIO io;
+ io.setFileName( filename );
+ io.setImage( *image );
+
+ read_png_image( &io );
+
+ return TRUE;
+}
+
+bool PNGFormat::saveImage( const TQString &format, const TQString &filename, const TQImage &image )
+{
+ if ( format != "PNG" )
+ return FALSE;
+
+ TQImageIO io;
+ io.setFileName( filename );
+ io.setImage( image );
+
+ write_png_image( &io );
+
+ return TRUE;
+}
+
+bool PNGFormat::installIOHandler( const TQString &name )
+{
+ if ( name != "PNG" )
+ return FALSE;
+
+ qInitPngIO();
+ return TRUE;
+}
+
+Q_EXPORT_PLUGIN( PNGFormat )
+
+#endif // QT_NO_IMAGEFORMATPLUGIN
diff --git a/plugins/src/imageformats/png/png.pro b/plugins/src/imageformats/png/png.pro
new file mode 100644
index 000000000..fd1db1c3f
--- /dev/null
+++ b/plugins/src/imageformats/png/png.pro
@@ -0,0 +1,55 @@
+TEMPLATE = lib
+TARGET += qpng
+
+CONFIG += qt plugin
+DESTDIR = ../../../imageformats
+
+VERSION = 1.0.0
+REQUIRES = !no-png !png
+
+SOURCES += main.cpp
+
+system-png {
+ unix:LIBS += -lpng
+ win32:LIBS += libpng.lib
+}
+!system-png {
+ INCLUDEPATH += $$QT_SOURCE_TREE/src/3rdparty/libpng
+ INCLUDEPATH += $$QT_SOURCE_TREE/src/3rdparty/zlib
+ SOURCES += \
+ ../../../../src/3rdparty/libpng/png.c \
+ ../../../../src/3rdparty/libpng/pngerror.c \
+ ../../../../src/3rdparty/libpng/pngget.c \
+ ../../../../src/3rdparty/libpng/pngmem.c \
+ ../../../../src/3rdparty/libpng/pngpread.c \
+ ../../../../src/3rdparty/libpng/pngread.c \
+ ../../../../src/3rdparty/libpng/pngrio.c \
+ ../../../../src/3rdparty/libpng/pngrtran.c \
+ ../../../../src/3rdparty/libpng/pngrutil.c \
+ ../../../../src/3rdparty/libpng/pngset.c \
+ ../../../../src/3rdparty/libpng/pngtrans.c \
+ ../../../../src/3rdparty/libpng/pngwio.c \
+ ../../../../src/3rdparty/libpng/pngwrite.c \
+ ../../../../src/3rdparty/libpng/pngwtran.c \
+ ../../../../src/3rdparty/libpng/pngwutil.c
+}
+
+!system-zlib:SOURCES += \
+ ../../../../src/3rdparty/zlib/adler32.c \
+ ../../../../src/3rdparty/zlib/compress.c \
+ ../../../../src/3rdparty/zlib/crc32.c \
+ ../../../../src/3rdparty/zlib/deflate.c \
+ ../../../../src/3rdparty/zlib/gzio.c \
+ ../../../../src/3rdparty/zlib/inffast.c \
+ ../../../../src/3rdparty/zlib/inflate.c \
+ ../../../../src/3rdparty/zlib/inftrees.c \
+ ../../../../src/3rdparty/zlib/trees.c \
+ ../../../../src/3rdparty/zlib/uncompr.c \
+ ../../../../src/3rdparty/zlib/zutil.c
+
+system-zlib:unix:LIBS += -lz
+system-zlib:mac:LIBS += -lz
+
+
+target.path += $$plugins.path/imageformats
+INSTALLS += target