static void mpl_panel_background_allocate (ClutterActor *actor, const ClutterActorBox *box, ClutterAllocationFlags flags) { MplPanelBackgroundPrivate *priv = MPL_PANEL_BACKGROUND (actor)->priv; #if 0 ClutterActor *border; border = mx_widget_get_border_image (MX_WIDGET (actor)); /* * We need to use different background asset based on the size allocated to us * -- basically, the panel cannot be smaller than the size of the borders of * its border image (see MB#702), so if it is smaller than the current asset * allows, we change the asset to simpler one. * * The code here assumes that we either have no name, or are called * 'too-small', but since this is a private widget of libmeego-panel, we can * enforce this assumption. */ if (border) { const gchar *name = clutter_actor_get_name (actor); gboolean too_small = FALSE; /* * Get the dimensions of the base texture (we are guaranteed to be called * first with name == NULL, so this works). */ if (!priv->base_geom_known && !name) { mx_texture_frame_get_border_values (/*MX_TEXTURE_FRAME*/ (border), &priv->base_t, &priv->base_r, &priv->base_b, &priv->base_l); priv->base_geom_known = TRUE; } if (priv->base_l + priv->base_r > box->x2 - box->x1 || priv->base_t + priv->base_b > box->y2 - box->y1) { too_small = TRUE; } if (!name && too_small) { clutter_actor_set_name (actor, "too-small"); } else if (name && !too_small) { clutter_actor_set_name (actor, NULL); } } #endif //DV CLUTTER_ACTOR_CLASS ( mpl_panel_background_parent_class)->allocate (actor, box, flags); }
static void mnb_toolbar_background_border_changed (MnbToolbarBackground *self, GParamSpec *param, gpointer data) { MxTextureFrame *texture; MnbToolbarBackgroundPrivate *priv = self->priv; texture = (MxTextureFrame *) mx_widget_get_border_image (MX_WIDGET (self)); if (!texture) return; priv->parent_texture = mx_texture_frame_get_parent_texture (texture); mx_texture_frame_get_border_values (texture, &priv->top, &priv->right, &priv->bottom, &priv->left); }