32 #include "stage/ctrl/facade.hpp" 46 using Gtk::IconFactory;
48 using workspace::UiStyle;
54 UiManager::~UiManager() { }
70 gtk_init (
nullptr,
nullptr);
71 Gtk::Main::init_gtkmm_internals();
76 ApplicationBase::~ApplicationBase()
81 Glib::wrap_register_cleanup();
82 Glib::Error::register_cleanup();
100 , actions_{
new Actions{*globals_}}
103 actions_->populateMainActions (*
this);
114 if (globals_->windowLoc_.empty())
115 globals_->windowLoc_.newWindow();
131 facade_.reset (
new Facade{globals_->uiBus_, *
this});
135 facade_.reset (
nullptr);
163 UNIMPLEMENTED (
"TICKET #1151 build a suitable dispatcher into the GTK loop");
171 actions_->updateActionState (globals_->windowLoc_.findActiveWindow());
176 UiManager::allowCloseWindow (
bool yes)
178 this->get_action(
"/MenuBar/WindowMenu/WindowCloseWindow")
179 ->set_sensitive (yes);
186 uiStyle_->prepareStyleContext (timeline);
void performMainLoop()
start the GTK Main loop and thus activate the UI.
Definition of access keys for global UI configuration.
Service for global theming and style related concerns.
Helpers to handle directory search paths.
Setup of global actions for the main menu.
void createApplicationWindow()
Set up the first top-level application window.
Dependency context to hold all the global UI top-level entities.
void updateWindowFocusRelatedActions()
void terminateUI()
Cause the main event loop to terminate, so the application as a whole unwinds.
A context to hold and manage the implementation of all UI facade interfaces.
Backbone of the Lumiera GTK GUI.
UiManager(UiBus &bus)
Initialise the GTK framework and the Lumiera UI backbone.
Manager for global user interface concerns, framework integration and global state.
Lumiera GTK UI implementation root.
Tiny helper functions and shortcuts to be used everywhere Consider this header to be effectively incl...
A helper class which registers global user actions and populates the main menu and toolbar...
ApplicationBase()
Initialise the GTK framework libraries.
A global circle of top-level UI management facilities.
void schedule(Operation &&task)
perform an action within the UI event loop (GTK loop).
A set of basic GTK includes for the UI.
Framework initialisation base.
Manage global concerns regarding a coherent user interface.