summaryrefslogtreecommitdiff
path: root/gui/digitlabel.cc
blob: a5c84f17fde5104852ff9c2efd03a611119893a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include "digitlabel.h"

DigitLabel::DigitLabel(QWidget *parent) : QLabel(parent)
{
	this->update_display();
}

void DigitLabel::clear()
{
	this->is_cleared = true;
	setText(QString());
}

void DigitLabel::set_value(int v)
{
	this->is_cleared = false;
	if (this->v != v) {
		this->v = v;
		update_display();
	}
}

void DigitLabel::toggle_mode()
{
	this->is_hex = !this->is_hex;
	this->update_display();
}

void DigitLabel::update_display()
{
	QString t;
	if (this->is_cleared) {
		setText(QString());
	} else {
		t = (this->is_hex) ? QString::number(this->v, 6).toUpper()
						   : QString::number(this->v);
		setText(t);
	}
}