Skip to content
  • Jehan's avatar
    libgimp, plug-ins: move gimp_pdb_run_procedure*() to gimp_procedure_run*(). · 57ca3f48
    Jehan authored
    The gimp_procedure_run() already existed, though it was with an ordered
    GimpValueArray array of arguments. Its usage feels redundant to the series of
    gimp_pdb_run_procedure*() functions (which is confusing), but
    gimp_procedure_run() was actually a bit more generic, because it does not
    necessarily calls GimpProcedure-s through the PDB! For instance, it can runs a
    local GimpProcedure, such as the case of one procedure which would want to call
    another procedure in the same plug-in, but without having to go through PDB. Of
    course, for local code, you may as well run relevant functions directly, yet it
    makes sense that if one of the redundant-looking function is removed, it should
    be the more specific one. Also gimp_procedure_run() feels a lot simpler and
    logical, API wise.
    
    A main difference in usage is that now, plug-in developers have to first
    explicitly look up the GimpPdbProcedure with gimp_pdb_lookup_procedure() when
    they wish to call PDB procedures on the wire. This was done anyway in the
    gimp_pdb_run_procedure*() code, now it's explicit (rather than calling by name
    directly).
    
    Concretely:
    
    * gimp_pdb_run_procedure(), gimp_pdb_run_procedure_config() and
      gimp_pdb_run_procedure_valist() are removed.
    * gimp_procedure_run() API is modified to use a variable args list instead of a
      GimpValueArray.
    * gimp_procedure_run_config() and gimp_procedure_run_valist() are added.
    * gimp_procedure_run_config() in particular will be the one used in bindings
      which don't have variable args support through a (rename-to
      gimp_procedure_run) annotation.
    57ca3f48