• Christian Kuhn's avatar
    [!!!][TASK] House of forms · 736cbfc9
    Christian Kuhn authored
    This patch introduces a structural code refactoring to the
    FormEngine class and its related friend classes.
    
    FormEngine used to call itself over and over again with itself
    and sub classes writing to public properties of FormEngine keeping
    a global state that is then magically merged to sometimes working
    output.
    
    The patch introduces a tree approach with lots of small containers
    doing an encapsulated part of the rendering process and calling
    sub containers for inner details.
    As main construct a "globalOptions" array is modified in containers
    and given down to sub containers (tree knots) or elements (leaves),
    while sub structures always return a defined array that is
    merged by the parent and accumulates the full result.
    Goal is to have a better encapsulated code structure with better
    visible impact on changes done to this system.
    
    The patch creates this main structure. There is still a lot of
    mess around and additional patches can further improve the overall
    situation with smaller changes.
    
    Change-Id: I56b898dc0eaae8de4d31016997cfefe8d14ec53e
    Releases: master
    Resolves: #63846
    Resolves: #63854
    Resolves: #63856
    Resolves: #63858
    Resolves: #63859
    Resolves: #63860
    Resolves: #63861
    Resolves: #63862
    Resolves: #63863
    Resolves: #63865
    Resolves: #63876
    Resolves: #63881
    Resolves: #63882
    Resolves: #63883
    Resolves: #63893
    Reviewed-on: http://review.typo3.org/38433
    
    Reviewed-by: Anja Leichsenring's avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
    Tested-by: Anja Leichsenring's avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
    Reviewed-by: default avatarMarkus Klein <klein.t3@reelworx.at>
    Tested-by: default avatarMarkus Klein <klein.t3@reelworx.at>
    Reviewed-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
    Tested-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
    736cbfc9