From 95d1233150e43d6533b4f764bca7ddbf2436ba79 Mon Sep 17 00:00:00 2001 From: jiegeaiai Date: Mon, 10 Feb 2025 23:24:06 +0800 Subject: [PATCH] add ui system manager menu --- doc/dyt修改.txt | 20 ++++++++++---------- src/Dyt.qrc | 1 + src/res/default/menu_window_manager.png | Bin 0 -> 527 bytes src/ui/DockWidget.cpp | 4 ++-- src/ui/Menu/SystemManagerMenu.cpp | 18 ++++++++++++++++++ src/ui/Menu/SystemManagerMenu.h | 6 ++++++ src/ui/Menu/SystemManagerMenu.ui | 10 ++++++++++ 7 files changed, 47 insertions(+), 12 deletions(-) create mode 100644 src/res/default/menu_window_manager.png diff --git a/doc/dyt修改.txt b/doc/dyt修改.txt index d13dc721..90e2a52b 100644 --- a/doc/dyt修改.txt +++ b/doc/dyt修改.txt @@ -22,20 +22,20 @@ a、暂时不动 5.关联文件时候更改文件的按键不太明显。 - 解决方案 - a、属性控件文件选择按钮不明显 - b、属性控件中间的分割线能左右移动 + 解决方案 + a、属性控件文件选择按钮不明显 + b、属性控件中间的分割线能左右移动 6.提供的轨迹文件是如何输入到dyt界面的,我们需要知道。 解决方案 - a、下次发版带一个配置好的空间想定 + a、下次发版带一个配置好的空间想定 7.属性、实体、report等这些窗口,加上稍微明显一点的边界,然后点击边界拖动时候改变窗口大小或者改变位置。就和桌面上的文件一样任意改变窗口大小和位置。 解决方案 - a、界面美化,层次感 - b、鼠标拖动放大缩小之后,松开鼠标再次拖动无法缩小 - c、所有窗口都用dock形式,用户随意拖动放置到其他窗口中 - d、窗口布局影响窗口位置 - e、窗口会自动变大 - f、report窗口能分离出来 + a、界面美化,层次感 + b、鼠标拖动放大缩小之后,松开鼠标再次拖动无法缩小 + c、所有窗口都用dock形式,用户随意拖动放置到其他窗口中 + d、窗口布局影响窗口位置 + e、窗口会自动变大 + f、report窗口能分离出来 \ No newline at end of file diff --git a/src/Dyt.qrc b/src/Dyt.qrc index a29cfdf2..5237e772 100644 --- a/src/Dyt.qrc +++ b/src/Dyt.qrc @@ -23,6 +23,7 @@ res/default/menu_setting_restore.png res/default/menu_setting.png res/default/menu_uisetting.png + res/default/menu_window_manager.png diff --git a/src/res/default/menu_window_manager.png b/src/res/default/menu_window_manager.png new file mode 100644 index 0000000000000000000000000000000000000000..c5efb371bc839ca0bb746087ce165254074493b6 GIT binary patch literal 527 zcmV+q0`UEbP)Px$$w@>(R9Hvtmpx9yKoEtWJ4#AANJT-z0g&)?l$3Pf8_-ZEoPe4FkyMn36HJgO zC@8oAk!UD503G<*vsU7tEOs12;gKRm+TEGYZ)SIA11vFB-2re5AY3-D!PpGISVS%Z z55RW==XI8hD*;sX%)WjmB7-_!eREA&<-7ub4W0rx0G|eu|P<>VxatTs>-xd(T_L=3p`DMeK{-r0KhJQ2LPWf0I+_X zZ2y3FYsp@?k{5ZF;6d>8_s>&jKG}3MRKcr-}qo=iX1>hXO1%MYzbvXcls7Vmd z8dv%BO=VeY${vyUYvF`gw2Xi#ynQfL?)KfnI_Cr2y{(*Lm>@ z=5^fVNyy${-!7-(5B?svKBg|<1mHyWZhR57Z4An<&vKp*@B`Xmfid{G Rf%pIb002ovPDHLkV1h3^; -#include "ui/Menu/WindowManagerMenu.h" +#include "ui/Menu/SystemManagerMenu.h" #include "common/SpdLogger.h" #include "ui/MainFrame.h" @@ -29,7 +29,7 @@ QSize DockWidgetTitleBar::minimumSizeHint() const { DockWidget::DockWidget(const QString& title, QWidget* parent) : QDockWidget(title, parent) { setFeatures(DockWidgetClosable | DockWidgetMovable | DockWidgetFloatable); - WindowManagerMenu* windowManagerMenu = MainFrame::Get().GetMenuManager("window_manager"); + SystemManagerMenu* windowManagerMenu = MainFrame::Get().GetMenuManager("system_manager"); if (nullptr != windowManagerMenu) { windowManagerMenu->AddDockWidget(this); } diff --git a/src/ui/Menu/SystemManagerMenu.cpp b/src/ui/Menu/SystemManagerMenu.cpp index 19a86d4a..3936e30d 100644 --- a/src/ui/Menu/SystemManagerMenu.cpp +++ b/src/ui/Menu/SystemManagerMenu.cpp @@ -4,6 +4,7 @@ #include "common/SpdLogger.h" #include "ui/MainFrame.h" +#include "ui/DockWidget.h" #include "ui_SystemManagerMenu.h" @@ -13,14 +14,25 @@ SystemManagerMenu::SystemManagerMenu(QWidget* parent) ui->setupUi(this); InitConnect(); + LOG_INFO("SystemManagerMenu init"); + windowManagerMenu_ = new QMenu(this); } SystemManagerMenu::~SystemManagerMenu() { delete ui; } +void SystemManagerMenu::AddDockWidget(class DockWidget* dockWidget) { + QAction* action = new QAction(dockWidget->windowTitle(), this); +} + +void SystemManagerMenu::RemoveDockWidget(class DockWidget* dockWidget) { + +} + void SystemManagerMenu::InitConnect() { connect(ui->menu_exit, &QToolButton::clicked, this, &SystemManagerMenu::OnExit); + connect(ui->menu_window_manager, &QToolButton::clicked, this, &SystemManagerMenu::OnWindowManagerMenu); connect(ui->menu_uisetting, &QToolButton::clicked, this, &SystemManagerMenu::signalShowUISetting); } @@ -32,3 +44,9 @@ void SystemManagerMenu::OnExit() { qApp->quit(); } } + +void SystemManagerMenu::OnWindowManagerMenu() { + // Ӵڹ˵ + LOG_INFO("add window manager menu"); + +} diff --git a/src/ui/Menu/SystemManagerMenu.h b/src/ui/Menu/SystemManagerMenu.h index 0639f961..7be8725e 100644 --- a/src/ui/Menu/SystemManagerMenu.h +++ b/src/ui/Menu/SystemManagerMenu.h @@ -1,6 +1,7 @@ #pragma once #include +#include namespace Ui { class SystemManagerMenu; @@ -13,6 +14,9 @@ public: SystemManagerMenu(QWidget* parent = 0); ~SystemManagerMenu() override; + void AddDockWidget(class DockWidget* dockWidget); + void RemoveDockWidget(class DockWidget* dockWidget); + protected: void InitConnect(); @@ -21,7 +25,9 @@ signals: private: void OnExit(); + void OnWindowManagerMenu(); private: Ui::SystemManagerMenu* ui; + QMenu* windowManagerMenu_{ nullptr }; }; \ No newline at end of file diff --git a/src/ui/Menu/SystemManagerMenu.ui b/src/ui/Menu/SystemManagerMenu.ui index abc68b9d..fa31b6ce 100644 --- a/src/ui/Menu/SystemManagerMenu.ui +++ b/src/ui/Menu/SystemManagerMenu.ui @@ -34,6 +34,16 @@ + + + + ui setting + + + + + +