CmQtEditorWidget.h 906 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #pragma once
  2. #include "CmEditorPrerequisites.h"
  3. #include <QtWidgets/QWidget>
  4. #include <boost/signal.hpp>
  5. namespace CamelotEditor
  6. {
  7. class QtEditorWidget : public QWidget
  8. {
  9. Q_OBJECT
  10. public:
  11. QtEditorWidget(QWidget* parent, const QString& name, const QString& title, const QSize& defaultSize);
  12. virtual ~QtEditorWidget() { }
  13. const QString& getName() const { return mName; }
  14. const QString& getTitle() const { return mTitle; }
  15. const QSize& getDefaultSize() const { return mDefaultSize; }
  16. QtEditorWindow* getParentWindow() const { return mParentWindow; }
  17. void closeWidget();
  18. boost::signal<void(QtEditorWidget*)> onClosed;
  19. private:
  20. friend class QtEditorWindow;
  21. QString mName;
  22. QString mTitle;
  23. QSize mDefaultSize;
  24. QtEditorWindow* mParentWindow;
  25. void setParentWindow(QtEditorWindow* parentWindow) { mParentWindow = parentWindow; }
  26. };
  27. }