16#ifndef LUA_DEBUGGER_PAUSE_H
17#define LUA_DEBUGGER_PAUSE_H
91 QEventLoop *activeLoop_ =
nullptr;
94 QList<QPointer<QWidget>> frozenTopLevels_;
97 QList<QPointer<QAction>> frozenActions_;
100 QPointer<QWidget> frozenCentralWidget_;
103 QPointer<LuaDebuggerPauseOverlay> pauseOverlay_;
106 QObject *pauseInputFilter_ =
nullptr;
109 bool pauseUnfrozen_ =
true;
175 bool eventFilter(QObject *obj, QEvent *event)
override;
182 QString subtext_text_;
208 bool eventFilter(QObject *watched, QEvent *event)
override;
216 bool isAllowedDuringPause(
const QWidget *w)
const;
219 QWidget *debugger_dialog_;
222 QWidget *main_window_;
Top-level dialog hosting the Lua debugger UI components.
Definition lua_debugger_dialog.h:189
Owns the nested pause QEventLoop pointer and the application-wide freeze (disabled top-levels,...
Definition lua_debugger_pause.h:40
void clearActiveLoop()
Clears the reference to the active nested event loop.
Definition lua_debugger_pause.h:69
bool hasActiveLoop() const
Checks if there is an active nested event loop.
Definition lua_debugger_pause.h:52
void endFreeze()
Ends the application-wide outer freeze, restoring interactivity.
Definition lua_debugger_pause.cpp:191
void setActiveLoop(QEventLoop *loop)
Sets the active nested event loop.
Definition lua_debugger_pause.h:64
void quitLoop()
Quits the currently active nested event loop if one exists.
Definition lua_debugger_pause.cpp:87
QEventLoop * activeLoop() const
Retrieves the currently active nested event loop.
Definition lua_debugger_pause.h:58
void beginOuterFreeze()
Begins the application-wide outer freeze during a pause.
Definition lua_debugger_pause.cpp:95
Translucent overlay shown over the main window while the Lua debugger is paused.
Definition lua_debugger_pause.h:147
void paintEvent(QPaintEvent *event) override
Handles paint events to draw the overlay.
Definition lua_debugger_pause.cpp:324
bool eventFilter(QObject *obj, QEvent *event) override
Filters events on the parent widget to handle resizing.
Definition lua_debugger_pause.cpp:311
~LuaDebuggerPauseOverlay() override
Destroys the LuaDebuggerPauseOverlay object.