lib

metafuncs.h
1/* WMF Metafile Function Description Table
2 * Author: Stefan Taferner <taferner@kde.org>
3 */
4#ifndef metafunc_h
5#define metafunc_h
6
7class QWinMetaFile;
8
9static const struct MetaFuncRec
10{
11 const char* name;
12 unsigned short func;
13 void ( QWinMetaFile::*method )( long, short* );
14} metaFuncTab[] =
15 {
16 { "SETBKCOLOR", 0x0201, &QWinMetaFile::setBkColor },
17 { "SETBKMODE", 0x0102, &QWinMetaFile::setBkMode },
18 { "SETMAPMODE", 0x0103, &QWinMetaFile::noop },
19 { "SETROP2", 0x0104, &QWinMetaFile::setRop },
20 { "SETRELABS", 0x0105, &QWinMetaFile::noop },
21 { "SETPOLYFILLMODE", 0x0106, &QWinMetaFile::setPolyFillMode },
22 { "SETSTRETCHBLTMODE", 0x0107, &QWinMetaFile::noop },
23 { "SETTEXTCHAREXTRA", 0x0108, &QWinMetaFile::noop },
24 { "SETTEXTCOLOR", 0x0209, &QWinMetaFile::setTextColor },
25 { "SETTEXTJUSTIFICATION", 0x020A, &QWinMetaFile::noop },
26 { "SETWINDOWORG", 0x020B, &QWinMetaFile::setWindowOrg },
27 { "SETWINDOWEXT", 0x020C, &QWinMetaFile::setWindowExt },
28 { "SETVIEWPORTORG", 0x020D, &QWinMetaFile::noop },
29 { "SETVIEWPORTEXT", 0x020E, &QWinMetaFile::noop },
30 { "OFFSETWINDOWORG", 0x020F, &QWinMetaFile::noop },
31 { "SCALEWINDOWEXT", 0x0410, &QWinMetaFile::noop },
32 { "OFFSETVIEWPORTORG", 0x0211, &QWinMetaFile::noop },
33 { "SCALEVIEWPORTEXT", 0x0412, &QWinMetaFile::noop },
34 { "LINETO", 0x0213, &QWinMetaFile::lineTo },
35 { "MOVETO", 0x0214, &QWinMetaFile::moveTo },
36 { "EXCLUDECLIPRECT", 0x0415, &QWinMetaFile::excludeClipRect },
37 { "INTERSECTCLIPRECT", 0x0416, &QWinMetaFile::intersectClipRect },
38 { "ARC", 0x0817, &QWinMetaFile::arc },
39 { "ELLIPSE", 0x0418, &QWinMetaFile::ellipse },
40 { "FLOODFILL", 0x0419, &QWinMetaFile::noop },
41 { "PIE", 0x081A, &QWinMetaFile::pie },
42 { "RECTANGLE", 0x041B, &QWinMetaFile::rectangle },
43 { "ROUNDRECT", 0x061C, &QWinMetaFile::roundRect },
44 { "PATBLT", 0x061D, &QWinMetaFile::noop },
45 { "SAVEDC", 0x001E, &QWinMetaFile::saveDC },
46 { "SETPIXEL", 0x041F, &QWinMetaFile::setPixel },
47 { "OFFSETCLIPRGN", 0x0220, &QWinMetaFile::noop },
48 { "TEXTOUT", 0x0521, &QWinMetaFile::textOut },
49 { "BITBLT", 0x0922, &QWinMetaFile::noop },
50 { "STRETCHBLT", 0x0B23, &QWinMetaFile::noop },
51 { "POLYGON", 0x0324, &QWinMetaFile::polygon },
52 { "POLYLINE", 0x0325, &QWinMetaFile::polyline },
53 { "ESCAPE", 0x0626, &QWinMetaFile::noop },
54 { "RESTOREDC", 0x0127, &QWinMetaFile::restoreDC },
55 { "FILLREGION", 0x0228, &QWinMetaFile::noop },
56 { "FRAMEREGION", 0x0429, &QWinMetaFile::noop },
57 { "INVERTREGION", 0x012A, &QWinMetaFile::noop },
58 { "PAINTREGION", 0x012B, &QWinMetaFile::noop },
59 { "SELECTCLIPREGION", 0x012C, &QWinMetaFile::noop },
60 { "SELECTOBJECT", 0x012D, &QWinMetaFile::selectObject },
61 { "SETTEXTALIGN", 0x012E, &QWinMetaFile::setTextAlign },
62 { "CHORD", 0x0830, &QWinMetaFile::chord },
63 { "SETMAPPERFLAGS", 0x0231, &QWinMetaFile::noop },
64 { "EXTTEXTOUT", 0x0a32, &QWinMetaFile::extTextOut },
65 { "SETDIBTODEV", 0x0d33, &QWinMetaFile::noop },
66 { "SELECTPALETTE", 0x0234, &QWinMetaFile::noop },
67 { "REALIZEPALETTE", 0x0035, &QWinMetaFile::noop },
68 { "ANIMATEPALETTE", 0x0436, &QWinMetaFile::noop },
69 { "SETPALENTRIES", 0x0037, &QWinMetaFile::noop },
70 { "POLYPOLYGON", 0x0538, &QWinMetaFile::polyPolygon },
71 { "RESIZEPALETTE", 0x0139, &QWinMetaFile::noop },
72 { "DIBBITBLT", 0x0940, &QWinMetaFile::dibBitBlt },
73 { "DIBSTRETCHBLT", 0x0b41, &QWinMetaFile::dibStretchBlt },
74 { "DIBCREATEPATTERNBRUSH", 0x0142, &QWinMetaFile::dibCreatePatternBrush },
75 { "STRETCHDIB", 0x0f43, &QWinMetaFile::stretchDib },
76 { "EXTFLOODFILL", 0x0548, &QWinMetaFile::noop },
77 { "DELETEOBJECT", 0x01f0, &QWinMetaFile::deleteObject },
78 { "CREATEPALETTE", 0x00f7, &QWinMetaFile::createEmptyObject },
79 { "CREATEPATTERNBRUSH", 0x01F9, &QWinMetaFile::createEmptyObject },
80 { "CREATEPENINDIRECT", 0x02FA, &QWinMetaFile::createPenIndirect },
81 { "CREATEFONTINDIRECT", 0x02FB, &QWinMetaFile::createFontIndirect },
82 { "CREATEBRUSHINDIRECT", 0x02FC, &QWinMetaFile::createBrushIndirect },
83 { "CREATEREGION", 0x06FF, &QWinMetaFile::createEmptyObject },
84 { "END", 0, &QWinMetaFile::end },
85 // always the latest in the table : in case of unknown function
86 { NULL, 0, &QWinMetaFile::noop },
87 };
88
89
90#endif /*metafunc_h*/
QWinMetaFile is a WMF viewer based on TQt toolkit How to use QWinMetaFile :
Definition qwmf.h:53
void polygon(long num, short *parms)
draw polygon
Definition qwmf.cpp:482
void chord(long num, short *parms)
draw chord
Definition qwmf.cpp:581
void setRop(long num, short *parms)
Set raster operation mode.
Definition qwmf.cpp:641
void polyPolygon(long num, short *parms)
draw a list of polygons
Definition qwmf.cpp:492
void setBkColor(long num, short *parms)
set background pen color
Definition qwmf.cpp:616
void saveDC(long num, short *parms)
save device context
Definition qwmf.cpp:648
void createEmptyObject(long num, short *parms)
create an empty object in the object list
Definition qwmf.cpp:918
void dibBitBlt(long num, short *parms)
copies a DIB into a dest location
Definition qwmf.cpp:797
void end(long, short *)
end of meta file
Definition qwmf.cpp:1042
void restoreDC(long num, short *parms)
restore device context
Definition qwmf.cpp:655
void textOut(long num, short *parms)
draw text
Definition qwmf.cpp:713
void setWindowExt(long num, short *parms)
set window extents
Definition qwmf.cpp:426
void createBrushIndirect(long num, short *parms)
create a logical brush
Definition qwmf.cpp:928
void setTextColor(long num, short *parms)
set text color
Definition qwmf.cpp:699
void createPenIndirect(long num, short *parms)
create a logical pen
Definition qwmf.cpp:978
void setPolyFillMode(long num, short *parms)
set polygon fill mode
Definition qwmf.cpp:609
void createFontIndirect(long num, short *parms)
create a logical font
Definition qwmf.cpp:1015
void dibCreatePatternBrush(long num, short *parms)
create a pattern brush
Definition qwmf.cpp:886
void setBkMode(long num, short *parms)
set background pen mode
Definition qwmf.cpp:623
void setPixel(long num, short *parms)
set a pixel
Definition qwmf.cpp:631
void setWindowOrg(long num, short *parms)
set window origin
Definition qwmf.cpp:407
void excludeClipRect(long num, short *parms)
delete a clipping rectangle of the original region
Definition qwmf.cpp:680
void dibStretchBlt(long num, short *parms)
stretches a DIB into a dest location
Definition qwmf.cpp:828
void setTextAlign(long num, short *parms)
set text alignment
Definition qwmf.cpp:706
void ellipse(long num, short *parms)
draw ellipse
Definition qwmf.cpp:475
void arc(long num, short *parms)
draw arc
Definition qwmf.cpp:567
void polyline(long num, short *parms)
draw series of lines
Definition qwmf.cpp:535
void lineTo(long num, short *parms)
draw line to coord
Definition qwmf.cpp:461
void deleteObject(long num, short *parms)
Free object handle.
Definition qwmf.cpp:911
void roundRect(long num, short *parms)
draw round rectangle
Definition qwmf.cpp:552
void moveTo(long num, short *parms)
move pen to coord
Definition qwmf.cpp:468
void selectObject(long num, short *parms)
Activate object handle.
Definition qwmf.cpp:902
void intersectClipRect(long num, short *parms)
clipping region is the intersection of this region and the original region
Definition qwmf.cpp:663
void pie(long num, short *parms)
draw pie
Definition qwmf.cpp:595
void noop(long, short *)
nothing to do
Definition qwmf.cpp:1037
void rectangle(long num, short *parms)
draw a rectangle
Definition qwmf.cpp:545