]>
Commit | Line | Data |
---|---|---|
81f80d8c MF |
1 | typedef unsigned char uchar; |
2 | typedef unsigned int uint; | |
3 | typedef double qreal; | |
4 | template < typename Enum > class QFlags { | |
5 | enum NumberFlag { | |
6 | ShowBase = 0x1, ForcePoint = 0x2, ForceSign = | |
7 | 0x4, UppercaseBase = 0x8, UppercaseDigits = 0x10 | |
8 | }; | |
9 | }; | |
10 | ||
11 | class __attribute__ ((visibility("default"))) QPainterPath { | |
12 | }; | |
13 | ||
14 | enum { | |
15 | EdgeRight = 0x1, EdgeDown = 0x2, EdgeLeft = 0x4, EdgeUp = 0x8 | |
16 | }; | |
17 | void qt_addBitmapToPath(qreal x0, qreal y0, const uchar * image_data, int bpl, | |
18 | int w, int h, QPainterPath * path) | |
19 | { | |
20 | uint *grid = new uint[(w + 1) * (h + 1)]; | |
21 | for (int y = 0; y <= h; ++y) { | |
22 | for (int x = 0; x <= w; ++x) { | |
23 | bool topLeft = | |
24 | (x == 0) | (y == | |
25 | 0) ? false : (*(image_data + | |
26 | (y - 1) * bpl + | |
27 | ((x - | |
28 | 1) >> 3)) & (0x80 >> | |
29 | ((x - | |
30 | 1) & | |
31 | 7))); | |
32 | bool bottomLeft = | |
33 | (x == 0) | (y == | |
34 | h) ? false : (*(image_data + (y) * bpl + | |
35 | ((x - | |
36 | 1) >> 3)) & (0x80 >> | |
37 | ((x - | |
38 | 1) & | |
39 | 7))); | |
40 | if ((!bottomLeft) & topLeft) | |
41 | grid[(y) * (w + 1) + (x)] |= EdgeLeft; | |
42 | } | |
43 | } | |
44 | } |