Files
leocad/common/lc_editgroupsdialog.h
T
2026-03-30 22:33:23 -07:00

42 lines
696 B
C++

#pragma once
namespace Ui {
class lcEditGroupsDialog;
}
class lcEditGroupsDialog : public QDialog
{
Q_OBJECT
public:
lcEditGroupsDialog(QWidget* Parent, const lcModel* Model);
virtual ~lcEditGroupsDialog();
struct GroupInfo
{
QString Name;
lcGroup* Group;
std::vector<GroupInfo> ChildGroups;
std::vector<lcPiece*> ChildPieces;
};
GroupInfo GetGroups() const;
bool CanRenameGroup(const QString& Text) const;
protected slots:
void NewGroupClicked();
protected:
enum
{
PieceRole = Qt::UserRole,
GroupRole
};
GroupInfo GetGroupInfo(QTreeWidgetItem* ParentItem) const;
void PopulateTree();
Ui::lcEditGroupsDialog* ui = nullptr;
const lcModel* mModel = nullptr;
};