WindowAppUiFrame.h 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. #pragma once
  2. #include "ui_WindowAppUiFrame.h"
  3. #include "WindowAppUiNavView.h"
  4. class WindowAppUiFrame : public QMainWindow
  5. {
  6. Q_OBJECT
  7. public:
  8. WindowAppUiFrame(const QString& strTitle, QWidget *parent = Q_NULLPTR);
  9. ~WindowAppUiFrame();
  10. Ui::WindowAppUiFrame ui;
  11. // 获取本Frame下的View指针
  12. WindowAppUiView* getUiView();
  13. // 序列化支持
  14. bool serialized(QDataStream& dataStream, bool in = true);
  15. // Tool Action 函数
  16. private slots:
  17. //// LayoutToolbar - New
  18. //void onToolNew();
  19. //// LayoutToolbar - MoveUp
  20. //void onToolMoveUp();
  21. //// LayoutToolbar - MoveDown
  22. //void onToolMoveDown();
  23. //// LayoutToolbar - Delete
  24. //void onToolDelete();
  25. // 拆分条移动时(暂未使用)
  26. void slotSplitterMoved(int pos, int index);
  27. // 绘制界面
  28. void paintEvent(QPaintEvent*) override;
  29. // 水平滚动条数值改变时
  30. void horizontalValueChanged(int);
  31. // 垂直滚动条数值改变时
  32. void verticalValueChanged(int);
  33. // 工具栏消息
  34. private slots:
  35. // 排序最前
  36. void onToolZorderTop();
  37. // 排序最底
  38. void onToolZorderBottom();
  39. // 排序到前一个
  40. void onToolZorderUp();
  41. // 排序到后一个
  42. void onToolZorderDown();
  43. // Undo
  44. void onToolUndo();
  45. // Redo
  46. void onToolRedo();
  47. // UI界面设置
  48. void onToolOption();
  49. // Ui控件删除
  50. void onToolDelete();
  51. // UI界面发布至Runtime
  52. void onToolPublish();
  53. protected:
  54. // UI元素初始化
  55. void initUI();
  56. // 初始化布局工具栏
  57. void initLayoutToolbar();
  58. //// 初始化控件工具栏
  59. //void initControlToolbar();
  60. //绘制水平刻度尺
  61. void DrawHorizontalScale(QPainter* painter, QPen* pen);
  62. //绘制垂直刻度尺
  63. void DrawVerticalScale(QPainter* painter, QPen* pen);
  64. // 刷新Undo/Redo按钮
  65. void refreshUndoMenu();
  66. protected:
  67. // 布局工具栏
  68. QToolBar* m_layoutToolbar;
  69. // 垂直和水平滚动条的值
  70. int m_nScrollValueH;
  71. int m_nScrollValueV;
  72. // 本UI界面的宽和高
  73. int m_nUiViewHeight;
  74. int m_nUiViewWidth;
  75. protected:
  76. // Actions
  77. QAction* actionUndo;
  78. QAction* actionRedo;
  79. };