WSL/SLF GitLab Repository

Skip to content
  • Michael Reisecker's avatar
    Rework of the "Replicator" panel · de0b8d4e
    Michael Reisecker authored
    - Implement issue 826:
      Replicator keys can now be empty in which case they will not be tied
      to any INI structure and can spawn arbitrary INI keys.
    - Numbers now do not have to be at the end of a Replicator anymore
      ("FILTER#::ARG" is acceptable now)
    - A Replicator can now inject a single number into a key like
      (A#::B# --> A1::B1) if it is not nested
    - Merge new debug menu entries from master (better way coming up)
    - Heavy maintenance work
    
    This is a squashed commit of 26 commits with the following commit
    messages:
    
    Split up some dynamic panels functionality
    This is a first step to trying to enhance their logic.
    
    Add test XML for dynamic panels
    
    Try new dynamic panels syntax
    At least for developing replicate=true and template=true are dropped in
    favor of option nodes like in other panels.
    This will make structuring clearer and can be reverted for more
    stringency later.
    
    Save possible child panels to container
    
    String operations instead of regex
    
    Multiple # replacements possible
    
    Include Replicators without key to search
    
    Detect if Replicator can replicate Replicators
    ... and couple this with the start of better (more clear) # --> number
    substitutions
    (all of these are intermediate commits)
    
    Use info when reps can replicate reps
    If not, all occurrences of "#" should be replaced
    (moving forward with issue 826)
    
    Propagate replicator child keys to potential template
    
    Try to handle nested Replicators
    
    Back to "replicate=true"
    The added verbosity does not seem to bring benefits, and for at least
    one thing it's better this way (no cascading into finding the
    appropriate key, in a Selector e. g.)
    
    Mini-Cleanup
    
    New lookup logic for Replicators
    
    Support 2 levels of rep/sel nesting
    
    Cleanup
    Remove lots of debug code
    Add comments
    
    Cleanup, comments
    
    Re-add lost changes
    
    Allow empty Replicator keys
    Now if keys are empty use the new, if they are not use the old logic
    
    Handle Replicator help
    
    remove test xml from version control
    
    In debug mode, show how long building XMLs takes
    
    switch to release
    
    Add panel search debug functions
    This can be useful to check if unwanted hidden panels are somehow being
    created
    
    Add comment
    de0b8d4e