Skip to content
  • Ell's avatar
    app: add support for tool groups in toolrc · cd2adfbe
    Ell authored
    Add a new Gimp::tool_item_list list, in addition to
    Gimp::tool_info_list.  The latter may contain arbitrary tool items,
    including tool groups, and is intended for use in the UI (namely,
    the toolbox and the preferences tool editor).
    
    In gimp-tools, use Gimp::tool_item_list for representing the UI
    tool order (while still using Gimp::tool_info_list as a flat list
    of all GimpToolInfo objects), and add support for saving and
    loading tool groups to/from toolrc.
    
    Introduce file-version tracking in toolrc, and drop its contents on
    version mismatch, or when new tools are introduced.  This is
    slightly disruptive, but merging new changes with existing toolrc
    files is non-trivial, and it doesn't happen very often.
    
    Add support for a sysconf toolrc file, which is used if there's no
    user toolrc file (i.e., on first use).  If neither file is found,
    the hard-coded flat tool order is used.  This commit doesn't
    provide a default toolrc file, but the next commits will.
    
    Make the gimp-tools serialization and deserialization functions
    public, for use in GimpToolEditor in the next commits.
    cd2adfbe