#ifndef REMOVEROWSCOMMAND_H #define REMOVEROWSCOMMAND_H #include class TableModel; typedef QHash ModelItemValues; class RemoveRowsCommand : public QUndoCommand { public: // TODO don't use simple pointer to model /// Using simple pointer to model because there was a crash when closing the application with an /// unclean undo stack RemoveRowsCommand(TableModel* model, const int startRow, const int nRows, QUndoCommand* parent = nullptr); /// QUndoCommand interface void undo() override; void redo() override; private: TableModel* m_tableModel; const int m_startRow; QList m_valueList; }; #endif // REMOVEROWSCOMMAND_H