### Class

# Gimp ProcedureConfig

unstable since: 3.0

#### Description [src]

    abstract class Gimp.ProcedureConfig : GObject.Object
    {
      priv: GimpProcedureConfigPrivate*
    }

The base class for `GimpProcedure` specific config objects and the main interface to manage aspects of `GimpProcedure`‘s arguments such as persistency of the last used arguments across GIMP sessions.

A procedure config is created by a `GimpProcedure` using `gimp_procedure_create_config()` and its properties match the procedure’s arguments and auxiliary arguments in number, order and type.

It implements the `GimpConfig` interface and therefore has all its serialization and deserialization features.

Available since: 3.0

#### Ancestors

- GObject

#### Instance methods

###### gimp_procedure_config_get_choice_id

A utility function which will get the current string value of a `GimpParamSpecChoice` property in `config` and convert it to the integer ID mapped to this value. This makes it easy to work with an Enum type locally, within a plug-in code.

unstable since: 3.0

###### gimp_procedure_config_get_procedure

This function returns the `GimpProcedure` which created `config`, see `gimp_procedure_create_config()`.

unstable since: 3.0

###### gimp_procedure_config_save_metadata

already called by `GimpSaveProcedure` at the end of the `run()` callback.

unstable since: 3.0

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### Gimp.ProcedureConfig:procedure

No description available.

unstable since: 3.0

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

since: 2.0

#### Class structure

    struct GimpProcedureConfigClass {
      GObjectClass parent_class;
      void (* _gimp_reserved1) (
    void
      );
      void (* _gimp_reserved2) (
    void
      );
      void (* _gimp_reserved3) (
    void
      );
      void (* _gimp_reserved4) (
    void
      );
      void (* _gimp_reserved5) (
    void
      );
      void (* _gimp_reserved6) (
    void
      );
      void (* _gimp_reserved7) (
    void
      );
      void (* _gimp_reserved8) (
    void
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`
  No description available.
`_gimp_reserved1: void (* _gimp_reserved1) ( void )`
  No description available.
`_gimp_reserved2: void (* _gimp_reserved2) ( void )`
  No description available.
`_gimp_reserved3: void (* _gimp_reserved3) ( void )`
  No description available.
`_gimp_reserved4: void (* _gimp_reserved4) ( void )`
  No description available.
`_gimp_reserved5: void (* _gimp_reserved5) ( void )`
  No description available.
`_gimp_reserved6: void (* _gimp_reserved6) ( void )`
  No description available.
`_gimp_reserved7: void (* _gimp_reserved7) ( void )`
  No description available.
`_gimp_reserved8: void (* _gimp_reserved8) ( void )`
  No description available.