1
1
#include " applet.h"
2
2
3
- void Applet::setBlurredBackground (QWidget* internalWidget) {
4
- QScreen* screen = internalWidget->screen ();
5
- QRect widgetGeometry = internalWidget->geometry ();
3
+ void Applet::setBlurredBackground () {
4
+ QScreen* screen = mInternalWidget ->screen ();
5
+ QRect screenGeometry = screen->geometry ();
6
+ QRect widgetGeometry = mInternalWidget ->geometry ();
6
7
QPixmap pixmap = screen->grabWindow (0 ,
7
8
widgetGeometry.x (),
8
9
widgetGeometry.y (),
9
10
widgetGeometry.width (),
10
11
widgetGeometry.height ());
11
- qDebug () << widgetGeometry;
12
12
QGraphicsBlurEffect* blurEffect = new QGraphicsBlurEffect ();
13
13
blurEffect->setBlurRadius (15 );
14
14
blurEffect->setBlurHints (QGraphicsBlurEffect::QualityHint);
@@ -24,87 +24,91 @@ void Applet::setBlurredBackground(QWidget* internalWidget) {
24
24
scene->render (&ptr, QRectF (), QRectF (0 , 0 , widgetGeometry.width (), widgetGeometry.height ()));
25
25
26
26
QPalette palette;
27
- palette.setBrush (internalWidget ->backgroundRole (),
27
+ palette.setBrush (mInternalWidget ->backgroundRole (),
28
28
QBrush (QPixmap::fromImage (res)));
29
- internalWidget ->setPalette (palette);
29
+ mInternalWidget ->setPalette (palette);
30
30
}
31
31
32
- QPair<int ,int > Applet::getButtonCoordinates (QWidget* externalWidget, Panel* parentPanel ) {
32
+ QPair<int ,int > Applet::getButtonCoordinates () {
33
33
int buttonCoord1, buttonCoord2;
34
- if (parentPanel->mPanelLayout == Horizontal) {
35
- buttonCoord1 = externalWidget->x () + parentPanel->mAxisShift ;
36
- buttonCoord2 = externalWidget->geometry ().topRight ().x () + parentPanel->mAxisShift ;
34
+ if (mParentPanel ->mPanelLayout == Horizontal) {
35
+ buttonCoord1 = mExternalWidget ->x () + mParentPanel ->mAxisShift ;
36
+ buttonCoord2 = mExternalWidget ->geometry ().topRight ().x () +
37
+ mParentPanel ->mAxisShift ;
37
38
}
38
39
else { // Vertical
39
- buttonCoord1 = externalWidget->y () + parentPanel->mAxisShift ;
40
- buttonCoord2 = externalWidget->geometry ().bottomRight ().y () + parentPanel->mAxisShift ;
40
+ buttonCoord1 = mExternalWidget ->y () + mParentPanel ->mAxisShift ;
41
+ buttonCoord2 = mExternalWidget ->geometry ().bottomRight ().y () +
42
+ mParentPanel ->mAxisShift ;
41
43
}
42
44
return qMakePair (buttonCoord1, buttonCoord2);
43
45
}
44
46
45
- void Applet::externalWidgetSetup (ConfigManager*, Panel*) {
46
-
47
- }
48
-
49
- void Applet::preliminaryInternalWidgetSetup (QWidget* internalWidget,
50
- QWidget* externalWidget,
51
- ConfigManager* cfgMan,
52
- Panel* parentPanel,
53
- int width,
47
+ void Applet::preliminaryInternalWidgetSetup (int width,
54
48
int height,
55
49
bool canBeTransparent) {
56
50
// Window flags
57
- internalWidget ->setWindowFlags (Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);
51
+ mInternalWidget ->setWindowFlags (Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);
58
52
59
53
// Geometry
60
- QScreen* screen = parentPanel ->mPanelScreen ;
54
+ QScreen* screen = mParentPanel ->mPanelScreen ;
61
55
QRect screenGeometry = screen->geometry ();
62
56
int ax = 0 , ay = 0 ;
63
- QPair<int ,int > buttonCoords = getButtonCoordinates (externalWidget, parentPanel );
57
+ QPair<int ,int > buttonCoords = getButtonCoordinates ();
64
58
int buttonCoord1 = buttonCoords.first , buttonCoord2 = buttonCoords.second ;
65
- switch (parentPanel ->mPanelLocation ) {
59
+ switch (mParentPanel ->mPanelLocation ) {
66
60
case Top:
67
61
ax = (screenGeometry.width () - buttonCoord1 >= width) ? buttonCoord1 : buttonCoord2 - width;
68
- ay = parentPanel ->mPanelThickness + 5 ;
62
+ ay = mParentPanel ->mPanelThickness + 5 ;
69
63
break ;
70
64
71
65
case Bottom:
72
66
ax = (screenGeometry.width () - buttonCoord1 >= width) ? buttonCoord1 : buttonCoord2 - width;
73
- ay = screenGeometry.height () - parentPanel ->mPanelThickness - height - 5 ;
67
+ ay = screenGeometry.height () - mParentPanel ->mPanelThickness - height - 5 ;
74
68
break ;
75
69
76
70
case Left:
77
- ax = parentPanel ->mPanelThickness + 5 ;
71
+ ax = mParentPanel ->mPanelThickness + 5 ;
78
72
ay = (screenGeometry.height () - buttonCoord1 >= height) ? buttonCoord1 : buttonCoord2 - height;
79
73
break ;
80
74
81
75
case Right:
82
- ax = screenGeometry.width () - parentPanel ->mPanelThickness - width - 5 ;
76
+ ax = screenGeometry.width () - mParentPanel ->mPanelThickness - width - 5 ;
83
77
ay = (screenGeometry.height () - buttonCoord1 >= height) ? buttonCoord1 : buttonCoord2 - height;
84
78
break ;
85
79
}
86
80
87
81
ax += screenGeometry.x ();
88
82
ay += screenGeometry.y ();
89
- internalWidget ->setFixedSize (width, height);
90
- internalWidget ->move (ax, ay);
83
+ mInternalWidget ->setFixedSize (width, height);
84
+ mInternalWidget ->move (ax, ay);
91
85
92
86
// Font
93
- internalWidget ->setFont (cfgMan ->mFont );
87
+ mInternalWidget ->setFont (mCfgMan ->mFont );
94
88
95
89
// Theme
96
- QFile stylesheetReader (" /usr/share/plainDE/styles/" + cfgMan ->mStylesheet );
90
+ QFile stylesheetReader (" /usr/share/plainDE/styles/" + mCfgMan ->mStylesheet );
97
91
stylesheetReader.open (QIODevice::ReadOnly | QIODevice::Text);
98
92
QTextStream styleSheet (&stylesheetReader);
99
- internalWidget ->setStyleSheet (styleSheet.readAll ());
100
- if (cfgMan ->mTransparent && canBeTransparent) {
101
- setBlurredBackground (internalWidget );
93
+ mInternalWidget ->setStyleSheet (styleSheet.readAll ());
94
+ if (mCfgMan ->mTransparent && canBeTransparent) {
95
+ setBlurredBackground ();
102
96
}
103
97
104
98
// Opacity
105
- internalWidget ->setWindowOpacity (parentPanel ->mOpacity );
99
+ mInternalWidget ->setWindowOpacity (mParentPanel ->mOpacity );
106
100
}
107
101
108
- Applet::Applet (ConfigManager*, Panel*, QString) {
102
+ void Applet::externalWidgetSetup () {
103
+
104
+ }
105
+
106
+ void Applet::internalWidgetSetup () {
107
+
108
+ }
109
109
110
+ Applet::Applet (QString appletID, ConfigManager* cfgMan, Panel* parentPanel) {
111
+ mAppletID = appletID;
112
+ mCfgMan = cfgMan;
113
+ mParentPanel = parentPanel;
110
114
}
0 commit comments