mirror of
https://github.com/CalcProgrammer1/OpenRGB.git
synced 2025-12-23 23:37:48 -05:00
52 lines
1.6 KiB
C++
52 lines
1.6 KiB
C++
/*---------------------------------------------------------*\
|
|
| TabLabel.cpp |
|
|
| |
|
|
| Qt widget for OpenRGB tab label |
|
|
| |
|
|
| This file is part of the OpenRGB project |
|
|
| SPDX-License-Identifier: GPL-2.0-only |
|
|
\*---------------------------------------------------------*/
|
|
|
|
#include <QFontMetrics>
|
|
#include "TabLabel.h"
|
|
#include "OpenRGBFont.h"
|
|
|
|
Ui::TabLabel::TabLabel(int icon, QString name, char* original, char* context) :
|
|
QWidget(nullptr),
|
|
ui(new Ui::TabLabelUi)
|
|
{
|
|
ui->setupUi(this);
|
|
|
|
QFont font = OpenRGBFont::GetFont();
|
|
font.setPointSize(18);
|
|
|
|
ui->icon->setFont(font);
|
|
ui->icon->setText(OpenRGBFont::icon(icon));
|
|
|
|
ui->name->setText(name);
|
|
|
|
label = original;
|
|
ctxt = context;
|
|
}
|
|
|
|
Ui::TabLabel::~TabLabel()
|
|
{
|
|
delete ui;
|
|
}
|
|
|
|
void Ui::TabLabel::changeEvent(QEvent *event)
|
|
{
|
|
if(event->type() == QEvent::LanguageChange)
|
|
{
|
|
/*-----------------------------------------------------*\
|
|
| Storing the base string in label |
|
|
| enables switching between multiple languages |
|
|
| The context needs to be stored as the translation |
|
|
| file requires the originating context |
|
|
\*-----------------------------------------------------*/
|
|
QApplication* app = static_cast<QApplication *>(QApplication::instance());
|
|
|
|
ui->name->setText(app->translate(ctxt, label));
|
|
}
|
|
}
|