LUMIERA.clone/tests/stage
Ichthyostega f1b3f4e666 Timeline: reconsider time handling and Stage/Steam integration
This ZoomWindow_test highlights again the question about the intended usage
of the Lumiera time entities. In which way do we want to perform time calculations,
and under which circumstances is it adequate to perform arithmetic on
raw time values?

These questions made me think about rather far reaching concerns regarding
subsidiarity and implicit or explicit usage context. Basically I could
reconfirm the design choices taken some years ago -- while I must admit
that the project is headed towards a way larger scale and more loose
coupling of the parts, than I could imagine several years ago, at the
time when the design started...

As a side note: we can not avoid that some knowledge about the time implementation
leaks out from the support lib; time codes themselves are tightly coupled
to the usage scenario within the session and can not be used as means
for implementing UI concerns. And the more generic time frameworks,
like std::chrono (as much as it is desirable to have some integration here)
will not be of any help for most of our specific usage patterns.
The reason is, for film editing we do not have a global time scale,
rather the truth is when the film starts....
2022-10-30 23:12:34 +01:00
..
ctrl Global-Layer-Renaming: fix remaining textual usages and IDs in the code 2018-12-10 00:09:56 +01:00
interact Clip-Drag: get the gesture logic to work 2021-04-17 22:32:26 +02:00
model Timeline: reconsider time handling and Stage/Steam integration 2022-10-30 23:12:34 +01:00
test Lib/Diff: prefer the name "emplace" over "build" 2021-05-02 18:31:47 +02:00
abstract-tangible-test.cpp Project: update and clean-up Doxygen configuration 2021-01-24 19:35:45 +01:00
bus-term-test.cpp Global-Layer-Renaming: fix remaining textual usages and IDs in the code 2018-12-10 00:09:56 +01:00
gen-node-location-query.hpp Global-Layer-Renaming: adjust namespace qualification 2018-11-15 23:59:23 +01:00
README Global-Layer-Renaming: rearrange directories 2018-11-15 23:28:03 +01:00
session-structure-mapping-test.cpp Timeline: reconsider time handling and Stage/Steam integration 2022-10-30 23:12:34 +01:00
test-gui-test.cpp Timeline: reconsider time handling and Stage/Steam integration 2022-10-30 23:12:34 +01:00

GUI backbone tests

The tests in this subtree are a bit special: they cover the generic and
backbone internals of the Lumiera GTK GUI. They are linked against the
complete GUI-module (gui plugin), and thus may use all related ABIs.

Yet these tests are *deliberately* compiled without any GTK, GTKmm or SigC
includes. This effectively rules out the use, even indirectly, of any GTK
widgets and APIs -- forcing the covered GUI backbone entities to stay
clean and generic at API level.

This is a decision done on purpose. The concrete GUI framework technology
shall be treated as an implementation detail. There is no point in writing
tests which click buttons in the GUI -- better delegate any significant
logic or functionality to GUI agnostic components. GUI is meant to be
a presentation layer and must not develop intelligence on its own.