Changeset View
Changeset View
Standalone View
Standalone View
kstyle/breezeshadowhelper.h
Show First 20 Lines • Show All 44 Lines • ▼ Show 20 Line(s) | |||||
45 | #endif | 45 | #endif | ||
46 | 46 | | |||
47 | namespace Breeze | 47 | namespace Breeze | ||
48 | { | 48 | { | ||
49 | 49 | | |||
50 | //* forward declaration | 50 | //* forward declaration | ||
51 | class Helper; | 51 | class Helper; | ||
52 | 52 | | |||
53 | struct ShadowParams | ||||
54 | { | ||||
55 | ShadowParams() | ||||
56 | : offset(QPoint(0, 0)) | ||||
57 | , radius(0) | ||||
58 | , opacity(0) {} | ||||
59 | | ||||
60 | ShadowParams(const QPoint &offset, int radius, qreal opacity) | ||||
61 | : offset(offset) | ||||
62 | , radius(radius) | ||||
63 | , opacity(opacity) {} | ||||
64 | | ||||
65 | QPoint offset; | ||||
66 | int radius; | ||||
67 | qreal opacity; | ||||
68 | }; | ||||
69 | | ||||
70 | struct CompositeShadowParams | ||||
71 | { | ||||
72 | CompositeShadowParams() = default; | ||||
73 | | ||||
74 | CompositeShadowParams( | ||||
75 | const QPoint &offset, | ||||
76 | const ShadowParams &shadow1, | ||||
77 | const ShadowParams &shadow2) | ||||
78 | : offset(offset) | ||||
79 | , shadow1(shadow1) | ||||
80 | , shadow2(shadow2) {} | ||||
81 | | ||||
82 | bool isNone() const | ||||
83 | { return qMax(shadow1.radius, shadow2.radius) == 0; } | ||||
84 | | ||||
85 | QPoint offset; | ||||
86 | ShadowParams shadow1; | ||||
87 | ShadowParams shadow2; | ||||
88 | }; | ||||
89 | | ||||
53 | //* handle shadow pixmaps passed to window manager via X property | 90 | //* handle shadow pixmaps passed to window manager via X property | ||
54 | class ShadowHelper: public QObject | 91 | class ShadowHelper: public QObject | ||
55 | { | 92 | { | ||
56 | 93 | | |||
57 | Q_OBJECT | 94 | Q_OBJECT | ||
58 | 95 | | |||
59 | public: | 96 | public: | ||
60 | 97 | | |||
61 | //*@name property names | 98 | //*@name property names | ||
62 | //@{ | 99 | //@{ | ||
63 | static const char netWMShadowAtomName[]; | 100 | static const char netWMShadowAtomName[]; | ||
64 | //@} | 101 | //@} | ||
65 | 102 | | |||
66 | //* constructor | 103 | //* constructor | ||
67 | ShadowHelper( QObject*, Helper& ); | 104 | ShadowHelper( QObject*, Helper& ); | ||
68 | 105 | | |||
69 | //* destructor | 106 | //* destructor | ||
70 | virtual ~ShadowHelper(); | 107 | virtual ~ShadowHelper(); | ||
71 | 108 | | |||
72 | //* true if supported | 109 | //* true if supported | ||
73 | bool isSupported() const | 110 | bool isSupported() const | ||
74 | { return _supported; } | 111 | { return _supported; } | ||
75 | 112 | | |||
76 | //* shadow size from enum | 113 | //* shadow params from size enum | ||
77 | static int shadowSize( int shadowSizeEnum ); | 114 | static CompositeShadowParams lookupShadowParams( int shadowSizeEnum ); | ||
78 | 115 | | |||
79 | //* reset | 116 | //* reset | ||
80 | void reset(); | 117 | void reset(); | ||
81 | 118 | | |||
82 | //* load config | 119 | //* load config | ||
83 | void loadConfig(); | 120 | void loadConfig(); | ||
84 | 121 | | |||
85 | //* register widget | 122 | //* register widget | ||
▲ Show 20 Lines • Show All 115 Lines • Show Last 20 Lines |