feat(todo): 待办窗口可拖动并记忆位置

- 拖动标题区移动,layer-shell margins 实时更新
- 位置持久化到 todo/rightMargin、todo/topMargin
This commit is contained in:
2026-10-30 20:28:22 +08:00
parent 680cd3c7ab
commit 5fbf7d7931
2 changed files with 78 additions and 1 deletions
+11
View File
@@ -29,13 +29,24 @@ public:
protected:
void showEvent(QShowEvent *event) override;
void mousePressEvent(QMouseEvent *event) override;
void mouseMoveEvent(QMouseEvent *event) override;
void mouseReleaseEvent(QMouseEvent *event) override;
private:
void setupWindow();
void setupUi();
void addEntry();
void applyMargins();
void saveMargins();
TodoModel *m_model = nullptr;
QListView *m_view = nullptr;
QLabel *m_countLabel = nullptr;
int m_rightMargin = 16;
int m_topMargin = 72;
bool m_dragging = false;
QPoint m_dragStart;
int m_dragStartRight = 0;
int m_dragStartTop = 0;
};