Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
track-profile.hpp File Reference

Abstraction to build the layout for the track spaces within timeline display. More...

Go to the source code of this file.

Description

Abstraction to build the layout for the track spaces within timeline display.

In Lumiera, tracks are arranged into a fork of nested shapes, which structure is parallelled into a nested structure of TrackBody elements. A tree walk over this structure yields a sequence of adjacent timeline elements, like overview rulers, content area and nested child track display. This sequence can then be transformed into suitable drawing instructions to create a 3D shaded display, clearly highlighting the complex structure of the track arrangement.

Todo:
WIP-WIP-WIP as of 6/2019

Definition in file track-profile.hpp.

#include "stage/gtk-base.hpp"
#include "lib/verb-visitor.hpp"
#include "lib/iter-explorer.hpp"
#include "lib/symbol.hpp"
#include "lib/util.hpp"
#include <utility>
#include <vector>

Namespaces

namespace  stage
 Lumiera GTK UI implementation root.
 
namespace  stage::timeline
 The timeline display and editing operations.
 

Macros

#define TOKEN_BUILDER(_TOK_)
 

Classes

class  ProfileInterpreter
 
class  TrackProfile
 Description of the structure and arrangement of tracks for display in the UI. More...
 

Macro Definition Documentation

◆ TOKEN_BUILDER

#define TOKEN_BUILDER (   _TOK_)
Value:
template<typename...ARGS> \
void \
append_ ## _TOK_ (ARGS&&... params)\
{ \
this->append (&ProfileInterpreter::_TOK_, STRINGIFY(_TOK_), forward<ARGS>(params)...); \
}
#define STRINGIFY(TOKEN)
this macro wraps its parameter into a cstring literal
Definition util.hpp:508

Definition at line 121 of file track-profile.hpp.