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
@@ -0,0 +1,102 @@
|
||||
|
||||
|
||||
|
||||
#include "lts_plugin_manager_dialog.h"
|
||||
#include "lts_plugin_manager_widget.h"
|
||||
#include "ui_lts_plugin_manager_dialog.h"
|
||||
#include "../lts_plugin_manager.h"
|
||||
|
||||
#include <QCoreApplication>
|
||||
#include <QString>
|
||||
#include <QDebug>
|
||||
|
||||
|
||||
namespace LtsPluginManager
|
||||
{
|
||||
|
||||
LtsPluginManagerDialog::LtsPluginManagerDialog(QWidget *parent)
|
||||
: QDialog(parent)
|
||||
, m_ui(new Ui::LtsPluginManagerDialog)
|
||||
{
|
||||
m_ui->setupUi(this);
|
||||
|
||||
|
||||
m_ui->masterSplitter->setStretchFactor(m_ui->masterSplitter->indexOf(m_ui->pluginsWidget), 20);
|
||||
m_ui->masterSplitter->setStretchFactor(m_ui->masterSplitter->indexOf(m_ui->lwErrorLog), 0);
|
||||
}
|
||||
|
||||
|
||||
LtsPluginManagerDialog::~LtsPluginManagerDialog()
|
||||
{
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
|
||||
void LtsPluginManagerDialog::setServiceMissing(const QString &newPluginFilename, const QString &missingPluginName)
|
||||
{
|
||||
m_ui->lwErrorLog->addItem(tr("ERROR: Plugin '%1' needs the plugin '%2', which is not available!").arg(newPluginFilename, missingPluginName));
|
||||
getPluginWidget(newPluginFilename)->setStatus(LtsPluginWidget::MISSING_SERVICE);
|
||||
|
||||
if (!isVisible())
|
||||
show();
|
||||
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
|
||||
|
||||
void LtsPluginManagerDialog::setOptionalServiceMissing(const QString &newPluginFilename, const QString &missingPluginName)
|
||||
{
|
||||
m_ui->lwErrorLog->addItem(tr("INFO: Plugin %1 asked for plugin %2, which is not available!").arg(newPluginFilename, missingPluginName));
|
||||
|
||||
if (!isVisible())
|
||||
show();
|
||||
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
|
||||
|
||||
void LtsPluginManagerDialog::setInvalidPlugin(const QString &newPluginFilename)
|
||||
{
|
||||
m_ui->lwErrorLog->addItem(tr("INFO: Invalid plugin '%1'").arg(newPluginFilename));
|
||||
}
|
||||
|
||||
|
||||
LtsPluginWidget *LtsPluginManagerDialog::getPluginWidget(const QString &filename)
|
||||
{
|
||||
LtsPluginWidget *pluginWidget = findChild<LtsPluginWidget *>(filename);
|
||||
|
||||
if (!pluginWidget)
|
||||
{
|
||||
pluginWidget = new LtsPluginWidget(filename);
|
||||
pluginWidget->setObjectName(filename);
|
||||
qobject_cast<QHBoxLayout *>(m_ui->pluginsWidget->layout())->insertWidget(0, pluginWidget);
|
||||
}
|
||||
|
||||
return pluginWidget;
|
||||
}
|
||||
|
||||
|
||||
void LtsPluginManagerDialog::setPluginLogStatus(const QString &filename, const LtsPluginWidget::Status &status)
|
||||
{
|
||||
getPluginWidget(filename)->setStatus(status);
|
||||
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
|
||||
|
||||
void LtsPluginManagerDialog::setPluginLogType(const QString &filename, const QString &type)
|
||||
{
|
||||
getPluginWidget(filename)->setType(type);
|
||||
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
|
||||
|
||||
void LtsPluginManagerDialog::setPluginLogIdent(const QString &filename, const QString &ident)
|
||||
{
|
||||
getPluginWidget(filename)->setIdent(ident);
|
||||
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <LtsPluginManager/lts_plugin_manager_export.h>
|
||||
#include "lts_plugin_manager_widget.h"
|
||||
|
||||
#include <QDialog>
|
||||
|
||||
|
||||
namespace Ui
|
||||
{
|
||||
class LtsPluginManagerDialog;
|
||||
}
|
||||
|
||||
namespace LtsPluginManager
|
||||
{
|
||||
class LTSPLUGINMANAGER_EXPORT LtsPluginManagerDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit LtsPluginManagerDialog(QWidget *parent = nullptr);
|
||||
~LtsPluginManagerDialog();
|
||||
|
||||
void setServiceMissing(const QString &newPluginFilename, const QString &missingPluginName);
|
||||
void setOptionalServiceMissing(const QString &newPluginFilename, const QString &missingPluginName);
|
||||
void setInvalidPlugin(const QString &newPluginFilename);
|
||||
|
||||
void setPluginLogStatus(const QString &filename, const LtsPluginWidget::Status &status);
|
||||
void setPluginLogType(const QString &filename, const QString &type);
|
||||
void setPluginLogIdent(const QString &filename, const QString &ident);
|
||||
|
||||
private:
|
||||
Ui::LtsPluginManagerDialog *m_ui;
|
||||
|
||||
LtsPluginWidget *getPluginWidget(const QString &filename);
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>LtsPluginManagerDialog</class>
|
||||
<widget class="QWidget" name="LtsPluginManagerDialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>492</width>
|
||||
<height>342</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<widget class="QSplitter" name="masterSplitter">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<widget class="QWidget" name="pluginsWidget" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>250</height>
|
||||
</size>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>493</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QListWidget" name="lwErrorLog">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
@@ -0,0 +1,130 @@
|
||||
|
||||
|
||||
|
||||
#include "lts_plugin_manager_widget.h"
|
||||
#include "ui_lts_plugin_manager_widget.h"
|
||||
|
||||
using namespace LtsPluginManager;
|
||||
|
||||
LtsPluginWidget::LtsPluginWidget(const QString &filename, QWidget *parent)
|
||||
: QWidget(parent)
|
||||
, m_ui(new Ui::LtsPluginWidget)
|
||||
{
|
||||
m_ui->setupUi(this);
|
||||
|
||||
m_ui->leFilename->setText(filename);
|
||||
setStatus(UNKNOWN);
|
||||
setType();
|
||||
setIdent();
|
||||
|
||||
|
||||
m_ui->lbGuiPlugins->hide();
|
||||
|
||||
m_ui->lbDtc->hide();
|
||||
m_ui->lwDtcs->hide();
|
||||
|
||||
m_ui->lbFtc->hide();
|
||||
m_ui->lwFtcs->hide();
|
||||
}
|
||||
|
||||
LtsPluginWidget::~LtsPluginWidget()
|
||||
{
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
void LtsPluginWidget::setStatus(Status status)
|
||||
{
|
||||
QString statusText;
|
||||
|
||||
switch (status)
|
||||
{
|
||||
case INVALID:
|
||||
{
|
||||
m_ui->frStatus->setStyleSheet(QLatin1String("background-color: rgb(189, 106, 98);"));
|
||||
statusText = tr("Invalid");
|
||||
break;
|
||||
}
|
||||
case LOADED:
|
||||
{
|
||||
m_ui->frStatus->setStyleSheet(QLatin1String("background-color: rgb(124, 189, 124);"));
|
||||
statusText = tr("Loaded");
|
||||
break;
|
||||
}
|
||||
case CONFLICT:
|
||||
{
|
||||
m_ui->frStatus->setStyleSheet(QLatin1String("background-color: rgb(189, 106, 98);"));
|
||||
statusText = tr("CONFLICT!");
|
||||
break;
|
||||
}
|
||||
case UNLOADED:
|
||||
{
|
||||
m_ui->frStatus->setStyleSheet(QLatin1String("background-color: rgb(100, 100, 100);"));
|
||||
statusText = tr("Unloaded");
|
||||
break;
|
||||
}
|
||||
case INIT_FAILED:
|
||||
{
|
||||
m_ui->frStatus->setStyleSheet(QLatin1String("background-color: rgb(189, 106, 98);"));
|
||||
statusText = tr("INIT FAILED!");
|
||||
break;
|
||||
}
|
||||
case MISSING_SERVICE:
|
||||
{
|
||||
m_ui->frStatus->setStyleSheet(QLatin1String("background-color: rgb(189, 106, 98);"));
|
||||
statusText = tr("MISSING SERVICE!");
|
||||
break;
|
||||
}
|
||||
case OBLIBATORY_INTERFACES_MISSING:
|
||||
{
|
||||
m_ui->frStatus->setStyleSheet(QLatin1String("background-color: rgb(189, 106, 98);"));
|
||||
statusText = tr("OBLIGATORY INTERFACES MISSING!");
|
||||
break;
|
||||
}
|
||||
case INVALID_PLUGIN_VERSION:
|
||||
{
|
||||
m_ui->frStatus->setStyleSheet(QLatin1String("background-color: rgb(189, 106, 98);"));
|
||||
statusText = tr("INVALID PLUGIN VERSION!");
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
m_ui->frStatus->setStyleSheet(QLatin1String("background-color: rgb(100, 100, 100);"));
|
||||
statusText = tr("Unknown (%1)").arg(status);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
m_ui->leStatus->setText(statusText);
|
||||
}
|
||||
|
||||
|
||||
void LtsPluginWidget::setType(const QString &type)
|
||||
{
|
||||
if (type.isEmpty())
|
||||
{
|
||||
m_ui->leType->hide();
|
||||
m_ui->lbType->hide();
|
||||
}
|
||||
else
|
||||
{
|
||||
m_ui->leType->show();
|
||||
m_ui->lbType->show();
|
||||
m_ui->leType->setText(type);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void LtsPluginWidget::setIdent(const QString &ident)
|
||||
{
|
||||
if (ident.isEmpty())
|
||||
{
|
||||
m_ui->leIdent->hide();
|
||||
m_ui->lbIdent->hide();
|
||||
}
|
||||
else
|
||||
{
|
||||
m_ui->leIdent->show();
|
||||
m_ui->lbIdent->show();
|
||||
m_ui->leIdent->setText(ident);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
|
||||
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
#include <lts_plugin_manager.h>
|
||||
#include <QWidget>
|
||||
|
||||
|
||||
namespace Ui
|
||||
{
|
||||
class LtsPluginWidget;
|
||||
}
|
||||
|
||||
namespace LtsPluginManager
|
||||
{
|
||||
class LtsPluginWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
enum Status
|
||||
{
|
||||
UNKNOWN = 0,
|
||||
INVALID,
|
||||
LOADED,
|
||||
CONFLICT,
|
||||
UNLOADED,
|
||||
INIT_FAILED,
|
||||
MISSING_SERVICE,
|
||||
OBLIBATORY_INTERFACES_MISSING,
|
||||
INVALID_PLUGIN_VERSION,
|
||||
};
|
||||
|
||||
explicit LtsPluginWidget(const QString &filename, QWidget *parent = nullptr);
|
||||
~LtsPluginWidget();
|
||||
|
||||
void setStatus(Status status);
|
||||
void setType(const QString &type = QString());
|
||||
void setIdent(const QString &ident = QString());
|
||||
|
||||
private:
|
||||
Ui::LtsPluginWidget *m_ui;
|
||||
};
|
||||
}
|
||||
+196
@@ -0,0 +1,196 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>LtsPluginWidget</class>
|
||||
<widget class="QWidget" name="LtsPluginWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>481</width>
|
||||
<height>580</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout" stretch="0,1">
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
<widget class="QFrame" name="frStatus">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>15</width>
|
||||
<height>60</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>15</width>
|
||||
<height>60</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QFormLayout" name="formLayout">
|
||||
<item row="0" column="1">
|
||||
<widget class="QLineEdit" name="leFilename">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="lbFilename">
|
||||
<property name="text">
|
||||
<string>Name:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="lbType">
|
||||
<property name="text">
|
||||
<string>Type:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="lbStatus">
|
||||
<property name="text">
|
||||
<string>Status:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="lbIdent">
|
||||
<property name="text">
|
||||
<string>Ident:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="0">
|
||||
<widget class="QLabel" name="lbGuiPlugins">
|
||||
<property name="text">
|
||||
<string>Gui Plugins:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="1">
|
||||
<widget class="QWidget" name="guiPluginsWidget" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout"/>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLineEdit" name="leStatus">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QLineEdit" name="leType">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<widget class="QLineEdit" name="leIdent">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="lbDtc">
|
||||
<property name="text">
|
||||
<string>Foreign Data Topic Clients:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="lbFtc">
|
||||
<property name="text">
|
||||
<string>Foreign Function Topic Clients:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QListWidget" name="lwDtcs">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="1">
|
||||
<widget class="QListWidget" name="lwFtcs">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
Reference in new issue
Block a user