#ifndef WORKMGRCTLR_H #define WORKMGRCTLR_H #include #include #include #include #include #include #include #include #include "IWheelCtrl.h" struct SimuItem{ QString key; QStringList strDefectList; QString strAbout; bool bUse; SimuItem(){ }; }; class QWorkMgrCtlr : public QObject { Q_OBJECT public: QWorkMgrCtlr(IWheelCtrl *ptr, QObject *parent = 0); ~QWorkMgrCtlr(); void setFormulaHeader(QString headerStr){ }; void setTargetFile(QString filepath); void clear(); void readManageFile(); void saveManageFile(); QStringList getItemKeys(); QStringList *getItemKeysPtr(){ return &strs; }; void RowChange(int from, int to); bool AddItem(QString key, SimuItem nItem); bool delItem(QString key); bool ModItem(QString oldkey, SimuItem nItem); bool ModAllItem(const QString &str); SimuItem * getItem(QString key); void setDebugModel(int nmodel){ nDebugmodel = nmodel; }; QStringList getDefectList(){ if (ForUse.isEmpty()) { if (mMagerMap.size() > 0) return mMagerMap.first().strDefectList; else return QStringList(); } return mMagerMap.value(ForUse).strDefectList; }; void setDefectStr(QString str){ ForUse = str; }; QString getDetectStr(){ return ForUse; }; protected: bool ReadJsonFile(QString filePath, QJsonObject &obj); bool SaveJsonFIle(QString filePath, QJsonObject &obj); private: QString predictFile; QMap mMagerMap; QStringList strs;//show to list QString strAppPath; int nDebugmodel; QString ForUse; IWheelCtrl *m_pCtrl; signals: void sgValueMap(QVariantMap); }; #endif // WORKMGRCTLR_H