#pragma once enum class lcInstructionsDirection { Horizontal, Vertical }; struct lcInstructionsPageSettings { int Rows; int Columns; lcInstructionsDirection Direction; }; struct lcInstructionsStep { QRectF Rect; lcModel* Model; lcStep Step; }; struct lcInstructionsPage { // lcInstructionsPageSettings Settings; std::vector Steps; }; class lcInstructions { public: lcInstructions(Project* Project = nullptr); void SetDefaultPageSettings(const lcInstructionsPageSettings& PageSettings); std::vector mPages; lcInstructionsPageSettings mPageSettings; protected: void CreatePages(); void AddDefaultPages(lcModel* Model, std::vector& AddedModels); Project* mProject = nullptr; };