Initial commit
This commit is contained in:
commit
b7d90b9afe
16245 files changed
+3396666
No files matched your search
@@ -0,0 +1,62 @@
|
||||
// **************************************************************************
|
||||
//
|
||||
// (C) Copyright 2009 Swiss SIMTEC AG
|
||||
//
|
||||
// **************************************************************************
|
||||
//
|
||||
// $HeadURL$
|
||||
// $LastChangedBy$
|
||||
// $LastChangedDate$
|
||||
// $LastChangedRevision$
|
||||
//
|
||||
// **************************************************************************
|
||||
|
||||
#include "LogViewTelegramSelectionDialog.hpp"
|
||||
#include <QLabel>
|
||||
#include <QListWidget>
|
||||
#include <QVBoxLayout>
|
||||
#include "LogViewXdrType.hpp"
|
||||
#include "LogViewXdrParser.hpp"
|
||||
#include "LogViewTelegram.hpp"
|
||||
#include "LogViewTetraTelegramsParser.hpp"
|
||||
|
||||
namespace N_LogView
|
||||
{
|
||||
static int s_currentRow = 0;
|
||||
// ---------------------------------------------------------------
|
||||
LogViewTelegramSelectionDialog::LogViewTelegramSelectionDialog(QWidget* a_parent)
|
||||
: QDialog(a_parent)
|
||||
{
|
||||
setMinimumSize(QSize(600, 500));
|
||||
QVBoxLayout* layout = new QVBoxLayout;
|
||||
layout->addWidget(new QLabel(tr("Select a telegram:")));
|
||||
m_TelegramList = new QListWidget(this);
|
||||
const auto telegramMap = LogViewTelegram::jsonParser()->telegramsToCreate();
|
||||
for (auto it = telegramMap.cbegin(); it != telegramMap.cend(); ++it)
|
||||
{
|
||||
if (it.key() == 0) // ACK
|
||||
continue;
|
||||
auto lwi = new QListWidgetItem(it.value() + QStringLiteral(" (%1)").arg(it.key()));
|
||||
lwi->setData(Qt::UserRole, it.key());
|
||||
m_TelegramList->addItem(lwi);
|
||||
}
|
||||
|
||||
m_TelegramList->sortItems();
|
||||
m_TelegramList->setCurrentRow(s_currentRow);
|
||||
connect(m_TelegramList, &QListWidget::itemActivated,
|
||||
this, &LogViewTelegramSelectionDialog::selectTelegram);
|
||||
layout->addWidget(m_TelegramList);
|
||||
|
||||
setLayout(layout);
|
||||
}
|
||||
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
void LogViewTelegramSelectionDialog::selectTelegram(QListWidgetItem* a_telegramItem)
|
||||
{
|
||||
s_currentRow = m_TelegramList->currentRow();
|
||||
m_SelectedTelegramId = a_telegramItem->data(Qt::UserRole).toInt();
|
||||
accept();
|
||||
}
|
||||
|
||||
} // namespace N_LogView
|
||||
Reference in new issue
Block a user