![]() |
Lumiera 0.pre.04
»edit your freedom«
|
#include "stage/ctrl/window-locator.hpp"
A centralised manager of all top level application windows.
Definition at line 58 of file window-locator.hpp.
Public Member Functions | |
| WindowLocator (GlobalCtx &) | |
| ~WindowLocator () | |
| bool | empty () const |
| void | newWindow () |
| 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. | |
| workspace::WorkspaceWindow & | findFocusWindow () |
| similar to findActiveWindow(), for the 'has_focus' property | |
| PanelLocator & | locatePanel () |
Private Types | |
| using | PWindow = std::shared_ptr< workspace::WorkspaceWindow > |
| using | Service_ElementAccess = lib::DependInject< model::ElementAccess >::ServiceInstance< ElemAccessDir > |
Private Member Functions | |
| bool | on_window_closed (GdkEventAny *event) |
| Event handler for when a window has been closed. | |
| void | updateCloseWindowInMenus () |
| On creating and closing of any window, handle enabling or disabling of the Window/Close Window menu option. | |
Private Member Functions inherited from NonCopyable | |
| ~NonCopyable ()=default | |
| NonCopyable ()=default | |
| NonCopyable (NonCopyable const &)=delete | |
| NonCopyable & | operator= (NonCopyable const &)=delete |
Private Attributes | |
| GlobalCtx & | globalCtx_ |
| list< PWindow > | windowList_ |
| PanelLocator | panelLoc_ |
| Service_ElementAccess | elementAccess_ |
| WindowLocator | ( | GlobalCtx & | globals | ) |
Definition at line 48 of file window-locator.cpp.
| ~WindowLocator | ( | ) |
Definition at line 55 of file window-locator.cpp.
|
private |
Definition at line 61 of file window-locator.hpp.
|
private |
Definition at line 62 of file window-locator.hpp.
|
inline |
Definition at line 110 of file window-locator.hpp.
References WindowLocator::windowList_.
| void newWindow | ( | ) |
Definition at line 60 of file window-locator.cpp.
References WindowLocator::globalCtx_, WindowLocator::on_window_closed(), GlobalCtx::uiManager_, WindowLocator::updateCloseWindowInMenus(), and WindowLocator::windowList_.
Referenced by Actions::populateMainActions().
Here is the call graph for this function:
Here is the caller graph for this function:| void closeWindow | ( | ) |
close (and thus destroy) the current active window.
Definition at line 82 of file window-locator.cpp.
References WindowLocator::findActiveWindow().
Referenced by Actions::populateMainActions().
Here is the call graph for this function:
Here is the caller graph for this function:| WorkspaceWindow & findActiveWindow | ( | ) |
find and retrieve a WorkspaceWindow (top-level window) marked as 'active' by GTK.
NULL, but assuming this function is only ever called when there is at least one Lumiera window. Definition at line 96 of file window-locator.cpp.
References WindowLocator::windowList_.
Referenced by WindowLocator::closeWindow(), InteractionDirector::getWorkspaceWindow(), and Actions::populateShowPanelActions().
Here is the caller graph for this function:| WorkspaceWindow & findFocusWindow | ( | ) |
similar to findActiveWindow(), for the 'has_focus' property
Definition at line 114 of file window-locator.cpp.
References WindowLocator::windowList_.
|
inline |
Definition at line 83 of file window-locator.hpp.
References WindowLocator::panelLoc_.
Referenced by Wizard::Wizard(), and InteractionDirector::injectTimeline().
Here is the caller graph for this function:
|
private |
Event handler for when a window has been closed.
Definition at line 128 of file window-locator.cpp.
References WindowLocator::globalCtx_, UiManager::terminateUI(), GlobalCtx::uiManager_, WindowLocator::updateCloseWindowInMenus(), and WindowLocator::windowList_.
Referenced by WindowLocator::newWindow().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
On creating and closing of any window, handle enabling or disabling of the Window/Close Window menu option.
It should be enabled when there is more than one window and disabled otherwise.
Definition at line 163 of file window-locator.cpp.
References UiManager::allowCloseWindow(), WindowLocator::globalCtx_, GlobalCtx::uiManager_, and WindowLocator::windowList_.
Referenced by WindowLocator::newWindow(), and WindowLocator::on_window_closed().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 64 of file window-locator.hpp.
Referenced by WindowLocator::newWindow(), WindowLocator::on_window_closed(), and WindowLocator::updateCloseWindowInMenus().
|
private |
Definition at line 65 of file window-locator.hpp.
Referenced by WindowLocator::empty(), WindowLocator::findActiveWindow(), WindowLocator::findFocusWindow(), WindowLocator::newWindow(), WindowLocator::on_window_closed(), and WindowLocator::updateCloseWindowInMenus().
|
private |
Definition at line 66 of file window-locator.hpp.
Referenced by WindowLocator::locatePanel().
|
private |
Definition at line 68 of file window-locator.hpp.
Inheritance diagram for WindowLocator:
Collaboration diagram for WindowLocator: