static void
gimp_data_editor_constructed (GObject *object)
{
  GimpDataEditor *editor = GIMP_DATA_EDITOR (object);

  G_OBJECT_CLASS (parent_class)->constructed (object);

  g_assert (GIMP_IS_DATA_FACTORY (editor->data_factory));
  g_assert (GIMP_IS_CONTEXT (editor->context));

  gimp_data_editor_set_edit_active (editor, TRUE);

  editor->save_button =
    gimp_editor_add_button (GIMP_EDITOR (editor),
                            "document-save",
                            _("Save"), NULL,
                            G_CALLBACK (gimp_data_editor_save_clicked),
                            NULL,
                            editor);

  editor->revert_button =
    gimp_editor_add_button (GIMP_EDITOR (editor),
                            "document-revert",
                            _("Revert"), NULL,
                            G_CALLBACK (gimp_data_editor_revert_clicked),
                            NULL,
                            editor);
  /* Hide because revert buttons are not yet implemented */
  gtk_widget_hide (editor->revert_button);
}
Exemple #2
0
static void
gimp_data_editor_constructed (GObject *object)
{
  GimpDataEditor *editor = GIMP_DATA_EDITOR (object);

  G_OBJECT_CLASS (parent_class)->constructed (object);

  g_assert (GIMP_IS_DATA_FACTORY (editor->data_factory));
  g_assert (GIMP_IS_CONTEXT (editor->context));

  gimp_data_editor_set_edit_active (editor, TRUE);
}
static void
gimp_data_editor_set_aux_info (GimpDocked *docked,
                               GList      *aux_info)
{
  GimpDataEditor *editor = GIMP_DATA_EDITOR (docked);
  GList          *list;

  parent_docked_iface->set_aux_info (docked, aux_info);

  for (list = aux_info; list; list = g_list_next (list))
    {
      GimpSessionInfoAux *aux = list->data;

      if (! strcmp (aux->name, AUX_INFO_EDIT_ACTIVE))
        {
          gboolean edit_active;

          edit_active = ! g_ascii_strcasecmp (aux->value, "true");

          gimp_data_editor_set_edit_active (editor, edit_active);
        }
      else if (! strcmp (aux->name, AUX_INFO_CURRENT_DATA))
        {
          if (! editor->edit_active)
            {
              GimpData *data;

              data = (GimpData *)
                gimp_container_get_child_by_name (gimp_data_factory_get_container (editor->data_factory),
                                                  aux->value);

              if (data)
                gimp_data_editor_set_data (editor, data);
            }
        }
    }
}