Added SmallNumberDisplay class
This commit is contained in:
parent
a709689b3d
commit
722158f10c
6 changed files with 132 additions and 2 deletions
|
@ -23,6 +23,14 @@ MainDisplay::MainDisplay (QWidget *parent) : SkinDisplay(parent)
|
|||
m_number2 = new NumberDisplay (this, 24, 0);
|
||||
m_number2->move (78, 26);
|
||||
|
||||
m_kbps = new SmallNumberDisplay (this, 15);
|
||||
m_kbps->move (111, 43);
|
||||
m_kbps->setNumber ('1', '2', '8');
|
||||
|
||||
m_khz = new SmallNumberDisplay (this, 10);
|
||||
m_khz->move (156, 43);
|
||||
m_khz->setNumber ('4', '4');
|
||||
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -20,6 +20,7 @@ class MainDisplay;
|
|||
#include "TextBar.h"
|
||||
#include "MainWindow.h"
|
||||
#include "NumberDisplay.h"
|
||||
#include "SmallNumberDisplay.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
@ -34,6 +35,9 @@ class MainDisplay : public SkinDisplay
|
|||
NumberDisplay *m_number;
|
||||
NumberDisplay *m_number2;
|
||||
|
||||
SmallNumberDisplay *m_kbps;
|
||||
SmallNumberDisplay *m_khz;
|
||||
|
||||
public slots:
|
||||
void setPixmaps(Skin *skin);
|
||||
protected:
|
||||
|
|
|
@ -45,3 +45,4 @@ NumberDisplay::~NumberDisplay ()
|
|||
{
|
||||
}
|
||||
|
||||
|
||||
|
|
65
SmallNumberDisplay.cpp
Normal file
65
SmallNumberDisplay.cpp
Normal file
|
@ -0,0 +1,65 @@
|
|||
#include "SmallNumberDisplay.h"
|
||||
|
||||
SmallNumberDisplay::SmallNumberDisplay (QWidget *parent, int w) : PixWidget (parent)
|
||||
{
|
||||
m_w = w;
|
||||
setMinimumSize (w, 6);
|
||||
setMaximumSize (w, 6);
|
||||
m_pixmap = QPixmap (w, 6);
|
||||
}
|
||||
|
||||
void
|
||||
SmallNumberDisplay::setPixmaps (Skin *skin)
|
||||
{
|
||||
m_skin = skin;
|
||||
drawNumber ();
|
||||
}
|
||||
|
||||
void
|
||||
SmallNumberDisplay::setNumber (char i1, char i2, char i3)
|
||||
{
|
||||
m_nums[0] = i1;
|
||||
m_nums[1] = i2;
|
||||
m_nums[2] = i3;
|
||||
m_num = 3;
|
||||
|
||||
drawNumber ();
|
||||
|
||||
update ();
|
||||
}
|
||||
|
||||
void
|
||||
SmallNumberDisplay::setNumber (char i1, char i2)
|
||||
{
|
||||
m_nums[0] = i1;
|
||||
m_nums[1] = i2;
|
||||
m_num = 2;
|
||||
|
||||
drawNumber ();
|
||||
|
||||
update ();
|
||||
}
|
||||
|
||||
void
|
||||
SmallNumberDisplay::drawNumber ()
|
||||
{
|
||||
|
||||
if (!m_skin) {
|
||||
return;
|
||||
}
|
||||
|
||||
QPainter paint;
|
||||
paint.begin (&m_pixmap);
|
||||
paint.drawPixmap (m_pixmap.rect (),
|
||||
m_skin->getItem (Skin::TEXTBG),
|
||||
m_pixmap.rect ());
|
||||
|
||||
for (int i = 0; i < m_num; i++) {
|
||||
paint.drawPixmap (QRect (i*5, 0, 4, 6),
|
||||
m_skin->getLetter (m_nums[i]),
|
||||
m_skin->getLetter (m_nums[i]).rect ());
|
||||
}
|
||||
|
||||
paint.end ();
|
||||
}
|
||||
|
28
SmallNumberDisplay.h
Normal file
28
SmallNumberDisplay.h
Normal file
|
@ -0,0 +1,28 @@
|
|||
#include "PixWidget.h"
|
||||
#include <QPainter>
|
||||
|
||||
|
||||
class SmallNumberDisplay : public PixWidget
|
||||
{
|
||||
Q_OBJECT;
|
||||
|
||||
public:
|
||||
SmallNumberDisplay (QWidget *parent, int w);
|
||||
~SmallNumberDisplay () { };
|
||||
|
||||
void setNumber (char i1, char i2, char i3);
|
||||
void setNumber (char i1, char i2);
|
||||
|
||||
public slots:
|
||||
void setPixmaps (Skin *skin);
|
||||
|
||||
private:
|
||||
char m_nums[2];
|
||||
int m_num;
|
||||
int m_w;
|
||||
|
||||
void drawNumber (void);
|
||||
|
||||
Skin *m_skin;
|
||||
};
|
||||
|
28
promoe.pro
28
promoe.pro
|
@ -1,5 +1,29 @@
|
|||
SOURCES += XmmsQT4.cpp PixWidget.cpp Skin.cpp MainWindow.cpp Display.cpp MainDisplay.cpp TitleBar.cpp Button.cpp TextBar.cpp NumberDisplay.cpp XMMSHandler.cpp
|
||||
HEADERS += XmmsQT4.h PixWidget.h Skin.h MainWindow.h Display.h MainDisplay.h TitleBar.h Button.h TextBar.h NumberDisplay.h XMMSHandler.h
|
||||
SOURCES += XmmsQT4.cpp \
|
||||
PixWidget.cpp \
|
||||
Skin.cpp \
|
||||
MainWindow.cpp \
|
||||
Display.cpp \
|
||||
MainDisplay.cpp \
|
||||
TitleBar.cpp \
|
||||
Button.cpp \
|
||||
TextBar.cpp \
|
||||
NumberDisplay.cpp \
|
||||
XMMSHandler.cpp \
|
||||
SmallNumberDisplay.cpp
|
||||
|
||||
HEADERS += XmmsQT4.h \
|
||||
PixWidget.h \
|
||||
Skin.h \
|
||||
MainWindow.h \
|
||||
Display.h \
|
||||
MainDisplay.h \
|
||||
TitleBar.h \
|
||||
Button.h \
|
||||
TextBar.h \
|
||||
NumberDisplay.h \
|
||||
XMMSHandler.h \
|
||||
SmallNumberDisplay.h
|
||||
|
||||
CONFIG += link_pkgconfig
|
||||
CONFIG += debug
|
||||
QMAKE_CFLAGS_WARN_OFF += -Wno-unused-parameter
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue