예제 #1
0
GimpParasite *
gimp_grid_to_parasite (const GimpGrid *grid)
{
    GimpParasite *parasite;
    gchar        *str;

    g_return_val_if_fail (GIMP_IS_GRID (grid), NULL);

    str = gimp_config_serialize_to_string (GIMP_CONFIG (grid), NULL);
    g_return_val_if_fail (str != NULL, NULL);

    parasite = gimp_parasite_new (gimp_grid_parasite_name (),
                                  GIMP_PARASITE_PERSISTENT,
                                  strlen (str) + 1, str);
    g_free (str);

    return parasite;
}
예제 #2
0
GimpParasite *
gimp_symmetry_to_parasite (const GimpSymmetry *sym)
{
  GimpParasite *parasite;
  gchar        *parasite_name;
  gchar        *str;

  g_return_val_if_fail (GIMP_IS_SYMMETRY (sym), NULL);

  str = gimp_config_serialize_to_string (GIMP_CONFIG (sym), NULL);
  g_return_val_if_fail (str != NULL, NULL);

  parasite_name = gimp_symmetry_parasite_name (G_TYPE_FROM_INSTANCE (sym));
  parasite = gimp_parasite_new (parasite_name,
                                GIMP_PARASITE_PERSISTENT,
                                strlen (str) + 1, str);
  g_free (parasite_name);
  g_free (str);

  return parasite;
}