Add ledbutton.py and bitmaps; fix qWarning usage
|
@ -48,7 +48,7 @@ class DigitalPeakMeter(QWidget):
|
|||
|
||||
def displayMeter(self, meter_n, level):
|
||||
if (meter_n < 0 or meter_n > self.m_channels):
|
||||
qCritical("DigitalPeakMeter::displayMeter(%i, %f) - Invalid meter number", meter_n, level)
|
||||
qCritical("DigitalPeakMeter::displayMeter(%i, %f) - Invalid meter number" % (meter_n, level))
|
||||
return
|
||||
|
||||
if (level < 0.0):
|
||||
|
|
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 735 B |
After Width: | Height: | Size: 751 B |
After Width: | Height: | Size: 751 B |
After Width: | Height: | Size: 747 B |
After Width: | Height: | Size: 744 B |
|
@ -20,5 +20,12 @@
|
|||
<file>bitmaps/kbd_h_orange.png</file>
|
||||
<file>bitmaps/kbd_v_classic.png</file>
|
||||
<file>bitmaps/kbd_v_orange.png</file>
|
||||
<file>bitmaps/led_off.png</file>
|
||||
<file>bitmaps/led_blue.png</file>
|
||||
<file>bitmaps/led_green.png</file>
|
||||
<file>bitmaps/led_red.png</file>
|
||||
<file>bitmaps/led_yellow.png</file>
|
||||
<file>bitmaps/led-big_on.png</file>
|
||||
<file>bitmaps/led-big_off.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
|
|
@ -0,0 +1,94 @@
|
|||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Pixmap Button, a custom Qt4 widget
|
||||
# Copyright (C) 2012 Filipe Coelho <falktx@gmail.com>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# For a full copy of the GNU General Public License see the COPYING file
|
||||
|
||||
# Imports (Global)
|
||||
from PyQt4.QtCore import qCritical, QRectF
|
||||
from PyQt4.QtGui import QPainter, QPixmap, QPushButton
|
||||
|
||||
# Imports (Custom Stuff)
|
||||
import icons_rc
|
||||
|
||||
# Widget Class
|
||||
class LEDButton(QPushButton):
|
||||
|
||||
BLUE = 1
|
||||
GREEN = 2
|
||||
RED = 3
|
||||
YELLOW = 4
|
||||
BIG_RED = 5
|
||||
|
||||
def __init__(self, parent):
|
||||
QPushButton.__init__(self, parent)
|
||||
|
||||
self.m_pixmap = QPixmap()
|
||||
self.m_pixmap_rect = QRectF(0, 0, 0, 0)
|
||||
|
||||
self.setCheckable(True)
|
||||
self.setText("")
|
||||
|
||||
self.setColor(self.BLUE)
|
||||
|
||||
from PyQt4.QtCore import QTimer
|
||||
QTimer.singleShot(3000, self.close)
|
||||
|
||||
def setColor(self, color):
|
||||
self.m_color = color
|
||||
|
||||
if (color in (self.BLUE, self.GREEN, self.RED, self.YELLOW)):
|
||||
size = 14
|
||||
elif (color == self.BIG_RED):
|
||||
size = 64
|
||||
else:
|
||||
qCritical("LEDButton::setColor(%i) - Invalid color" % (color))
|
||||
return
|
||||
|
||||
self.setPixmapSize(size)
|
||||
|
||||
def setPixmapSize(self, size):
|
||||
self.m_pixmap_rect = QRectF(0, 0, size, size)
|
||||
|
||||
self.setMinimumWidth(size)
|
||||
self.setMaximumWidth(size)
|
||||
self.setMinimumHeight(size)
|
||||
self.setMaximumHeight(size)
|
||||
|
||||
def paintEvent(self, event):
|
||||
painter = QPainter(self)
|
||||
|
||||
if (self.isChecked()):
|
||||
if (self.m_color == self.BLUE):
|
||||
self.m_pixmap.load(":/bitmaps/led_blue.png")
|
||||
elif (self.m_color == self.GREEN):
|
||||
self.m_pixmap.load(":/bitmaps/led_green.png")
|
||||
elif (self.m_color == self.RED):
|
||||
self.m_pixmap.load(":/bitmaps/led_red.png")
|
||||
elif (self.m_color == self.YELLOW):
|
||||
self.m_pixmap.load(":/bitmaps/led_yellow.png")
|
||||
elif (self.m_color == self.BIG_RED):
|
||||
self.m_pixmap.load(":/bitmaps/led-big_on.png")
|
||||
else:
|
||||
return
|
||||
else:
|
||||
if (self.m_color in (self.BLUE, self.GREEN, self.RED, self.YELLOW)):
|
||||
self.m_pixmap.load(":/bitmaps/led_off.png")
|
||||
elif (self.m_color == self.BIG_RED):
|
||||
self.m_pixmap.load(":/bitmaps/led-big_off.png")
|
||||
else:
|
||||
return
|
||||
|
||||
painter.drawPixmap(self.m_pixmap_rect, self.m_pixmap, self.m_pixmap_rect)
|
|
@ -25,6 +25,7 @@ import icons_rc
|
|||
|
||||
# Widget Class
|
||||
class PixmapDial(QDial):
|
||||
|
||||
HORIZONTAL = 0
|
||||
VERTICAL = 1
|
||||
|
||||
|
|
|
@ -142,7 +142,7 @@ class PixmapKeyboard(QWidget):
|
|||
elif (color == self.COLOR_ORANGE):
|
||||
self.m_colorStr = "orange"
|
||||
else:
|
||||
qCritical("PixmapKeyboard::setMode(%i, %i) - Invalid keyboard color", mode, color)
|
||||
qCritical("PixmapKeyboard::setMode(%i, %i) - Invalid keyboard color" % (mode, color))
|
||||
self.setMode(mode)
|
||||
return
|
||||
|
||||
|
@ -159,7 +159,7 @@ class PixmapKeyboard(QWidget):
|
|||
self.p_width = self.m_pixmap.width()/2
|
||||
self.p_height = self.m_pixmap.height()
|
||||
else:
|
||||
qCritical("PixmapKeyboard::setMode(%i, %i) - Invalid keyboard mode", mode, color)
|
||||
qCritical("PixmapKeyboard::setMode(%i, %i) - Invalid keyboard mode" % (mode, color))
|
||||
self.setMode(self.HORIZONTAL)
|
||||
return
|
||||
|
||||
|
|