app: GtkAction -> GAction madness part two
Change all action callbacks so they can be invoked by a GAction:
- add GimpActionCallback typedef:
void (* cb) (GimpAction*, GVariant*, gpointer)
- change all action callbacks to the GimpActionCallback signature
- add "gimp-activate" and "gimp-change-state" signals to GimpAction,
with the same signature as the resp. GAction signals
- remove all other custom action signals and only use the new
GimpAction signals
- pass around appropriate GVariants containing booleans, int32,
strings
- badly hack around to force a GimpProcedure pointer into a
uint64 variant
- remove all G_CALLBACK() casts from all action callbacks,
they all have the same signature now
(cherry picked from commit 3b6b3fc189
)
This commit is contained in:
@ -23,7 +23,6 @@
|
||||
#include "actions-types.h"
|
||||
|
||||
#include "widgets/gimpdataeditor.h"
|
||||
#include "widgets/gimptoggleaction.h"
|
||||
|
||||
#include "data-editor-commands.h"
|
||||
|
||||
@ -32,12 +31,13 @@
|
||||
|
||||
void
|
||||
data_editor_edit_active_cmd_callback (GimpAction *action,
|
||||
GVariant *value,
|
||||
gpointer data)
|
||||
{
|
||||
GimpDataEditor *editor = GIMP_DATA_EDITOR (data);
|
||||
gboolean edit_active;
|
||||
|
||||
edit_active = gimp_toggle_action_get_active (GIMP_TOGGLE_ACTION (action));
|
||||
edit_active = g_variant_get_boolean (value);
|
||||
|
||||
gimp_data_editor_set_edit_active (editor, edit_active);
|
||||
}
|
||||
|
Reference in New Issue
Block a user