mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 13:38:11 +00:00
Libraries: Create top level directory for libraries.
Things were getting a little crowded in the project root, so this patch moves the Lib*/ directories into Libraries/.
This commit is contained in:
parent
63814ffebf
commit
04b9dc2d30
328 changed files with 36 additions and 36 deletions
42
Libraries/LibGUI/GDialog.cpp
Normal file
42
Libraries/LibGUI/GDialog.cpp
Normal file
|
@ -0,0 +1,42 @@
|
|||
#include <LibGUI/GDesktop.h>
|
||||
#include <LibGUI/GDialog.h>
|
||||
#include <LibGUI/GEventLoop.h>
|
||||
|
||||
GDialog::GDialog(CObject* parent)
|
||||
: GWindow(parent)
|
||||
{
|
||||
set_modal(true);
|
||||
set_should_exit_event_loop_on_close(true);
|
||||
}
|
||||
|
||||
GDialog::~GDialog()
|
||||
{
|
||||
}
|
||||
|
||||
int GDialog::exec()
|
||||
{
|
||||
ASSERT(!m_event_loop);
|
||||
m_event_loop = make<GEventLoop>();
|
||||
auto new_rect = rect();
|
||||
if (parent() && parent()->is_window()) {
|
||||
auto& parent_window = *static_cast<GWindow*>(parent());
|
||||
new_rect.center_within(parent_window.rect());
|
||||
} else {
|
||||
new_rect.center_within(GDesktop::the().rect());
|
||||
}
|
||||
set_rect(new_rect);
|
||||
show();
|
||||
auto result = m_event_loop->exec();
|
||||
m_event_loop = nullptr;
|
||||
dbgprintf("%s: event loop returned with result %d\n", class_name(), result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void GDialog::done(int result)
|
||||
{
|
||||
if (!m_event_loop)
|
||||
return;
|
||||
m_result = result;
|
||||
dbgprintf("%s: quit event loop with result %d\n", class_name(), result);
|
||||
m_event_loop->quit(result);
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue