Thu, 21 Jul 2022 15:08:27 +0200
Version 0.2.20. Calculate total linther ignore malt color because our database is correct.
316
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
1 | /*************************************************************************** |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
2 | * Copyright (C) 2006-2008 by Tomasz Ziobrowski * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
3 | * http://www.3electrons.com * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
4 | * e-mail: t.ziobrowski@3electrons.com * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
5 | * * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
6 | * * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
7 | * This program is free software; you can redistribute it and/or modify * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
8 | * it under the terms of the GNU General Public License as published by * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
9 | * the Free Software Foundation; either version 2 of the License, or * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
10 | * (at your option) any later version. * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
11 | * * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
12 | * This program is distributed in the hope that it will be useful, * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
15 | * GNU General Public License for more details. * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
16 | * * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
17 | * You should have received a copy of the GNU General Public License * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
18 | * along with this program; if not, write to the * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
19 | * Free Software Foundation, Inc., * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
20 | * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
21 | ***************************************************************************/ |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
22 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
23 | #include <QtGui> |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
24 | #include "led.h" |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
25 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
26 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
27 | Led::Led(QWidget * parent):WidgetWithBackground(parent) |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
28 | { |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
29 | m_checked = true; |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
30 | m_color = Qt::red; |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
31 | resize(330,330); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
32 | } |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
33 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
34 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
35 | bool Led::isChecked () const |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
36 | { |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
37 | return m_checked; |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
38 | } |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
39 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
40 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
41 | void Led::setChecked(bool i) |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
42 | { |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
43 | m_checked = i; |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
44 | updateWithBackground(); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
45 | checkChanged( m_checked ); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
46 | } |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
47 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
48 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
49 | QColor Led::color() const |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
50 | { |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
51 | return m_color; |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
52 | } |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
53 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
54 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
55 | void Led::setColor(QColor i) |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
56 | { |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
57 | m_color = i; |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
58 | updateWithBackground(); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
59 | } |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
60 | |
319 | 61 | // Paints the whole diode - a circle with a base color, and a reflection over it |
316
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
62 | void Led::paintEvent(QPaintEvent * /* event*/ ) |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
63 | { |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
64 | QPainter painter(this); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
65 | initCoordinateSystem(painter); |
319 | 66 | // *** Draw circle |
316
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
67 | int h,s,v,a; |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
68 | QColor c,back = color(); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
69 | c=back; |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
70 | |
319 | 71 | // Color of the LED |
316
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
72 | if (!m_checked || !isEnabled()) |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
73 | { |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
74 | back.getHsv(&h,&s,&v,&a); |
320
a866722d0f15
Changed the 'off' color effect of the led
Michiel Broek <mbroek@mbse.eu>
parents:
319
diff
changeset
|
75 | s *=0.70; |
a866722d0f15
Changed the 'off' color effect of the led
Michiel Broek <mbroek@mbse.eu>
parents:
319
diff
changeset
|
76 | a *=0.20; |
316
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
77 | back.setHsv(h,s,v,a); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
78 | } |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
79 | painter.setBrush(back); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
80 | |
319 | 81 | // LED circuit |
316
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
82 | QPen pen; |
319 | 83 | // rim darkening |
316
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
84 | c.getHsv(&h,&s,&v,&a); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
85 | s*=0.5; |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
86 | c.setHsv(h,s,v,a); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
87 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
88 | pen.setColor(c); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
89 | pen.setWidthF(3.0); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
90 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
91 | painter.drawEllipse(-149,-149,299,299); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
92 | painter.end(); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
93 | |
319 | 94 | // LED reflector |
95 | drawBackground(); // It paints on what has been in the bitmap so far | |
316
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
96 | } |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
97 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
98 | |
319 | 99 | // Draws a reflection of the light on the diode |
316
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
100 | void Led::paintBackground(QPainter & painter) |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
101 | { |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
102 | initCoordinateSystem(painter); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
103 | painter.setPen(Qt::NoPen); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
104 | QRadialGradient shine(QPointF(-40.0,-40.0),120.0,QPointF(-40,-40)); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
105 | QColor white1(255,255,255,200); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
106 | QColor white0(255,255,255,0); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
107 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
108 | shine.setColorAt(0.0,white1); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
109 | shine.setColorAt(1.0,white0); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
110 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
111 | painter.setBrush(shine); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
112 | painter.drawEllipse(-147,-147,297,297); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
113 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
114 | } |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
115 | |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
116 | void Led::initCoordinateSystem(QPainter & painter) |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
117 | { |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
118 | int side = qMin(width(), height()); |
319 | 119 | // painter initialization |
316
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
120 | painter.setRenderHint(QPainter::Antialiasing); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
121 | painter.translate(width() / 2, height() / 2); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
122 | painter.scale(side / 330.0, side / 330.0); |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
123 | } |
dcd472be9ae8
Added led, manometer, thermometer and wallclock from the abandoned AnalogWidgets project as plugins. There is some work to do but it's already usable for the monitor screens.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
124 |