Scribus
Open source desktop publishing at your fingertips
WMFImport Class Reference
Inheritance diagram for WMFImport:
Collaboration diagram for WMFImport:

Public Member Functions

 WMFImport (ScribusDoc *doc, int flags)
 
bool import (QString fname, const TransactionSettings &trSettings, int flags)
 
QImage readThumbnail (QString fn)
 
void wmfClosePath (FPointArray *i)
 
void wmfMoveTo (double x1, double y1)
 
void wmfLineTo (FPointArray *i, double x1, double y1)
 
void wmfCurveToCubic (FPointArray *i, double x1, double y1, double x2, double y2, double x3, double y3)
 
void setWindowOrg (QList< PageItem * > &items, long num, short *params)
 
void setWindowExt (QList< PageItem * > &items, long num, short *params)
 
void lineTo (QList< PageItem * > &items, long num, short *params)
 
void moveTo (QList< PageItem * > &items, long num, short *params)
 
void ellipse (QList< PageItem * > &items, long num, short *params)
 
void polygon (QList< PageItem * > &items, long num, short *params)
 
void polyPolygon (QList< PageItem * > &items, long num, short *params)
 
void polyline (QList< PageItem * > &items, long num, short *params)
 
void rectangle (QList< PageItem * > &items, long num, short *params)
 
void roundRect (QList< PageItem * > &items, long num, short *params)
 
void arc (QList< PageItem * > &items, long num, short *params)
 
void chord (QList< PageItem * > &items, long num, short *params)
 
void pie (QList< PageItem * > &items, long num, short *params)
 
void setPolyFillMode (QList< PageItem * > &items, long num, short *params)
 
void setBkColor (QList< PageItem * > &items, long num, short *params)
 
void setBkMode (QList< PageItem * > &items, long num, short *params)
 
void saveDC (QList< PageItem * > &items, long num, short *params)
 
void restoreDC (QList< PageItem * > &items, long num, short *params)
 
void intersectClipRect (QList< PageItem * > &items, long num, short *params)
 
void excludeClipRect (QList< PageItem * > &items, long num, short *params)
 
void setTextColor (QList< PageItem * > &items, long num, short *params)
 
void setTextAlign (QList< PageItem * > &items, long num, short *params)
 
void textOut (QList< PageItem * > &items, long num, short *params)
 
void extTextOut (QList< PageItem * > &items, long num, short *params)
 
void selectObject (QList< PageItem * > &items, long num, short *params)
 
void deleteObject (QList< PageItem * > &items, long num, short *params)
 
void createEmptyObject (QList< PageItem * > &items, long num, short *params)
 
void createBrushIndirect (QList< PageItem * > &items, long num, short *params)
 
void createPenIndirect (QList< PageItem * > &items, long num, short *params)
 
void createFontIndirect (QList< PageItem * > &items, long num, short *params)
 
void noop (QList< PageItem * > &items, long, short *)
 
void end (QList< PageItem * > &items, long, short *)
 

Public Attributes

bool interactive
 
bool unsupported
 Indicator if there is any unsupported feature in imported wmf.
 
bool importFailed
 
bool importCanceled
 
ScribusDocm_Doc
 
Selectionm_tmpSel
 
QStringList importedColors
 

Protected Member Functions

bool importWMF (const TransactionSettings &trSettings, int flags)
 
bool loadWMF (const QString &fileName)
 
bool loadWMF (QBuffer &buffer)
 
QList< PageItem * > parseWmfCommands (void)
 
void finishCmdParsing (PageItem *item)
 
QString importColor (const QColor &color)
 
QColor colorFromParam (short *params)
 
QTextCodec * codecFromCharset (int charset)
 
QString symbolToUnicode (const QByteArray &chars)
 
FPointArray pointsFromParam (short num, short *params)
 
FPointArray pointsToPolyline (const FPointArray &points, bool closePath)
 
void pointsToAngle (double xStart, double yStart, double xEnd, double yEnd, double &angleStart, double &angleLength)
 
void addHandle (WmfObjHandle *)
 
void deleteHandle (int)
 
unsigned short calcCheckSum (WmfPlaceableHeader *)
 
virtual int findFunc (unsigned short aFunc) const
 
unsigned int toDWord (short *params)
 

Protected Attributes

QString m_docDesc
 
QString m_docTitle
 
WMFContext m_context
 
bool m_IsPlaceable
 
bool m_IsEnhanced
 
bool m_Valid
 
QRect m_HeaderBoundingBox
 
QRect m_BBox
 
QList< WmfCmd * > m_commands
 
WmfObjHandle ** m_ObjHandleTab
 
FPointArray m_Points
 
int m_Dpi
 

Member Function Documentation

void WMFImport::addHandle ( WmfObjHandle handle)
protected

Handle win-object-handles

void WMFImport::arc ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw arc

unsigned short WMFImport::calcCheckSum ( WmfPlaceableHeader apmfh)
protected

Calculate header checksum

void WMFImport::chord ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw chord

QTextCodec * WMFImport::codecFromCharset ( int  charset)
protected

Get text codec from charset code

QColor WMFImport::colorFromParam ( short *  params)
protected

Get color from parameters array

void WMFImport::createBrushIndirect ( QList< PageItem * > &  items,
long  num,
short *  params 
)

create a logical brush

void WMFImport::createEmptyObject ( QList< PageItem * > &  items,
long  num,
short *  params 
)

create an empty object in the object list

void WMFImport::createFontIndirect ( QList< PageItem * > &  items,
long  num,
short *  params 
)

create a logical font

void WMFImport::createPenIndirect ( QList< PageItem * > &  items,
long  num,
short *  params 
)

create a logical pen

void WMFImport::deleteObject ( QList< PageItem * > &  items,
long  num,
short *  params 
)

Free object handle

void WMFImport::ellipse ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw ellipse

void WMFImport::end ( QList< PageItem * > &  items,
long  ,
short *   
)

end of meta file

void WMFImport::excludeClipRect ( QList< PageItem * > &  items,
long  num,
short *  params 
)

delete a clipping rectangle of the original region

int WMFImport::findFunc ( unsigned short  aFunc) const
protectedvirtual

Find function in metafunc table by metafile-function. Returns index or -1 if not found.

QString WMFImport::importColor ( const QColor &  color)
protected

Import a QColor

bool WMFImport::importWMF ( const TransactionSettings trSettings,
int  flags 
)
protected

Protected import functions

void WMFImport::intersectClipRect ( QList< PageItem * > &  items,
long  num,
short *  params 
)

clipping region is the intersection of this region and the original region

void WMFImport::lineTo ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw line to coord

void WMFImport::moveTo ( QList< PageItem * > &  items,
long  num,
short *  params 
)

move pen to coord

void WMFImport::noop ( QList< PageItem * > &  items,
long  ,
short *   
)

nothing to do

void WMFImport::pie ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw pie

FPointArray WMFImport::pointsFromParam ( short  num,
short *  params 
)
protected

Get polygon array from parameters array

FPointArray WMFImport::pointsToPolyline ( const FPointArray points,
bool  closePath 
)
protected

Transform a point array to an item path used as polyline

void WMFImport::polygon ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw polygon

void WMFImport::polyline ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw series of lines

void WMFImport::polyPolygon ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw a list of polygons

void WMFImport::rectangle ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw a rectangle

void WMFImport::restoreDC ( QList< PageItem * > &  items,
long  num,
short *  params 
)

restore device context

void WMFImport::roundRect ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw round rectangle

void WMFImport::saveDC ( QList< PageItem * > &  items,
long  num,
short *  params 
)

save device context

void WMFImport::selectObject ( QList< PageItem * > &  items,
long  num,
short *  params 
)

Activate object handle

void WMFImport::setBkColor ( QList< PageItem * > &  items,
long  num,
short *  params 
)

set background pen color

void WMFImport::setBkMode ( QList< PageItem * > &  items,
long  num,
short *  params 
)

set background pen mode

void WMFImport::setPolyFillMode ( QList< PageItem * > &  items,
long  num,
short *  params 
)

set polygon fill mode

void WMFImport::setTextAlign ( QList< PageItem * > &  items,
long  num,
short *  params 
)

set text alignment

void WMFImport::setTextColor ( QList< PageItem * > &  items,
long  num,
short *  params 
)

set text color

void WMFImport::setWindowExt ( QList< PageItem * > &  items,
long  num,
short *  params 
)

set window extents

void WMFImport::setWindowOrg ( QList< PageItem * > &  items,
long  num,
short *  params 
)

set window origin

QString WMFImport::symbolToUnicode ( const QByteArray &  chars)
protected

Translate characters in symbol charset to unicode

void WMFImport::textOut ( QList< PageItem * > &  items,
long  num,
short *  params 
)

draw text

unsigned int WMFImport::toDWord ( short *  params)
protected

Converts two parameters to long


The documentation for this class was generated from the following files: