// neuratemplatemanager.h #ifndef NEURALTEMPLATEMANAGER_H #define NEURALTEMPLATEMANAGER_H #include "qtablewidget.h" #include #include #include class NeuralTemplateManager : public QObject { Q_OBJECT public: explicit NeuralTemplateManager(QObject *parent = nullptr); bool addTemplate(const QString &name, const QString &templateText); bool removeTemplate(const QString& name); bool updateTemplate(const QString& oldName, const QString& newName, const QString& newTemplateText); QString getTemplateText(const QString &name) const; void clear(); void loadFromTableWidget(QTableWidget *table); bool containsTemplate(const QString& name) const; private: struct NeuralTemplate { QString name; QString templateText; NeuralTemplate(const QString& n = "", const QString& t = "") : name(n), templateText(t) {} }; QVector templates; int findTemplateIndex(const QString& name) const; }; #endif // NEURALTEMPLATEMANAGER_H