MxWidget

MxWidget — Base class for stylable actors

Synopsis

enum                MxLongPressAction;
struct              MxWidget;
struct              MxWidgetClass;
void                mx_widget_set_tooltip_text          (MxWidget *widget,
                                                         const gchar *text);
const gchar *       mx_widget_get_tooltip_text          (MxWidget *widget);
void                mx_widget_show_tooltip              (MxWidget *widget);
void                mx_widget_hide_tooltip              (MxWidget *widget);
void                mx_widget_set_menu                  (MxWidget *widget,
                                                         MxMenu *menu);
MxMenu *            mx_widget_get_menu                  (MxWidget *widget);
gboolean            mx_widget_get_disabled              (MxWidget *widget);
void                mx_widget_set_disabled              (MxWidget *widget,
                                                         gboolean disabled);
void                mx_widget_long_press_query          (MxWidget *widget,
                                                         ClutterEvent *event);
void                mx_widget_long_press_cancel         (MxWidget *widget);
void                mx_widget_get_padding               (MxWidget *widget,
                                                         MxPadding *padding);
void                mx_widget_apply_style               (MxWidget *widget,
                                                         MxStyle *style);
void                mx_widget_get_available_area        (MxWidget *widget,
                                                         const ClutterActorBox *allocation,
                                                         ClutterActorBox *area);
void                mx_widget_set_tooltip_delay         (MxWidget *widget,
                                                         guint delay);
guint               mx_widget_get_tooltip_delay         (MxWidget *widget);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----ClutterActor
               +----MxWidget
                     +----MxBin
                     +----MxBoxLayout
                     +----MxButton
                     +----MxComboBox
                     +----MxDialog
                     +----MxEntry
                     +----MxExpander
                     +----MxFloatingWidget
                     +----MxFrame
                     +----MxGrid
                     +----MxIcon
                     +----MxImage
                     +----MxKineticScrollView
                     +----MxLabel
                     +----MxNotebook
                     +----MxStack
                     +----MxPathBar
                     +----MxProgressBar
                     +----MxScrollBar
                     +----MxScrollView
                     +----MxSlider
                     +----MxSpinner
                     +----MxTable
                     +----MxToggle
                     +----MxToolbar

Implemented Interfaces

MxWidget implements ClutterContainer, ClutterScriptable, ClutterAnimatable, AtkImplementorIface and MxStylable.

Properties

  "disabled"                 gboolean              : Read / Write
  "menu"                     MxMenu*               : Read / Write
  "tooltip-delay"            gint                  : Read / Write / Construct
  "tooltip-text"             gchar*                : Read / Write

Signals

  "long-press"                                     : Run Last

Description

MxWidget is a simple abstract class on top of ClutterActor. It provides basic styling properties. The style properties provided by MxWidget are:

  • background-color

  • background-image

  • border-image

  • color

  • display

  • font-family

  • font-size

  • font-weight

  • height

  • margin

  • opacity

  • padding

  • text-align

  • text-shadow

  • visibility

  • width

Actors in the Mx library should subclass MxWidget if they plan to obey to a certain MxStyle.

Details

enum MxLongPressAction

typedef enum {
  MX_LONG_PRESS_QUERY,
  MX_LONG_PRESS_ACTION,
  MX_LONG_PRESS_CANCEL
} MxLongPressAction;

struct MxWidget

struct MxWidget;

Base class for stylable actors. The contents of the MxWidget structure are private and should only be accessed through the public API.


struct MxWidgetClass

struct MxWidgetClass {
};

Base class for stylable actors.


mx_widget_set_tooltip_text ()

void                mx_widget_set_tooltip_text          (MxWidget *widget,
                                                         const gchar *text);

Set the tooltip text of the widget. Note that setting tooltip text will cause the widget to be set reactive. If you no longer need tooltips and you do not need the widget to be reactive, you must set ClutterActor::reactive to FALSE.

widget :

A MxWidget

text :

text to set as the tooltip

mx_widget_get_tooltip_text ()

const gchar *       mx_widget_get_tooltip_text          (MxWidget *widget);

Get the current tooltip string

widget :

A MxWidget

Returns :

The current tooltip string, owned by the MxWidget

mx_widget_show_tooltip ()

void                mx_widget_show_tooltip              (MxWidget *widget);

Show the tooltip for widget

widget :

A MxWidget

mx_widget_hide_tooltip ()

void                mx_widget_hide_tooltip              (MxWidget *widget);

Hide the tooltip for widget

widget :

A MxWidget

mx_widget_set_menu ()

void                mx_widget_set_menu                  (MxWidget *widget,
                                                         MxMenu *menu);

Set the value of the "menu" property.

widget :

A MxWidget

menu :

A MxMenu

mx_widget_get_menu ()

MxMenu *            mx_widget_get_menu                  (MxWidget *widget);

Get the object in the "menu" property.

widget :

A MxWidget

Returns :

The current object in the "menu" property. [transfer none]

mx_widget_get_disabled ()

gboolean            mx_widget_get_disabled              (MxWidget *widget);

Get the value of the "disabled" property.

widget :

an MxWidget

mx_widget_set_disabled ()

void                mx_widget_set_disabled              (MxWidget *widget,
                                                         gboolean disabled);

Set the disabled property. Disabled widgets have a "disabled" pseudo-class until disabled is set to FALSE.

widget :

an MxWidget

disabled :

value to set

mx_widget_long_press_query ()

void                mx_widget_long_press_query          (MxWidget *widget,
                                                         ClutterEvent *event);

Emit the long-press query signal and start a long-press timeout if required.

widget :

An MxWidget

event :

the event used to determine whether to run a long-press

mx_widget_long_press_cancel ()

void                mx_widget_long_press_cancel         (MxWidget *widget);

Cancel a long-press timeout if one is running and emit the signal to notify that the long-press has been cancelled.

widget :

An MxWidget

mx_widget_get_padding ()

void                mx_widget_get_padding               (MxWidget *widget,
                                                         MxPadding *padding);

Gets the padding of the widget, set using the "padding" CSS property. This function should normally only be used by subclasses.

widget :

A MxWidget

padding :

A pointer to an MxPadding to fill. [out]

mx_widget_apply_style ()

void                mx_widget_apply_style               (MxWidget *widget,
                                                         MxStyle *style);

Used to implement how a new style instance should be applied in the widget. For instance, setting style instance on stylable internal children.

widget :

A MxWidget

style :

A MxStyle

Since 1.2


mx_widget_get_available_area ()

void                mx_widget_get_available_area        (MxWidget *widget,
                                                         const ClutterActorBox *allocation,
                                                         ClutterActorBox *area);

Copies allocation into area and accounts for the padding values. This gives the area that is available in which to allocate children with respect to padding.

widget :

A MxWidget

allocation :

A ClutterActorBox

area :

A ClutterActorBox

mx_widget_set_tooltip_delay ()

void                mx_widget_set_tooltip_delay         (MxWidget *widget,
                                                         guint delay);

Set the value, in milliseconds, of the "tooltip-delay" property. This is initially set to MX_WIDGET_TOOLTIP_TIMEOUT.

widget :

an MxWidget

mx_widget_get_tooltip_delay ()

guint               mx_widget_get_tooltip_delay         (MxWidget *widget);

Get the value of the "tooltip-delay" property.

widget :

an MxWidget

Returns :

the current delay value in milliseconds

Property Details

The "disabled" property

  "disabled"                 gboolean              : Read / Write

Whether disabled styling should be applied and the widget made unreactive.

Default value: FALSE


The "menu" property

  "menu"                     MxMenu*               : Read / Write

MxMenu associated with the widget.


The "tooltip-delay" property

  "tooltip-delay"            gint                  : Read / Write / Construct

Delay time before showing the tooltip.

Allowed values: >= 0

Default value: 500


The "tooltip-text" property

  "tooltip-text"             gchar*                : Read / Write

text displayed on the tooltip

Default value: NULL

Signal Details

The "long-press" signal

gboolean            user_function                      (MxWidget         *widget,
                                                        gfloat            arg1,
                                                        gfloat            arg2,
                                                        MxLongPressAction arg3,
                                                        gpointer          user_data)      : Run Last

Emitted when the user holds a mouse button down for a longer period.

widget :

the object that received the signal

user_data :

user data set when the signal handler was connected.