Continues migration with DDS, Common
This commit is contained in:
1 parent
9b15cee841
commit
fa48db111e
668 files changed
+111841
-2
No files matched your search
Executable
+114
@@ -0,0 +1,114 @@
|
||||
|
||||
|
||||
|
||||
#include "lts_operator_menu.h"
|
||||
#include "ui_lts_operator_menu.h"
|
||||
#include "lts_info_dialog.h"
|
||||
#include <ngltranslator/ngltranslator.h>
|
||||
|
||||
#include <QPushButton>
|
||||
#include <QProcess>
|
||||
#include <QHostInfo>
|
||||
|
||||
|
||||
namespace LtsWidgets
|
||||
{
|
||||
LtsOperatorMenu::LtsOperatorMenu(const QString &operatorName, const QString &workspaceId, bool debug, int screenCount, QWidget *parent)
|
||||
: LtsFramelessDialog(parent)
|
||||
, m_ui(new Ui::LtsOperatorMenu)
|
||||
{
|
||||
m_ui->setupUi(this);
|
||||
m_ui->lbOperatorName->setText(operatorName);
|
||||
m_ui->lbHostName->setText(QHostInfo::localHostName());
|
||||
|
||||
if (screenCount < 2)
|
||||
m_ui->pbSwap->hide();
|
||||
|
||||
if (debug)
|
||||
m_ui->lbWorkspaceId->setText(tr("Workspace: >>>%1<<<").arg(workspaceId));
|
||||
else
|
||||
m_ui->lbWorkspaceId->hide();
|
||||
|
||||
connect(m_ui->pbOperatorSettings, &QPushButton::clicked, this, &LtsOperatorMenu::signalShowOperatorSettings);
|
||||
connect(m_ui->pbOperatorSettings, &QPushButton::clicked, this, &LtsOperatorMenu::close);
|
||||
connect(m_ui->pbWindow, &QPushButton::clicked, this, &LtsOperatorMenu::onTerminalButtonClicked);
|
||||
connect(m_ui->pbWindow, &QPushButton::clicked, this, &LtsOperatorMenu::close);
|
||||
connect(m_ui->pbLogout, &QPushButton::clicked, this, &LtsOperatorMenu::signalLogout);
|
||||
connect(m_ui->pbExit, &QPushButton::clicked, this, &LtsOperatorMenu::signalExit);
|
||||
connect(m_ui->pbCancel, &QPushButton::clicked, this, &LtsOperatorMenu::close);
|
||||
connect(m_ui->pbSwap, &QPushButton::clicked, this, &LtsOperatorMenu::signalSwap);
|
||||
connect(m_ui->pbSwap, &QPushButton::clicked, this, &LtsOperatorMenu::close);
|
||||
connect(m_ui->pbAbout, &QPushButton::clicked, this, &LtsOperatorMenu::slotShowInfoDialog);
|
||||
connect(m_ui->pbAbout, &QPushButton::clicked, this, &LtsOperatorMenu::close);
|
||||
|
||||
|
||||
if (NGL::translationLocale() == "de_DE")
|
||||
m_ui->pbGer->setChecked(true);
|
||||
else
|
||||
m_ui->pbInt->setChecked(true);
|
||||
|
||||
connect(m_ui->pbGer, &QPushButton::clicked,
|
||||
this, &LtsOperatorMenu::onLanguageChange);
|
||||
connect(m_ui->pbInt, &QPushButton::clicked,
|
||||
this, &LtsOperatorMenu::onLanguageChange);
|
||||
|
||||
#ifndef LTS_DEBUG
|
||||
m_ui->debugWidget->hide();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
LtsOperatorMenu::~LtsOperatorMenu()
|
||||
{
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
|
||||
void LtsOperatorMenu::slotShowInfoDialog()
|
||||
{
|
||||
LtsInfoDialog *infoDialog = new LtsInfoDialog();
|
||||
infoDialog->setAttribute(Qt::WA_DeleteOnClose);
|
||||
infoDialog->show();
|
||||
}
|
||||
|
||||
|
||||
void LtsOperatorMenu::onTerminalButtonClicked()
|
||||
{
|
||||
QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
|
||||
|
||||
QString lang = QString::fromLatin1(NGL::translationLocale());
|
||||
lang.append(QStringLiteral(".UTF-8"));
|
||||
env.insert(QStringLiteral("LANG"), lang);
|
||||
|
||||
QProcess process;
|
||||
process.setProcessEnvironment(env);
|
||||
QStringList args;
|
||||
args << QStringLiteral("--geometry") << QStringLiteral("800x800+200+100");
|
||||
|
||||
if (QApplication::queryKeyboardModifiers() == Qt::ControlModifier)
|
||||
process.startDetached(QStringLiteral("xterm"), args);
|
||||
else
|
||||
process.startDetached(QStringLiteral("konsole"), args);
|
||||
}
|
||||
|
||||
|
||||
void LtsOperatorMenu::setTerminalButton(bool bVisible)
|
||||
{
|
||||
m_ui->pbWindow->setVisible(bVisible);
|
||||
}
|
||||
|
||||
void LtsOperatorMenu::setOperatorSettingsButton(bool bVisible)
|
||||
{
|
||||
m_ui->pbOperatorSettings->setVisible(bVisible);
|
||||
}
|
||||
|
||||
|
||||
void LtsOperatorMenu::onLanguageChange()
|
||||
{
|
||||
if (m_ui->pbGer->isChecked())
|
||||
NGL::setTranslationLocale(QByteArray("de_DE"));
|
||||
|
||||
if (m_ui->pbInt->isChecked())
|
||||
NGL::setTranslationLocale(QByteArray("en_GB"));
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user