Add terminalStripModel class

This commit is contained in:
joshua
2021-06-07 19:26:41 +02:00
parent 364bce618c
commit a1e18d2bba
11 changed files with 325 additions and 23 deletions

View File

@@ -21,6 +21,7 @@
#include <QObject>
#include <QPointer>
#include "terminalstripdata.h"
#include "../properties/elementdata.h"
class Element;
class RealTerminal;
@@ -29,6 +30,26 @@ class PhysicalTerminal;
class TerminalStripIndex;
class TerminalElement;
struct RealTerminalData
{
QSharedPointer<RealTerminal> m_real_terminal;
int pos_ = 0,
level_ = 0;
QString label_,
Xref_,
cable_,
cable_wire_,
conductor_;
ElementData::TerminalType type_;
bool led_ = false,
is_element = false;
};
/**
* @brief The TerminalStrip class
* This class hold all the datas and configurations
@@ -38,6 +59,8 @@ class TerminalElement;
*/
class TerminalStrip : public QObject
{
friend class TerminalStripModel;
Q_OBJECT
public:
TerminalStrip(QETProject *project);
@@ -67,7 +90,9 @@ class TerminalStrip : public QObject
bool haveTerminal (Element *terminal);
int physicalTerminalCount() const;
int realTerminalCount() const;
TerminalStripIndex index(int index = 0);
RealTerminalData realTerminalData(int real_terminal_index);
QVector<QPointer<Element>> terminalElement() const;