GDialog.h 528 B

123456789101112131415161718192021222324252627282930
  1. #pragma once
  2. #include <LibGUI/GEventLoop.h>
  3. #include <LibGUI/GWindow.h>
  4. class GDialog : public GWindow {
  5. C_OBJECT(GDialog)
  6. public:
  7. enum ExecResult {
  8. ExecOK = 0,
  9. ExecCancel = 1,
  10. ExecAborted = 2
  11. };
  12. virtual ~GDialog() override;
  13. int exec();
  14. int result() const { return m_result; }
  15. void done(int result);
  16. virtual void close() override;
  17. protected:
  18. explicit GDialog(CObject* parent);
  19. private:
  20. OwnPtr<GEventLoop> m_event_loop;
  21. int m_result { ExecAborted };
  22. };