38 using workspace::WorkspaceWindow;
43 : windowList_{all_top_level_wndows}
51 , panelLoc_{windowList_}
52 , elementAccess_{*this, panelLoc_}
65 window->signal_delete_event().connect(sigc::mem_fun(
101 if (pwin->is_active())
119 if (pwin->has_focus())
131 REQUIRE(event->window);
133 list<PWindow>::iterator iterator{
windowList_.begin()};
137 PWindow workspace_window(*iterator);
138 REQUIRE(workspace_window);
140 Glib::RefPtr<Gdk::Window> window = workspace_window->get_window();
142 if (window->gobj() == event->window)
181 if (window->getPanelManager().hasPanel (typeID))
182 return window->getPanelManager().showPanel (typeID);
186 if (window->is_active())
187 return window->getPanelManager().showPanel (typeID);
190 return windowList_.front()->getPanelManager().showPanel (typeID);
A global circle of top-level UI management facilities.
panel::Panel & preliminary_impl_PanelLookup(int typeID)
list< PWindow > WindowList
PanelLocator(WindowList &)
void allowCloseWindow(bool yes)
void terminateUI()
Cause the main event loop to terminate, so the application as a whole unwinds.
workspace::WorkspaceWindow & findFocusWindow()
similar to findActiveWindow(), for the 'has_focus' property
std::shared_ptr< workspace::WorkspaceWindow > PWindow
WindowLocator(GlobalCtx &)
void updateCloseWindowInMenus()
On creating and closing of any window, handle enabling or disabling of the Window/Close Window menu o...
void closeWindow()
close (and thus destroy) the current active window.
workspace::WorkspaceWindow & findActiveWindow()
find and retrieve a WorkspaceWindow (top-level window) marked as 'active' by GTK.
list< PWindow > windowList_
bool on_window_closed(GdkEventAny *event)
Event handler for when a window has been closed.
The base class for all dockable panels.
The main Lumiera workspace window.
A service to discover and access raw UI elements in a cross cutting way.
Dependency context to hold all the global UI top-level entities.
Lumiera GTK UI implementation root.
bool isnil(lib::time::Duration const &dur)
Access and query front-end to locate, access and place docking panels.
Tiny helper functions and shortcuts to be used everywhere Consider this header to be effectively incl...
Manager for all top level application windows.
This file contains the definition of the main workspace window parent, which is the toplevel parent o...