+ void FadeImageTo( Actor actor, float opacity );
+
+ /**
+ * @brief Custom configuration for size negotiation
+ */
+ void ConfigureSizeNegotiation();
+
+ /**
+ * @brief Configure size negotiation for a given dimension
+ *
+ * @param[in] dimension The dimension to configure
+ * @param[in] images The list of images to configure
+ * @param[in] label The text label to configure
+ */
+ void ConfigureSizeNegotiationDimension( Dimension::Type dimension, const std::vector< Actor >& images, Actor& label );
+
+ /**
+ * @brief Sets either the selected or unselected icon.
+ *
+ * @param[in] state The icon state to set
+ * @param[in] iconFilename The filename of the icon
+ */
+ void SetIcon( DecorationState state, const std::string iconFilename );
+
+ /**
+ * @brief Gets either the selected or unselected icon.
+ *
+ * @param[in] state The icon state to get
+ * @return The filename of the icon
+ */
+ std::string& GetIcon( DecorationState state );
+
+ /**
+ * @brief Sets the alignment mode to use to align the icon to the label.
+ *
+ * @param[in] iconAlignment The alignment mode to use
+ */
+ void SetIconAlignment( const PushButton::IconAlignment iconAlignment );
+
+ /**
+ * @brief Gets the alignment mode used to align the icon to the label.
+ *
+ * @return The alignment mode in use
+ */
+ const PushButton::IconAlignment GetIconAlignment() const;
+
+ /**
+ * @brief Sets the padding for the label.
+ *
+ * @param[in] padding The padding to set
+ */
+ void SetLabelPadding( const Vector4& padding );
+
+ /**
+ * @brief Gets the padding for the label.
+ *
+ * @return The label padding
+ */
+ Vector4 GetLabelPadding();
+
+ /**
+ * @brief Sets the padding for the icon.
+ *
+ * @param[in] padding The padding to set
+ */
+ void SetIconPadding( const Vector4& padding );
+
+ /**
+ * @brief Gets the padding for the icon.
+ *
+ * @return The icon padding
+ */
+ Vector4 GetIconPadding();