Open alexey-malov opened 7 years ago
SFrameData m_frameData;
SFrameData m_oldData;
CShapePtr m_selectedShape;
ArrayShapes m_resizeShapes;
// For drag and drop
boost::optional<Vec2f> m_startMove;
Vec2f m_start;
Vec2f m_current;
bool m_isUpdate = false;
UpdateType m_updateType = UpdateType::None;
[x] имя, содержащее data следует использовать, когда ничего о данных не известно. В вашем случае это oldFrame и newFrame.
[x] Выпилить SFrameData, т.к. есть классы, решающие задачу хранения информации о прямоугольнике - CFrame
В CSelectedShape выпилить неиспользуемые методы, либо сделать их приватными, если они снаружи не нужны.
GetOldFrameData - SetOldFrameData - выпилить слово Data.
Зачем хранить OldFrame внутри selected shape, если можно хранить только текущий фрейм, а старый фрейм хранить в команде и восстанавливать при undo
bool CheckBoundingRect(const D2D1_RECT_F & rect) const;