Reinserts original comments

This commit is contained in:
torsten committed 2026-10-14 12:56:16 +00:00
1 parent 1dd1e86355
commit b662e4daf9
112 files changed
+7113 -5131

No files matched your search

@@ -1,5 +1,10 @@
/**
* @RDE_HEADER@
* some models for LogViewGui
* $Id$
* $HeadURL$
* $Author$
*/
#include "LogViewTelegramEdit.hpp"
@@ -125,16 +130,16 @@ void TelegramEdit::tableViewCustomContextMenu(const QPoint &pos)
{
QMenu menu;
// add, edit and remove telegrams
// ------------------------------
menu.addAction(m_addTeleAction);
menu.addAction(m_editTeleAction);
menu.addAction(m_copyTeleAction);
menu.addAction(m_pasteTeleAction);
menu.addAction(m_deleteTeleAction);
// move telegram up/down
// ---------------------
menu.addSeparator();
menu.addAction(m_moveTeleUpAction);
menu.addAction(m_moveTeleDownAction);
@@ -142,32 +147,32 @@ void TelegramEdit::tableViewCustomContextMenu(const QPoint &pos)
menu.addSeparator();
const bool itemSelected = m_tableView->currentIndex().isValid();
// is it a central-telegram?
bool isCentral = false;
QSharedPointer<LogViewTelegram> tele = m_EditModel->telegram(m_tableView->currentIndex().row());
if (tele)
isCentral = (tele->getProtocol() == N_CoPrtCnv::CoPrtCnvLogHeader::e_DestProtocolCentral);
// inject telegram
// ---------------
if (isInjectionPossible())
{
QAction *action = menu.addAction(QIcon(QLatin1String(":/image/InjectCentral.png")), tr("Injektiere Zentral-Telegramm"));
// only central-telegrams can be injected
action->setEnabled(itemSelected && isCentral);
connect(action, &QAction::triggered, this, &TelegramEdit::injectCentralTelegram);
action = menu.addAction(QIcon(QLatin1String(":/image/InjectTetra.png")), tr("Injektiere Tetra-Telegramm"));
// only central-telegrams can be injected
action->setEnabled(itemSelected && isCentral);
connect(action, &QAction::triggered, this, &TelegramEdit::injectTetraTelegram);
menu.addSeparator();
// send and loop telegrams
// -----------------------
action = menu.addAction(QIcon(QLatin1String(":icons/16x16/mail-send.png")), tr("Sende Telegramm"));
// only central-telegrams can be sent
action->setEnabled(itemSelected && isCentral);
connect(action, &QAction::triggered, this, &TelegramEdit::sendCurrentTelegram);
@@ -184,8 +189,8 @@ void TelegramEdit::tableViewCustomContextMenu(const QPoint &pos)
action->setEnabled(itemSelected);
connect(action, &QAction::triggered, this, &TelegramEdit::sequenceTelegrams);
// load/save telegram-list
// -----------------------
menu.addSeparator();
}
@@ -196,17 +201,17 @@ void TelegramEdit::tableViewCustomContextMenu(const QPoint &pos)
menu.exec(m_tableView->viewport()->mapToGlobal(pos));
}
// ---------------------------------------------------------------
// Adds a_telegram at a_row in table. If there is already a
// telegram it will be overwritten.
// If a_row is -1, the telegram will be added at end.
// If false is false, a_telegram will be ignored, a
// dialog for selecting an empty telegram will be shown
// instead.
// ---------------------------------------------------------------
void TelegramEdit::addTelegram()
{
// add telegram for editing
LogViewTelegramSelectionDialog telegramSelectionDialog(m_tableView);
if (QDialog::Accepted == telegramSelectionDialog.exec())
{
@@ -214,7 +219,7 @@ void TelegramEdit::addTelegram()
telegramSelectionDialog.getSelectedTelegramId()));
m_curEditTelegramRow = m_EditModel->appendTelegram(newTelegram);
// show the edit-telegram-dialog
LogViewTelegramDialog *editTelegramDialog = new LogViewTelegramDialog(m_tableView, false);
connect(editTelegramDialog, &LogViewTelegramDialog::finished,
this, &TelegramEdit::editTelegramDialogFinished);
@@ -238,13 +243,13 @@ QModelIndex TelegramEdit::currentSelectedIndex() const
void TelegramEdit::editTelegramDialogFinished()
{
//model über geänderte Daten informieren
m_EditModel->emitDataChanged(m_curEditTelegramRow);
}
// ---------------------------------------------------------------
// shows a telegram-dialog, where the telegram can be changed.
// ---------------------------------------------------------------
void TelegramEdit::editTelegram()
{
m_curEditTelegramRow = currentSelectedIndex().row();
@@ -255,18 +260,18 @@ void TelegramEdit::editTelegram()
editTelegramDialog->showDialog(currentSelectedTelegram());
}
// ---------------------------------------------------------------
// shows a non-editable telegram-dialog
// ---------------------------------------------------------------
void TelegramEdit::showTelegram()
{
LogViewTelegramDialog *showTelegramDialog = new LogViewTelegramDialog(m_tableView, true);
showTelegramDialog->showDialog(currentSelectedTelegram());
//
// qulonglong dataPtr = m_TelegramTableWidget->item(a_tableWidget->row(), 0)->data(Qt::UserRole).toULongLong();
// LogViewTelegram* telegram = (LogViewTelegram*)dataPtr;
// LogViewTelegramDialog* telegramDialog = new LogViewTelegramDialog(this);
// telegramDialog->showDialog(telegram);
}
void TelegramEdit::deleteTelegram()
@@ -324,7 +329,7 @@ void TelegramEdit::sendTelegram(const QSharedPointer<LogViewTelegram> &a_telegra
void TelegramEdit::loopTelegrams()
{
//gucken ob loop schon gestartet oder nicht
if (m_DoLoop)
{
m_DoLoop = false;
@@ -348,7 +353,7 @@ void TelegramEdit::loopNextTelegram()
if (!m_DoLoop)
return;
++m_currentRowToSend;
// am Ende ?
if (m_currentRowToSend >= m_tableView->model()->rowCount())
m_currentRowToSend = 0;
@@ -363,7 +368,7 @@ void TelegramEdit::loopNextTelegram()
void TelegramEdit::sequenceTelegrams()
{
m_currentRowToSend = currentSelectedIndex().row();
if (m_currentRowToSend < 0)
if (m_currentRowToSend < 0) // invalid index
return;
QSharedPointer<LogViewTelegram> tele = currentSelectedTelegram();
sendTelegram(tele);
@@ -432,7 +437,7 @@ void TelegramEdit::moveDown()
void TelegramEdit::saveTelegramList()
{
// get the filename
QSettings settings;
QString newFilename = QFileDialog::getSaveFileName(m_tableView,
tr("Dateiname der Telegrammliste"),
@@ -443,22 +448,22 @@ void TelegramEdit::saveTelegramList()
if (!newFilename.contains(QLatin1Char('.')))
newFilename += QLatin1String(".tgl");
// save the actual directory
QDir dir;
settings.beginGroup(s_EDIT_TELEGRAM_GROUP());
settings.setValue(s_DIR(), dir.filePath(newFilename));
settings.endGroup();
// save the telegram-list
QFile telegramFile(newFilename);
(void)telegramFile.open(QIODevice::WriteOnly);
QDataStream stream(&telegramFile);
// write the header
uint32_t version = 1;
stream << s_TELEGRAMLIST_FILE_ID() << version;
// write the telegrams
int rows = m_tableView->model()->rowCount();
stream << rows;
for (int i = 0; i < rows; i++)
@@ -493,7 +498,7 @@ void TelegramEdit::loadTelegramListReplace()
void TelegramEdit::loadTelegramList(bool checkAppend)
{
// get the filename
QSettings settings;
QString newFilename = QFileDialog::getOpenFileName(m_tableView,
tr("Dateiname der Telegrammliste"),
@@ -501,24 +506,24 @@ void TelegramEdit::loadTelegramList(bool checkAppend)
s_TELEGRAMLIST_FILES());
if (!newFilename.isEmpty())
{
// save the actual directory
QDir dir;
settings.beginGroup(s_EDIT_TELEGRAM_GROUP());
settings.setValue(s_DIR(), dir.filePath(newFilename));
settings.endGroup();
// delete the actual telegram-list
{
if (!checkAppend)
m_EditModel->clearTelegrams();
}
// load the telegram-list
QFile telegramFile(newFilename);
(void)telegramFile.open(QIODevice::ReadOnly);
QDataStream stream(&telegramFile);
// read the header
QString id;
stream >> id;
if (id != s_TELEGRAMLIST_FILE_ID())
@@ -534,7 +539,7 @@ void TelegramEdit::loadTelegramList(bool checkAppend)
return;
}
// read the telegrams
int rows = 0;
QVector<uint16_t> gpsFieldOffset;
stream >> rows;
@@ -565,13 +570,13 @@ void TelegramEdit::loadTelegramList(bool checkAppend)
}
}
// ---------------------------------------------------------------
bool TelegramEdit::isInjectionPossible() const
{
return m_InjectionThread ? m_InjectionThread->isSendingPossible() : false;
}
// ---------------------------------------------------------------
void TelegramEdit::onSelectionChanged()
{
const QModelIndex idx = currentSelectedIndex();
@@ -583,4 +588,4 @@ void TelegramEdit::onSelectionChanged()
m_moveTeleDownAction->setEnabled(idx.isValid() && idx.row() < m_EditModel->rowCount() - 1);
}
}
} // namespace N_LogView