summaryrefslogtreecommitdiff
path: root/core/pim/datebook/clickablelabel.cpp
Unidiff
Diffstat (limited to 'core/pim/datebook/clickablelabel.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/datebook/clickablelabel.cpp88
1 files changed, 0 insertions, 88 deletions
diff --git a/core/pim/datebook/clickablelabel.cpp b/core/pim/datebook/clickablelabel.cpp
deleted file mode 100644
index 128bebb..0000000
--- a/core/pim/datebook/clickablelabel.cpp
+++ b/dev/null
@@ -1,88 +0,0 @@
1#include "clickablelabel.h"
2#include <stdio.h>
3
4ClickableLabel::ClickableLabel(QWidget* parent,
5 const char* name,
6 WFlags fl) :
7 QLabel(parent,name,fl)
8{
9 textInverted=false;
10 isToggle=false;
11 isDown=false;
12 showState(false);
13 setFrameShadow(Sunken);
14}
15
16void ClickableLabel::setToggleButton(bool t) {
17 isToggle=t;
18}
19
20void ClickableLabel::mousePressEvent( QMouseEvent *e ) {
21 if (isToggle && isDown) {
22 showState(false);
23 } else {
24 showState(true);
25 }
26}
27
28void ClickableLabel::mouseReleaseEvent( QMouseEvent *e ) {
29 if (rect().contains(e->pos()) && isToggle) isDown=!isDown;
30
31 if (isToggle && isDown) {
32 showState(true);
33 } else {
34 showState(false);
35 }
36
37 if (rect().contains(e->pos())) {
38 if (isToggle) {
39 emit toggled(isDown);
40 }
41 emit clicked();
42 }
43}
44
45void ClickableLabel::mouseMoveEvent( QMouseEvent *e ) {
46 if (rect().contains(e->pos())) {
47 if (isToggle && isDown) {
48 showState(false);
49 } else {
50 showState(true);
51 }
52 } else {
53 if (isToggle && isDown) {
54 showState(true);
55 } else {
56 showState(false);
57 }
58 }
59}
60
61void ClickableLabel::showState(bool on) {
62 if (on) {
63 //setFrameShape(Panel);
64 setInverted(true);
65 setBackgroundMode(PaletteHighlight);
66 } else {
67 //setFrameShape(NoFrame);
68 setInverted(false);
69 setBackgroundMode(PaletteBackground);
70 }
71 repaint();
72}
73
74void ClickableLabel::setInverted(bool on) {
75 if ( (!textInverted && on) || (textInverted && !on) ) {
76 QPalette pal=palette();
77 QColor col=pal.color(QPalette::Normal, QColorGroup::Foreground);
78 col.setRgb(255-col.red(),255-col.green(),255-col.blue());
79 pal.setColor(QPalette::Normal, QColorGroup::Foreground, col);
80 setPalette(pal);
81 textInverted=!textInverted;
82 }
83}
84
85void ClickableLabel::setOn(bool on) {
86 isDown=on;
87 showState(isDown);
88}