123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #pragma once
- #include "WindowAppItemRefLine.h"
- /// <summary>
- /// 管理UI界面中的参考线的类
- /// </summary>
- class WindowAppItemRefLine;
- class WindowAppUiScene;
- class WindowAppRefLineManager
- {
- public:
- WindowAppRefLineManager();
-
- // 绑定Scene指针,用于添加参考线
- void bindScene(WindowAppUiScene* uiScene)
- {
- this->m_pScene = uiScene;
- }
- // 根据两个Widget控件的关系,处理对应的参考线效果
- void check(QWidget* srcWidget, QWidget* dstWidget);
- // 清空所有的参考线
- void clear();
- protected:
- // 更新参考线(是否新建、位置、长度等)
- void updateRefLine(const UI_REFLINE_INFO& info);
- // 查找对应的参考线是否存在
- bool isRefLineExist(const UI_REFLINE_INFO& info);
- // 移除一条对应的参考线
- void removeRefLine(const UI_REFLINE_INFO& info);
- protected:
- // 当前界面中的所有控件参考线
- QVector<WindowAppItemRefLine*> m_RefLines;
- WindowAppUiScene* m_pScene;
- };
|