diff options
| author | Alexander Valavanis <valavanisalex@gmail.com> | 2018-11-25 00:59:20 +0000 |
|---|---|---|
| committer | Alexander Valavanis <valavanisalex@gmail.com> | 2018-11-25 00:59:20 +0000 |
| commit | 12a0ea6dc9b8263c50bf877dc4f8f3d9331bf0a7 (patch) | |
| tree | 7586717e2ec33b90def18502addd2907a091adcd /src/widgets/ink-toggle-action.cpp | |
| parent | widgets/gimp/ruler: Replace deprecated g_type_class_add_private (diff) | |
| download | inkscape-12a0ea6dc9b8263c50bf877dc4f8f3d9331bf0a7.tar.gz inkscape-12a0ea6dc9b8263c50bf877dc4f8f3d9331bf0a7.zip | |
InkToggleAction: Replace deprecated g_type_class_add_private
Diffstat (limited to 'src/widgets/ink-toggle-action.cpp')
| -rw-r--r-- | src/widgets/ink-toggle-action.cpp | 49 |
1 files changed, 26 insertions, 23 deletions
diff --git a/src/widgets/ink-toggle-action.cpp b/src/widgets/ink-toggle-action.cpp index aa6fd308f..67e7a1eed 100644 --- a/src/widgets/ink-toggle-action.cpp +++ b/src/widgets/ink-toggle-action.cpp @@ -19,15 +19,15 @@ static GtkWidget* ink_toggle_action_create_tool_item( GtkAction* action ); static void ink_toggle_action_update_icon( InkToggleAction* action ); -struct _InkToggleActionPrivate -{ +typedef struct { gchar* iconId; GtkIconSize iconSize; -}; +} InkToggleActionPrivate; -#define INK_TOGGLE_ACTION_GET_PRIVATE( o ) ( G_TYPE_INSTANCE_GET_PRIVATE( (o), INK_TOGGLE_ACTION_TYPE, InkToggleActionPrivate ) ) +#define INK_TOGGLE_ACTION_GET_PRIVATE( o ) \ + reinterpret_cast<InkToggleActionPrivate *>(ink_toggle_action_get_instance_private (o)) -G_DEFINE_TYPE(InkToggleAction, ink_toggle_action, GTK_TYPE_TOGGLE_ACTION); +G_DEFINE_TYPE_WITH_PRIVATE (InkToggleAction, ink_toggle_action, GTK_TYPE_TOGGLE_ACTION); enum { PROP_INK_ID = 1, @@ -65,25 +65,23 @@ static void ink_toggle_action_class_init( InkToggleActionClass* klass ) (int)99, GTK_ICON_SIZE_SMALL_TOOLBAR, (GParamFlags)(G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT) ) ); - - g_type_class_add_private( klass, sizeof(InkToggleActionClass) ); } } static void ink_toggle_action_init( InkToggleAction* action ) { - action->private_data = INK_TOGGLE_ACTION_GET_PRIVATE( action ); - action->private_data->iconId = nullptr; - action->private_data->iconSize = GTK_ICON_SIZE_SMALL_TOOLBAR; + auto priv = INK_TOGGLE_ACTION_GET_PRIVATE( action ); + priv->iconId = nullptr; + priv->iconSize = GTK_ICON_SIZE_SMALL_TOOLBAR; } static void ink_toggle_action_finalize( GObject* obj ) { InkToggleAction* action = INK_TOGGLE_ACTION( obj ); + auto priv = INK_TOGGLE_ACTION_GET_PRIVATE( action ); - g_free( action->private_data->iconId ); - g_free( action->private_data ); - + g_free(priv->iconId); + g_free(priv); } /** @@ -125,17 +123,18 @@ InkToggleAction* ink_toggle_action_new( const gchar *name, static void ink_toggle_action_get_property( GObject* obj, guint propId, GValue* value, GParamSpec * pspec ) { InkToggleAction* action = INK_TOGGLE_ACTION( obj ); - (void)action; + auto priv = INK_TOGGLE_ACTION_GET_PRIVATE( action ); + switch ( propId ) { case PROP_INK_ID: { - g_value_set_string( value, action->private_data->iconId ); + g_value_set_string( value, priv->iconId ); } break; case PROP_INK_SIZE: { - g_value_set_int( value, action->private_data->iconSize ); + g_value_set_int( value, priv->iconSize ); } break; @@ -147,12 +146,13 @@ static void ink_toggle_action_get_property( GObject* obj, guint propId, GValue* void ink_toggle_action_set_property( GObject* obj, guint propId, const GValue *value, GParamSpec* pspec ) { InkToggleAction* action = INK_TOGGLE_ACTION( obj ); - (void)action; + auto priv = INK_TOGGLE_ACTION_GET_PRIVATE( action ); + switch ( propId ) { case PROP_INK_ID: { - gchar* tmp = action->private_data->iconId; - action->private_data->iconId = g_value_dup_string( value ); + gchar* tmp = priv->iconId; + priv->iconId = g_value_dup_string( value ); g_free( tmp ); ink_toggle_action_update_icon( action ); @@ -161,7 +161,7 @@ void ink_toggle_action_set_property( GObject* obj, guint propId, const GValue *v case PROP_INK_SIZE: { - action->private_data->iconSize = (GtkIconSize)g_value_get_int( value ); + priv->iconSize = (GtkIconSize)g_value_get_int( value ); } break; @@ -182,12 +182,13 @@ static GtkWidget* ink_toggle_action_create_menu_item( GtkAction* action ) static GtkWidget* ink_toggle_action_create_tool_item( GtkAction* action ) { InkToggleAction* act = INK_TOGGLE_ACTION( action ); + auto priv = INK_TOGGLE_ACTION_GET_PRIVATE( act ); GtkWidget* item = GTK_TOGGLE_ACTION_CLASS(ink_toggle_action_parent_class)->parent_class.create_tool_item(action); if ( GTK_IS_TOOL_BUTTON(item) ) { GtkToolButton* button = GTK_TOOL_BUTTON(item); - if ( act->private_data->iconId ) { - GtkWidget *child = sp_get_icon_image(act->private_data->iconId, act->private_data->iconSize); + if ( priv->iconId ) { + GtkWidget *child = sp_get_icon_image(priv->iconId, priv->iconSize); gtk_widget_set_hexpand(child, FALSE); gtk_widget_set_vexpand(child, FALSE); @@ -212,6 +213,8 @@ static GtkWidget* ink_toggle_action_create_tool_item( GtkAction* action ) static void ink_toggle_action_update_icon( InkToggleAction* action ) { + auto priv = INK_TOGGLE_ACTION_GET_PRIVATE( action ); + if ( action ) { GSList* proxies = gtk_action_get_proxies( GTK_ACTION(action) ); while ( proxies ) { @@ -219,7 +222,7 @@ static void ink_toggle_action_update_icon( InkToggleAction* action ) if ( GTK_IS_TOOL_BUTTON(proxies->data) ) { GtkToolButton* button = GTK_TOOL_BUTTON(proxies->data); - GtkWidget *child = sp_get_icon_image(action->private_data->iconId, action->private_data->iconSize); + GtkWidget *child = sp_get_icon_image(priv->iconId, priv->iconSize); gtk_widget_set_hexpand(child, FALSE); gtk_widget_set_vexpand(child, FALSE); gtk_widget_show_all(child); |
