1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-08-06 07:09:39 +02:00
Paul Licameli 2d0394796e
Facade class for basic UI, injection of a wxWidgets implementation...
... but none of the methods is defined yet.

The intention is to inject dependencies on wxWidgets (or other) toolkit so that
lower-level files have less build dependency on wxCore classes or on the
event loop.

Original commit: d20cf012556a819e68515d86bb66a2c047007539

Signed-off-by: Panagiotis Vasilopoulos <hello@alwayslivid.com>
2021-10-05 08:06:23 +02:00

24 lines
784 B
CMake

#[[
This library defines a facade interface, BasicUI::Services, for a few basic
interactions with the user, such as showing simple dialog boxes, and for
enqueuing actions to the event loop, and yielding to to the event dispatcher.
The interface makes no mention of classes in wxWidgets. Using this library
instead of making direct use of wxWidgets enlarges the parts of the program
that are toolkit neutral.
There is a global pointer to an instance of Services, and the main program is
expected, at startup, to create a static instance of a subclass of Services and
set the pointer. If it does not, then calls to the non-member functions in
namespace BasicUI are no-ops.
]]#
set( SOURCES
BasicUI.cpp
BasicUI.h
)
audacity_library( lib-basic-ui "${SOURCES}"
""
"" ""
)