Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Common/LtsWidgets/lts_abstract_sequence_widget.h
T

60 lines
1.4 KiB
C++

#ifndef LTS_ABSTRACT_SEQUENCE_WIDGET_H
#define LTS_ABSTRACT_SEQUENCE_WIDGET_H
#pragma once
#include "lts_widgets_export.h"
#include <QGroupBox>
#include <QList>
#include <QObject>
class QToolButton;
namespace LtsWidgets
{
class LTSWIDGETS_EXPORT LtsAbstractSequenceWidget : public QGroupBox
{
Q_OBJECT
public:
explicit LtsAbstractSequenceWidget(QWidget* parent = nullptr, const bool& readOnly = false);
~LtsAbstractSequenceWidget();
virtual void addWidget(QWidget* widget, bool isReadOnly, bool isButtonVisible = true);
virtual void getValue(QWidget* contentType, const QString& findObjectName) const;
virtual void setMemberCount(int count);
virtual uint32_t getMemberCount() const;
virtual int getMemberlistSize();
protected:
virtual QToolButton* pbAddMember() const;
virtual QString getObjectName(int index) const;
virtual void setupMemberWidget(QWidget* child, QToolButton* pbChild, const QString& objectName,
bool isButtonVisible = true) = 0;
signals:
void addMember();
private slots:
virtual void addMemberWidget(QWidget* member, bool isReadOnly, bool isButtonVisible = true);
virtual void deleteMemberWidget(QObject* member);
private:
bool m_readOnly;
QToolButton* m_pbAddMember = nullptr;
QList<QWidget*> m_memberList;
};
} // namespace LtsWidgets
#endif