summaryrefslogtreecommitdiffstats
path: root/lib/kwmf/kowmfwrite.cc
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2021-05-23 20:48:35 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2021-05-29 15:16:28 +0900
commit8b78a8791bc539bcffe7159f9d9714d577cb3d7d (patch)
tree1328291f966f19a22d7b13657d3f01a588eb1083 /lib/kwmf/kowmfwrite.cc
parent95834e2bdc5e01ae1bd21ac0dfa4fa1d2417fae9 (diff)
downloadkoffice-8b78a8791bc539bcffe7159f9d9714d577cb3d7d.tar.gz
koffice-8b78a8791bc539bcffe7159f9d9714d577cb3d7d.zip
Renaming of files in preparation for code style tools.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'lib/kwmf/kowmfwrite.cc')
-rw-r--r--lib/kwmf/kowmfwrite.cc456
1 files changed, 0 insertions, 456 deletions
diff --git a/lib/kwmf/kowmfwrite.cc b/lib/kwmf/kowmfwrite.cc
deleted file mode 100644
index 22a0d131..00000000
--- a/lib/kwmf/kowmfwrite.cc
+++ /dev/null
@@ -1,456 +0,0 @@
-/* This file is part of the KDE libraries
- * Copyright (c) 2003 thierry lorthiois (lorthioist@wanadoo.fr)
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License version 2 as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
-*/
-
-#include <math.h>
-#include <tqfile.h>
-#include <tqdatastream.h>
-
-#include <kdebug.h>
-
-#include "kowmfstruct.h"
-#include "kowmfreadprivate.h"
-#include "kowmfwrite.h"
-
-/**
- * Private data
- */
-class KoWmfWritePrivate
-{
-public:
- TQRect mBBox; // bounding rectangle
- int mDpi; // number of point per inch for the default size
- int mMaxRecordSize;
-
- // memory allocation for WMF file
- TQFile mFileOut;
- TQDataStream mSt;
-};
-
-
-
-KoWmfWrite::KoWmfWrite( const TQString& fileName ) {
- d = new KoWmfWritePrivate;
-
- d->mDpi = 1024;
- d->mMaxRecordSize = 0;
- d->mFileOut.setName( fileName );
-}
-
-KoWmfWrite::~KoWmfWrite() {
- delete d;
-}
-
-
-void KoWmfWrite::setDefaultDpi( int dpi ) {
- d->mDpi = dpi;
-}
-
-
-//-----------------------------------------------------------------------------
-// Virtual Painter => create the WMF
-
-bool KoWmfWrite::begin() {
-
- if ( !d->mFileOut.open( IO_WriteOnly ) )
- {
- kdDebug() << "Cannot open file " << TQString(TQFile::encodeName(d->mFileOut.name())) << endl;
- return false;
- }
- d->mSt.setDevice( &d->mFileOut );
- d->mSt.setByteOrder( TQDataStream::LittleEndian );
-
- // reserved placeable and standard header
- for ( int i=0 ; i < 10 ; i++ ) {
- d->mSt << (TQ_UINT32)0;
- }
-
- // initialize the stack of objects
- // Pen
- d->mSt << (TQ_UINT32)8 << (TQ_UINT16)0x02FA;
- d->mSt << (TQ_UINT16)5 << (TQ_UINT16)0 << (TQ_UINT16)0 << (TQ_UINT32)0;
- // Brush
- d->mSt << (TQ_UINT32)7 << (TQ_UINT16)0x02FC;
- d->mSt << (TQ_UINT16)1 << (TQ_UINT32)0 << (TQ_UINT16)0;
- for ( int i=0 ; i < 4 ; i++ ) {
- d->mSt << (TQ_UINT32)8 << (TQ_UINT16)0x02FA << (TQ_UINT16)0 << (TQ_UINT32)0 << (TQ_UINT32)0;
- }
- d->mMaxRecordSize = 8;
-
- return true;
-}
-
-
-bool KoWmfWrite::end() {
- WmfPlaceableHeader pheader = { 0x9AC6CDD7, 0, 0, 0, 0, 0, 0, 0, 0 };
- TQ_UINT16 checksum;
-
- // End of the wmf file
- d->mSt << (TQ_UINT32)3 << (TQ_UINT16)0;
-
- // adjust header
- pheader.left = d->mBBox.left();
- pheader.top = d->mBBox.top();
- pheader.right = d->mBBox.right();
- pheader.bottom = d->mBBox.bottom();
- pheader.inch = d->mDpi;
- checksum = KoWmfReadPrivate::calcCheckSum( &pheader );
-
- // write headers
- d->mFileOut.at( 0 );
- d->mSt << (TQ_UINT32)0x9AC6CDD7 << (TQ_UINT16)0;
- d->mSt << (TQ_INT16)d->mBBox.left() << (TQ_INT16)d->mBBox.top() << (TQ_INT16)d->mBBox.right() << (TQ_INT16)d->mBBox.bottom();
- d->mSt << (TQ_UINT16)d->mDpi << (TQ_UINT32)0 << checksum;
- d->mSt << (TQ_UINT16)1 << (TQ_UINT16)9 << (TQ_UINT16)0x300 << (TQ_UINT32)(d->mFileOut.size()/2);
- d->mSt << (TQ_UINT16)6 << (TQ_UINT32)d->mMaxRecordSize << (TQ_UINT16)0;
-
- d->mFileOut.close();
-
- return true;
-}
-
-
-void KoWmfWrite::save() {
- d->mSt << (TQ_UINT32)3 << (TQ_UINT16)0x001E;
-}
-
-
-void KoWmfWrite::restore() {
- d->mSt << (TQ_UINT32)4 << (TQ_UINT16)0x0127 << (TQ_UINT16)1;
-}
-
-
-void KoWmfWrite::setPen( const TQPen &pen ) {
- int style;
- int max = sizeof(koWmfStylePen) / sizeof(TQt::SolidLine);
-
- // we can't delete an object currently selected
- // select another object
- d->mSt << (TQ_UINT32)4 << (TQ_UINT16)0x012D << (TQ_UINT16)0;
- // delete object
- d->mSt << (TQ_UINT32)4 << (TQ_UINT16)0x01f0 << (TQ_UINT16)2;
-
- for ( style=0 ; style < max ; style++ ) {
- if ( koWmfStylePen[ style ] == pen.style() ) break;
- }
- if ( style == max ) {
- // SolidLine
- style = 0;
- }
- d->mSt << (TQ_UINT32)8 << (TQ_UINT16)0x02FA;
- d->mSt << (TQ_UINT16)style << (TQ_UINT16)pen.width() << (TQ_UINT16)0 << (TQ_UINT32)winColor( pen.color() );
-
- // select object
- d->mSt << (TQ_UINT32)4 << (TQ_UINT16)0x012D << (TQ_UINT16)2;
-}
-
-
-void KoWmfWrite::setBrush( const TQBrush &brush ) {
- int style;
- int max = sizeof(koWmfStyleBrush) / sizeof(TQt::NoBrush);
-
- // we can't delete an object currently selected
- // select another object
- d->mSt << (TQ_UINT32)4 << (TQ_UINT16)0x012D << (TQ_UINT16)1;
- // delete object
- d->mSt << (TQ_UINT32)4 << (TQ_UINT16)0x01f0 << (TQ_UINT16)3;
-
- for ( style=0 ; style < max ; style++ ) {
- if ( koWmfStyleBrush[ style ] == brush.style() ) break;
- }
- if ( style == max ) {
- // SolidPattern
- style = 0;
- }
- d->mSt << (TQ_UINT32)7 << (TQ_UINT16)0x02FC;
- d->mSt << (TQ_UINT16)style << (TQ_UINT32)winColor( brush.color() ) << (TQ_UINT16)0;
-
- // select object
- d->mSt << (TQ_UINT32)4 << (TQ_UINT16)0x012D << (TQ_UINT16)3;
-}
-
-
-void KoWmfWrite::setFont( const TQFont & ) {
-}
-
-
-void KoWmfWrite::setBackgroundColor( const TQColor &c ) {
- d->mSt << (TQ_UINT32)5 << (TQ_UINT16)0x0201 << (TQ_UINT32)winColor( c );
-}
-
-
-void KoWmfWrite::setBackgroundMode( Qt::BGMode mode ) {
- d->mSt << (TQ_UINT32)4 << (TQ_UINT16)0x0102;
- if ( mode == Qt::TransparentMode )
- d->mSt << (TQ_UINT16)1;
- else
- d->mSt << (TQ_UINT16)0;
-}
-
-
-void KoWmfWrite::setRasterOp( TQt::RasterOp op ) {
- d->mSt << (TQ_UINT32)5 << (TQ_UINT16)0x0104 << (TQ_UINT32)qtRasterToWin32( op );
-}
-
-
-void KoWmfWrite::setWindow( int left, int top, int width, int height ) {
- d->mBBox.setRect( left, top, width, height );
-
- // windowOrg
- d->mSt << (TQ_UINT32)5 << (TQ_UINT16)0x020B << (TQ_UINT16)top << (TQ_UINT16)left;
-
- // windowExt
- d->mSt << (TQ_UINT32)5 << (TQ_UINT16)0x020C << (TQ_UINT16)height << (TQ_UINT16)width;
-}
-
-
-void KoWmfWrite::setClipRegion( const TQRegion & ) {
-
-}
-
-
-void KoWmfWrite::clipping( bool enable ) {
- if ( !enable ) {
- // clipping region == bounding rectangle
- setClipRegion( d->mBBox );
- }
-}
-
-
-void KoWmfWrite::moveTo( int left, int top ) {
- d->mSt << (TQ_UINT32)5 << (TQ_UINT16)0x0214 << (TQ_UINT16)top << (TQ_UINT16)left;
-}
-
-
-void KoWmfWrite::lineTo( int left, int top ) {
- d->mSt << (TQ_UINT32)5 << (TQ_UINT16)0x0213 << (TQ_UINT16)top << (TQ_UINT16)left;
-}
-
-
-void KoWmfWrite::drawRect( int left, int top, int width, int height ) {
- TQRect rec( left, top, width, height );
-
- d->mSt << (TQ_UINT32)7 << (TQ_UINT16)0x041B;
- d->mSt << (TQ_UINT16)rec.bottom() << (TQ_UINT16)rec.right() << (TQ_UINT16)rec.top() << (TQ_UINT16)rec.left();
-}
-
-
-void KoWmfWrite::drawRoundRect( int left, int top, int width, int height , int roudw, int roudh ) {
- int widthCorner, heightCorner;
- TQRect rec( left, top, width, height );
-
- // convert percentage (roundw, roudh) in (widthCorner, heightCorner)
- widthCorner = ( roudw * width ) / 100;
- heightCorner = ( roudh * height ) / 100;
-
- d->mSt << (TQ_UINT32)9 << (TQ_UINT16)0x061C << (TQ_UINT16)heightCorner << (TQ_UINT16)widthCorner;
- d->mSt << (TQ_UINT16)rec.bottom() << (TQ_UINT16)rec.right() << (TQ_UINT16)rec.top() << (TQ_UINT16)rec.left();
-
- d->mMaxRecordSize = TQMAX( d->mMaxRecordSize, 9 );
-}
-
-
-void KoWmfWrite::drawEllipse( int left, int top, int width, int height ) {
- TQRect rec( left, top, width, height );
-
- d->mSt << (TQ_UINT32)7 << (TQ_UINT16)0x0418;
- d->mSt << (TQ_UINT16)rec.bottom() << (TQ_UINT16)rec.right() << (TQ_UINT16)rec.top() << (TQ_UINT16)rec.left();
-}
-
-
-void KoWmfWrite::drawArc( int left, int top, int width, int height , int a, int alen ) {
- int xCenter, yCenter;
- int offXStart, offYStart, offXEnd, offYEnd;
-
- angleToxy( offXStart, offYStart, offXEnd, offYEnd, a, alen );
- xCenter = left + (width / 2);
- yCenter = top + (height / 2);
-
- d->mSt << (TQ_UINT32)11 << (TQ_UINT16)0x0817;
- d->mSt << (TQ_UINT16)(yCenter + offYEnd) << (TQ_UINT16)(xCenter + offXEnd);
- d->mSt << (TQ_UINT16)(yCenter + offYStart) << (TQ_UINT16)(xCenter + offXStart);
- d->mSt << (TQ_UINT16)(top + height) << (TQ_UINT16)(left + width);
- d->mSt << (TQ_UINT16)top << (TQ_UINT16)left;
-
- d->mMaxRecordSize = TQMAX( d->mMaxRecordSize, 11 );
-}
-
-
-void KoWmfWrite::drawPie( int left, int top, int width, int height , int a, int alen ) {
- int xCenter, yCenter;
- int offXStart, offYStart, offXEnd, offYEnd;
-
- angleToxy( offXStart, offYStart, offXEnd, offYEnd, a, alen );
- xCenter = left + (width / 2);
- yCenter = top + (height / 2);
-
- d->mSt << (TQ_UINT32)11 << (TQ_UINT16)0x081A;
- d->mSt << (TQ_UINT16)(yCenter + offYEnd) << (TQ_UINT16)(xCenter + offXEnd);
- d->mSt << (TQ_UINT16)(yCenter + offYStart) << (TQ_UINT16)(xCenter + offXStart);
- d->mSt << (TQ_UINT16)(top + height) << (TQ_UINT16)(left + width);
- d->mSt << (TQ_UINT16)top << (TQ_UINT16)left;
-
- d->mMaxRecordSize = TQMAX( d->mMaxRecordSize, 11 );
-}
-
-
-void KoWmfWrite::drawChord( int left, int top, int width, int height , int a, int alen ) {
- int xCenter, yCenter;
- int offXStart, offYStart, offXEnd, offYEnd;
-
- angleToxy( offXStart, offYStart, offXEnd, offYEnd, a, alen );
- xCenter = left + (width / 2);
- yCenter = top + (height / 2);
-
- d->mSt << (TQ_UINT32)11 << (TQ_UINT16)0x0830;
- d->mSt << (TQ_UINT16)(yCenter + offYEnd) << (TQ_UINT16)(xCenter + offXEnd);
- d->mSt << (TQ_UINT16)(yCenter + offYStart) << (TQ_UINT16)(xCenter + offXStart);
- d->mSt << (TQ_UINT16)(top + height) << (TQ_UINT16)(left + width);
- d->mSt << (TQ_UINT16)top << (TQ_UINT16)left;
-
- d->mMaxRecordSize = TQMAX( d->mMaxRecordSize, 11 );
-}
-
-
-void KoWmfWrite::drawPolyline( const TQPointArray &pa ) {
- int size = 4 + (pa.size() * 2);
-
- d->mSt << (TQ_UINT32)size << (TQ_UINT16)0x0325 << (TQ_UINT16)pa.size();
- pointArray( pa );
-
- d->mMaxRecordSize = TQMAX( d->mMaxRecordSize, size );
-}
-
-
-void KoWmfWrite::drawPolygon( const TQPointArray &pa, bool ) {
- int size = 4 + (pa.size() * 2);
-
- d->mSt << (TQ_UINT32)size << (TQ_UINT16)0x0324 << (TQ_UINT16)pa.size();
- pointArray( pa );
-
- d->mMaxRecordSize = TQMAX( d->mMaxRecordSize, size );
-}
-
-
-void KoWmfWrite::drawPolyPolygon( TQPtrList<TQPointArray>& listPa, bool ) {
-
- TQPointArray *pa;
- int sizeArrayPoly = 0;
-
- for ( pa = listPa.first() ; pa ; pa = listPa.next() ) {
- sizeArrayPoly += (pa->size() * 2);
- }
- int size = 4 + listPa.count() + sizeArrayPoly;
- d->mSt << (TQ_UINT32)size << (TQ_UINT16)0x0538 << (TQ_UINT16)listPa.count();
-
- // number of point for each Polygon
- for ( pa = listPa.first() ; pa ; pa = listPa.next() ) {
- d->mSt << (TQ_UINT16)pa->size();
- }
-
- // list of points
- for ( pa = listPa.first() ; pa ; pa = listPa.next() ) {
- pointArray( *pa );
- }
-
- d->mMaxRecordSize = TQMAX( d->mMaxRecordSize, size );
-
-}
-
-
-void KoWmfWrite::drawImage( int , int , const TQImage &, int , int , int , int ) {
-/*
- TQImage img;
-
- img = image;
- img.setFormat( "BMP" );
-
- TQIODevice io = img.ioDevice();
- io.at( 14 ); // skip the BMP header
- d->mSt << io.readAll();
-*/
-}
-
-
-void KoWmfWrite::drawText( int , int , int , int , int , const TQString& , double ) {
-// d->mSt << (TQ_UINT32)3 << (TQ_UINT16)0x0A32;
-}
-
-//-----------------------------------------------------------------------------
-// Utilities and conversion TQt --> Wmf
-
-void KoWmfWrite::pointArray( const TQPointArray &pa ) {
- int left, top, i, max;
-
- for ( i=0, max=pa.size() ; i < max ; i++ ) {
- pa.point( i, &left, &top );
- d->mSt << (TQ_INT16)left << (TQ_INT16)top;
- }
-}
-
-
-TQ_UINT32 KoWmfWrite::winColor( TQColor color ) {
- TQ_UINT32 c;
-
- c = (color.red() & 0xFF);
- c += ( (color.green() & 0xFF) << 8 );
- c += ( (color.blue() & 0xFF) << 16 );
-
- return c;
-}
-
-
-void KoWmfWrite::angleToxy( int &xStart, int &yStart, int &xEnd, int &yEnd, int a, int alen ) {
- double angleStart, angleLength;
-
- angleStart = ((double)a * 3.14166) / 2880;
- angleLength = ((double)alen * 3.14166) / 2880;
-
- xStart = (int)(cos(angleStart) * 50);
- yStart = -(int)(sin(angleStart) * 50);
- xEnd = (int)(cos(angleLength) * 50);
- yEnd = -(int)(sin(angleLength) * 50);
-}
-
-
-TQ_UINT16 KoWmfWrite::qtRasterToWin16( TQt::RasterOp op ) const {
- int i;
-
- for ( i=0 ; i < 17 ; i++ ) {
- if ( koWmfOpTab16[ i ] == op ) break;
- }
-
- if ( i < 17 )
- return (TQ_UINT16)i;
- else
- return (TQ_UINT16)0;
-}
-
-
-TQ_UINT32 KoWmfWrite::qtRasterToWin32( TQt::RasterOp op ) const {
- int i;
-
- for ( i=0 ; i < 15 ; i++ ) {
- if ( koWmfOpTab32[ i ].qtRasterOp == op ) break;
- }
-
- if ( i < 15 )
- return koWmfOpTab32[ i ].winRasterOp;
- else
- return koWmfOpTab32[ 0 ].winRasterOp;
-}
-