-
Notifications
You must be signed in to change notification settings - Fork 3
Home
andri lim edited this page Sep 23, 2017
·
1 revision
Welcome to the razcal wiki!
right now, razcal pretty much still an embryo. The parser, constraint solver engine, and lua binding already found it's way to communicate to each other. But many features of layout language still not implemented yet, backend renderer not available, test suite not available, documentation none, tutorial none.
- parser
parse comma separated constraint-
parse animation descriptiontkPercent(%) tkIdent(name) tkNumber(duration)widget(::class)* tkNumber(start_ani) tkNumber(end_ani) tkIdent(interpolator)
parse functional constraint- parse conditional constraint
parse style sectionparse prop section
- semantic pass
-
class instantiationcollecting paramparam substitutionargument checking with or without default argumentclass copyinginstantiation with or without default argumentsemcheck
-
animation instantiation:-
two sets of variables: origin and destinationcollect who participated in animation
-
two sets of constraint and solverconstraints can be contained in class
-
a temporary set of variable during transition returned from interpolatorpredefined or user defined interpolator
after animation ended: discard origin, put destination to originanimation clock
-
- applying functional constraint
- applying conditional constraint
applying prop to viewapplying style to view- exposing events to lua
-
-
lua bindingfix cfunction argument validationreimplement metatable for userdataadd error reporting mechanism without using lua_errorexpose everything in layout to lua safelycall lua from nim
-
renderer-
bring up crude renderer to design backend apitest glfwtest nanovg on glfwrender something from razcal on nanovg
-
- test suite
- robust test suite for both Nim and Lua side
- automated build system + test
- documentation
- tutorial
The first screenshot ever:
The first working animation: