-rw-r--r-- | core/launcher/libpreload/preload.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/core/launcher/libpreload/preload.cpp b/core/launcher/libpreload/preload.cpp index a94ec65..4505428 100644 --- a/core/launcher/libpreload/preload.cpp +++ b/core/launcher/libpreload/preload.cpp | |||
@@ -1,91 +1,92 @@ | |||
1 | 1 | ||
2 | #define _GNU_SOURCE | 2 | #define _GNU_SOURCE |
3 | //#define private public | 3 | //#define private public |
4 | //#define protected public | 4 | //#define protected public |
5 | 5 | ||
6 | #include <qwsdecoration_qws.h> | 6 | #include <qwsdecoration_qws.h> |
7 | #include <qcommonstyle.h> | 7 | #include <qcommonstyle.h> |
8 | //#include <qpe/qpeapplication.h> | 8 | //#include <qapplication.h> |
9 | //#include <qfont.h> | ||
9 | 10 | ||
10 | class QStyle; | 11 | //class QStyle; |
11 | class QApplication; | 12 | class QApplication; |
12 | class QFont; | 13 | class QFont; |
13 | class QWSDecoration; | 14 | //class QWSDecoration; |
14 | 15 | ||
15 | #include <dlfcn.h> | 16 | #include <dlfcn.h> |
16 | #include <unistd.h> | 17 | #include <unistd.h> |
17 | #include <stdio.h> | 18 | #include <stdio.h> |
18 | #include <stdlib.h> | 19 | #include <stdlib.h> |
19 | 20 | ||
20 | 21 | ||
21 | typedef void ( *qapp_setstyle_t ) ( QStyle * ); | 22 | typedef void ( *qapp_setstyle_t ) ( QStyle * ); |
22 | typedef void ( *qapp_setdeco_t ) ( QApplication *, QWSDecoration * ); | 23 | typedef void ( *qapp_setdeco_t ) ( QApplication *, QWSDecoration * ); |
23 | typedef void ( *qapp_setfont_t ) ( QApplication *, const QFont &, bool, const char * ); | 24 | typedef void ( *qapp_setfont_t ) ( const QFont &, bool, const char * ); |
24 | 25 | ||
25 | 26 | ||
26 | static bool *opie_block_style_p = 0; | 27 | static bool *opie_block_style_p = 0; |
27 | 28 | ||
28 | extern "C" { | 29 | extern "C" { |
29 | 30 | ||
30 | static void *resolve_symbol ( const char *sym ) | 31 | static void *resolve_symbol ( const char *sym ) |
31 | { | 32 | { |
32 | void *adr = ::dlsym ( RTLD_NEXT, sym ); | 33 | void *adr = ::dlsym ( RTLD_NEXT, sym ); |
33 | 34 | ||
34 | if ( !adr ) | 35 | if ( !adr ) |
35 | ::fprintf ( stderr, "PANIC: Could not resolve symbol \"%s\"\n", sym ); | 36 | ::fprintf ( stderr, "PANIC: Could not resolve symbol \"%s\"\n", sym ); |
36 | 37 | ||
37 | return adr; | 38 | return adr; |
38 | } | 39 | } |
39 | 40 | ||
40 | extern void setStyle__12QApplicationP6QStyle ( QStyle *style ) | 41 | extern void setStyle__12QApplicationP6QStyle ( QStyle *style ) |
41 | { | 42 | { |
42 | static qapp_setstyle_t qsetstyle = 0; | 43 | static qapp_setstyle_t qsetstyle = 0; |
43 | 44 | ||
44 | if ( !qsetstyle ) | 45 | if ( !qsetstyle ) |
45 | qsetstyle = (qapp_setstyle_t) resolve_symbol ( "setStyle__12QApplicationP6QStyle" ); | 46 | qsetstyle = (qapp_setstyle_t) resolve_symbol ( "setStyle__12QApplicationP6QStyle" ); |
46 | 47 | ||
47 | if ( !opie_block_style_p ) | 48 | if ( !opie_block_style_p ) |
48 | opie_block_style_p = (bool *) resolve_symbol ( "opie_block_style" ); | 49 | opie_block_style_p = (bool *) resolve_symbol ( "opie_block_style" ); |
49 | 50 | ||
50 | if ( !qsetstyle || ( opie_block_style_p && *opie_block_style_p )) { | 51 | if ( !qsetstyle || ( opie_block_style_p && *opie_block_style_p )) { |
51 | delete style; | 52 | delete style; |
52 | return; | 53 | return; |
53 | } | 54 | } |
54 | else | 55 | else |
55 | ( *qsetstyle ) ( style ); | 56 | ( *qsetstyle ) ( style ); |
56 | } | 57 | } |
57 | 58 | ||
58 | extern void setFont__12QApplicationRC5QFontbPCc ( QApplication *app, const QFont &fnt, bool informWidgets, const char * className ) | 59 | extern void setFont__12QApplicationRC5QFontbPCc ( const QFont &fnt, bool informWidgets, const char * className ) |
59 | { | 60 | { |
60 | static qapp_setfont_t qsetfont = 0; | 61 | static qapp_setfont_t qsetfont = 0; |
61 | 62 | ||
62 | if ( !qsetfont ) | 63 | if ( !qsetfont ) |
63 | qsetfont = (qapp_setfont_t) resolve_symbol ( "setFont__12QApplicationRC5QFontbPCc" ); | 64 | qsetfont = (qapp_setfont_t) resolve_symbol ( "setFont__12QApplicationRC5QFontbPCc" ); |
64 | 65 | ||
65 | if ( !opie_block_style_p ) | 66 | if ( !opie_block_style_p ) |
66 | opie_block_style_p = (bool *) resolve_symbol ( "opie_block_style" ); | 67 | opie_block_style_p = (bool *) resolve_symbol ( "opie_block_style" ); |
67 | 68 | ||
68 | if ( qsetfont && !( opie_block_style_p && *opie_block_style_p )) | 69 | if ( qsetfont && !( opie_block_style_p && *opie_block_style_p )) |
69 | ( *qsetfont ) ( app, fnt, informWidgets, className ); | 70 | ( *qsetfont ) ( fnt, informWidgets, className ); |
70 | } | 71 | } |
71 | 72 | ||
72 | 73 | ||
73 | extern void qwsSetDecoration__12QApplicationP13QWSDecoration ( QApplication *app, QWSDecoration *deco ) | 74 | extern void qwsSetDecoration__12QApplicationP13QWSDecoration ( QApplication *app, QWSDecoration *deco ) |
74 | { | 75 | { |
75 | static qapp_setdeco_t qsetdeco = 0; | 76 | static qapp_setdeco_t qsetdeco = 0; |
76 | 77 | ||
77 | if ( !qsetdeco ) | 78 | if ( !qsetdeco ) |
78 | qsetdeco = (qapp_setdeco_t) resolve_symbol ( "qwsSetDecoration__12QApplicationP13QWSDecoration" ); | 79 | qsetdeco = (qapp_setdeco_t) resolve_symbol ( "qwsSetDecoration__12QApplicationP13QWSDecoration" ); |
79 | 80 | ||
80 | if ( !opie_block_style_p ) | 81 | if ( !opie_block_style_p ) |
81 | opie_block_style_p = (bool *) resolve_symbol ( "opie_block_style" ); | 82 | opie_block_style_p = (bool *) resolve_symbol ( "opie_block_style" ); |
82 | 83 | ||
83 | if ( !qsetdeco || ( opie_block_style_p && *opie_block_style_p )) { | 84 | if ( !qsetdeco || ( opie_block_style_p && *opie_block_style_p )) { |
84 | delete deco; | 85 | delete deco; |
85 | return; | 86 | return; |
86 | } | 87 | } |
87 | else | 88 | else |
88 | ( *qsetdeco ) ( app, deco ); | 89 | ( *qsetdeco ) ( app, deco ); |
89 | } | 90 | } |
90 | 91 | ||
91 | } | 92 | } |