2 // Automatically generated from "/usr/share/gir-1.0/Mx-2.0.gir"
5 public import gtk2
.atk
;
7 public import gtk2
.clutter
;
8 alias gtk2
.clutter Clutter
;
9 public import gtk2
.cogl
;
11 public import gtk2
.coglpango
;
12 alias gtk2
.coglpango CoglPango
;
13 public import gtk2
.gl
;
15 public import gtk2
.glib2
;
16 alias gtk2
.glib2 GLib2
;
17 public import gtk2
.gobject2
;
18 alias gtk2
.gobject2 GObject2
;
19 public import gtk2
.gio2
;
21 public import gtk2
.json
;
23 public import gtk2
.pango
;
24 alias gtk2
.pango Pango
;
25 public import gtk2
.pangocairo
;
26 alias gtk2
.pangocairo PangoCairo
;
27 public import gtk2
.pangoft2
;
28 alias gtk2
.pangoft2 PangoFT2
;
29 public import gtk2
.cairo
;
30 alias gtk2
.cairo cairo
;
31 public import gtk2
.fontconfig2
;
32 alias gtk2
.fontconfig2 fontconfig2
;
33 public import gtk2
.freetype2
;
34 alias gtk2
.freetype2 freetype2
;
37 // C header: "mx/mx.h";
39 // c:symbol-prefixes: ["mx"]
40 // c:identifier-prefixes: ["Mx"]
44 // --- mixin/Mx2__MODULE_HEAD.d --->
48 alias void* MxSettingsProperty
;
50 // <--- mixin/Mx2__MODULE_HEAD.d ---
53 // The contents of this structure are private and should only be accessed
54 // through the public API.
55 struct Action
/* : GObject.InitiallyUnowned */ {
56 mixin Gio2
.Action
.__interface__
;
59 alias parent initiallyunowned
;
60 GObject2
.InitiallyUnowned parent
;
61 private ActionPrivate
* priv
;
64 // Creates a new, blank, #MxAction
65 // RETURNS: a newly allocated #MxAction
66 static Action
* /*new*/ new_()() {
67 return mx_action_new();
70 // Creates a new #MxAction with the name and callback set
71 // RETURNS: a newly allocated #MxAction
72 // <name>: name of the action
73 // <display_name>: name of the action to display to the user
74 // <activated_cb>: callback to connect to the activated signal
75 // <user_data>: user data to be passed to the callback
76 static Action
* /*new*/ new_full()(char* name
, char* display_name
, ActionCallbackFunc activated_cb
, void* user_data
) {
77 return mx_action_new_full(name
, display_name
, activated_cb
, user_data
);
81 // Creates a new stateful action.
83 // @state is the initial state of the action. All future state values
84 // must have the same #GVariantType as the initial state.
85 // RETURNS: a new #MxAction
86 // <name>: the name of the action
87 // <parameter_type>: the type of the parameter to the activate function
88 // <state>: the initial state of the action
89 static Action
* new_stateful()(char* name
, GLib2
.VariantType
* parameter_type
, GLib2
.Variant
* state
) {
90 return mx_action_new_stateful(name
, parameter_type
, state
);
94 // Creates a new action with a parameter.
96 // The created action is stateless. See mx_action_new_stateful().
97 // RETURNS: a new #MxAction
98 // <name>: the name of the action
99 // <parameter_type>: the type of parameter to the activate function
100 static Action
* new_with_parameter()(char* name
, GLib2
.VariantType
* parameter_type
=null) {
101 return mx_action_new_with_parameter(name
, parameter_type
);
104 // Get the value of the active property
105 // RETURNS: #TRUE if the action is active
107 return mx_action_get_active(&this);
110 // Get the display name of the action
111 // RETURNS: display-name of the action, owned by MxAction
112 char* get_display_name()() {
113 return mx_action_get_display_name(&this);
116 // Get the icon of the action
117 // RETURNS: icon of the action, owned by MxAction
119 return mx_action_get_icon(&this);
122 // Get the name of the action
123 // RETURNS: name of the action, owned by MxAction
125 return mx_action_get_name(&this);
128 // Set the value of the active property
129 // <active>: the value to set
130 void set_active()(int active
) {
131 mx_action_set_active(&this, active
);
134 // Set the name of the action to display to the user
135 // <name>: new display name to set
136 void set_display_name()(char* name
) {
137 mx_action_set_display_name(&this, name
);
140 // The icon to be used in a visual representation of an action.
141 // <name>: new icon to set
142 void set_icon()(char* name
) {
143 mx_action_set_icon(&this, name
);
146 // Set the name of the action
147 // <name>: new name to set
148 void set_name()(char* name
) {
149 mx_action_set_name(&this, name
);
153 // Indicates that the action was just activated.
155 // @parameter will always be of the expected type. In the event that
156 // an incorrect type was given, no signal will be emitted.
157 // <parameter>: the parameter to the activation
158 extern (C
) alias static void function (Action
* this_
, GLib2
.Variant
* parameter
=null, void* user_data
=null) signal_activate
;
160 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
161 return super_
.signal_connect
!name(cb
, data
, cf
);
164 ulong signal_connect(string name
:"activate", CB
:signal_activate
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
165 return signal_connect_data
!()(&this, cast(char*)"activate",
166 cast(GObject2
.Callback
)cb
, data
, null, cf
);
169 // DEPRECATED (v1.4) glib:signal: activated - Use MxAction::activate instead.
170 // Emitted when the MxAction is activated.
171 extern (C
) alias static void function (Action
* this_
, void* user_data
=null) signal_activated
;
172 ulong signal_connect(string name
:"activated", CB
:signal_activated
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
173 return signal_connect_data
!()(&this, cast(char*)"activated",
174 cast(GObject2
.Callback
)cb
, data
, null, cf
);
179 // Callback function called when action is activated.
180 // <action>: An #MxAction
181 // <user_data>: user data
182 extern (C
) alias void function (Action
* action
, void* user_data
) ActionCallbackFunc
;
185 GObject2
.InitiallyUnownedClass parent_class
;
186 extern (C
) void function (Action
* action
) activated
;
187 extern (C
) void function () _padding_0
;
188 extern (C
) void function () _padding_1
;
189 extern (C
) void function () _padding_2
;
190 extern (C
) void function () _padding_3
;
191 extern (C
) void function () _padding_4
;
194 struct ActionPrivate
{
197 struct ActorManager
/* : GObject.Object */ {
201 GObject2
.Object parent
;
202 ActorManagerPrivate
* priv
;
206 // Creates a new #MxActorManager, associated with the given stage.
209 // A reference will not be taken on the stage, and when the stage is destroyed,
210 // the actor manager will lose a reference. The actor manager can be kept
211 // alive by taking a reference, but will no longer divide up events.
213 // RETURNS: An #MxActorManager, tied to the given #ClutterStage
214 // <stage>: A #ClutterStage
215 static ActorManager
* new_()(Clutter
.Stage
* stage
) {
216 return mx_actor_manager_new(stage
);
220 // Get the MxActorManager associated with a stage, or creates one if this is the
221 // first call to the function with the given #ClutterStage.
223 // This is a convenience function that allows for easy association of one
224 // #MxActorManager to a #ClutterStage.
225 // RETURNS: An #MxActorManager
226 // <stage>: A #ClutterStage
227 static ActorManager
* get_for_stage()(Clutter
.Stage
* stage
) {
228 return mx_actor_manager_get_for_stage(stage
);
232 // Adds @actor to @container. The actor may not be parented immediately,
233 // or at all, if the operation is cancelled.
235 // On successful completion, the #MxActorManager::actor_added signal will
237 // RETURNS: The ID for this operation.
238 // <container>: A #ClutterContainer
239 // <actor>: A #ClutterActor
240 c_ulong
add_actor()(Clutter
.Container
* container
, Clutter
.Actor
* actor
) {
241 return mx_actor_manager_add_actor(&this, container
, actor
);
245 // Cancels the given operation, if it exists. The
246 // #MxActorManager::operation_cancelled signal is fired whenever an operation
248 // <id>: An operation ID
249 void cancel_operation()(c_ulong id
) {
250 mx_actor_manager_cancel_operation(&this, id
);
254 // Cancels all operations associated with the given actor.
255 // <actor>: A #ClutterActor
256 void cancel_operations()(Clutter
.Actor
* actor
) {
257 mx_actor_manager_cancel_operations(&this, actor
);
260 // Unintrospectable method: create_actor() / mx_actor_manager_create_actor()
262 // Creates a #ClutterActor. The actor may not be created immediately,
263 // or at all, if the operation is cancelled.
265 // On successful completion, the #MxActorManager::actor_created signal will
267 // RETURNS: The ID for this operation.
268 // <create_func>: A #ClutterActor creation function
269 // <userdata>: data to be passed to the function, or %NULL
270 // <destroy_func>: callback to invoke before the operation is removed
271 c_ulong
create_actor()(ActorManagerCreateFunc create_func
, void* userdata
, GLib2
.DestroyNotify destroy_func
) {
272 return mx_actor_manager_create_actor(&this, create_func
, userdata
, destroy_func
);
276 // Retrieves the amount of operations left in the queue.
277 // RETURNS: Number of operations left to perform
278 uint get_n_operations()() {
279 return mx_actor_manager_get_n_operations(&this);
283 // Gets the #ClutterStage the actor manager is associated with.
284 // RETURNS: The #ClutterStage the actor is associated with.
285 Clutter
.Stage
* get_stage()() {
286 return mx_actor_manager_get_stage(&this);
290 // Retrieves the current time slice being used for operations.
291 // RETURNS: The time-slice being used, in milliseconds
292 uint get_time_slice()() {
293 return mx_actor_manager_get_time_slice(&this);
297 // Removes @actor from @container.
299 // On successful completion, the #MxActorManager::actor_removed signal will
303 // The actor may not be removed immediately, and thus you may want to set
304 // the actor's opacity to 0 before calling this function.
306 // RETURNS: The ID for this operation.
307 // <container>: A #ClutterContainer
308 // <actor>: A #ClutterActor
309 c_ulong
remove_actor()(Clutter
.Container
* container
, Clutter
.Actor
* actor
) {
310 return mx_actor_manager_remove_actor(&this, container
, actor
);
314 // Removes the container. This is a utility function that works by first
315 // removing all the children of the container, then the children itself. This
316 // effectively spreads the load of removing a large container. All prior
317 // operations associated with this container will be cancelled.
320 // The container may not be removed immediately, and thus you may want to set
321 // the container's opacity to 0 before calling this function.
323 // <container>: A #ClutterContainer
324 void remove_container()(Clutter
.Container
* container
) {
325 mx_actor_manager_remove_container(&this, container
);
329 // Sets the amount of time the actor manager will spend performing operations,
330 // before yielding to allow any necessary redrawing to occur.
332 // Lower times will lead to smoother performance, but will increase the amount
333 // of time it takes for operations to complete.
334 // <msecs>: A time, in milliseconds
335 void set_time_slice()(uint msecs
) {
336 mx_actor_manager_set_time_slice(&this, msecs
);
340 // Emitted when an actor add operation has completed.
341 // <id>: The operation ID
342 // <container>: The #ClutterContainer the actor was added to
343 // <actor>: The added #ClutterActor
344 extern (C
) alias static void function (ActorManager
* this_
, c_ulong id
, Clutter
.Actor
* container
, Clutter
.Actor
* actor
, void* user_data
=null) signal_actor_added
;
346 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
347 return super_
.signal_connect
!name(cb
, data
, cf
);
350 ulong signal_connect(string name
:"actor-added", CB
:signal_actor_added
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
351 return signal_connect_data
!()(&this, cast(char*)"actor-added",
352 cast(GObject2
.Callback
)cb
, data
, null, cf
);
356 // Emitted when an actor creation operation has completed.
357 // <id>: The operation ID
358 // <actor>: The created #ClutterActor
359 extern (C
) alias static void function (ActorManager
* this_
, c_ulong id
, Clutter
.Actor
* actor
, void* user_data
=null) signal_actor_created
;
360 ulong signal_connect(string name
:"actor-created", CB
:signal_actor_created
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
361 return signal_connect_data
!()(&this, cast(char*)"actor-created",
362 cast(GObject2
.Callback
)cb
, data
, null, cf
);
366 // Emitted when all queued operations involving @actor have completed.
367 // <actor>: The #ClutterActor to which the signal pertains
368 extern (C
) alias static void function (ActorManager
* this_
, Clutter
.Actor
* actor
, void* user_data
=null) signal_actor_finished
;
369 ulong signal_connect(string name
:"actor-finished", CB
:signal_actor_finished
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
370 return signal_connect_data
!()(&this, cast(char*)"actor-finished",
371 cast(GObject2
.Callback
)cb
, data
, null, cf
);
375 // Emitted when an actor remove operation has completed.
376 // <id>: The operation ID
377 // <container>: The #ClutterContainer the actor was removed from
378 // <actor>: The removed #ClutterActor
379 extern (C
) alias static void function (ActorManager
* this_
, c_ulong id
, Clutter
.Actor
* container
, Clutter
.Actor
* actor
, void* user_data
=null) signal_actor_removed
;
380 ulong signal_connect(string name
:"actor-removed", CB
:signal_actor_removed
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
381 return signal_connect_data
!()(&this, cast(char*)"actor-removed",
382 cast(GObject2
.Callback
)cb
, data
, null, cf
);
386 // Emitted when an operation has been cancelled.
387 // <id>: The operation id
388 extern (C
) alias static void function (ActorManager
* this_
, c_ulong id
, void* user_data
=null) signal_operation_cancelled
;
389 ulong signal_connect(string name
:"operation-cancelled", CB
:signal_operation_cancelled
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
390 return signal_connect_data
!()(&this, cast(char*)"operation-cancelled",
391 cast(GObject2
.Callback
)cb
, data
, null, cf
);
395 // Emitted when an operation has completed successfully.
396 // <id>: The operation id
397 extern (C
) alias static void function (ActorManager
* this_
, c_ulong id
, void* user_data
=null) signal_operation_completed
;
398 ulong signal_connect(string name
:"operation-completed", CB
:signal_operation_completed
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
399 return signal_connect_data
!()(&this, cast(char*)"operation-completed",
400 cast(GObject2
.Callback
)cb
, data
, null, cf
);
404 // Emitted when an operation has failed.
405 // <id>: The operation id
406 // <error>: A #GError describing the reason of the failure
407 extern (C
) alias static void function (ActorManager
* this_
, c_ulong id
, GLib2
.Error
* error
, void* user_data
=null) signal_operation_failed
;
408 ulong signal_connect(string name
:"operation-failed", CB
:signal_operation_failed
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
409 return signal_connect_data
!()(&this, cast(char*)"operation-failed",
410 cast(GObject2
.Callback
)cb
, data
, null, cf
);
414 struct ActorManagerClass
{
415 GObject2
.ObjectClass parent_class
;
416 extern (C
) void function (ActorManager
* manager
, c_ulong id
, Clutter
.Actor
* actor
) actor_created
;
417 extern (C
) void function (ActorManager
* manager
, c_ulong id
, Clutter
.Container
* container
, Clutter
.Actor
* actor
) actor_added
;
418 extern (C
) void function (ActorManager
* manager
, c_ulong id
, Clutter
.Container
* container
, Clutter
.Actor
* actor
) actor_removed
;
419 extern (C
) void function (ActorManager
* manager
, Clutter
.Actor
* actor
) actor_finished
;
420 extern (C
) void function (ActorManager
* manager
, c_ulong id
) operation_completed
;
421 extern (C
) void function (ActorManager
* manager
, c_ulong id
) operation_cancelled
;
422 extern (C
) void function (ActorManager
* manager
, c_ulong id
, GLib2
.Error
* error
) operation_failed
;
423 extern (C
) void function () _padding_0
;
424 extern (C
) void function () _padding_1
;
425 extern (C
) void function () _padding_2
;
426 extern (C
) void function () _padding_3
;
427 extern (C
) void function () _padding_4
;
430 // Unintrospectable callback: ActorManagerCreateFunc() / ()
431 extern (C
) alias Clutter
.Actor
* function (ActorManager
* manager
, void* userdata
) ActorManagerCreateFunc
;
433 enum ActorManagerError
{
434 CONTAINER_DESTROYED
= 0,
437 UNKNOWN_OPERATION
= 3
439 struct ActorManagerPrivate
{
443 // Class for handling an interval between to values. The contents of
444 // the #MxAdjustment are private and should be accessed using the
446 struct Adjustment
/* : GObject.Object */ {
447 alias parent_instance
this;
448 alias parent_instance super_
;
449 alias parent_instance object
;
450 GObject2
.Object parent_instance
;
451 private AdjustmentPrivate
* priv
;
454 // Create a new MxAdjustment
455 // RETURNS: a newly allocated MxAdjustment
456 static Adjustment
* /*new*/ new_()() {
457 return mx_adjustment_new();
460 // Create a new MxAdjustment with the properties set to the values specified.
461 // RETURNS: a newly allocated MxAdjustment
462 // <value>: A #gdouble
463 // <lower>: A #gdouble
464 // <upper>: A #gdouble
465 // <step_increment>: A #gdouble
466 // <page_increment>: A #gdouble
467 // <page_size>: A #gdouble
468 static Adjustment
* /*new*/ new_with_values()(double value
, double lower
, double upper
, double step_increment
, double page_increment
, double page_size
) {
469 return mx_adjustment_new_with_values(value
, lower
, upper
, step_increment
, page_increment
, page_size
);
473 // Get the value of the #MxAdjustment:clamp-value property.
474 // RETURNS: the current value of the "clamp-value" property.
475 int get_clamp_value()() {
476 return mx_adjustment_get_clamp_value(&this);
479 // Get the value of the #MxAdjustment:elastic property.
480 // RETURNS: the current value of the "elastic" property.
481 int get_elastic()() {
482 return mx_adjustment_get_elastic(&this);
485 // Get the value of the #MxAdjustment:lower property.
486 // RETURNS: the current value of the "lower" property.
487 double get_lower()() {
488 return mx_adjustment_get_lower(&this);
491 // Get the value of the MxAdjustment:page-increment property.
492 // RETURNS: the current value of the "page-increment" property.
493 double get_page_increment()() {
494 return mx_adjustment_get_page_increment(&this);
497 // Get the value of the #MxAdjustment:page-size property.
498 // RETURNS: the current value of the "page-size" property.
499 double get_page_size()() {
500 return mx_adjustment_get_page_size(&this);
503 // Get the value of the MxAdjustment:step-increment property.
504 // RETURNS: the current value of the "step-increment" property.
505 double get_step_increment()() {
506 return mx_adjustment_get_step_increment(&this);
509 // Get the value of the #MxAdjustment:upper property.
510 // RETURNS: the current value of the "upper" property.
511 double get_upper()() {
512 return mx_adjustment_get_upper(&this);
515 // Get the current value of the #MxAdjustment:value property
516 // RETURNS: the current value of the "value" property
517 double get_value()() {
518 return mx_adjustment_get_value(&this);
521 // Get the various properties of MxAdjustment.
522 // <value>: A #gdouble
523 // <lower>: A #gdouble
524 // <upper>: A #gdouble
525 // <step_increment>: A #gdouble
526 // <page_increment>: A #gdouble
527 // <page_size>: A #gdouble
528 void get_values()(double* value
, double* lower
, double* upper
, double* step_increment
, double* page_increment
, double* page_size
) {
529 mx_adjustment_get_values(&this, value
, lower
, upper
, step_increment
, page_increment
, page_size
);
532 // Interpolate #MxAdjustment:value to the new value specified by @value, using
533 // the mode and duration given.
534 // <value>: A #gdouble
535 // <duration>: duration in milliseconds
536 // <mode>: A #ClutterAnimationMode
537 void interpolate()(double value
, uint duration
, c_ulong mode
) {
538 mx_adjustment_interpolate(&this, value
, duration
, mode
);
541 // Interpolate the value of #MxAdjustment:value to a new value calculated from
543 // <offset>: A #gdouble
544 // <duration>: duration in milliseconds
545 // <mode>: A #ClutterAnimationMode
546 void interpolate_relative()(double offset
, uint duration
, c_ulong mode
) {
547 mx_adjustment_interpolate_relative(&this, offset
, duration
, mode
);
551 // Set the value of the #MxAdjustment:clamp-value property.
552 // <clamp>: a #gboolean
553 void set_clamp_value()(int clamp
) {
554 mx_adjustment_set_clamp_value(&this, clamp
);
557 // Set the value of the #MxAdjustment:elastic property.
558 // <elastic>: A #gboolean
559 void set_elastic()(int elastic
) {
560 mx_adjustment_set_elastic(&this, elastic
);
563 // Set the value of the #MxAdjustment:lower property.
564 // <lower>: A #gdouble
565 void set_lower()(double lower
) {
566 mx_adjustment_set_lower(&this, lower
);
569 // Set the value of the #MxAdjustment:page-increment property.
570 // <increment>: A #gdouble
571 void set_page_increment()(double increment
) {
572 mx_adjustment_set_page_increment(&this, increment
);
575 // Set the #MxAdjustment:page-size property.
576 // <page_size>: A #gdouble
577 void set_page_size()(double page_size
) {
578 mx_adjustment_set_page_size(&this, page_size
);
581 // Set the value of the #MxAdjustment:step-increment property.
582 // <increment>: A #gdouble
583 void set_step_increment()(double increment
) {
584 mx_adjustment_set_step_increment(&this, increment
);
587 // Set the value of the #MxAdjustment:upper property.
588 // <upper>: A #gdouble
589 void set_upper()(double upper
) {
590 mx_adjustment_set_upper(&this, upper
);
593 // Set the value of the #MxAdjustment:value property.
594 // <value>: A #gdouble
595 void set_value()(double value
) {
596 mx_adjustment_set_value(&this, value
);
599 // Set the various properties of MxAdjustment.
600 // <value>: A #gdouble
601 // <lower>: A #gdouble
602 // <upper>: A #gdouble
603 // <step_increment>: A #gdouble
604 // <page_increment>: A #gdouble
605 // <page_size>: A #gdouble
606 void set_values()(double value
, double lower
, double upper
, double step_increment
, double page_increment
, double page_size
) {
607 mx_adjustment_set_values(&this, value
, lower
, upper
, step_increment
, page_increment
, page_size
);
609 // Emitted when any of the adjustment values have changed
610 extern (C
) alias static void function (Adjustment
* this_
, void* user_data
=null) signal_changed
;
612 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
613 return super_
.signal_connect
!name(cb
, data
, cf
);
616 ulong signal_connect(string name
:"changed", CB
:signal_changed
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
617 return signal_connect_data
!()(&this, cast(char*)"changed",
618 cast(GObject2
.Callback
)cb
, data
, null, cf
);
620 // Emitted when the animation started by mx_adjustment_interpolate completes
621 extern (C
) alias static void function (Adjustment
* this_
, void* user_data
=null) signal_interpolation_completed
;
622 ulong signal_connect(string name
:"interpolation-completed", CB
:signal_interpolation_completed
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
623 return signal_connect_data
!()(&this, cast(char*)"interpolation-completed",
624 cast(GObject2
.Callback
)cb
, data
, null, cf
);
628 // Base class for #MxAdjustment.
629 struct AdjustmentClass
{
630 private GObject2
.ObjectClass parent_class
;
631 extern (C
) void function (Adjustment
* adjustment
) changed
;
632 extern (C
) void function (Adjustment
* adjustment
) interpolation_completed
;
633 extern (C
) void function () _padding_0
;
634 extern (C
) void function () _padding_1
;
635 extern (C
) void function () _padding_2
;
636 extern (C
) void function () _padding_3
;
639 struct AdjustmentPrivate
{
642 // Set the alignment of the item
649 // The contents of this structure are private and should only be accessed
650 // through the public API.
651 struct Application
/* : GObject.Object */ {
655 GObject2
.Object parent
;
656 ApplicationPrivate
* priv
;
659 // Intialises everything needed to operate Clutter and use #MxApplication.
660 // See clutter_init().
661 // RETURNS: the #MxApplication singleton.
662 // <argc>: The number of arguments in argv.
663 // <argv>: A pointer to an array of arguments
664 // <name>: Unique application name.
665 // <flags>: Application flags.
666 static Application
* /*new*/ new_()(/*inout*/ int* argc
, /*inout*/ char*** argv
, char* name
, ApplicationFlags flags
) {
667 return mx_application_new(argc
, argv
, name
, flags
);
670 // Add an action to the application.
671 // <action>: an #MxAction
672 void add_action()(Action
* action
) {
673 mx_application_add_action(&this, action
);
676 // Adds a window to the list of windows associated with @application. If this
677 // is the first window, it will be treated as the primary window and used for
678 // startup notification.
680 // This function does not take a reference on @window.
681 // <window>: The #MxWindow to add to the application
682 void add_window()(Window
* window
) {
683 mx_application_add_window(&this, window
);
686 // Creates a window and associates it with the application.
687 // RETURNS: An #MxWindow.
688 Window
* create_window()() {
689 return mx_application_create_window(&this);
692 // Retrieves all actions registered on @application.
694 // of #MxAction<!-- -->s. Use g_list_free() on the returned list
697 GLib2
.List
* /*new container*/ get_actions()() {
698 return mx_application_get_actions(&this);
701 // Get the application flags that where set on @application when created.
702 // RETURNS: the application flags
703 ApplicationFlags
get_flags()() {
704 return mx_application_get_flags(&this);
707 // Retrieves all windows added to @application.
709 // of #MxWindow<!-- -->s. The returned list is owned by
710 // @application and must not be altered.
712 GLib2
.List
* get_windows()() {
713 return mx_application_get_windows(&this);
716 // Run the named action for the application.
717 // <name>: name of the action to invoke
718 void invoke_action()(char* name
) {
719 mx_application_invoke_action(&this, name
);
723 // Run the named action for the application, passing @variant as the parameter
725 // <name>: name of the action to invoke
726 // <variant>: parameter for the action
727 void invoke_action_with_parameter()(char* name
, GLib2
.Variant
* variant
) {
728 mx_application_invoke_action_with_parameter(&this, name
, variant
);
731 // Query whether #MxApplication is running. This will also return #TRUE if the
732 // given #MxApplication is single instance and there is an instance already
734 // RETURNS: #TRUE if the application is running
736 return mx_application_is_running(&this);
739 // Stop the application from running and quit the main loop. This will cause
740 // the call to mx_application_run() to complete.
742 mx_application_quit(&this);
745 // Remove the action with the specified name from the application.
746 // <name>: name of the action to remove
747 void remove_action()(char* name
) {
748 mx_application_remove_action(&this, name
);
751 // Remove the specified window from the application. This will cause the window
752 // to be unreferenced and destroyed unless another reference is held on it.
753 // <window>: an #MxWindow
754 void remove_window()(Window
* window
) {
755 mx_application_remove_window(&this, window
);
758 // Run the main loop of the application and start processing events. This
759 // function will not return until the application is quit. If the application
760 // is single instance and an existing instance is already running, this will
761 // cause the existing instance to be raised and the function will complete
764 mx_application_run(&this);
766 // Emitted when an action has been added or removed from the MxApplication.
767 extern (C
) alias static void function (Application
* this_
, void* user_data
=null) signal_actions_changed
;
769 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
770 return super_
.signal_connect
!name(cb
, data
, cf
);
773 ulong signal_connect(string name
:"actions-changed", CB
:signal_actions_changed
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
774 return signal_connect_data
!()(&this, cast(char*)"actions-changed",
775 cast(GObject2
.Callback
)cb
, data
, null, cf
);
779 struct ApplicationClass
{
780 GObject2
.ObjectClass parent_class
;
781 // RETURNS: An #MxWindow.
782 extern (C
) Window
* function (Application
* application
) create_window
;
783 extern (C
) void function (Application
* application
) raise
;
784 extern (C
) void function (Application
* app
) actions_changed
;
785 extern (C
) void function () _padding_0
;
786 extern (C
) void function () _padding_1
;
787 extern (C
) void function () _padding_2
;
788 extern (C
) void function () _padding_3
;
789 extern (C
) void function () _padding_4
;
792 enum ApplicationFlags
{
796 struct ApplicationPrivate
{
799 // The #MxBin struct contains only private data
800 struct Bin
/* : Widget */ {
801 mixin Atk
.ImplementorIface
.__interface__
;
802 mixin Clutter
.Animatable
.__interface__
;
803 mixin Clutter
.Container
.__interface__
;
804 mixin Clutter
.Scriptable
.__interface__
;
805 mixin Focusable
.__interface__
;
806 mixin Stylable
.__interface__
;
807 alias parent_instance
this;
808 alias parent_instance super_
;
809 alias parent_instance widget
;
810 Widget parent_instance
;
811 private BinPrivate
* priv
;
814 // Allocates the child of an #MxBin using the width and height from @box.
815 // This function should usually only be called by subclasses of #MxBin.
817 // This function can be used to allocate the child of an #MxBin if no special
818 // allocation requirements are needed. It is similar to
819 // #mx_allocate_align_fill, except that it reads the alignment, padding and
820 // fill values from the #MxBin, and will call #clutter_actor_allocate on the
822 // <box>: The allocation box of the parent actor.
823 // <flags>: #ClutterAllocationFlags, usually provided by the. clutter_actor_allocate function.
824 void allocate_child()(Clutter
.ActorBox
* box
, Clutter
.AllocationFlags flags
) {
825 mx_bin_allocate_child(&this, box
, flags
);
828 // Retrieves the horizontal and vertical alignment of the child
829 // inside a #MxBin, as set by mx_bin_set_alignment().
830 // <x_align>: return location for the horizontal alignment, or %NULL
831 // <y_align>: return location for the vertical alignment, or %NULL
832 void get_alignment()(Align
* x_align
, Align
* y_align
) {
833 mx_bin_get_alignment(&this, x_align
, y_align
);
836 // Retrieves a pointer to the child of @bin.
837 // RETURNS: a #ClutterActor, or %NULL
838 Clutter
.Actor
* get_child()() {
839 return mx_bin_get_child(&this);
842 // Retrieves the horizontal and vertical fill settings
843 // <x_fill>: return location for the horizontal fill, or %NULL
844 // <y_fill>: return location for the vertical fill, or %NULL
845 void get_fill()(/*out*/ int* x_fill
, /*out*/ int* y_fill
) {
846 mx_bin_get_fill(&this, x_fill
, y_fill
);
849 // Sets the horizontal and vertical alignment of the child
851 // <x_align>: horizontal alignment
852 // <y_align>: vertical alignment
853 void set_alignment()(Align x_align
, Align y_align
) {
854 mx_bin_set_alignment(&this, x_align
, y_align
);
857 // Sets @child as the child of @bin.
859 // If @bin already has a child, the previous child is removed.
860 // <child>: a #ClutterActor, or %NULL
861 void set_child()(Clutter
.Actor
* child
) {
862 mx_bin_set_child(&this, child
);
865 // Sets whether the child of @bin should fill out the horizontal
866 // and/or vertical allocation of the parent
867 // <x_fill>: %TRUE if the child should fill horizontally the @bin
868 // <y_fill>: %TRUE if the child should fill vertically the @bin
869 void set_fill()(int x_fill
, int y_fill
) {
870 mx_bin_set_fill(&this, x_fill
, y_fill
);
874 // The #MxBinClass struct contains only private data
876 private WidgetClass parent_class
;
877 extern (C
) void function () _padding_0
;
878 extern (C
) void function () _padding_1
;
879 extern (C
) void function () _padding_2
;
880 extern (C
) void function () _padding_3
;
881 extern (C
) void function () _padding_4
;
889 int top
, right
, bottom
, left
;
891 int equal()(BorderImage
* b2
) {
892 return mx_border_image_equal(&this, b2
);
894 static void set_from_string()(GObject2
.Value
* value
, char* str, char* filename
) {
895 mx_border_image_set_from_string(value
, str, filename
);
900 // The contents of this structure are private and should only be accessed
901 // through the public API.
902 struct BoxLayout
/* : Widget */ {
903 mixin Atk
.ImplementorIface
.__interface__
;
904 mixin Clutter
.Animatable
.__interface__
;
905 mixin Clutter
.Container
.__interface__
;
906 mixin Clutter
.Scriptable
.__interface__
;
907 mixin Focusable
.__interface__
;
908 mixin Scrollable
.__interface__
;
909 mixin Stylable
.__interface__
;
914 private BoxLayoutPrivate
* priv
;
917 // Create a new #MxBoxLayout.
918 // RETURNS: a newly allocated #MxBoxLayout
919 static BoxLayout
* new_()() {
920 return mx_box_layout_new();
922 static BoxLayout
* new_with_orientation()(Orientation orientation
) {
923 return mx_box_layout_new_with_orientation(orientation
);
926 // Inserts @actor at @position in @box.
927 // <actor>: the #ClutterActor actor to add to the box layout
928 // <position>: the position where to insert the actor
929 void add_actor()(Clutter
.Actor
* actor
, int position
) {
930 mx_box_layout_add_actor(&this, actor
, position
);
933 // Unintrospectable method: add_actor_with_properties() / mx_box_layout_add_actor_with_properties()
934 // Inserts @actor at @position in the layout @box. You can set some layout
935 // properties on the child at the same time.
937 // If @position is negative, or is larger than the number of actors in the
938 // layout, the new actor is added on to the end of the list.
939 // <actor>: the #ClutterActor actor to add to the box layout
940 // <position>: the position where to insert the actor
941 // <first_property>: name of the first property to set
942 /+ Not available -- variadic methods unsupported - use the C function directly.
943 alias mx_box_layout_add_actor_with_properties add_actor_with_properties; // Variadic
946 // Get the value of the #MxBoxLayoutChild:expand property
947 // RETURNS: the current value of the "expand" property
948 // <child>: A #ClutterActor
949 int child_get_expand()(Clutter
.Actor
* child
) {
950 return mx_box_layout_child_get_expand(&this, child
);
953 // Get the value of the #MxBoxLayoutChild:x-align property
954 // RETURNS: the current value of the "x-align" property
955 // <child>: A #ClutterActor
956 Align
child_get_x_align()(Clutter
.Actor
* child
) {
957 return mx_box_layout_child_get_x_align(&this, child
);
960 // Get the value of the #MxBoxLayoutChild:x-fill property.
961 // RETURNS: the current value of the "x-fill" property.
962 // <child>: A #ClutterActor
963 int child_get_x_fill()(Clutter
.Actor
* child
) {
964 return mx_box_layout_child_get_x_fill(&this, child
);
967 // Get the value of the #MxBoxLayoutChild:y-align property.
968 // RETURNS: the current value of the "y-align" property.
969 // <child>: A #ClutterActor
970 Align
child_get_y_align()(Clutter
.Actor
* child
) {
971 return mx_box_layout_child_get_y_align(&this, child
);
974 // Get the value of the #MxBoxLayoutChild:y-fill property
975 // RETURNS: the current value of the "y-fill" property
976 // <child>: A #ClutterActor
977 int child_get_y_fill()(Clutter
.Actor
* child
) {
978 return mx_box_layout_child_get_y_fill(&this, child
);
981 // Set the value of the #MxBoxLayoutChild:expand property.
982 // <child>: A #ClutterActor
983 // <expand>: A #gboolean
984 void child_set_expand()(Clutter
.Actor
* child
, int expand
) {
985 mx_box_layout_child_set_expand(&this, child
, expand
);
988 // Set the value of the #MxBoxLayoutChild:x-align property.
989 // <child>: A #ClutterActor
990 // <x_align>: An #MxAlign
991 void child_set_x_align()(Clutter
.Actor
* child
, Align x_align
) {
992 mx_box_layout_child_set_x_align(&this, child
, x_align
);
995 // Set the value of the #MxBoxLayoutChild:x-fill property.
996 // <child>: A #ClutterActor
997 // <x_fill>: A #gboolean
998 void child_set_x_fill()(Clutter
.Actor
* child
, int x_fill
) {
999 mx_box_layout_child_set_x_fill(&this, child
, x_fill
);
1002 // Set the value of the #MxBoxLayoutChild:y-align property.
1003 // <child>: A #ClutterActor
1004 // <y_align>: An #MxAlign
1005 void child_set_y_align()(Clutter
.Actor
* child
, Align y_align
) {
1006 mx_box_layout_child_set_y_align(&this, child
, y_align
);
1009 // Set the value of the #MxBoxLayoutChild:y-fill property.
1010 // <child>: A #ClutterActor
1011 // <y_fill>: A #gboolean
1012 void child_set_y_fill()(Clutter
.Actor
* child
, int y_fill
) {
1013 mx_box_layout_child_set_y_fill(&this, child
, y_fill
);
1016 // Get the value of the #MxBoxLayout:enable-animations property.
1017 // RETURNS: #TRUE if animations enabled
1018 int get_enable_animations()() {
1019 return mx_box_layout_get_enable_animations(&this);
1022 // Get the value of the #MxBoxLayout:orientation property.
1023 // RETURNS: the orientation of the layout
1024 Orientation
get_orientation()() {
1025 return mx_box_layout_get_orientation(&this);
1029 // Get the value of the #MxBoxLayout:scroll-to-focused property.
1030 // RETURNS: #TRUE if automatically scrolling to the focused actor is enabled
1031 int get_scroll_to_focused()() {
1032 return mx_box_layout_get_scroll_to_focused(&this);
1035 // Get the spacing between children in pixels
1036 // RETURNS: the spacing value
1037 uint get_spacing()() {
1038 return mx_box_layout_get_spacing(&this);
1041 // Enable animations when certain properties change.
1042 // <enable_animations>: #TRUE to enable animations
1043 void set_enable_animations()(int enable_animations
) {
1044 mx_box_layout_set_enable_animations(&this, enable_animations
);
1047 // Set the orientation of the box layout.
1048 // <orientation>: orientation value for the layout
1049 void set_orientation()(Orientation orientation
) {
1050 mx_box_layout_set_orientation(&this, orientation
);
1054 // Enables or disables automatic scrolling to the focused actor.
1055 // <scroll_to_focused>: #TRUE to enable automatically scrolling to the focused actor
1056 void set_scroll_to_focused()(int scroll_to_focused
) {
1057 mx_box_layout_set_scroll_to_focused(&this, scroll_to_focused
);
1060 // Set the amount of spacing between children in pixels
1061 // <spacing>: the spacing value
1062 void set_spacing()(uint spacing
) {
1063 mx_box_layout_set_spacing(&this, spacing
);
1068 // The contents of this structure are private and should only be accessed
1069 // through the public API.
1070 struct BoxLayoutChild
/* : Clutter.ChildMeta */ {
1072 alias parent super_
;
1073 alias parent childmeta
;
1074 Clutter
.ChildMeta parent
;
1076 static import std
.bitmanip
; mixin(std
.bitmanip
.bitfields
!(
1079 uint, "__dummy32A", 30));
1080 private Align x_align
, y_align
;
1083 struct BoxLayoutChildClass
{
1084 Clutter
.ChildMetaClass parent_class
;
1085 extern (C
) void function () _padding_0
;
1086 extern (C
) void function () _padding_1
;
1087 extern (C
) void function () _padding_2
;
1088 extern (C
) void function () _padding_3
;
1089 extern (C
) void function () _padding_4
;
1092 struct BoxLayoutChildPrivate
{
1095 struct BoxLayoutClass
{
1096 WidgetClass parent_class
;
1097 extern (C
) void function () _padding_0
;
1098 extern (C
) void function () _padding_1
;
1099 extern (C
) void function () _padding_2
;
1100 extern (C
) void function () _padding_3
;
1101 extern (C
) void function () _padding_4
;
1104 struct BoxLayoutPrivate
{
1108 // The contents of this structure is private and should only be accessed using
1109 // the provided API.
1110 struct Button
/* : Bin */ {
1111 mixin Atk
.ImplementorIface
.__interface__
;
1112 mixin Clutter
.Animatable
.__interface__
;
1113 mixin Clutter
.Container
.__interface__
;
1114 mixin Clutter
.Scriptable
.__interface__
;
1115 mixin Focusable
.__interface__
;
1116 mixin Stylable
.__interface__
;
1117 alias parent_instance
this;
1118 alias parent_instance super_
;
1119 alias parent_instance bin
;
1120 Bin parent_instance
;
1121 private ButtonPrivate
* priv
;
1124 // Create a new button
1125 // RETURNS: a new #MxButton
1126 static Button
* new_()() {
1127 return mx_button_new();
1130 // Create a new #MxButton with the specified label
1131 // RETURNS: a new #MxButton
1132 // <text>: text to set the label to
1133 static Button
* new_with_label()(char* text
) {
1134 return mx_button_new_with_label(text
);
1138 // Retrieves the #MxAction associated with @button.
1139 // RETURNS: A #MxAction
1140 Action
* get_action()() {
1141 return mx_button_get_action(&this);
1145 // Get the icon-name being used on the button.
1147 // no icon has been set
1148 // RETURNS: the icon-name. This must not be freed by the application. %NULL if
1149 char* get_icon_name()() {
1150 return mx_button_get_icon_name(&this);
1154 // Retrieves the icon's relative position to the text.
1155 // RETURNS: A #MxPosition
1156 Position
get_icon_position()() {
1157 return mx_button_get_icon_position(&this);
1161 // Retrieves the icon-size being used for the displayed icon inside the button.
1162 // RETURNS: The icon-size being used for the button icon, in pixels
1163 uint get_icon_size()() {
1164 return mx_button_get_icon_size(&this);
1168 // Retrieves the visibility of the icon associated with the button's action.
1169 // RETURNS: %TRUE if the icon is visible, %FALSE otherwise
1170 int get_icon_visible()() {
1171 return mx_button_get_icon_visible(&this);
1174 // Get the toggle mode status of the button.
1175 // RETURNS: #TRUE if toggle mode is set, otherwise #FALSE
1176 int get_is_toggle()() {
1177 return mx_button_get_is_toggle(&this);
1180 // Get the text displayed on the button
1181 // RETURNS: the text for the button. This must not be freed by the application
1182 char* get_label()() {
1183 return mx_button_get_label(&this);
1187 // Retrieves the visibility of the text associated with the button's action.
1188 // RETURNS: %TRUE if the text is visible, %FALSE otherwise
1189 int get_label_visible()() {
1190 return mx_button_get_label_visible(&this);
1193 // Get the state of the button that is in toggle mode.
1194 // RETURNS: #TRUE if the button is toggled, or #FALSE if not
1195 int get_toggled()() {
1196 return mx_button_get_toggled(&this);
1200 // Sets @action as the action for @button. @Button will take its label and
1201 // icon from @action.
1202 // <action>: A #MxAction
1203 void set_action()(Action
* action
) {
1204 mx_button_set_action(&this, action
);
1208 // Sets the icon-name used to display an icon on the button. Setting %NULL
1209 // will remove the icon name, or resort to the icon-name set in the current
1210 // style. Setting an icon name overrides any icon set in the style.
1211 // <icon_name>: icon-name to use on the button
1212 void set_icon_name()(char* icon_name
=null) {
1213 mx_button_set_icon_name(&this, icon_name
);
1217 // Sets the icon position, relative to the text on the button.
1218 // <position>: A #MxPosition
1219 void set_icon_position()(Position position
) {
1220 mx_button_set_icon_position(&this, position
);
1224 // Sets the icon-size to use for the icon displayed inside the button. This will
1225 // override the icon-size set in the style. Setting a value of %0 resets to the
1226 // size from the style.
1227 void set_icon_size()(uint icon_size
) {
1228 mx_button_set_icon_size(&this, icon_size
);
1232 // Sets the visibility of the icon associated with the button's action.
1233 // <visible>: %TRUE if the icon should be visible
1234 void set_icon_visible()(int visible
) {
1235 mx_button_set_icon_visible(&this, visible
);
1238 // Enables or disables toggle mode for the button. In toggle mode, the active
1239 // state will be "toggled" when the user clicks the button.
1240 // <toggle>: #TRUE or #FALSE
1241 void set_is_toggle()(int toggle
) {
1242 mx_button_set_is_toggle(&this, toggle
);
1245 // Sets the text displayed on the button
1246 // <text>: text to set the label to
1247 void set_label()(char* text
) {
1248 mx_button_set_label(&this, text
);
1252 // Sets the visibility of the text associated with the button's action.
1253 // <visible>: %TRUE if the text should be visible
1254 void set_label_visible()(int visible
) {
1255 mx_button_set_label_visible(&this, visible
);
1258 // Sets the toggled state of the button. This is only really useful if the
1259 // button has #toggle-mode mode set to #TRUE.
1260 // <toggled>: #TRUE or #FALSE
1261 void set_toggled()(int toggled
) {
1262 mx_button_set_toggled(&this, toggled
);
1265 // Emitted when the user activates the button, either with a mouse press and
1266 // release or with the keyboard.
1267 extern (C
) alias static void function (Button
* this_
, void* user_data
=null) signal_clicked
;
1269 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
1270 return super_
.signal_connect
!name(cb
, data
, cf
);
1273 ulong signal_connect(string name
:"clicked", CB
:signal_clicked
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
1274 return signal_connect_data
!()(&this, cast(char*)"clicked",
1275 cast(GObject2
.Callback
)cb
, data
, null, cf
);
1279 struct ButtonClass
{
1280 BinClass parent_class
;
1281 extern (C
) void function (Button
* button
) clicked
;
1282 extern (C
) void function () _padding_0
;
1283 extern (C
) void function () _padding_1
;
1284 extern (C
) void function () _padding_2
;
1285 extern (C
) void function () _padding_3
;
1286 extern (C
) void function () _padding_4
;
1290 // The contents of this structure are private and should only be accessed
1291 // through the public API.
1292 struct ButtonGroup
/* : GObject.InitiallyUnowned */ {
1294 alias parent super_
;
1295 alias parent initiallyunowned
;
1296 GObject2
.InitiallyUnowned parent
;
1297 ButtonGroupPrivate
* priv
;
1300 // Create a new #MxButtonGroup.
1301 // RETURNS: a newly allocated #MxButtonGroup.
1302 static ButtonGroup
* new_()() {
1303 return mx_button_group_new();
1306 // Add @button to the #MxButtonGroup.
1307 // <button>: A #MxButton
1308 void add()(Button
* button
) {
1309 mx_button_group_add(&this, button
);
1312 // Calls @callback for each button in the group.
1313 // <callback>: A #ClutterCallback
1314 // <userdata>: A #gpointer
1315 void foreach_()(Clutter
.Callback callback
, void* userdata
) {
1316 mx_button_group_foreach(&this, callback
, userdata
);
1319 // Get the current active button
1320 // RETURNS: the currently active button
1321 Button
* get_active_button()() {
1322 return mx_button_group_get_active_button(&this);
1325 // Get the value of the #MxButtonGroup:allow-no-active property.
1326 // RETURNS: the value of the "allow-no-active" property.
1327 int get_allow_no_active()() {
1328 return mx_button_group_get_allow_no_active(&this);
1331 // Get a list of the buttons in the button group.
1333 // owned by the #MxButtonGroup and should not be modified by the
1335 // RETURNS: a list of buttons. The list is
1336 GLib2
.SList
* get_buttons()() {
1337 return mx_button_group_get_buttons(&this);
1340 // Remove @button from the #MxButtonGroup
1341 // <button>: A #MxButton
1342 void remove()(Button
* button
) {
1343 mx_button_group_remove(&this, button
);
1346 // Set the current active button in the group. The previous active button will
1347 // have #MxButton:toggled set to #FALSE.
1348 // <button>: A #MxButton
1349 void set_active_button()(Button
* button
=null) {
1350 mx_button_group_set_active_button(&this, button
);
1353 // Set the value of the #MxButtonGroup:allow-no-active property.
1354 // <allow_no_active>: A #gboolean
1355 void set_allow_no_active()(int allow_no_active
) {
1356 mx_button_group_set_allow_no_active(&this, allow_no_active
);
1360 struct ButtonGroupClass
{
1361 GObject2
.InitiallyUnownedClass parent_class
;
1362 extern (C
) void function () _padding_0
;
1363 extern (C
) void function () _padding_1
;
1364 extern (C
) void function () _padding_2
;
1365 extern (C
) void function () _padding_3
;
1366 extern (C
) void function () _padding_4
;
1369 struct ButtonGroupPrivate
{
1372 struct ButtonPrivate
{
1376 // The contents of this structure is private and should only be accessed using
1377 // the provided API.
1378 struct Clipboard
/* : GObject.Object */ {
1380 alias parent super_
;
1381 alias parent object
;
1382 GObject2
.Object parent
;
1383 private ClipboardPrivate
* priv
;
1386 // Get the global #MxClipboard object that represents the clipboard.
1388 // unrefferenced or freed.
1389 // RETURNS: a #MxClipboard owned by Mx and must not be
1390 static Clipboard
* get_default()() {
1391 return mx_clipboard_get_default();
1394 // Request the data from the clipboard in text form. @callback is executed
1395 // when the data is retreived.
1396 // <callback>: function to be called when the text is retreived
1397 // <user_data>: data to be passed to the callback
1398 void get_text()(ClipboardCallbackFunc callback
, void* user_data
) {
1399 mx_clipboard_get_text(&this, callback
, user_data
);
1402 // Sets text as the current contents of the clipboard.
1403 // <text>: text to copy to the clipboard
1404 void set_text()(char* text
) {
1405 mx_clipboard_set_text(&this, text
);
1410 // Callback function called when text is retrieved from the clipboard.
1411 // <clipboard>: A #MxClipboard
1412 // <text>: text from the clipboard
1413 // <user_data>: user data
1414 extern (C
) alias void function (Clipboard
* clipboard
, char* text
, void* user_data
) ClipboardCallbackFunc
;
1416 struct ClipboardClass
{
1417 GObject2
.ObjectClass parent_class
;
1418 extern (C
) void function () _padding_0
;
1419 extern (C
) void function () _padding_1
;
1420 extern (C
) void function () _padding_2
;
1421 extern (C
) void function () _padding_3
;
1422 extern (C
) void function () _padding_4
;
1425 struct ClipboardPrivate
{
1429 // The contents of this structure are private and should only be accessed
1430 // through the public API.
1431 struct ComboBox
/* : Widget */ {
1432 mixin Atk
.ImplementorIface
.__interface__
;
1433 mixin Clutter
.Animatable
.__interface__
;
1434 mixin Clutter
.Scriptable
.__interface__
;
1435 mixin Focusable
.__interface__
;
1436 mixin Stylable
.__interface__
;
1438 alias parent super_
;
1439 alias parent widget
;
1441 private ComboBoxPrivate
* priv
;
1444 // Create a new MxComboBox
1445 // RETURNS: a newly allocated MxComboBox
1446 static ComboBox
* new_()() {
1447 return mx_combo_box_new();
1450 // Append an item to the combo box list
1451 // <text>: name of the item
1452 void append_text()(char* text
) {
1453 mx_combo_box_append_text(&this, text
);
1456 // Get the name of the icon displayed in the combo box
1458 // the combo box, or %NULL if there is no active icon.
1459 // RETURNS: the text string of the name of the displayed icon, owned by
1460 char* get_active_icon_name()() {
1461 return mx_combo_box_get_active_icon_name(&this);
1464 // Get the text displayed in the combo box
1465 // RETURNS: the text string, owned by the combo box
1466 char* get_active_text()() {
1467 return mx_combo_box_get_active_text(&this);
1470 // Get the index of the last item selected
1473 return mx_combo_box_get_index(&this);
1476 // Insert an item into the combo box list.
1477 // <position>: zero indexed position to insert the item at
1478 // <text>: name of the item
1479 void insert_text()(int position
, char* text
) {
1480 mx_combo_box_insert_text(&this, position
, text
);
1483 // Insert an item with text and an icon into the combo box list.
1484 // <position>: zero indexed position to insert the item at
1485 // <text>: name of the item
1486 // <icon>: name of an icon from the icon theme
1487 void insert_text_with_icon()(int position
, char* text
, char* icon
) {
1488 mx_combo_box_insert_text_with_icon(&this, position
, text
, icon
);
1491 // Prepend an item to the combo box list
1492 // <text>: name of the item
1493 void prepend_text()(char* text
) {
1494 mx_combo_box_prepend_text(&this, text
);
1498 // Remove all the items of @box
1499 void remove_all()() {
1500 mx_combo_box_remove_all(&this);
1503 // Remove the item at @position
1504 // <position>: position of the item to remove
1505 void remove_text()(int position
) {
1506 mx_combo_box_remove_text(&this, position
);
1509 // Set the icon displayed in the combo box.
1510 // <icon_name>: Icon name to use for displayed icon
1511 void set_active_icon_name()(char* icon_name
=null) {
1512 mx_combo_box_set_active_icon_name(&this, icon_name
);
1515 // Set the text displayed in the combo box
1516 // <text>: text to display
1517 void set_active_text()(char* text
) {
1518 mx_combo_box_set_active_text(&this, text
);
1521 // Set the current combo box text from the item at @index in the list.
1522 // <index>: the index of the list item to set
1523 void set_index()(int index
) {
1524 mx_combo_box_set_index(&this, index
);
1528 struct ComboBoxClass
{
1529 WidgetClass parent_class
;
1530 extern (C
) void function () _padding_0
;
1531 extern (C
) void function () _padding_1
;
1532 extern (C
) void function () _padding_2
;
1533 extern (C
) void function () _padding_3
;
1534 extern (C
) void function () _padding_4
;
1537 struct ComboBoxPrivate
{
1541 // The contents of this structure is private and should only be accessed using
1542 // the provided API.
1543 struct DeformBowTie
/* : DeformTexture */ {
1544 mixin Atk
.ImplementorIface
.__interface__
;
1545 mixin Clutter
.Animatable
.__interface__
;
1546 mixin Clutter
.Scriptable
.__interface__
;
1547 mixin Stylable
.__interface__
;
1549 alias parent super_
;
1550 alias parent deformtexture
;
1551 DeformTexture parent
;
1552 DeformBowTiePrivate
* priv
;
1554 static DeformBowTie
* new_()() {
1555 return mx_deform_bow_tie_new();
1557 int get_flip_back()() {
1558 return mx_deform_bow_tie_get_flip_back(&this);
1560 double get_period()() {
1561 return mx_deform_bow_tie_get_period(&this);
1563 void set_flip_back()(int flip_back
) {
1564 mx_deform_bow_tie_set_flip_back(&this, flip_back
);
1566 void set_period()(double period
) {
1567 mx_deform_bow_tie_set_period(&this, period
);
1571 struct DeformBowTieClass
{
1572 DeformTextureClass parent_class
;
1573 extern (C
) void function () _padding_0
;
1574 extern (C
) void function () _padding_1
;
1575 extern (C
) void function () _padding_2
;
1576 extern (C
) void function () _padding_3
;
1577 extern (C
) void function () _padding_4
;
1580 struct DeformBowTiePrivate
{
1584 // The contents of this structure is private and should only be accessed using
1585 // the provided API.
1586 struct DeformPageTurn
/* : DeformTexture */ {
1587 mixin Atk
.ImplementorIface
.__interface__
;
1588 mixin Clutter
.Animatable
.__interface__
;
1589 mixin Clutter
.Scriptable
.__interface__
;
1590 mixin Stylable
.__interface__
;
1592 alias parent super_
;
1593 alias parent deformtexture
;
1594 DeformTexture parent
;
1595 DeformPageTurnPrivate
* priv
;
1597 static DeformPageTurn
* new_()() {
1598 return mx_deform_page_turn_new();
1600 double get_angle()() {
1601 return mx_deform_page_turn_get_angle(&this);
1603 double get_period()() {
1604 return mx_deform_page_turn_get_period(&this);
1606 double get_radius()() {
1607 return mx_deform_page_turn_get_radius(&this);
1609 void set_angle()(double angle
) {
1610 mx_deform_page_turn_set_angle(&this, angle
);
1612 void set_period()(double period
) {
1613 mx_deform_page_turn_set_period(&this, period
);
1615 void set_radius()(double radius
) {
1616 mx_deform_page_turn_set_radius(&this, radius
);
1620 struct DeformPageTurnClass
{
1621 DeformTextureClass parent_class
;
1622 extern (C
) void function () _padding_0
;
1623 extern (C
) void function () _padding_1
;
1624 extern (C
) void function () _padding_2
;
1625 extern (C
) void function () _padding_3
;
1626 extern (C
) void function () _padding_4
;
1629 struct DeformPageTurnPrivate
{
1633 // The contents of this structure is private and should only be accessed using
1634 // the provided API.
1635 struct DeformTexture
/* : Widget */ {
1636 mixin Atk
.ImplementorIface
.__interface__
;
1637 mixin Clutter
.Animatable
.__interface__
;
1638 mixin Clutter
.Scriptable
.__interface__
;
1639 mixin Stylable
.__interface__
;
1641 alias parent super_
;
1642 alias parent widget
;
1644 DeformTexturePrivate
* priv
;
1647 // Retrieve the mesh resolution of the texture.
1648 // See mx_deform_texture_set_resolution().
1649 // <tiles_x>: The horizontal resolution
1650 // <tiles_y>: The vertical resolution
1651 void get_resolution()(/*out*/ int* tiles_x
=null, /*out*/ int* tiles_y
=null) {
1652 mx_deform_texture_get_resolution(&this, tiles_x
, tiles_y
);
1655 // Retrieves the textures used by @texture.
1656 // <front>: The front-facing texture
1657 // <back>: The back-facing texture
1658 void get_textures()(/*out*/ Clutter
.Texture
** front
=null, /*out*/ Clutter
.Texture
** back
=null) {
1659 mx_deform_texture_get_textures(&this, front
, back
);
1661 // Make @texture re-calculate its vertices and redraw itself.
1662 void invalidate()() {
1663 mx_deform_texture_invalidate(&this);
1666 // Sets the amount of sub-divisions used on each axis when generating
1667 // the mesh, where a value of 1 for each axis will produce a single quad.
1668 // <tiles_x>: The horizontal resolution
1669 // <tiles_y>: The vertical resolution
1670 void set_resolution()(int tiles_x
, int tiles_y
) {
1671 mx_deform_texture_set_resolution(&this, tiles_x
, tiles_y
);
1674 // Set textures to use as the sources of a deformation effect. Textures
1675 // must not be parented.
1676 // <front>: #ClutterTexture to use for the front-face.
1677 // <back>: #ClutterTexture to use for the back-face.
1678 void set_textures()(Clutter
.Texture
* front
=null, Clutter
.Texture
* back
=null) {
1679 mx_deform_texture_set_textures(&this, front
, back
);
1683 struct DeformTextureClass
{
1684 WidgetClass parent_class
;
1685 extern (C
) void function (DeformTexture
* texture
, Cogl
.TextureVertex
* vertex
, float width
, float height
) deform
;
1686 extern (C
) void function () _padding_0
;
1687 extern (C
) void function () _padding_1
;
1688 extern (C
) void function () _padding_2
;
1689 extern (C
) void function () _padding_3
;
1690 extern (C
) void function () _padding_4
;
1693 struct DeformTexturePrivate
{
1697 // The contents of this structure is private and should only be accessed using
1698 // the provided API.
1699 struct DeformWaves
/* : DeformTexture */ {
1700 mixin Atk
.ImplementorIface
.__interface__
;
1701 mixin Clutter
.Animatable
.__interface__
;
1702 mixin Clutter
.Scriptable
.__interface__
;
1703 mixin Stylable
.__interface__
;
1705 alias parent super_
;
1706 alias parent deformtexture
;
1707 DeformTexture parent
;
1708 DeformWavesPrivate
* priv
;
1710 static DeformWaves
* new_()() {
1711 return mx_deform_waves_new();
1713 double get_amplitude()() {
1714 return mx_deform_waves_get_amplitude(&this);
1716 double get_angle()() {
1717 return mx_deform_waves_get_angle(&this);
1719 double get_period()() {
1720 return mx_deform_waves_get_period(&this);
1722 double get_radius()() {
1723 return mx_deform_waves_get_radius(&this);
1725 void set_amplitude()(double amplitude
) {
1726 mx_deform_waves_set_amplitude(&this, amplitude
);
1728 void set_angle()(double angle
) {
1729 mx_deform_waves_set_angle(&this, angle
);
1731 void set_period()(double period
) {
1732 mx_deform_waves_set_period(&this, period
);
1734 void set_radius()(double radius
) {
1735 mx_deform_waves_set_radius(&this, radius
);
1739 struct DeformWavesClass
{
1740 DeformTextureClass parent_class
;
1741 extern (C
) void function () _padding_0
;
1742 extern (C
) void function () _padding_1
;
1743 extern (C
) void function () _padding_2
;
1744 extern (C
) void function () _padding_3
;
1745 extern (C
) void function () _padding_4
;
1748 struct DeformWavesPrivate
{
1752 // The contents of this structure is private and should only be accessed using
1753 // the provided API.
1754 struct Dialog
/* : Bin */ {
1755 mixin Atk
.ImplementorIface
.__interface__
;
1756 mixin Clutter
.Animatable
.__interface__
;
1757 mixin Clutter
.Container
.__interface__
;
1758 mixin Clutter
.Scriptable
.__interface__
;
1759 mixin Focusable
.__interface__
;
1760 mixin Stylable
.__interface__
;
1762 alias parent super_
;
1765 private DialogPrivate
* priv
;
1769 // Creates a new #MxDialog.
1770 // RETURNS: A newly allocated #MxDialog
1771 static Dialog
* new_()() {
1772 return mx_dialog_new();
1776 // Adds an #MxButton that represents @action to the button area of @dialog
1777 // <action>: A #MxAction
1778 void add_action()(Action
* action
) {
1779 mx_dialog_add_action(&this, action
);
1783 // Retrieves a list of actions added to @dialog.
1785 // #GList of #MxAction objects. The actions in the list are owned by the
1787 // RETURNS: A newly allocated
1788 GLib2
.List
* /*new container*/ get_actions()() {
1789 return mx_dialog_get_actions(&this);
1793 // Removes the button associated with @action from the button area of @dialog
1794 // <action>: A #MxAction
1795 void remove_action()(Action
* action
) {
1796 mx_dialog_remove_action(&this, action
);
1800 // Sets the parent of the #MxDialog. This is the actor over which the
1801 // modal frame will appear when clutter_actor_show() is called.
1802 // <actor>: A #ClutterActor
1803 void set_transient_parent()(Clutter
.Actor
* actor
) {
1804 mx_dialog_set_transient_parent(&this, actor
);
1808 struct DialogClass
{
1809 BinClass parent_class
;
1812 struct DialogPrivate
{
1820 // This is an opaque structure whose members cannot be directly accessed.
1821 struct Draggable
/* Interface */ {
1822 mixin template __interface__() { void disable()() {
1823 mx_draggable_disable(cast(Draggable
*)&this);
1826 mx_draggable_enable(cast(Draggable
*)&this);
1828 DragAxis
get_axis()() {
1829 return mx_draggable_get_axis(cast(Draggable
*)&this);
1833 // RETURNS: a #ClutterActor, or %NULL
1834 Clutter
.Actor
* get_drag_actor()() {
1835 return mx_draggable_get_drag_actor(cast(Draggable
*)&this);
1837 uint get_drag_threshold()() {
1838 return mx_draggable_get_drag_threshold(cast(Draggable
*)&this);
1840 int is_enabled()() {
1841 return mx_draggable_is_enabled(cast(Draggable
*)&this);
1843 void set_axis()(DragAxis axis
) {
1844 mx_draggable_set_axis(cast(Draggable
*)&this, axis
);
1846 void set_drag_actor()(Clutter
.Actor
* actor
) {
1847 mx_draggable_set_drag_actor(cast(Draggable
*)&this, actor
);
1849 void set_drag_threshold()(uint threshold
) {
1850 mx_draggable_set_drag_threshold(cast(Draggable
*)&this, threshold
);
1852 extern (C
) alias static void function (Draggable
* this_
, float object
, float p0
, int p1
, Clutter
.ModifierType
* p2
, void* user_data
=null) signal_drag_begin
;
1854 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
1855 return super_
.signal_connect
!name(cb
, data
, cf
);
1858 ulong signal_connect(string name
:"drag-begin", CB
:signal_drag_begin
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
1859 return signal_connect_data
!()(&this, cast(char*)"drag-begin",
1860 cast(GObject2
.Callback
)cb
, data
, null, cf
);
1862 extern (C
) alias static void function (Draggable
* this_
, float object
, float p0
, void* user_data
=null) signal_drag_end
;
1863 ulong signal_connect(string name
:"drag-end", CB
:signal_drag_end
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
1864 return signal_connect_data
!()(&this, cast(char*)"drag-end",
1865 cast(GObject2
.Callback
)cb
, data
, null, cf
);
1867 extern (C
) alias static void function (Draggable
* this_
, float object
, float p0
, void* user_data
=null) signal_drag_motion
;
1868 ulong signal_connect(string name
:"drag-motion", CB
:signal_drag_motion
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
1869 return signal_connect_data
!()(&this, cast(char*)"drag-motion",
1870 cast(GObject2
.Callback
)cb
, data
, null, cf
);
1873 mixin __interface__
;
1876 // Interface for draggable #ClutterActor<!-- -->s.
1877 struct DraggableIface
{
1878 private GObject2
.TypeInterface g_iface
;
1879 extern (C
) void function (Draggable
* draggable
) enable
;
1880 extern (C
) void function (Draggable
* draggable
) disable
;
1881 extern (C
) void function (Draggable
* draggable
, float event_x
, float event_y
, int event_button
, Clutter
.ModifierType modifiers
) drag_begin
;
1882 extern (C
) void function (Draggable
* draggable
, float delta_x
, float delta_y
) drag_motion
;
1883 extern (C
) void function (Draggable
* draggable
, float event_x
, float event_y
) drag_end
;
1886 // This is an opaque structure whose members cannot be directly accessed.
1887 struct Droppable
/* Interface */ {
1888 mixin template __interface__() { int accept_drop()(Draggable
* draggable
) {
1889 return mx_droppable_accept_drop(cast(Droppable
*)&this, draggable
);
1892 mx_droppable_disable(cast(Droppable
*)&this);
1895 mx_droppable_enable(cast(Droppable
*)&this);
1897 int is_enabled()() {
1898 return mx_droppable_is_enabled(cast(Droppable
*)&this);
1900 extern (C
) alias static void function (Droppable
* this_
, Clutter
.Actor
* object
, float p0
, float p1
, int p2
, Clutter
.ModifierType
* p3
, void* user_data
=null) signal_drop
;
1902 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
1903 return super_
.signal_connect
!name(cb
, data
, cf
);
1906 ulong signal_connect(string name
:"drop", CB
:signal_drop
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
1907 return signal_connect_data
!()(&this, cast(char*)"drop",
1908 cast(GObject2
.Callback
)cb
, data
, null, cf
);
1910 extern (C
) alias static void function (Droppable
* this_
, Clutter
.Actor
* object
, void* user_data
=null) signal_over_in
;
1911 ulong signal_connect(string name
:"over-in", CB
:signal_over_in
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
1912 return signal_connect_data
!()(&this, cast(char*)"over-in",
1913 cast(GObject2
.Callback
)cb
, data
, null, cf
);
1915 extern (C
) alias static void function (Droppable
* this_
, Clutter
.Actor
* object
, void* user_data
=null) signal_over_out
;
1916 ulong signal_connect(string name
:"over-out", CB
:signal_over_out
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
1917 return signal_connect_data
!()(&this, cast(char*)"over-out",
1918 cast(GObject2
.Callback
)cb
, data
, null, cf
);
1921 mixin __interface__
;
1924 struct DroppableIface
{
1925 private GObject2
.TypeInterface g_iface
;
1926 extern (C
) void function (Droppable
* droppable
) enable
;
1927 extern (C
) void function (Droppable
* droppable
) disable
;
1928 extern (C
) int function (Droppable
* droppable
, Draggable
* draggable
) accept_drop
;
1929 extern (C
) void function (Droppable
* droppable
, Draggable
* draggable
) over_in
;
1930 extern (C
) void function (Droppable
* droppable
, Draggable
* draggable
) over_out
;
1931 extern (C
) void function (Droppable
* droppable
, Draggable
* draggable
, float event_x
, float event_y
, int button
, Clutter
.ModifierType modifiers
) drop
;
1935 // The contents of this structure is private and should only be accessed using
1936 // the provided API.
1937 struct Entry
/* : Widget */ {
1938 mixin Atk
.ImplementorIface
.__interface__
;
1939 mixin Clutter
.Animatable
.__interface__
;
1940 mixin Clutter
.Scriptable
.__interface__
;
1941 mixin Focusable
.__interface__
;
1942 mixin Stylable
.__interface__
;
1943 alias parent_instance
this;
1944 alias parent_instance super_
;
1945 alias parent_instance widget
;
1946 Widget parent_instance
;
1947 private EntryPrivate
* priv
;
1950 // Create a new #MxEntry
1951 // RETURNS: a new #MxEntry
1952 static Entry
* new_()() {
1953 return mx_entry_new();
1956 // Create a new #MxEntry with the specified entry
1957 // RETURNS: a new #MxEntry
1958 // <text>: text to set the entry to
1959 static Entry
* new_with_text()(char* text
) {
1960 return mx_entry_new_with_text(text
);
1963 // Retrieve the internal #ClutterText so that extra parameters can be set
1965 // owned by the #MxEntry and should not be unref'ed by the application.
1966 // RETURNS: the #ClutterText used by #MxEntry. The entry is
1967 Clutter
.Actor
* get_clutter_text()() {
1968 return mx_entry_get_clutter_text(&this);
1971 // Gets the text that is displayed when the entry is empty and unfocused
1973 // #MxEntry and should not be freed or modified.
1974 // RETURNS: the current value of the hint property. This string is owned by the
1975 char* get_hint_text()() {
1976 return mx_entry_get_hint_text(&this);
1979 // Get the suffix appended to the filename to use for the highlighted version
1982 // #MxEntry and should not be freed or modified.
1983 // RETURNS: the highlight filename suffix. This string is owned by the
1984 char* get_icon_highlight_suffix()() {
1985 return mx_entry_get_icon_highlight_suffix(&this);
1988 // Gets the character to display instead of the text.
1989 // RETURNS: a character, or 0 if input should not be hidden.
1990 dchar get_password_char()() {
1991 return mx_entry_get_password_char(&this);
1994 // Get the text displayed on the entry
1995 // RETURNS: the text for the entry. This must not be freed by the application
1996 char* get_text()() {
1997 return mx_entry_get_text(&this);
2000 // Sets the text to display when the entry is empty and unfocused. When the
2001 // entry is displaying the hint, it has a pseudo class of "indeterminate".
2002 // A value of NULL unsets the hint.
2003 // <text>: text to set as the entry hint
2004 void set_hint_text()(char* text
) {
2005 mx_entry_set_hint_text(&this, text
);
2008 // Sets the suffix appended to the filename to use for the highlighted version
2009 // of the icon. e.g. if you have set your primay icon to "primary-icon.png"
2010 // and the suffix to "-highlight" #MxEntry will look for
2011 // "primary-icon-highlight.png"
2012 // <suffix>: the suffix to append to the filename for the highlight version
2013 void set_icon_highlight_suffix()(char* suffix
) {
2014 mx_entry_set_icon_highlight_suffix(&this, suffix
);
2017 // Sets the character to display instead of the text. Use 0 to display
2019 // <password_char>: text to set as the entry hint
2020 void set_password_char()(dchar password_char
) {
2021 mx_entry_set_password_char(&this, password_char
);
2024 // Set the primary icon of the entry to the given filename
2025 // <filename>: filename of an icon
2026 void set_primary_icon_from_file()(char* filename
) {
2027 mx_entry_set_primary_icon_from_file(&this, filename
);
2029 void set_primary_icon_tooltip_text()(char* text
) {
2030 mx_entry_set_primary_icon_tooltip_text(&this, text
);
2033 // Set the primary icon of the entry to the given filename
2034 // <filename>: filename of an icon
2035 void set_secondary_icon_from_file()(char* filename
) {
2036 mx_entry_set_secondary_icon_from_file(&this, filename
);
2038 void set_secondary_icon_tooltip_text()(char* text
) {
2039 mx_entry_set_secondary_icon_tooltip_text(&this, text
);
2042 // Sets the text displayed on the entry
2043 // <text>: text to set the entry to
2044 void set_text()(char* text
) {
2045 mx_entry_set_text(&this, text
);
2047 // Emitted when the primary icon is clicked
2048 extern (C
) alias static void function (Entry
* this_
, void* user_data
=null) signal_primary_icon_clicked
;
2050 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
2051 return super_
.signal_connect
!name(cb
, data
, cf
);
2054 ulong signal_connect(string name
:"primary-icon-clicked", CB
:signal_primary_icon_clicked
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
2055 return signal_connect_data
!()(&this, cast(char*)"primary-icon-clicked",
2056 cast(GObject2
.Callback
)cb
, data
, null, cf
);
2058 // Emitted when the secondary icon is clicked
2059 extern (C
) alias static void function (Entry
* this_
, void* user_data
=null) signal_secondary_icon_clicked
;
2060 ulong signal_connect(string name
:"secondary-icon-clicked", CB
:signal_secondary_icon_clicked
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
2061 return signal_connect_data
!()(&this, cast(char*)"secondary-icon-clicked",
2062 cast(GObject2
.Callback
)cb
, data
, null, cf
);
2067 WidgetClass parent_class
;
2068 extern (C
) void function (Entry
* entry
) primary_icon_clicked
;
2069 extern (C
) void function (Entry
* entry
) secondary_icon_clicked
;
2070 extern (C
) void function () _padding_0
;
2071 extern (C
) void function () _padding_1
;
2072 extern (C
) void function () _padding_2
;
2073 extern (C
) void function () _padding_3
;
2074 extern (C
) void function () _padding_4
;
2077 struct EntryPrivate
{
2081 // The contents of the this structure are private and should only be accessed
2082 // through the public API.
2083 struct Expander
/* : Bin */ {
2084 mixin Atk
.ImplementorIface
.__interface__
;
2085 mixin Clutter
.Animatable
.__interface__
;
2086 mixin Clutter
.Container
.__interface__
;
2087 mixin Clutter
.Scriptable
.__interface__
;
2088 mixin Focusable
.__interface__
;
2089 mixin Stylable
.__interface__
;
2091 alias parent super_
;
2094 private ExpanderPrivate
* priv
;
2097 // Creates a new #MxExpander
2098 // RETURNS: the newly allocated #MxExpander
2099 static Expander
* new_()() {
2100 return mx_expander_new();
2103 // Get the current state of the expander (the value of #MxExpander:expanded)
2104 // RETURNS: #TRUE if the expander is open, #FALSE if it is closed
2105 int get_expanded()() {
2106 return mx_expander_get_expanded(&this);
2109 // Set the state (the #MxExpander:expanded property) of the expander.
2110 // This will cause the expander to open or close.
2111 // <expanded>: the state of the expander to set
2112 void set_expanded()(int expanded
) {
2113 mx_expander_set_expanded(&this, expanded
);
2116 // Sets the text displayed as the title of the expander
2117 // <label>: string to set as the expander label
2118 void set_label()(char* label
) {
2119 mx_expander_set_label(&this, label
);
2122 // Emitted after the expand animation finishes. Check the "expanded" property
2123 // of the #MxExpander to determine if the expander is expanded or not.
2124 extern (C
) alias static void function (Expander
* this_
, void* user_data
=null) signal_expand_complete
;
2126 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
2127 return super_
.signal_connect
!name(cb
, data
, cf
);
2130 ulong signal_connect(string name
:"expand-complete", CB
:signal_expand_complete
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
2131 return signal_connect_data
!()(&this, cast(char*)"expand-complete",
2132 cast(GObject2
.Callback
)cb
, data
, null, cf
);
2136 struct ExpanderClass
{
2137 BinClass parent_class
;
2138 extern (C
) void function (Expander
* expander
) expand_complete
;
2139 extern (C
) void function () _padding_0
;
2140 extern (C
) void function () _padding_1
;
2141 extern (C
) void function () _padding_2
;
2142 extern (C
) void function () _padding_3
;
2143 extern (C
) void function () _padding_4
;
2146 struct ExpanderPrivate
{
2149 struct FadeEffect
/* : Clutter.OffscreenEffect */ {
2151 alias parent super_
;
2152 alias parent offscreeneffect
;
2153 Clutter
.OffscreenEffect parent
;
2154 FadeEffectPrivate
* priv
;
2158 // Creates a new #MxFadeEffect to be used with clutter_actor_add_effect().
2159 // RETURNS: the newly created #MxFadeEffect, or %NULL
2160 static FadeEffect
* new_()() {
2161 return mx_fade_effect_new();
2165 // Retrieves the border values for @effect.
2166 // <top>: The upper border, in pixels
2167 // <right>: The right border, in pixels
2168 // <bottom>: The lower border, in pixels
2169 // <left>: The left border, in pixels
2170 void get_border()(/*out*/ uint* top
, /*out*/ uint* right
, /*out*/ uint* bottom
, /*out*/ uint* left
) {
2171 mx_fade_effect_get_border(&this, top
, right
, bottom
, left
);
2175 // Retrieves the bounding box of the effect.
2176 // <x>: The x value of the effect bounds, in pixels
2177 // <y>: The y value of the effect bounds, in pixels
2178 // <width>: The width of the effect bounds, in pixels, or %0
2179 // <height>: The height of the effect bounds, in pixels, or %0
2180 void get_bounds()(/*out*/ int* x
, /*out*/ int* y
, /*out*/ uint* width
, /*out*/ uint* height
) {
2181 mx_fade_effect_get_bounds(&this, x
, y
, width
, height
);
2185 // Retrieves the color used for the fade effect.
2186 // <color>: A #ClutterColor to store the color in
2187 void get_color()(/*out*/ Clutter
.Color
* color
) {
2188 mx_fade_effect_get_color(&this, color
);
2192 // Sets the border to be used for the fading effect. This is the number of
2193 // pixels on each side of the effect that should be used to fade.
2194 // <top>: The upper border, in pixels
2195 // <right>: The right border, in pixels
2196 // <bottom>: The lower border, in pixels
2197 // <left>: The left border, in pixels
2198 void set_border()(uint top
, uint right
, uint bottom
, uint left
) {
2199 mx_fade_effect_set_border(&this, top
, right
, bottom
, left
);
2203 // Sets the bounding box of the effect. The effect will essentially treat
2204 // this box as a clipping rectangle. Setting width or height to %0 will
2205 // use the width or height of the #ClutterActor the effect is attached to.
2208 // The effect border will apply to the bounds, and not to the un-altered
2209 // rectangle, so an effect with an %x of %5 and a %left-border of %5 will
2210 // have a gap of 5 blank pixels to the left, with a fade length of 5 pixels.
2212 // <x>: The x value of the effect bounds, in pixels
2213 // <y>: The y value of the effect bounds, in pixels
2214 // <width>: The width of the effect bounds, in pixels, or %0
2215 // <height>: The height of the effect bounds, in pixels, or %0
2216 void set_bounds()(int x
, int y
, uint width
, uint height
) {
2217 mx_fade_effect_set_bounds(&this, x
, y
, width
, height
);
2221 // Sets the color of the fade effect. The effect will fade out towards
2222 // the set border to this color.
2223 // <color>: A #ClutterColor
2224 void set_color()(Clutter
.Color
* color
) {
2225 mx_fade_effect_set_color(&this, color
);
2229 struct FadeEffectClass
{
2230 Clutter
.OffscreenEffectClass parent_class
;
2233 struct FadeEffectPrivate
{
2237 // The contents of this structure are private and should only be accessed
2238 // through the public API.
2239 struct FloatingWidget
/* : Widget */ {
2240 mixin Atk
.ImplementorIface
.__interface__
;
2241 mixin Clutter
.Animatable
.__interface__
;
2242 mixin Clutter
.Scriptable
.__interface__
;
2243 mixin Stylable
.__interface__
;
2245 alias parent super_
;
2246 alias parent widget
;
2248 FloatingWidgetPrivate
* priv
;
2251 struct FloatingWidgetClass
{
2252 WidgetClass parent_class
;
2253 extern (C
) void function (Clutter
.Actor
* actor
, Clutter
.Color
* color
) floating_pick
;
2254 extern (C
) void function (Clutter
.Actor
* actor
) floating_paint
;
2255 extern (C
) void function () _padding_0
;
2256 extern (C
) void function () _padding_1
;
2257 extern (C
) void function () _padding_2
;
2258 extern (C
) void function () _padding_3
;
2259 extern (C
) void function () _padding_4
;
2262 struct FloatingWidgetPrivate
{
2265 enum FocusDirection
{
2284 // The contents of this structure are private and should only be accessed
2285 // through the public API.
2286 struct FocusManager
/* : GObject.Object */ {
2288 alias parent super_
;
2289 alias parent object
;
2290 GObject2
.Object parent
;
2291 FocusManagerPrivate
* priv
;
2294 // Get the MxFocusManager associated with a stage, or create one if none exist
2295 // for the specified stage.
2296 // RETURNS: An #MxFocusManager
2297 // <stage>: A #ClutterStage
2298 static FocusManager
* get_for_stage()(Clutter
.Stage
* stage
) {
2299 return mx_focus_manager_get_for_stage(stage
);
2302 // Get the currently focused #MxFocusable
2303 // RETURNS: MxFocusable
2304 Focusable
* get_focused()() {
2305 return mx_focus_manager_get_focused(&this);
2308 // Get the stage the MxFocusManager is associated with
2309 // RETURNS: A #ClutterStage
2310 Clutter
.Stage
* get_stage()() {
2311 return mx_focus_manager_get_stage(&this);
2314 // Moves the current focus in the given direction.
2315 // <direction>: The direction to move focus in
2316 void move_focus()(FocusDirection direction
) {
2317 mx_focus_manager_move_focus(&this, direction
);
2320 // Sets the currently focused actor, with an #MxFocusHint of
2321 // %MX_FOCUS_HINT_PRIOR.
2323 // Note: the final focused object may not be the same as @focusable if
2324 // @focusable does not accept focus directly.
2325 // <focusable>: the object to set focus on
2326 void push_focus()(Focusable
* focusable
) {
2327 mx_focus_manager_push_focus(&this, focusable
);
2331 // Similar to #mx_focus_manager_push_focus, but allows the hint to be specified.
2333 // Note: the final focused object may not be the same as @focusable if
2334 // @focusable does not accept focus directly.
2335 // <focusable>: the object to set focus on
2336 // <hint>: an #MxFocusHint
2337 void push_focus_with_hint()(Focusable
* focusable
, FocusHint hint
) {
2338 mx_focus_manager_push_focus_with_hint(&this, focusable
, hint
);
2342 struct FocusManagerClass
{
2343 GObject2
.ObjectClass parent_class
;
2344 extern (C
) void function () _padding_0
;
2345 extern (C
) void function () _padding_1
;
2346 extern (C
) void function () _padding_2
;
2347 extern (C
) void function () _padding_3
;
2348 extern (C
) void function () _padding_4
;
2351 struct FocusManagerPrivate
{
2354 // This is an opaque structure whose members cannot be directly accessed.
2355 struct Focusable
/* Interface */ {
2356 mixin template __interface__() {
2358 // RETURNS: the focusable
2359 // <hint>: A #MxFocusHint
2360 Focusable
* accept_focus()(FocusHint hint
) {
2361 return mx_focusable_accept_focus(cast(Focusable
*)&this, hint
);
2365 // RETURNS: the newly focused focusable
2366 // <direction>: A #MxFocusDirection
2367 // <from>: focusable to move the focus from
2368 Focusable
* move_focus()(FocusDirection direction
, Focusable
* from
) {
2369 return mx_focusable_move_focus(cast(Focusable
*)&this, direction
, from
);
2372 mixin __interface__
;
2375 struct FocusableIface
{
2376 GObject2
.ObjectClass parent_class
;
2378 // RETURNS: the focusable
2379 // <hint>: A #MxFocusHint
2380 extern (C
) Focusable
* function (Focusable
* focusable
, FocusHint hint
) accept_focus
;
2382 // RETURNS: the newly focused focusable
2383 // <direction>: A #MxFocusDirection
2384 // <from>: focusable to move the focus from
2385 extern (C
) Focusable
* function (Focusable
* focusable
, FocusDirection direction
, Focusable
* from
) move_focus
;
2388 // Support values of font weight
2396 // The contents of this structure are private and should only be accessed
2397 // through the public API.
2398 struct Frame
/* : Bin */ {
2399 mixin Atk
.ImplementorIface
.__interface__
;
2400 mixin Clutter
.Animatable
.__interface__
;
2401 mixin Clutter
.Container
.__interface__
;
2402 mixin Clutter
.Scriptable
.__interface__
;
2403 mixin Focusable
.__interface__
;
2404 mixin Stylable
.__interface__
;
2406 alias parent super_
;
2412 // Create a new #MxFrame
2413 // RETURNS: a newly allocated #MxFrame
2414 static Frame
* new_()() {
2415 return mx_frame_new();
2420 BinClass parent_class
;
2421 extern (C
) void function () _padding_0
;
2422 extern (C
) void function () _padding_1
;
2423 extern (C
) void function () _padding_2
;
2424 extern (C
) void function () _padding_3
;
2425 extern (C
) void function () _padding_4
;
2428 struct FramePrivate
{
2432 // The contents of the this structure are private and should only be accessed
2433 // through the public API.
2434 struct Grid
/* : Widget */ {
2435 mixin Atk
.ImplementorIface
.__interface__
;
2436 mixin Clutter
.Animatable
.__interface__
;
2437 mixin Clutter
.Container
.__interface__
;
2438 mixin Clutter
.Scriptable
.__interface__
;
2439 mixin Focusable
.__interface__
;
2440 mixin Scrollable
.__interface__
;
2441 mixin Stylable
.__interface__
;
2443 alias parent super_
;
2444 alias parent widget
;
2446 private GridPrivate
* priv
;
2448 static Grid
* new_()() {
2449 return mx_grid_new();
2451 Align
get_child_x_align()() {
2452 return mx_grid_get_child_x_align(&this);
2454 Align
get_child_y_align()() {
2455 return mx_grid_get_child_y_align(&this);
2457 float get_column_spacing()() {
2458 return mx_grid_get_column_spacing(&this);
2460 int get_homogenous_columns()() {
2461 return mx_grid_get_homogenous_columns(&this);
2463 int get_homogenous_rows()() {
2464 return mx_grid_get_homogenous_rows(&this);
2466 int get_line_alignment()() {
2467 return mx_grid_get_line_alignment(&this);
2469 int get_max_stride()() {
2470 return mx_grid_get_max_stride(&this);
2472 Orientation
get_orientation()() {
2473 return mx_grid_get_orientation(&this);
2475 float get_row_spacing()() {
2476 return mx_grid_get_row_spacing(&this);
2478 void set_child_x_align()(Align value
) {
2479 mx_grid_set_child_x_align(&this, value
);
2481 void set_child_y_align()(Align value
) {
2482 mx_grid_set_child_y_align(&this, value
);
2484 void set_column_spacing()(float value
) {
2485 mx_grid_set_column_spacing(&this, value
);
2487 void set_homogenous_columns()(int value
) {
2488 mx_grid_set_homogenous_columns(&this, value
);
2490 void set_homogenous_rows()(int value
) {
2491 mx_grid_set_homogenous_rows(&this, value
);
2493 void set_line_alignment()(Align value
) {
2494 mx_grid_set_line_alignment(&this, value
);
2496 void set_max_stride()(int value
) {
2497 mx_grid_set_max_stride(&this, value
);
2499 void set_orientation()(Orientation orientation
) {
2500 mx_grid_set_orientation(&this, orientation
);
2502 void set_row_spacing()(float value
) {
2503 mx_grid_set_row_spacing(&this, value
);
2508 WidgetClass parent_class
;
2509 extern (C
) void function () _padding_0
;
2510 extern (C
) void function () _padding_1
;
2511 extern (C
) void function () _padding_2
;
2512 extern (C
) void function () _padding_3
;
2513 extern (C
) void function () _padding_4
;
2516 struct GridPrivate
{
2520 // The contents of this structure are private and should only be accessed
2521 // through the public API.
2522 struct Icon
/* : Widget */ {
2523 mixin Atk
.ImplementorIface
.__interface__
;
2524 mixin Clutter
.Animatable
.__interface__
;
2525 mixin Clutter
.Scriptable
.__interface__
;
2526 mixin Stylable
.__interface__
;
2528 alias parent super_
;
2529 alias parent widget
;
2531 private IconPrivate
* priv
;
2534 // Create a newly allocated #MxIcon
2535 // RETURNS: A newly allocated #MxIcon
2536 static Icon
* new_()() {
2537 return mx_icon_new();
2539 char* get_icon_name()() {
2540 return mx_icon_get_icon_name(&this);
2542 int get_icon_size()() {
2543 return mx_icon_get_icon_size(&this);
2545 void set_icon_name()(char* icon_name
) {
2546 mx_icon_set_icon_name(&this, icon_name
);
2548 void set_icon_size()(int size
) {
2549 mx_icon_set_icon_size(&this, size
);
2554 WidgetClass parent_class
;
2555 extern (C
) void function () _padding_0
;
2556 extern (C
) void function () _padding_1
;
2557 extern (C
) void function () _padding_2
;
2558 extern (C
) void function () _padding_3
;
2559 extern (C
) void function () _padding_4
;
2562 struct IconPrivate
{
2566 // The contents of this structure are private and should only be accessed
2567 // through the public API.
2568 struct IconTheme
/* : GObject.Object */ {
2570 alias parent super_
;
2571 alias parent object
;
2572 GObject2
.Object parent
;
2573 IconThemePrivate
* priv
;
2576 // Create a new #MxIconTheme. In most cicumstances, it is more useful to use
2577 // #mx_icon_theme_get_default to load the default icon theme.
2578 // RETURNS: a newly allocated #MxIconTheme.
2579 static IconTheme
* /*new*/ new_()() {
2580 return mx_icon_theme_new();
2583 // Return the default #MxIconTheme object used by the toolkit.
2584 // RETURNS: an #MxIconTheme.
2585 static IconTheme
* get_default()() {
2586 return mx_icon_theme_get_default();
2589 // Gets the directories the #MxIconTheme will search in to find icons.
2590 // RETURNS: the search paths
2591 GLib2
.List
* get_search_paths()() {
2592 return mx_icon_theme_get_search_paths(&this);
2595 // Get the value of the #MxIconTheme:theme-name property.
2596 // RETURNS: the current value of the "theme-name" property.
2597 char* get_theme_name()() {
2598 return mx_icon_theme_get_theme_name(&this);
2600 int has_icon()(char* icon_name
) {
2601 return mx_icon_theme_has_icon(&this, icon_name
);
2604 // If the icon is available, returns a #CoglHandle of the icon.
2605 // RETURNS: a #CoglHandle of the icon, or %NULL.
2606 // <icon_name>: The name of the icon
2607 // <size>: The desired size of the icon
2608 Cogl
.Handle
lookup()(char* icon_name
, int size
) {
2609 return mx_icon_theme_lookup(&this, icon_name
, size
);
2612 // If the icon is available, returns a #ClutterTexture of the icon.
2613 // RETURNS: a #ClutterTexture of the icon, or %NULL.
2614 // <icon_name>: The name of the icon
2615 // <size>: The desired size of the icon
2616 Clutter
.Texture
* lookup_texture()(char* icon_name
, int size
) {
2617 return mx_icon_theme_lookup_texture(&this, icon_name
, size
);
2620 // Sets the directories the #MxIconTheme will search in to find icons.
2621 // By default, it will look in the default system and local icon
2623 // <paths>: a list of search paths
2624 void set_search_paths()(GLib2
.List
* paths
) {
2625 mx_icon_theme_set_search_paths(&this, paths
);
2628 // Set the value of the #MxIconTheme:theme-name property. This will cause the
2629 // icon theme to be loaded if it differs from the existing theme name. If the
2630 // theme could not be loaded, it will fall back to using the default icon theme
2633 // This will override the system's theme setting. To revert to the system
2634 // icon theme, this function can be called with a %NULL @theme_name argument.
2635 // <theme_name>: the name of an icon theme to load, or %NULL
2636 void set_theme_name()(char* theme_name
) {
2637 mx_icon_theme_set_theme_name(&this, theme_name
);
2641 struct IconThemeClass
{
2642 GObject2
.ObjectClass parent_class
;
2643 extern (C
) void function () _padding_0
;
2644 extern (C
) void function () _padding_1
;
2645 extern (C
) void function () _padding_2
;
2646 extern (C
) void function () _padding_3
;
2647 extern (C
) void function () _padding_4
;
2650 struct IconThemePrivate
{
2654 // The contents of this structure are private and should only be accessed
2655 // through the public API.
2656 struct Image
/* : Widget */ {
2657 mixin Atk
.ImplementorIface
.__interface__
;
2658 mixin Clutter
.Animatable
.__interface__
;
2659 mixin Clutter
.Scriptable
.__interface__
;
2660 mixin Stylable
.__interface__
;
2662 alias parent super_
;
2663 alias parent widget
;
2665 private ImagePrivate
* priv
;
2669 // Creates a new #MxImage object.
2670 // RETURNS: A newly created #MxImage object
2671 static Image
* new_()() {
2672 return mx_image_new();
2676 // Sets the value of #MxImage:scale-mode to @scale_mode and animates the
2677 // scale factor of the image between the previous value and the new value.
2678 // <mode>: a #ClutterAnimationMode
2679 // <duration>: duration of the animation in milliseconds
2680 // <scale_mode>: The #MxImageScaleMode to set
2681 void animate_scale_mode()(c_ulong mode
, uint duration
, ImageScaleMode scale_mode
) {
2682 mx_image_animate_scale_mode(&this, mode
, duration
, scale_mode
);
2686 // Clear the current image and set a blank, transparent image.
2687 // RETURNS: static void
2689 mx_image_clear(&this);
2693 // Determines whether image up-scaling is allowed.
2694 // RETURNS: %TRUE if upscaling is allowed, %FALSE otherwise
2695 int get_allow_upscale()() {
2696 return mx_image_get_allow_upscale(&this);
2700 // Get the value of the MxImage:image-rotation property.
2701 // RETURNS: The value of the image-rotation property.
2702 float get_image_rotation()() {
2703 return mx_image_get_image_rotation(&this);
2707 // Determines whether asynchronous image loading is in use.
2708 // RETURNS: %TRUE if images are set to load asynchronously, %FALSE otherwise
2709 int get_load_async()() {
2710 return mx_image_get_load_async(&this);
2714 // Retrieves the height scaling threshold.
2715 // RETURNS: The height scaling threshold, in pixels
2716 uint get_scale_height_threshold()() {
2717 return mx_image_get_scale_height_threshold(&this);
2721 // Get the current scale mode of @MxImage.
2722 // RETURNS: The current MxImageScaleMode
2723 ImageScaleMode
get_scale_mode()() {
2724 return mx_image_get_scale_mode(&this);
2728 // Retrieves the width scaling threshold.
2729 // RETURNS: The width scaling threshold, in pixels
2730 uint get_scale_width_threshold()() {
2731 return mx_image_get_scale_width_threshold(&this);
2735 // Get the value of the MxImage:transition-duration property.
2736 // RETURNS: The value of the transition-duration property.
2737 uint get_transition_duration()() {
2738 return mx_image_get_transition_duration(&this);
2742 // Sets whether up-scaling of images is allowed. If set to %TRUE and a size
2743 // larger than the image is requested, the image will be up-scaled in
2746 // The advantage of this is that software up-scaling is potentially higher
2747 // quality, but it comes at the expense of video memory.
2748 // <allow>: %TRUE to allow upscaling, %FALSE otherwise
2749 void set_allow_upscale()(int allow
) {
2750 mx_image_set_allow_upscale(&this, allow
);
2754 // Set the image data from unencoded image data, stored in memory. In case of
2755 // failure, #FALSE is returned and @error is set. It is expected that @buffer
2756 // will remain accessible for the duration of the load. Once it is finished
2757 // with, @buffer_free_func will be called.
2758 // RETURNS: #TRUE if the image was successfully updated
2759 // <buffer>: A buffer pointing to encoded image data
2760 // <buffer_size>: The size of @buffer, in bytes
2761 // <buffer_free_func>: A function to free @buffer, or %NULL
2762 int set_from_buffer()(ubyte* buffer
, size_t buffer_size
, GLib2
.DestroyNotify buffer_free_func
, GLib2
.Error
** error
=null) {
2763 return mx_image_set_from_buffer(&this, buffer
, buffer_size
, buffer_free_func
, error
);
2767 // Set the image data from unencoded image data, stored in memory, and scales
2768 // it while loading. In case of failure, #FALSE is returned and @error is set.
2769 // It is expected that @buffer will remain accessible for the duration of the
2770 // load. Once it is finished with, @buffer_free_func will be called. The aspect
2771 // ratio will always be maintained.
2772 // RETURNS: #TRUE if the image was successfully updated
2773 // <buffer>: A buffer pointing to encoded image data
2774 // <buffer_size>: The size of @buffer, in bytes
2775 // <buffer_free_func>: A function to free @buffer, or %NULL
2776 // <width>: Width to scale the image to, or -1
2777 // <height>: Height to scale the image to, or -1
2778 int set_from_buffer_at_size()(ubyte* buffer
, size_t buffer_size
, GLib2
.DestroyNotify buffer_free_func
, int width
, int height
, GLib2
.Error
** error
=null) {
2779 return mx_image_set_from_buffer_at_size(&this, buffer
, buffer_size
, buffer_free_func
, width
, height
, error
);
2783 // Sets the contents of the image from the given Cogl texture.
2784 // RETURNS: %TRUE on success, %FALSE on failure
2785 // <texture>: A #CoglHandle to a texture
2786 int set_from_cogl_texture()(Cogl
.Handle texture
) {
2787 return mx_image_set_from_cogl_texture(&this, texture
);
2791 // Set the image data from a buffer. In case of failure, #FALSE is returned
2792 // and @error is set.
2793 // RETURNS: #TRUE if the image was successfully updated
2794 // <data>: Image data
2795 // <pixel_format>: The #CoglPixelFormat of the buffer
2796 // <width>: Width in pixels of image data.
2797 // <height>: Height in pixels of image data
2798 // <rowstride>: Distance in bytes between row starts.
2799 int set_from_data()(ubyte* data
, Cogl
.PixelFormat pixel_format
, int width
, int height
, int rowstride
, GLib2
.Error
** error
=null) {
2800 return mx_image_set_from_data(&this, data
, pixel_format
, width
, height
, rowstride
, error
);
2804 // Set the image data from an image file. In case of failure, #FALSE is returned
2805 // and @error is set.
2806 // RETURNS: #TRUE if the image was successfully updated
2807 // <filename>: Filename to read the file from
2808 int set_from_file()(char* filename
, GLib2
.Error
** error
=null) {
2809 return mx_image_set_from_file(&this, filename
, error
);
2813 // Set the image data from an image file, and scale the image during loading.
2814 // In case of failure, #FALSE is returned and @error is set. The aspect ratio
2815 // will always be maintained.
2816 // RETURNS: #TRUE if the image was successfully updated
2817 // <filename>: Filename to read the file from
2818 // <width>: Width to scale the image to, or -1
2819 // <height>: Height to scale the image to, or -1
2820 int set_from_file_at_size()(char* filename
, int width
, int height
, GLib2
.Error
** error
=null) {
2821 return mx_image_set_from_file_at_size(&this, filename
, width
, height
, error
);
2825 // Set the MxImage:image-rotation property.
2826 // <rotation>: Rotation angle in degrees
2827 void set_image_rotation()(float rotation
) {
2828 mx_image_set_image_rotation(&this, rotation
);
2832 // Sets whether to load images asynchronously. Asynchronous image loading
2833 // requires thread support (see g_thread_init()).
2835 // When using asynchronous image loading, all image-loading functions will
2836 // return immediately as successful. The #MxImage::image-loaded and
2837 // #MxImage::image-load-error signals are used to signal success or failure
2838 // of asynchronous image loading.
2839 // <load_async>: %TRUE to load images asynchronously
2840 void set_load_async()(int load_async
) {
2841 mx_image_set_load_async(&this, load_async
);
2845 // Sets the threshold used to determine whether to scale the height of the
2846 // image. If a specific height is requested, the image height is allowed to
2847 // differ by this amount before scaling is employed.
2849 // This can be useful to avoid excessive CPU usage when the image differs
2850 // only slightly to the desired size.
2851 // <pixels>: Number of pixels
2852 void set_scale_height_threshold()(uint pixels
) {
2853 mx_image_set_scale_height_threshold(&this, pixels
);
2857 // Set the scale mode on @MxImage
2858 // <mode>: The #MxImageScaleMode to set
2859 void set_scale_mode()(ImageScaleMode mode
) {
2860 mx_image_set_scale_mode(&this, mode
);
2864 // Sets the threshold used to determine whether to scale the width of the
2865 // image. If a specific width is requested, the image width is allowed to
2866 // differ by this amount before scaling is employed.
2868 // This can be useful to avoid excessive CPU usage when the image differs
2869 // only slightly to the desired size.
2870 // <pixels>: Number of pixels
2871 void set_scale_width_threshold()(uint pixels
) {
2872 mx_image_set_scale_width_threshold(&this, pixels
);
2876 // Set the MxImage:transition-duration property.
2877 // <duration>: Transition duration in milliseconds
2878 void set_transition_duration()(uint duration
) {
2879 mx_image_set_transition_duration(&this, duration
);
2883 // Emitted when an asynchronous image load has encountered an error
2884 // and cannot load the requested image.
2885 extern (C
) alias static void function (Image
* this_
, GLib2
.Error
* since
, void* user_data
=null) signal_image_load_error
;
2887 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
2888 return super_
.signal_connect
!name(cb
, data
, cf
);
2891 ulong signal_connect(string name
:"image-load-error", CB
:signal_image_load_error
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
2892 return signal_connect_data
!()(&this, cast(char*)"image-load-error",
2893 cast(GObject2
.Callback
)cb
, data
, null, cf
);
2897 // Emitted when an asynchronous image load has completed successfully
2898 extern (C
) alias static void function (Image
* this_
, void* user_data
=null) signal_image_loaded
;
2899 ulong signal_connect(string name
:"image-loaded", CB
:signal_image_loaded
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
2900 return signal_connect_data
!()(&this, cast(char*)"image-loaded",
2901 cast(GObject2
.Callback
)cb
, data
, null, cf
);
2906 private WidgetClass parent_class
;
2907 extern (C
) void function (Image
* image
) image_loaded
;
2908 extern (C
) void function (Image
* image
, GLib2
.Error
* error
) image_load_error
;
2915 INVALID_PARAMETER
= 3
2917 struct ImagePrivate
{
2920 // Defines the scaling mode of an image.
2921 enum ImageScaleMode
{
2926 // This is an opaque structure whose members cannot be directly accessed.
2927 struct ItemFactory
/* Interface */ {
2928 mixin template __interface__() {
2930 // RETURNS: the new item
2931 Clutter
.Actor
* /*new*/ create()() {
2932 return mx_item_factory_create(cast(ItemFactory
*)&this);
2935 mixin __interface__
;
2938 // Interface for creating custom items
2939 struct ItemFactoryIface
{
2940 private GObject2
.TypeInterface g_iface
;
2941 // RETURNS: the new item
2942 extern (C
) Clutter
.Actor
* /*new*/ function (ItemFactory
* factory
) create
;
2943 extern (C
) void function () _padding_0
;
2944 extern (C
) void function () _padding_1
;
2945 extern (C
) void function () _padding_2
;
2946 extern (C
) void function () _padding_3
;
2947 extern (C
) void function () _padding_4
;
2951 // The contents of the this structure are private and should only be accessed
2952 // through the public API.
2953 struct ItemView
/* : Grid */ {
2954 mixin Atk
.ImplementorIface
.__interface__
;
2955 mixin Clutter
.Animatable
.__interface__
;
2956 mixin Clutter
.Container
.__interface__
;
2957 mixin Clutter
.Scriptable
.__interface__
;
2958 mixin Focusable
.__interface__
;
2959 mixin Scrollable
.__interface__
;
2960 mixin Stylable
.__interface__
;
2962 alias parent super_
;
2965 private ItemViewPrivate
* priv
;
2968 // Create a new #MxItemView
2969 // RETURNS: a newly allocated #MxItemView
2970 static ItemView
* new_()() {
2971 return mx_item_view_new();
2974 // Adds an attribute mapping between the current model and the objects from the
2976 // <attribute>: Name of the attribute
2977 // <column>: Column number
2978 void add_attribute()(char* attribute
, int column
) {
2979 mx_item_view_add_attribute(&this, attribute
, column
);
2982 // Freeze the view. This means that the view will not act on changes to the
2983 // model until it is thawed. Call #mx_item_view_thaw to thaw the view
2985 mx_item_view_freeze(&this);
2988 // Gets the #MxItemFactory used for creating new items.
2989 // RETURNS: A #MxItemFactory.
2990 ItemFactory
* get_factory()() {
2991 return mx_item_view_get_factory(&this);
2994 // Get the item type currently being used to create items
2995 // RETURNS: a #GType
2996 Type
get_item_type()() {
2997 return mx_item_view_get_item_type(&this);
3000 // Get the model currently used by the #MxItemView
3001 // RETURNS: the current #ClutterModel
3002 Clutter
.Model
* get_model()() {
3003 return mx_item_view_get_model(&this);
3006 // Sets @factory to be the factory used for creating new items
3007 // <factory>: A #MxItemFactory
3008 void set_factory()(ItemFactory
* factory
=null) {
3009 mx_item_view_set_factory(&this, factory
);
3012 // Set the item type used to create items representing each row in the
3014 // <item_type>: A #GType
3015 void set_item_type()(Type item_type
) {
3016 mx_item_view_set_item_type(&this, item_type
);
3019 // Set the model used by the #MxItemView
3020 // <model>: A #ClutterModel
3021 void set_model()(Clutter
.Model
* model
) {
3022 mx_item_view_set_model(&this, model
);
3025 // Thaw the view. This means that the view will now act on changes to the
3028 mx_item_view_thaw(&this);
3032 struct ItemViewClass
{
3033 GridClass parent_class
;
3034 extern (C
) void function () _padding_0
;
3035 extern (C
) void function () _padding_1
;
3036 extern (C
) void function () _padding_2
;
3037 extern (C
) void function () _padding_3
;
3038 extern (C
) void function () _padding_4
;
3041 struct ItemViewPrivate
{
3045 // The contents of this structure is private and should only be accessed using
3046 // the provided API.
3047 struct KineticScrollView
/* : Bin */ {
3048 mixin Atk
.ImplementorIface
.__interface__
;
3049 mixin Clutter
.Animatable
.__interface__
;
3050 mixin Clutter
.Container
.__interface__
;
3051 mixin Clutter
.Scriptable
.__interface__
;
3052 mixin Focusable
.__interface__
;
3053 mixin Scrollable
.__interface__
;
3054 mixin Stylable
.__interface__
;
3055 alias parent_instance
this;
3056 alias parent_instance super_
;
3057 alias parent_instance bin
;
3058 Bin parent_instance
;
3059 private KineticScrollViewPrivate
* priv
;
3063 // Creates a new #MxKineticScrollView.
3064 // RETURNS: a newly allocated #MxKineticScrollView
3065 static KineticScrollView
* new_()() {
3066 return mx_kinetic_scroll_view_new();
3070 // Retrieves the initial acceleration factor of the kinetic scroll-view.
3071 // RETURNS: The initial acceleration factor of the kinetic scroll-view
3072 double get_acceleration_factor()() {
3073 return mx_kinetic_scroll_view_get_acceleration_factor(&this);
3077 // Retrieves the duration of the adjustment clamp animation.
3078 // RETURNS: Clamp duration
3079 uint get_clamp_duration()() {
3080 return mx_kinetic_scroll_view_get_clamp_duration(&this);
3084 // Retrieves the animation mode to use for the adjustment clamp animation.
3085 // RETURNS: Clamp mode
3086 c_ulong
get_clamp_mode()() {
3087 return mx_kinetic_scroll_view_get_clamp_mode(&this);
3091 // Retrieves whether to clamp to step increments based on the center of the page.
3092 // RETURNS: Clamp to center
3093 int get_clamp_to_center()() {
3094 return mx_kinetic_scroll_view_get_clamp_to_center(&this);
3098 // Retrieves the deceleration rate of the kinetic scroll-view.
3099 // RETURNS: The deceleration rate of the kinetic scroll-view
3100 double get_deceleration()() {
3101 return mx_kinetic_scroll_view_get_deceleration(&this);
3105 // Gets the #MxKineticScrollView:mouse-button property
3107 // kinetic scroll-view
3108 // RETURNS: The mouse button number used to initiate drag events on the
3109 uint get_mouse_button()() {
3110 return mx_kinetic_scroll_view_get_mouse_button(&this);
3114 // Retrieves the deceleration rate multiplier used when the scroll-view is
3115 // scrolling beyond its boundaries.
3116 double get_overshoot()() {
3117 return mx_kinetic_scroll_view_get_overshoot(&this);
3120 // Retrieves the scrolling policy of the kinetic scroll-view.
3121 // RETURNS: A #MxScrollPolicy
3122 ScrollPolicy
get_scroll_policy()() {
3123 return mx_kinetic_scroll_view_get_scroll_policy(&this);
3127 // Gets the #MxKineticScrollView:use-captured property.
3128 // RETURNS: %TRUE if captured-events should be used to initiate scrolling
3129 int get_use_captured()() {
3130 return mx_kinetic_scroll_view_get_use_captured(&this);
3134 // Factor applied to the initial momentum.
3135 // <acceleration_factor>: The acceleration factor
3136 void set_acceleration_factor()(double acceleration_factor
) {
3137 mx_kinetic_scroll_view_set_acceleration_factor(&this, acceleration_factor
);
3141 // Duration of the adjustment clamp animation.
3142 // <clamp_duration>: Clamp duration
3143 void set_clamp_duration()(uint clamp_duration
) {
3144 mx_kinetic_scroll_view_set_clamp_duration(&this, clamp_duration
);
3148 // Animation mode to use for the adjustment clamp animation.
3149 // <clamp_mode>: Clamp mode
3150 void set_clamp_mode()(c_ulong clamp_mode
) {
3151 mx_kinetic_scroll_view_set_clamp_mode(&this, clamp_mode
);
3155 // Set whether to clamp to step increments based on the center of the page.
3156 // <clamp_to_center>: Clamp to center
3157 void set_clamp_to_center()(int clamp_to_center
) {
3158 mx_kinetic_scroll_view_set_clamp_to_center(&this, clamp_to_center
);
3162 // Sets the deceleration rate when a drag is finished on the kinetic
3163 // scroll-view. This is the value that the momentum is divided by
3164 // every 60th of a second.
3165 // <rate>: The deceleration rate
3166 void set_deceleration()(double rate
) {
3167 mx_kinetic_scroll_view_set_deceleration(&this, rate
);
3171 // Sets the mouse button number used to initiate drag events on the kinetic
3173 // <button>: A mouse button number
3174 void set_mouse_button()(uint button
) {
3175 mx_kinetic_scroll_view_set_mouse_button(&this, button
);
3179 // Sets the rate at which the view will decelerate when scrolling beyond its
3180 // boundaries. The deceleration rate will be multiplied by this value every
3181 // 60th of a second when the view is scrolling outside of the range set by its
3184 // See mx_kinetic_scroll_view_set_deceleration()
3185 // <overshoot>: The rate at which the view will decelerate when scrolling beyond its boundaries.
3186 void set_overshoot()(double overshoot
) {
3187 mx_kinetic_scroll_view_set_overshoot(&this, overshoot
);
3190 // Sets the scrolling policy for the kinetic scroll-view. This controls the
3191 // possible axes of movement, and can affect the minimum size of the widget.
3192 // <policy>: A #MxScrollPolicy
3193 void set_scroll_policy()(ScrollPolicy policy
) {
3194 mx_kinetic_scroll_view_set_scroll_policy(&this, policy
);
3198 // Sets whether to use captured events to initiate drag events. This can be
3199 // used to block events that would initiate scrolling from reaching the child
3201 // <use_captured>: %TRUE to use captured events
3202 void set_use_captured()(int use_captured
) {
3203 mx_kinetic_scroll_view_set_use_captured(&this, use_captured
);
3207 // Stops any current movement due to kinetic scrolling.
3209 mx_kinetic_scroll_view_stop(&this);
3213 struct KineticScrollViewClass
{
3214 BinClass parent_class
;
3217 struct KineticScrollViewPrivate
{
3220 enum KineticScrollViewState
{
3227 // The contents of this structure is private and should only be accessed using
3228 // the provided API.
3229 struct Label
/* : Widget */ {
3230 mixin Atk
.ImplementorIface
.__interface__
;
3231 mixin Clutter
.Animatable
.__interface__
;
3232 mixin Clutter
.Scriptable
.__interface__
;
3233 mixin Stylable
.__interface__
;
3234 alias parent_instance
this;
3235 alias parent_instance super_
;
3236 alias parent_instance widget
;
3237 Widget parent_instance
;
3238 private LabelPrivate
* priv
;
3241 // Create a new #MxLabel
3242 // RETURNS: a new #MxLabel
3243 static Label
* new_()() {
3244 return mx_label_new();
3247 // Create a new #MxLabel with the specified label
3248 // RETURNS: a new #MxLabel
3249 // <text>: text to set the label to
3250 static Label
* new_with_text()(char* text
) {
3251 return mx_label_new_with_text(text
);
3254 // Retrieve the internal #ClutterText so that extra parameters can be set
3256 // is owned by the #MxLabel and should not be unref'ed by the application.
3257 // RETURNS: the #ClutterText used by #MxLabel. The label
3258 Clutter
.Actor
* get_clutter_text()() {
3259 return mx_label_get_clutter_text(&this);
3263 // Determines whether the label has been set to fade out when there isn't
3264 // enough space allocated to display the entire label.
3265 // RETURNS: %TRUE if the label is set to fade out, %FALSE otherwise
3266 int get_fade_out()() {
3267 return mx_label_get_fade_out(&this);
3271 // Get the value of the #MxLabel:line-wrap property.
3272 // RETURNS: %TRUE if the "line-wrap" property is set.
3273 int get_line_wrap()() {
3274 return mx_label_get_line_wrap(&this);
3278 // Returns the current value of the #MxLabel:show-tooltip property.
3279 // RETURNS: %TRUE if the #MxLabel:show-tooltip property is enabled
3280 int get_show_tooltip()() {
3281 return mx_label_get_show_tooltip(&this);
3284 // Get the text displayed on the label
3285 // RETURNS: the text for the label. This must not be freed by the application
3286 char* get_text()() {
3287 return mx_label_get_text(&this);
3291 // Determines whether the text of the label is being treated as Pango markup.
3293 // %FALSE otherwise.
3294 // RETURNS: %TRUE if the text of the label is treated as Pango markup,
3295 int get_use_markup()() {
3296 return mx_label_get_use_markup(&this);
3298 Align
get_x_align()() {
3299 return mx_label_get_x_align(&this);
3301 Align
get_y_align()() {
3302 return mx_label_get_y_align(&this);
3306 // Set whether to fade out the end of the label, instead of ellipsizing.
3307 // Enabling this mode will also set the #ClutterText:single-line-mode and
3308 // #ClutterText:ellipsize properties.
3309 // <fade>: %TRUE to fade out, %FALSE otherwise
3310 void set_fade_out()(int fade
) {
3311 mx_label_set_fade_out(&this, fade
);
3315 // Set the value of the #MxLabel:line-wrap property.
3316 // <line_wrap>: new value of the line-wrap property.
3317 void set_line_wrap()(int line_wrap
) {
3318 mx_label_set_line_wrap(&this, line_wrap
);
3322 // Set the value of the #MxLabel:show-tooltip property
3323 // <show_tooltip>: %TRUE if the tooltip should be shown
3324 void set_show_tooltip()(int show_tooltip
) {
3325 mx_label_set_show_tooltip(&this, show_tooltip
);
3328 // Sets the text displayed on the label
3329 // <text>: text to set the label to
3330 void set_text()(char* text
) {
3331 mx_label_set_text(&this, text
);
3334 // Sets whether the text of the label should be treated as Pango markup.
3335 // <use_markup>: %TRUE to use Pango markup, %FALSE otherwise
3336 void set_use_markup()(int use_markup
) {
3337 mx_label_set_use_markup(&this, use_markup
);
3339 void set_x_align()(Align align_
) {
3340 mx_label_set_x_align(&this, align_
);
3342 void set_y_align()(Align align_
) {
3343 mx_label_set_y_align(&this, align_
);
3348 WidgetClass parent_class
;
3349 extern (C
) void function () _padding_0
;
3350 extern (C
) void function () _padding_1
;
3351 extern (C
) void function () _padding_2
;
3352 extern (C
) void function () _padding_3
;
3353 extern (C
) void function () _padding_4
;
3356 struct LabelPrivate
{
3360 // The contents of the this structure are private and should only be accessed
3361 // through the public API.
3362 struct ListView
/* : BoxLayout */ {
3363 mixin Atk
.ImplementorIface
.__interface__
;
3364 mixin Clutter
.Animatable
.__interface__
;
3365 mixin Clutter
.Container
.__interface__
;
3366 mixin Clutter
.Scriptable
.__interface__
;
3367 mixin Focusable
.__interface__
;
3368 mixin Scrollable
.__interface__
;
3369 mixin Stylable
.__interface__
;
3371 alias parent super_
;
3372 alias parent boxlayout
;
3374 private ListViewPrivate
* priv
;
3377 // Create a new #MxListView
3378 // RETURNS: a newly allocated #MxListView
3379 static ListView
* new_()() {
3380 return mx_list_view_new();
3383 // Adds an attribute mapping between the current model and the objects from the
3385 // <attribute>: Name of the attribute
3386 // <column>: Column number
3387 void add_attribute()(char* attribute
, int column
) {
3388 mx_list_view_add_attribute(&this, attribute
, column
);
3391 // Freeze the view. This means that the view will not act on changes to the
3392 // model until it is thawed. Call #mx_list_view_thaw to thaw the view.
3394 mx_list_view_freeze(&this);
3397 // Gets the #MxItemFactory used for creating new list items.
3398 // RETURNS: A #MxItemFactory.
3399 ItemFactory
* get_factory()() {
3400 return mx_list_view_get_factory(&this);
3403 // Get the item type currently being used to create items
3404 // RETURNS: a #GType
3405 Type
get_item_type()() {
3406 return mx_list_view_get_item_type(&this);
3409 // Get the model currently used by the #MxListView
3410 // RETURNS: the current #ClutterModel
3411 Clutter
.Model
* get_model()() {
3412 return mx_list_view_get_model(&this);
3415 // Sets @factory to be the factory used for creating new list items
3416 // <factory>: A #MxItemFactory
3417 void set_factory()(ItemFactory
* factory
=null) {
3418 mx_list_view_set_factory(&this, factory
);
3421 // Set the item type used to create items representing each row in the
3423 // <item_type>: A #GType
3424 void set_item_type()(Type item_type
) {
3425 mx_list_view_set_item_type(&this, item_type
);
3428 // Set the model used by the #MxListView
3429 // <model>: A #ClutterModel
3430 void set_model()(Clutter
.Model
* model
) {
3431 mx_list_view_set_model(&this, model
);
3434 // Thaw the view. This means that the view will now act on changes to the
3437 mx_list_view_thaw(&this);
3441 struct ListViewClass
{
3442 BoxLayoutClass parent_class
;
3443 extern (C
) void function () _padding_0
;
3444 extern (C
) void function () _padding_1
;
3445 extern (C
) void function () _padding_2
;
3446 extern (C
) void function () _padding_3
;
3447 extern (C
) void function () _padding_4
;
3450 struct ListViewPrivate
{
3453 enum LongPressAction
{
3458 enum int MAJOR_VERSION
= 1;
3459 enum int MICRO_VERSION
= 2;
3460 enum int MINOR_VERSION
= 99;
3462 // The contents of this structure are private and should only be accessed
3463 // through the public API.
3464 struct Menu
/* : FloatingWidget */ {
3465 mixin Atk
.ImplementorIface
.__interface__
;
3466 mixin Clutter
.Animatable
.__interface__
;
3467 mixin Clutter
.Scriptable
.__interface__
;
3468 mixin Focusable
.__interface__
;
3469 mixin Stylable
.__interface__
;
3471 alias parent super_
;
3472 alias parent floatingwidget
;
3473 FloatingWidget parent
;
3474 private MenuPrivate
* priv
;
3477 // Create a new #MxMenu
3478 // RETURNS: a newly allocated #MxMenu
3479 static Menu
* new_()() {
3480 return mx_menu_new();
3483 // Append @action to @menu.
3484 // <action>: A #MxAction
3485 void add_action()(Action
* action
) {
3486 mx_menu_add_action(&this, action
);
3489 // Remove @action from @menu.
3490 // <action>: A #MxAction
3491 void remove_action()(Action
* action
) {
3492 mx_menu_remove_action(&this, action
);
3494 // Remove all the actions from @menu.
3495 void remove_all()() {
3496 mx_menu_remove_all(&this);
3499 // Moves the menu to the specified position and shows it.
3502 void show_with_position()(float x
, float y
) {
3503 mx_menu_show_with_position(&this, x
, y
);
3505 extern (C
) alias static void function (Menu
* this_
, Action
* object
, void* user_data
=null) signal_action_activated
;
3507 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
3508 return super_
.signal_connect
!name(cb
, data
, cf
);
3511 ulong signal_connect(string name
:"action-activated", CB
:signal_action_activated
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
3512 return signal_connect_data
!()(&this, cast(char*)"action-activated",
3513 cast(GObject2
.Callback
)cb
, data
, null, cf
);
3518 FloatingWidgetClass parent_class
;
3519 extern (C
) void function (Menu
* menu
, Action
* action
) action_activated
;
3520 extern (C
) void function () _padding_0
;
3521 extern (C
) void function () _padding_1
;
3522 extern (C
) void function () _padding_2
;
3523 extern (C
) void function () _padding_3
;
3524 extern (C
) void function () _padding_4
;
3527 struct MenuPrivate
{
3531 // The contents of this structure is private and should only be accessed using
3532 // the provided API.
3533 struct Notebook
/* : Widget */ {
3534 mixin Atk
.ImplementorIface
.__interface__
;
3535 mixin Clutter
.Animatable
.__interface__
;
3536 mixin Clutter
.Container
.__interface__
;
3537 mixin Clutter
.Scriptable
.__interface__
;
3538 mixin Focusable
.__interface__
;
3539 mixin Stylable
.__interface__
;
3541 alias parent super_
;
3542 alias parent widget
;
3544 NotebookPrivate
* priv
;
3546 static Notebook
* new_()() {
3547 return mx_notebook_new();
3550 // Get the current page
3551 // RETURNS: the current page
3552 Clutter
.Actor
* get_current_page()() {
3553 return mx_notebook_get_current_page(&this);
3555 int get_enable_gestures()() {
3556 return mx_notebook_get_enable_gestures(&this);
3558 // Change the current page to next one.
3559 void next_page()() {
3560 mx_notebook_next_page(&this);
3562 // Change the current page to previous one.
3563 void previous_page()() {
3564 mx_notebook_previous_page(&this);
3566 void set_current_page()(Clutter
.Actor
* page
) {
3567 mx_notebook_set_current_page(&this, page
);
3569 void set_enable_gestures()(int enabled
) {
3570 mx_notebook_set_enable_gestures(&this, enabled
);
3574 struct NotebookClass
{
3575 WidgetClass parent_class
;
3576 extern (C
) void function () _padding_0
;
3577 extern (C
) void function () _padding_1
;
3578 extern (C
) void function () _padding_2
;
3579 extern (C
) void function () _padding_3
;
3580 extern (C
) void function () _padding_4
;
3583 struct NotebookPrivate
{
3587 // The contents of this structure is private and should only be accessed using
3588 // the provided API.
3589 struct Offscreen
/* : Clutter.Texture */ {
3590 mixin Atk
.ImplementorIface
.__interface__
;
3591 mixin Clutter
.Animatable
.__interface__
;
3592 mixin Clutter
.Container
.__interface__
;
3593 mixin Clutter
.Scriptable
.__interface__
;
3594 mixin Focusable
.__interface__
;
3596 alias parent super_
;
3597 alias parent texture
;
3598 Clutter
.Texture parent
;
3599 OffscreenPrivate
* priv
;
3602 // Creates a new #MxOffscreen.
3603 // RETURNS: a newly allocated #MxOffscreen
3604 static Offscreen
* new_()() {
3605 return mx_offscreen_new();
3609 // Gets the value of the #MxOffscreen:accumulation-enabled property.
3610 // RETURNS: #TRUE if the accumulation buffer is enabled
3611 int get_accumulation_enabled()() {
3612 return mx_offscreen_get_accumulation_enabled(&this);
3616 // Gets the #MxOffscreen:accumulation-material property.
3618 // for the accumulation buffer
3619 // RETURNS: The #CoglHandle for the material used
3620 Cogl
.Handle
get_accumulation_material()() {
3621 return mx_offscreen_get_accumulation_material(&this);
3624 // Gets the value of the #MxOffscreen:auto-update property.
3625 // RETURNS: #TRUE if automatic updating of the offscreen surface is enabled
3626 int get_auto_update()() {
3627 return mx_offscreen_get_auto_update(&this);
3631 // Gets the value of the #MxOffscreen:buffer property.
3632 // RETURNS: the #CoglHandle for the offscreen buffer object
3633 Cogl
.Handle
get_buffer()() {
3634 return mx_offscreen_get_buffer(&this);
3637 // Gets the value of the #MxOffscreen:child property.
3638 // RETURNS: The child of the offscreen widget
3639 Clutter
.Actor
* get_child()() {
3640 return mx_offscreen_get_child(&this);
3643 // Gets the value of the #MxOffscreen:pick-child property.
3644 // RETURNS: #TRUE if picking of the child is enabled.
3645 int get_pick_child()() {
3646 return mx_offscreen_get_pick_child(&this);
3650 // Gets the value of the #MxOffscreen:redirect-enabled property.
3651 // RETURNS: #TRUE if offscreen redirection is enabled
3652 int get_redirect_enabled()() {
3653 return mx_offscreen_get_redirect_enabled(&this);
3657 // Sets whether the accumulation buffer is enabled. When enabled, an extra
3658 // offscreen buffer is allocated, and the contents of the offscreen texture
3659 // are blended with this accumulation buffer. By default, the blend function
3660 // is set to blend the contents of the offscreen texture with the accumulation
3661 // buffer at the opacity specified in the alpha component of the blend
3662 // constant. This opacity is 50% by default.
3663 // <enable>: #TRUE to enable an accumulation buffer
3664 void set_accumulation_enabled()(int enable
) {
3665 mx_offscreen_set_accumulation_enabled(&this, enable
);
3668 // Enable automatic updating of the offscreen surface when the child is
3670 // <auto_update>: #TRUE if the offscreen surface should be automatically updated
3671 void set_auto_update()(int auto_update
) {
3672 mx_offscreen_set_auto_update(&this, auto_update
);
3675 // Redirects the painting of @actor to the offscreen surface owned by
3676 // @offscreen. In the event that @actor is unparented, it will be parented
3677 // to @offscreen. Note that when you redirect the painting of @actor, it
3678 // will no longer be painted in its original position in the scenegraph.
3679 // <actor>: A #ClutterActor
3680 void set_child()(Clutter
.Actor
* actor
) {
3681 mx_offscreen_set_child(&this, actor
);
3684 // Enable picking of the child actor.
3685 // <pick>: #TRUE to enable picking of the child actor
3686 void set_pick_child()(int pick
) {
3687 mx_offscreen_set_pick_child(&this, pick
);
3691 // Sets the value of the #MxOffscreen:redirect-enabled property. When
3692 // redirection is enabled, the painting of the child of @offscreen will be
3693 // redirected to the texture of @offscreen.
3694 // <enabled>: #TRUE if redirection to the offscreen surface should be enabled
3695 void set_redirect_enabled()(int enabled
) {
3696 mx_offscreen_set_redirect_enabled(&this, enabled
);
3699 // Updates the offscreen surface. This causes the child of @offscreen to be
3700 // drawn into the texture of @offscreen.
3702 mx_offscreen_update(&this);
3706 struct OffscreenClass
{
3707 Clutter
.TextureClass parent_class
;
3708 extern (C
) void function (Offscreen
* self
) paint_child
;
3709 extern (C
) void function () _padding_0
;
3710 extern (C
) void function () _padding_1
;
3711 extern (C
) void function () _padding_2
;
3712 extern (C
) void function () _padding_3
;
3713 extern (C
) void function () _padding_4
;
3716 struct OffscreenPrivate
{
3719 // Defines the orientation of various layout widgets.
3724 enum int PARAM_TRANSLATEABLE
= 256;
3725 // The padding from the internal border of the parent container.
3727 float top
, right
, bottom
, left
;
3731 // The contents of this structure is private and should only be accessed using
3732 // the provided API.
3733 struct PathBar
/* : Widget */ {
3734 mixin Atk
.ImplementorIface
.__interface__
;
3735 mixin Clutter
.Animatable
.__interface__
;
3736 mixin Clutter
.Scriptable
.__interface__
;
3737 mixin Focusable
.__interface__
;
3738 mixin Stylable
.__interface__
;
3740 alias parent super_
;
3741 alias parent widget
;
3743 PathBarPrivate
* priv
;
3745 static PathBar
* new_()() {
3746 return mx_path_bar_new();
3748 // Remove all the current buttons
3750 mx_path_bar_clear(&this);
3753 // Get the value of the #MxPathBar:clear-on-change property
3754 // RETURNS: the value of the "clear-on-change" property
3755 int get_clear_on_change()() {
3756 return mx_path_bar_get_clear_on_change(&this);
3759 // Get the value of the #MxPathBar:editable property.
3760 // RETURNS: the current value of the "editable" property.
3761 int get_editable()() {
3762 return mx_path_bar_get_editable(&this);
3765 // Get the MxEntry used as the editable area in the MxPathBar.
3766 // RETURNS: MxEntry *
3767 Entry
* get_entry()() {
3768 return mx_path_bar_get_entry(&this);
3770 char* get_label()(int level
) {
3771 return mx_path_bar_get_label(&this, level
);
3774 return mx_path_bar_get_level(&this);
3776 char* get_text()() {
3777 return mx_path_bar_get_text(&this);
3780 return mx_path_bar_pop(&this);
3782 int push()(char* name
) {
3783 return mx_path_bar_push(&this, name
);
3786 // Set theh value of the #MxPathBar:clear-on-change property
3787 // <clear_on_change>: the new value of the property
3788 void set_clear_on_change()(int clear_on_change
) {
3789 mx_path_bar_set_clear_on_change(&this, clear_on_change
);
3792 // Set the value of the #MxPathBar:editable property.
3793 // <editable>: #TRUE if the path bar should be editable
3794 void set_editable()(int editable
) {
3795 mx_path_bar_set_editable(&this, editable
);
3798 // Set the text on the button specified by @level
3800 // <label>: A #gchar
3801 void set_label()(int level
, char* label
) {
3802 mx_path_bar_set_label(&this, level
, label
);
3805 // Set the text in the editable area of the #MxPathBar
3806 // <text>: string to set the editable text to.
3807 void set_text()(char* text
) {
3808 mx_path_bar_set_text(&this, text
);
3812 struct PathBarClass
{
3813 WidgetClass parent_class
;
3814 extern (C
) void function () _padding_0
;
3815 extern (C
) void function () _padding_1
;
3816 extern (C
) void function () _padding_2
;
3817 extern (C
) void function () _padding_3
;
3818 extern (C
) void function () _padding_4
;
3821 struct PathBarPrivate
{
3824 // Defines the position of an interface element.
3825 enum Position
/* Version 1.2 */ {
3832 // The contents of this structure are private and should only be
3833 // accessed through the public API.
3834 struct ProgressBar
/* : Widget */ {
3835 mixin Atk
.ImplementorIface
.__interface__
;
3836 mixin Clutter
.Animatable
.__interface__
;
3837 mixin Clutter
.Scriptable
.__interface__
;
3838 mixin Stylable
.__interface__
;
3840 alias parent super_
;
3841 alias parent widget
;
3843 private ProgressBarPrivate
* priv
;
3846 // Create a new progress bar
3847 // RETURNS: a new #MxProgressBar
3848 static ProgressBar
* new_()() {
3849 return mx_progress_bar_new();
3852 // Get the progress of the progress bar
3853 // RETURNS: A value between 0.0 and 1.0
3854 double get_progress()() {
3855 return mx_progress_bar_get_progress(&this);
3858 // Set the progress of the progress bar
3859 // <progress>: A value between 0.0 and 1.0
3860 void set_progress()(double progress
) {
3861 mx_progress_bar_set_progress(&this, progress
);
3865 struct ProgressBarClass
{
3866 WidgetClass parent_class
;
3867 extern (C
) void function () _padding_0
;
3868 extern (C
) void function () _padding_1
;
3869 extern (C
) void function () _padding_2
;
3870 extern (C
) void function () _padding_3
;
3871 extern (C
) void function () _padding_4
;
3874 struct ProgressBarPrivate
{
3878 // The contents of this structure are private and should only be accessed
3879 // through the public API.
3880 struct ScrollBar
/* : Bin */ {
3881 mixin Atk
.ImplementorIface
.__interface__
;
3882 mixin Clutter
.Animatable
.__interface__
;
3883 mixin Clutter
.Container
.__interface__
;
3884 mixin Clutter
.Scriptable
.__interface__
;
3885 mixin Focusable
.__interface__
;
3886 mixin Stylable
.__interface__
;
3887 alias parent_instance
this;
3888 alias parent_instance super_
;
3889 alias parent_instance bin
;
3890 Bin parent_instance
;
3891 private ScrollBarPrivate
* priv
;
3894 // Create a new #MxScrollBar
3895 // RETURNS: a new #MxScrollBar
3896 static ScrollBar
* new_()() {
3897 return mx_scroll_bar_new();
3900 // Create a new #MxScrollBar with the given adjustment set
3901 // RETURNS: a new #MxScrollBar
3902 // <adjustment>: an #MxAdjustment
3903 static ScrollBar
* new_with_adjustment()(Adjustment
* adjustment
) {
3904 return mx_scroll_bar_new_with_adjustment(adjustment
);
3907 // Gets the adjustment object that stores the current position
3908 // of the scrollbar.
3909 // RETURNS: the adjustment
3910 Adjustment
* get_adjustment()() {
3911 return mx_scroll_bar_get_adjustment(&this);
3913 Orientation
get_orientation()() {
3914 return mx_scroll_bar_get_orientation(&this);
3916 void set_adjustment()(Adjustment
* adjustment
) {
3917 mx_scroll_bar_set_adjustment(&this, adjustment
);
3919 void set_orientation()(Orientation orientation
) {
3920 mx_scroll_bar_set_orientation(&this, orientation
);
3922 extern (C
) alias static void function (ScrollBar
* this_
, void* user_data
=null) signal_scroll_start
;
3924 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
3925 return super_
.signal_connect
!name(cb
, data
, cf
);
3928 ulong signal_connect(string name
:"scroll-start", CB
:signal_scroll_start
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
3929 return signal_connect_data
!()(&this, cast(char*)"scroll-start",
3930 cast(GObject2
.Callback
)cb
, data
, null, cf
);
3932 extern (C
) alias static void function (ScrollBar
* this_
, void* user_data
=null) signal_scroll_stop
;
3933 ulong signal_connect(string name
:"scroll-stop", CB
:signal_scroll_stop
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
3934 return signal_connect_data
!()(&this, cast(char*)"scroll-stop",
3935 cast(GObject2
.Callback
)cb
, data
, null, cf
);
3939 struct ScrollBarClass
{
3940 BinClass parent_class
;
3941 extern (C
) void function (ScrollBar
* bar
) scroll_start
;
3942 extern (C
) void function (ScrollBar
* bar
) scroll_stop
;
3943 extern (C
) void function () _padding_0
;
3944 extern (C
) void function () _padding_1
;
3945 extern (C
) void function () _padding_2
;
3946 extern (C
) void function () _padding_3
;
3947 extern (C
) void function () _padding_4
;
3950 struct ScrollBarPrivate
{
3953 // Defines the scrolling policy of scrollable widgets.
3961 // The contents of this structure are private and should only be accessed
3962 // through the public API.
3963 struct ScrollView
/* : Bin */ {
3964 mixin Atk
.ImplementorIface
.__interface__
;
3965 mixin Clutter
.Animatable
.__interface__
;
3966 mixin Clutter
.Container
.__interface__
;
3967 mixin Clutter
.Scriptable
.__interface__
;
3968 mixin Focusable
.__interface__
;
3969 mixin Stylable
.__interface__
;
3970 alias parent_instance
this;
3971 alias parent_instance super_
;
3972 alias parent_instance bin
;
3973 Bin parent_instance
;
3974 private ScrollViewPrivate
* priv
;
3976 static ScrollView
* new_()() {
3977 return mx_scroll_view_new();
3980 // Ensures that a given region is visible in the ScrollView, with the top-left
3981 // taking precedence.
3982 // <geometry>: The region to make visible
3983 void ensure_visible()(Clutter
.Geometry
* geometry
) {
3984 mx_scroll_view_ensure_visible(&this, geometry
);
3986 int get_enable_gestures()() {
3987 return mx_scroll_view_get_enable_gestures(&this);
3989 int get_enable_mouse_scrolling()() {
3990 return mx_scroll_view_get_enable_mouse_scrolling(&this);
3992 ScrollPolicy
get_scroll_policy()() {
3993 return mx_scroll_view_get_scroll_policy(&this);
3995 void set_enable_gestures()(int enabled
) {
3996 mx_scroll_view_set_enable_gestures(&this, enabled
);
3998 void set_enable_mouse_scrolling()(int enabled
) {
3999 mx_scroll_view_set_enable_mouse_scrolling(&this, enabled
);
4001 void set_scroll_policy()(ScrollPolicy policy
) {
4002 mx_scroll_view_set_scroll_policy(&this, policy
);
4006 struct ScrollViewClass
{
4007 BinClass parent_class
;
4008 extern (C
) void function () _padding_0
;
4009 extern (C
) void function () _padding_1
;
4010 extern (C
) void function () _padding_2
;
4011 extern (C
) void function () _padding_3
;
4012 extern (C
) void function () _padding_4
;
4015 struct ScrollViewPrivate
{
4018 // This is an opaque structure whose members cannot be directly accessed.
4019 struct Scrollable
/* Interface */ {
4020 mixin template __interface__() {
4021 // Gets the adjustment objects that store the offsets of the scrollable widget
4022 // into its possible scrolling area.
4023 // <hadjustment>: location to store the horizontal adjustment, or %NULL
4024 // <vadjustment>: location to store the vertical adjustment, or %NULL
4025 void get_adjustments()(/*out*/ Adjustment
** hadjustment
=null, /*out*/ Adjustment
** vadjustment
=null) {
4026 mx_scrollable_get_adjustments(cast(Scrollable
*)&this, hadjustment
, vadjustment
);
4028 void set_adjustments()(Adjustment
* hadjustment
, Adjustment
* vadjustment
) {
4029 mx_scrollable_set_adjustments(cast(Scrollable
*)&this, hadjustment
, vadjustment
);
4032 mixin __interface__
;
4035 struct ScrollableIface
{
4036 private GObject2
.TypeInterface parent
;
4037 extern (C
) void function (Scrollable
* scrollable
, Adjustment
* hadjustment
, Adjustment
* vadjustment
) set_adjustments
;
4039 // <hadjustment>: location to store the horizontal adjustment, or %NULL
4040 // <vadjustment>: location to store the vertical adjustment, or %NULL
4041 extern (C
) void function (Scrollable
* scrollable
, /*out*/ Adjustment
** hadjustment
=null, /*out*/ Adjustment
** vadjustment
=null) get_adjustments
;
4044 struct Settings
/* : GObject.Object */ {
4046 alias parent super_
;
4047 alias parent object
;
4048 GObject2
.Object parent
;
4049 SettingsPrivate
* priv
;
4052 // Get the global MxSettings object.
4053 // RETURNS: an #MxSettings object
4054 static Settings
* get_default()() {
4055 return mx_settings_get_default();
4059 struct SettingsClass
{
4060 GObject2
.ObjectClass parent_class
;
4061 extern (C
) void function () _padding_0
;
4062 extern (C
) void function () _padding_1
;
4063 extern (C
) void function () _padding_2
;
4064 extern (C
) void function () _padding_3
;
4065 extern (C
) void function () _padding_4
;
4068 struct SettingsPrivate
{
4071 struct SettingsProvider
{
4074 struct SettingsProviderIface
{
4075 private GObject2
.TypeInterface parent_iface
;
4076 // Unintrospectable functionp: setting_changed() / ()
4077 extern (C
) void function (SettingsProvider
* provider
, MxSettingsProperty id
) setting_changed
;
4078 // Unintrospectable functionp: get_setting() / ()
4079 extern (C
) int function (SettingsProvider
* provider
, MxSettingsProperty id
, void* value
) get_setting
;
4080 // Unintrospectable functionp: set_setting() / ()
4081 extern (C
) int function (SettingsProvider
* provider
, MxSettingsProperty id
, void* value
) set_setting
;
4085 // The contents of this structure are private and should only be accessed
4086 // through the public API.
4087 struct Slider
/* : Widget */ {
4088 mixin Atk
.ImplementorIface
.__interface__
;
4089 mixin Clutter
.Animatable
.__interface__
;
4090 mixin Clutter
.Scriptable
.__interface__
;
4091 mixin Focusable
.__interface__
;
4092 mixin Stylable
.__interface__
;
4094 alias parent super_
;
4095 alias parent widget
;
4097 private SliderPrivate
* priv
;
4100 // Create a new slider
4101 // RETURNS: a new #MxSlider
4102 static Slider
* new_()() {
4103 return mx_slider_new();
4107 // Get the value of the #MxSlider:buffer-value property.
4108 // RETURNS: The current value of the "buffer-value" property.
4109 double get_buffer_value()() {
4110 return mx_slider_get_buffer_value(&this);
4113 // Retrieve the current value of the media bar
4115 double get_value()() {
4116 return mx_slider_get_value(&this);
4120 // Set the value of the #MxSlider:buffer-value property.
4121 // <value>: the new buffer value of the slider
4122 void set_buffer_value()(double value
) {
4123 mx_slider_set_buffer_value(&this, value
);
4126 // Set the value of the slider
4127 // <value>: A value between 0.0 and 1.0
4128 void set_value()(double value
) {
4129 mx_slider_set_value(&this, value
);
4131 extern (C
) alias static void function (Slider
* this_
, void* user_data
=null) signal_slide_start
;
4133 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
4134 return super_
.signal_connect
!name(cb
, data
, cf
);
4137 ulong signal_connect(string name
:"slide-start", CB
:signal_slide_start
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
4138 return signal_connect_data
!()(&this, cast(char*)"slide-start",
4139 cast(GObject2
.Callback
)cb
, data
, null, cf
);
4141 extern (C
) alias static void function (Slider
* this_
, void* user_data
=null) signal_slide_stop
;
4142 ulong signal_connect(string name
:"slide-stop", CB
:signal_slide_stop
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
4143 return signal_connect_data
!()(&this, cast(char*)"slide-stop",
4144 cast(GObject2
.Callback
)cb
, data
, null, cf
);
4148 struct SliderClass
{
4149 WidgetClass parent_class
;
4150 extern (C
) void function () _padding_0
;
4151 extern (C
) void function () _padding_1
;
4152 extern (C
) void function () _padding_2
;
4153 extern (C
) void function () _padding_3
;
4154 extern (C
) void function () _padding_4
;
4157 struct SliderPrivate
{
4161 // The contents of this structure are private and should only be accessed
4162 // through the public API.
4163 struct Spinner
/* : Widget */ {
4164 mixin Atk
.ImplementorIface
.__interface__
;
4165 mixin Clutter
.Animatable
.__interface__
;
4166 mixin Clutter
.Scriptable
.__interface__
;
4167 mixin Stylable
.__interface__
;
4169 alias parent super_
;
4170 alias parent widget
;
4172 private SpinnerPrivate
* priv
;
4176 // Create a new #MxSpinner widget.
4177 // RETURNS: a newly allocated #MxSpinner
4178 static Spinner
* new_()() {
4179 return mx_spinner_new();
4183 // Determines whether the spinner is animating.
4184 // RETURNS: %TRUE if the spinner is animating, %FALSE otherwise
4185 int get_animating()() {
4186 return mx_spinner_get_animating(&this);
4190 // Sets whether the spinner is animating. A spinner can be stopped if
4191 // the task it represents has finished, or to save energy.
4192 // <animating>: %TRUE to enable animation, %FALSE to disable
4193 void set_animating()(int animating
) {
4194 mx_spinner_set_animating(&this, animating
);
4198 // Emitted after the animation has displayed the final frame.
4199 extern (C
) alias static void function (Spinner
* this_
, void* user_data
=null) signal_looped
;
4201 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
4202 return super_
.signal_connect
!name(cb
, data
, cf
);
4205 ulong signal_connect(string name
:"looped", CB
:signal_looped
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
4206 return signal_connect_data
!()(&this, cast(char*)"looped",
4207 cast(GObject2
.Callback
)cb
, data
, null, cf
);
4211 struct SpinnerClass
{
4212 WidgetClass parent_class
;
4213 extern (C
) void function (Spinner
* spinner
) looped
;
4214 extern (C
) void function () _padding_0
;
4215 extern (C
) void function () _padding_1
;
4216 extern (C
) void function () _padding_2
;
4217 extern (C
) void function () _padding_3
;
4220 struct SpinnerPrivate
{
4224 // The contents of this structure are private and should only be accessed
4225 // through the public API.
4226 struct Stack
/* : Widget */ {
4227 mixin Atk
.ImplementorIface
.__interface__
;
4228 mixin Clutter
.Animatable
.__interface__
;
4229 mixin Clutter
.Container
.__interface__
;
4230 mixin Clutter
.Scriptable
.__interface__
;
4231 mixin Focusable
.__interface__
;
4232 mixin Stylable
.__interface__
;
4234 alias parent super_
;
4235 alias parent widget
;
4237 private StackPrivate
* priv
;
4241 // Create a new #MxStack.
4242 // RETURNS: a newly allocated #MxStack
4243 static Stack
* new_()() {
4244 return mx_stack_new();
4248 // Get the value of the #MxStackChild:fit property.
4249 // RETURNS: the current value of the #MxStackChild:crop property
4250 // <child>: A #ClutterActor
4251 int child_get_crop()(Clutter
.Actor
* child
) {
4252 return mx_stack_child_get_crop(&this, child
);
4256 // Get the value of the #MxStackChild:fit property.
4257 // RETURNS: the current value of the #MxStackChild:fit property
4258 // <child>: A #ClutterActor
4259 int child_get_fit()(Clutter
.Actor
* child
) {
4260 return mx_stack_child_get_fit(&this, child
);
4264 // Get the value of the #MxStackChild:x-align property
4265 // RETURNS: the current value of the "x-align" property
4266 // <child>: A #ClutterActor
4267 Align
child_get_x_align()(Clutter
.Actor
* child
) {
4268 return mx_stack_child_get_x_align(&this, child
);
4272 // Get the value of the #MxStackChild:x-fill property.
4273 // RETURNS: the current value of the "x-fill" property.
4274 // <child>: A #ClutterActor
4275 int child_get_x_fill()(Clutter
.Actor
* child
) {
4276 return mx_stack_child_get_x_fill(&this, child
);
4280 // Get the value of the #MxStackChild:y-align property.
4281 // RETURNS: the current value of the "y-align" property.
4282 // <child>: A #ClutterActor
4283 Align
child_get_y_align()(Clutter
.Actor
* child
) {
4284 return mx_stack_child_get_y_align(&this, child
);
4288 // Get the value of the #MxStackChild:y-fill property
4289 // RETURNS: the current value of the "y-fill" property
4290 // <child>: A #ClutterActor
4291 int child_get_y_fill()(Clutter
.Actor
* child
) {
4292 return mx_stack_child_get_y_fill(&this, child
);
4296 // Set the value of the #MxStackChild:crop property.
4297 // <child>: A #ClutterActor
4298 // <crop>: A #gboolean
4299 void child_set_crop()(Clutter
.Actor
* child
, int crop
) {
4300 mx_stack_child_set_crop(&this, child
, crop
);
4304 // Set the value of the #MxStackChild:fit property.
4305 // <child>: A #ClutterActor
4306 // <fit>: A #gboolean
4307 void child_set_fit()(Clutter
.Actor
* child
, int fit
) {
4308 mx_stack_child_set_fit(&this, child
, fit
);
4312 // Set the value of the #MxStackChild:x-align property.
4313 // <child>: A #ClutterActor
4314 // <x_align>: An #MxAlign
4315 void child_set_x_align()(Clutter
.Actor
* child
, Align x_align
) {
4316 mx_stack_child_set_x_align(&this, child
, x_align
);
4320 // Set the value of the #MxStackChild:x-fill property.
4321 // <child>: A #ClutterActor
4322 // <x_fill>: A #gboolean
4323 void child_set_x_fill()(Clutter
.Actor
* child
, int x_fill
) {
4324 mx_stack_child_set_x_fill(&this, child
, x_fill
);
4328 // Set the value of the #MxStackChild:y-align property.
4329 // <child>: A #ClutterActor
4330 // <y_align>: An #MxAlign
4331 void child_set_y_align()(Clutter
.Actor
* child
, Align y_align
) {
4332 mx_stack_child_set_y_align(&this, child
, y_align
);
4336 // Set the value of the #MxStackChild:y-fill property.
4337 // <child>: A #ClutterActor
4338 // <y_fill>: A #gboolean
4339 void child_set_y_fill()(Clutter
.Actor
* child
, int y_fill
) {
4340 mx_stack_child_set_y_fill(&this, child
, y_fill
);
4345 // The contents of this structure are private and should only be accessed
4346 // through the public API.
4347 struct StackChild
/* : Clutter.ChildMeta */ {
4349 alias parent super_
;
4350 alias parent childmeta
;
4351 Clutter
.ChildMeta parent
;
4352 static import std
.bitmanip
; mixin(std
.bitmanip
.bitfields
!(
4357 uint, "__dummy32A", 28));
4358 private Align x_align
, y_align
;
4361 struct StackChildClass
{
4362 Clutter
.ChildMetaClass parent_class
;
4363 extern (C
) void function () _padding_0
;
4364 extern (C
) void function () _padding_1
;
4365 extern (C
) void function () _padding_2
;
4366 extern (C
) void function () _padding_3
;
4367 extern (C
) void function () _padding_4
;
4370 struct StackChildPrivate
{
4374 WidgetClass parent_class
;
4375 extern (C
) void function () _padding_0
;
4376 extern (C
) void function () _padding_1
;
4377 extern (C
) void function () _padding_2
;
4378 extern (C
) void function () _padding_3
;
4379 extern (C
) void function () _padding_4
;
4382 struct StackPrivate
{
4385 // This is an opaque structure whose members cannot be directly accessed.
4386 struct Stylable
/* Interface */ {
4387 mixin template __interface__() { void apply_clutter_text_attributes()(Clutter
.Text
* text
) {
4388 mx_stylable_apply_clutter_text_attributes(cast(Stylable
*)&this, text
);
4390 void connect_change_notifiers()() {
4391 mx_stylable_connect_change_notifiers(cast(Stylable
*)&this);
4394 // Finds the #GParamSpec installed by @stylable for the property
4395 // with @property_name.
4397 // or %NULL if no property with that name was found
4398 // RETURNS: a #GParamSpec for the given property,
4399 // <property_name>: the name of the property to find
4400 GObject2
.ParamSpec
* find_property()(char* property_name
) {
4401 return mx_stylable_find_property(cast(Stylable
*)&this, property_name
);
4404 // Unintrospectable method: get() / mx_stylable_get()
4405 // Gets the style properties for @stylable.
4407 // In general, a copy is made of the property contents and the called
4408 // is responsible for freeing the memory in the appropriate manner for
4409 // the property type.
4412 // <title>Using mx_stylable_get(<!-- -->)</title>
4413 // <para>An example of using mx_stylable_get() to get the contents of
4414 // two style properties - one of type #G_TYPE_INT and one of type
4415 // #CLUTTER_TYPE_COLOR:</para>
4418 // ClutterColor *bg_color;
4420 // mx_stylable_get (stylable,
4421 // "x-spacing", &x_spacing,
4422 // "bg-color", &bg_color,
4425 // /<!-- -->* do something with x_spacing and bg_color *<!-- -->/
4427 // clutter_color_free (bg_color);
4428 // </programlisting>
4430 // <first_property_name>: name of the first property to get
4431 /+ Not available -- variadic methods unsupported - use the C function directly.
4432 alias mx_stylable_get get; // Variadic
4435 // Query @stylable for the default value of property @property_name and
4436 // fill @value_out with the result.
4439 // RETURNS: %TRUE if property @property_name exists and the default value has
4440 // <property_name>: name of the property to query
4441 // <value_out>: return location for the default value
4442 int get_default_value()(char* property_name
, /*out*/ GObject2
.Value
* value_out
) {
4443 return mx_stylable_get_default_value(cast(Stylable
*)&this, property_name
, value_out
);
4446 // Retrieves the value of @property_name for @stylable, and puts it
4448 // <property_name>: the name of the property
4449 // <value>: return location for an empty #GValue
4450 void get_property()(char* property_name
, /*out*/ GObject2
.Value
* value
) {
4451 mx_stylable_get_property(cast(Stylable
*)&this, property_name
, value
);
4454 // Retrieves the #MxStyle used by @stylable. This function does not
4455 // alter the reference count of the returned object.
4456 // RETURNS: a #MxStyle
4457 Style
* get_style()() {
4458 return mx_stylable_get_style(cast(Stylable
*)&this);
4461 // Get the current style class name
4463 // should not be modified or freed.
4464 // RETURNS: the class name string. The string is owned by the #MxWidget and
4465 char* get_style_class()() {
4466 return mx_stylable_get_style_class(cast(Stylable
*)&this);
4469 // Get the current style pseudo class. This can contain multiple pseudo class
4470 // names, separated by ':'.
4472 // should not be modified or freed.
4473 // RETURNS: the pseudo class string. The string is owned by the #MxWidget and
4474 char* get_style_pseudo_class()() {
4475 return mx_stylable_get_style_pseudo_class(cast(Stylable
*)&this);
4478 // Retrieves all the #GParamSpec<!-- -->s installed by @stylable.
4480 // of #GParamSpec<!-- -->s. Free it with g_free() when done.
4481 // RETURNS: an array
4482 // <n_props>: return location for the number of properties, or %NULL
4483 GObject2
.ParamSpec
** /*new container*/ list_properties()(/*out*/ uint* n_props
) {
4484 return mx_stylable_list_properties(cast(Stylable
*)&this, n_props
);
4487 // Sets @style as the new #MxStyle to be used by @stylable.
4489 // The #MxStylable will take ownership of the passed #MxStyle.
4491 // After the #MxStyle has been set, the MxStylable::style-set signal
4493 // <style>: a #MxStyle
4494 void set_style()(Style
* style
) {
4495 mx_stylable_set_style(cast(Stylable
*)&this, style
);
4498 // Set the style class name
4499 // <style_class>: a new style class string
4500 void set_style_class()(char* style_class
) {
4501 mx_stylable_set_style_class(cast(Stylable
*)&this, style_class
);
4504 // Set the style pseudo class. The string can contain multiple pseudo class
4505 // names, separated by ':'.
4506 // <pseudo_class>: a new pseudo class string
4507 void set_style_pseudo_class()(char* pseudo_class
) {
4508 mx_stylable_set_style_pseudo_class(cast(Stylable
*)&this, pseudo_class
);
4511 // Emit the "style-changed" signal on @stylable to notify it that one or more
4512 // of the style properties has changed.
4514 // If @stylable is a #ClutterContainer then the "style-changed" notification is
4515 // propagated to it's children, since their style may depend on one or more
4516 // properties of the parent.
4517 // <flags>: flags that control the style changing
4518 void style_changed()(StyleChangedFlags flags
) {
4519 mx_stylable_style_changed(cast(Stylable
*)&this, flags
);
4523 // Add a pseudo-class name to the list of pseudo classes, contained in the
4524 // #MxStylable:style-pseudo-class property.
4525 // <new_class>: A pseudo-class name to add
4526 void style_pseudo_class_add()(char* new_class
) {
4527 mx_stylable_style_pseudo_class_add(cast(Stylable
*)&this, new_class
);
4531 // Check if the given pseudo-class name is contained in the list of
4532 // set pseudo classes on this #MxStylable object.
4533 // RETURNS: %TRUE if the given pseudo-class is set, %FALSE otherwise
4534 // <pseudo_class>: A pseudo-class name
4535 int style_pseudo_class_contains()(char* pseudo_class
) {
4536 return mx_stylable_style_pseudo_class_contains(cast(Stylable
*)&this, pseudo_class
);
4540 // Remove the specified pseudo class name from the list of pseudo classes
4541 // contained in the #MxStylable:style-pseudo-class property.
4542 // <remove_class>: A pseudo class name to remove
4543 void style_pseudo_class_remove()(char* remove_class
) {
4544 mx_stylable_style_pseudo_class_remove(cast(Stylable
*)&this, remove_class
);
4547 // The ::style-changed signal is emitted each time one of the style
4548 // properties have changed.
4549 // <flags>: the #MxStyleChangedFlags associated with the signal
4550 extern (C
) alias static void function (Stylable
* this_
, StyleChangedFlags
* flags
, void* user_data
=null) signal_style_changed
;
4552 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
4553 return super_
.signal_connect
!name(cb
, data
, cf
);
4556 ulong signal_connect(string name
:"style-changed", CB
:signal_style_changed
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
4557 return signal_connect_data
!()(&this, cast(char*)"style-changed",
4558 cast(GObject2
.Callback
)cb
, data
, null, cf
);
4561 mixin __interface__
;
4564 struct StylableIface
{
4565 private GObject2
.TypeInterface g_iface
;
4566 // RETURNS: a #MxStyle
4567 extern (C
) Style
* function (Stylable
* stylable
) get_style
;
4568 // <style>: a #MxStyle
4569 extern (C
) void function (Stylable
* stylable
, Style
* style
) set_style
;
4570 // RETURNS: the class name string. The string is owned by the #MxWidget and
4571 extern (C
) char* function (Stylable
* stylable
) get_style_class
;
4572 // <style_class>: a new style class string
4573 extern (C
) void function (Stylable
* stylable
, char* style_class
) set_style_class
;
4574 // RETURNS: the pseudo class string. The string is owned by the #MxWidget and
4575 extern (C
) char* function (Stylable
* stylable
) get_style_pseudo_class
;
4576 // <pseudo_class>: a new pseudo class string
4577 extern (C
) void function (Stylable
* stylable
, char* pseudo_class
) set_style_pseudo_class
;
4578 // <flags>: flags that control the style changing
4579 extern (C
) void function (Stylable
* stylable
, StyleChangedFlags flags
) style_changed
;
4582 // Installs a property for @owner_type using @pspec as the property
4585 // This function should be used inside the #MxStylableIface initialization
4586 // function of a class, for instance:
4588 // <informalexample><programlisting>
4589 // G_DEFINE_TYPE_WITH_CODE (FooActor, foo_actor, CLUTTER_TYPE_ACTOR,
4590 // G_IMPLEMENT_INTERFACE (MX_TYPE_STYLABLE,
4591 // mx_stylable_init));
4594 // mx_stylable_init (MxStylableIface *iface)
4596 // static gboolean is_initialized = FALSE;
4598 // if (!is_initialized)
4601 // mx_stylable_iface_install_property (stylable,
4603 // g_param_spec_int ("x-spacing",
4605 // "Horizontal spacing",
4608 // G_PARAM_READWRITE));
4612 // </programlisting></informalexample>
4613 // <owner_type>: #GType of the style property owner
4614 // <pspec>: a #GParamSpec
4615 void install_property()(Type owner_type
, GObject2
.ParamSpec
* pspec
) {
4616 mx_stylable_iface_install_property(&this, owner_type
, pspec
);
4621 // The contents of this structure is private and should only be accessed using
4622 // the provided API.
4623 struct Style
/* : GObject.Object */ {
4624 alias parent_instance
this;
4625 alias parent_instance super_
;
4626 alias parent_instance object
;
4627 GObject2
.Object parent_instance
;
4628 private StylePrivate
* priv
;
4631 // Creates a new #MxStyle object. This must be freed using #g_object_unref
4632 // when no longer required.
4633 // RETURNS: a newly allocated #MxStyle
4634 static Style
* /*new*/ new_()() {
4635 return mx_style_new();
4638 // Return the default MxStyle object. This includes the current theme (if
4641 // unref'd by applications
4642 // RETURNS: a #MxStyle object. This must not be freed or
4643 static Style
* get_default()() {
4644 return mx_style_get_default();
4647 // Unintrospectable method: get() / mx_style_get()
4648 // Gets the style properties for @stylable from @style.
4650 // In general, a copy is made of the property contents and the caller
4651 // is responsible for freeing the memory in the appropriate manner for
4652 // the property type.
4653 // <stylable>: a #MxStylable
4654 // <first_property_name>: name of the first property to get
4655 /+ Not available -- variadic methods unsupported - use the C function directly.
4656 alias mx_style_get get; // Variadic
4659 // Requests the property described in @pspec for the specified stylable
4660 // <stylable>: a stylable to retreive the data for
4661 // <pspec>: a #GParamSpec describing the property required
4662 // <value>: a #GValue to place the return value in
4663 void get_property()(Stylable
* stylable
, GObject2
.ParamSpec
* pspec
, /*out*/ GObject2
.Value
* value
) {
4664 mx_style_get_property(&this, stylable
, pspec
, value
);
4667 // Unintrospectable method: get_valist() / mx_style_get_valist()
4668 // Gets the style properties for @stylable from @style.
4670 // Please refer to mx_style_get() for further information.
4671 // <stylable>: a #MxStylable
4672 // <first_property_name>: name of the first property to get
4673 // <va_args>: return location for the first property, followed optionally by more name/return location pairs, followed by %NULL
4674 void get_valist()(Stylable
* stylable
, char* first_property_name
, va_list va_args
) {
4675 mx_style_get_valist(&this, stylable
, first_property_name
, va_args
);
4678 // Load style information from the specified file.
4681 // RETURNS: TRUE if the style information was loaded successfully. Returns
4682 // <filename>: filename of the style sheet to load
4683 int load_from_file()(char* filename
, GLib2
.Error
** error
=null) {
4684 return mx_style_load_from_file(&this, filename
, error
);
4687 // Indicates that the style data has changed in some way. For example, a new
4688 // stylesheet may have been loaded.
4689 extern (C
) alias static void function (Style
* this_
, void* user_data
=null) signal_changed
;
4691 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
4692 return super_
.signal_connect
!name(cb
, data
, cf
);
4695 ulong signal_connect(string name
:"changed", CB
:signal_changed
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
4696 return signal_connect_data
!()(&this, cast(char*)"changed",
4697 cast(GObject2
.Callback
)cb
, data
, null, cf
);
4701 enum StyleChangedFlags
{
4704 INVALIDATE_CACHE
= 2
4707 GObject2
.ObjectClass parent_class
;
4708 extern (C
) void function (Style
* style
) changed
;
4709 extern (C
) void function () _padding_0
;
4710 extern (C
) void function () _padding_1
;
4711 extern (C
) void function () _padding_2
;
4712 extern (C
) void function () _padding_3
;
4713 extern (C
) void function () _padding_4
;
4719 struct StylePrivate
{
4723 // The contents of this structure is private and should only be accessed using
4724 // the provided API.
4725 struct Table
/* : Widget */ {
4726 mixin Atk
.ImplementorIface
.__interface__
;
4727 mixin Clutter
.Animatable
.__interface__
;
4728 mixin Clutter
.Container
.__interface__
;
4729 mixin Clutter
.Scriptable
.__interface__
;
4730 mixin Focusable
.__interface__
;
4731 mixin Stylable
.__interface__
;
4732 alias parent_instance
this;
4733 alias parent_instance super_
;
4734 alias parent_instance widget
;
4735 Widget parent_instance
;
4736 private TablePrivate
* priv
;
4739 // Create a new #MxTable
4740 // RETURNS: a new #MxTable
4741 static Table
* new_()() {
4742 return mx_table_new();
4745 // Add an actor at the specified row and column
4747 // Note, column and rows numbers start from zero
4748 // <actor>: the child to insert
4749 // <row>: the row to place the child into
4750 // <column>: the column to place the child into
4751 void add_actor()(Clutter
.Actor
* actor
, int row
, int column
) {
4752 mx_table_add_actor(&this, actor
, row
, column
);
4755 // Unintrospectable method: add_actor_with_properties() / mx_table_add_actor_with_properties()
4756 // Add an actor into at the specified row and column, with additional child
4757 // properties to set.
4758 // <actor>: the child #ClutterActor
4759 // <row>: the row to place the child into
4760 // <column>: the column to place the child into
4761 // <first_property_name>: name of the first property to set
4762 /+ Not available -- variadic methods unsupported - use the C function directly.
4763 alias mx_table_add_actor_with_properties add_actor_with_properties; // Variadic
4766 // Get the column of the child.
4767 // RETURNS: the column of the child
4768 // <child>: a #ClutterActor
4769 int child_get_column()(Clutter
.Actor
* child
) {
4770 return mx_table_child_get_column(&this, child
);
4773 // Get the column span of the child. Defaults to 1.
4774 // RETURNS: the column span of the child
4775 // <child>: a #ClutterActor
4776 int child_get_column_span()(Clutter
.Actor
* child
) {
4777 return mx_table_child_get_column_span(&this, child
);
4780 // Get the row of the child.
4781 // RETURNS: the row of the child
4782 // <child>: a #ClutterActor
4783 int child_get_row()(Clutter
.Actor
* child
) {
4784 return mx_table_child_get_row(&this, child
);
4787 // Get the row span of the child. Defaults to 1.
4788 // RETURNS: the row span of the child
4789 // <child>: A #ClutterActor
4790 int child_get_row_span()(Clutter
.Actor
* child
) {
4791 return mx_table_child_get_row_span(&this, child
);
4794 // Get the x-align value of the child
4795 // RETURNS: An #MxAlign value
4796 // <child>: A #ClutterActor
4797 Align
child_get_x_align()(Clutter
.Actor
* child
) {
4798 return mx_table_child_get_x_align(&this, child
);
4801 // Get the x-expand property of the child
4802 // RETURNS: #TRUE if the child is set to x-expand
4803 // <child>: A #ClutterActor
4804 int child_get_x_expand()(Clutter
.Actor
* child
) {
4805 return mx_table_child_get_x_expand(&this, child
);
4808 // Get the x-fill state of the child
4809 // RETURNS: #TRUE if the child is set to x-fill
4810 // <child>: A #ClutterActor
4811 int child_get_x_fill()(Clutter
.Actor
* child
) {
4812 return mx_table_child_get_x_fill(&this, child
);
4815 // Get the y-align value of the child
4816 // RETURNS: An #MxAlign value
4817 // <child>: A #ClutterActor
4818 Align
child_get_y_align()(Clutter
.Actor
* child
) {
4819 return mx_table_child_get_y_align(&this, child
);
4822 // Get the y-expand property of the child.
4823 // RETURNS: #TRUE if the child is set to y-expand
4824 // <child>: A #ClutterActor
4825 int child_get_y_expand()(Clutter
.Actor
* child
) {
4826 return mx_table_child_get_y_expand(&this, child
);
4829 // Get the y-fill state of the child
4830 // RETURNS: #TRUE if the child is set to y-fill
4831 // <child>: A #ClutterActor
4832 int child_get_y_fill()(Clutter
.Actor
* child
) {
4833 return mx_table_child_get_y_fill(&this, child
);
4836 // Set the column of the child
4837 // <child>: a #ClutterActor
4838 // <col>: the column of the child
4839 void child_set_column()(Clutter
.Actor
* child
, int col
) {
4840 mx_table_child_set_column(&this, child
, col
);
4843 // Set the column span of the child.
4844 // <child>: An #ClutterActor
4845 // <span>: The number of columns to span
4846 void child_set_column_span()(Clutter
.Actor
* child
, int span
) {
4847 mx_table_child_set_column_span(&this, child
, span
);
4850 // Set the row of the child
4851 // <child>: a #ClutterActor
4852 // <row>: the row of the child
4853 void child_set_row()(Clutter
.Actor
* child
, int row
) {
4854 mx_table_child_set_row(&this, child
, row
);
4857 // Set the row span of the child.
4858 // <child>: A #ClutterActor
4859 // <span>: the number of rows to span
4860 void child_set_row_span()(Clutter
.Actor
* child
, int span
) {
4861 mx_table_child_set_row_span(&this, child
, span
);
4864 // Set the alignment of the child within its cell. This will only have an effect
4865 // if the the x-fill property is FALSE.
4866 // <child>: A #ClutterActor
4867 // <align>: A #MxAlign value
4868 void child_set_x_align()(Clutter
.Actor
* child
, Align align_
) {
4869 mx_table_child_set_x_align(&this, child
, align_
);
4872 // Set x-expand on the child. This causes the column which the child
4873 // resides in to be allocated any extra space if the allocation of the table is
4874 // larger than the preferred size.
4875 // <child>: A #ClutterActor
4876 // <expand>: the new value of the x expand child property
4877 void child_set_x_expand()(Clutter
.Actor
* child
, int expand
) {
4878 mx_table_child_set_x_expand(&this, child
, expand
);
4881 // Set the fill state of the child on the x-axis. This will cause the child to
4882 // be allocated the maximum available space.
4883 // <child>: A #ClutterActor
4884 // <fill>: the fill state
4885 void child_set_x_fill()(Clutter
.Actor
* child
, int fill
) {
4886 mx_table_child_set_x_fill(&this, child
, fill
);
4889 // Set the value of the y-align property. This will only have an effect if
4890 // y-fill value is set to FALSE.
4891 // <child>: A #ClutterActor
4892 // <align>: A #MxAlign value
4893 void child_set_y_align()(Clutter
.Actor
* child
, Align align_
) {
4894 mx_table_child_set_y_align(&this, child
, align_
);
4897 // Set y-expand on the child. This causes the row which the child
4898 // resides in to be allocated any extra space if the allocation of the table is
4899 // larger than the preferred size.
4900 // <child>: A #ClutterActor
4901 // <expand>: the new value of the y-expand child property
4902 void child_set_y_expand()(Clutter
.Actor
* child
, int expand
) {
4903 mx_table_child_set_y_expand(&this, child
, expand
);
4906 // Set the fill state of the child on the y-axis. This will cause the child to
4907 // be allocated the maximum available space.
4908 // <child>: A #ClutterActor
4909 // <fill>: the fill state
4910 void child_set_y_fill()(Clutter
.Actor
* child
, int fill
) {
4911 mx_table_child_set_y_fill(&this, child
, fill
);
4914 // Retrieve the current number of columns in @table
4915 // RETURNS: the number of columns
4916 int get_column_count()() {
4917 return mx_table_get_column_count(&this);
4920 // Gets the amount of spacing between columns.
4921 // RETURNS: the spacing between columns in device units
4922 int get_column_spacing()() {
4923 return mx_table_get_column_spacing(&this);
4926 // Retrieve the current number rows in the @table
4927 // RETURNS: the number of rows
4928 int get_row_count()() {
4929 return mx_table_get_row_count(&this);
4932 // Gets the amount of spacing between rows.
4933 // RETURNS: the spacing between rows in device units
4934 int get_row_spacing()() {
4935 return mx_table_get_row_spacing(&this);
4938 // Sets the amount of spacing between columns.
4939 // <spacing>: spacing in pixels
4940 void set_column_spacing()(int spacing
) {
4941 mx_table_set_column_spacing(&this, spacing
);
4944 // Sets the amount of spacing between rows.
4945 // <spacing>: spacing in pixels
4946 void set_row_spacing()(int spacing
) {
4947 mx_table_set_row_spacing(&this, spacing
);
4952 // The contents of this structure is private and should only be accessed using
4953 // the provided API.
4954 struct TableChild
/* : Clutter.ChildMeta */ {
4955 alias method_parent
this;
4956 alias method_parent super_
;
4957 alias method_parent childmeta
;
4958 Clutter
.ChildMeta method_parent
;
4961 struct TableChildClass
{
4962 Clutter
.ChildMetaClass parent_class
;
4963 extern (C
) void function () _padding_0
;
4964 extern (C
) void function () _padding_1
;
4965 extern (C
) void function () _padding_2
;
4966 extern (C
) void function () _padding_3
;
4967 extern (C
) void function () _padding_4
;
4971 WidgetClass parent_class
;
4972 extern (C
) void function () _padding_0
;
4973 extern (C
) void function () _padding_1
;
4974 extern (C
) void function () _padding_2
;
4975 extern (C
) void function () _padding_3
;
4976 extern (C
) void function () _padding_4
;
4979 struct TablePrivate
{
4983 // The contents of this structure are private and should only be accessed
4984 // through the public API.
4985 struct TextureCache
/* : GObject.Object */ {
4987 alias parent super_
;
4988 alias parent object
;
4989 GObject2
.Object parent
;
4992 // Returns the default texture cache. This is owned by Mx and should not be
4993 // unreferenced or freed.
4994 // RETURNS: a MxTextureCache
4995 static TextureCache
* get_default()() {
4996 return mx_texture_cache_get_default();
5000 // Checks whether the given URI/path is contained within the texture
5002 // RETURNS: %TRUE if the image exists, %FALSE otherwise
5003 // <uri>: A URI or path to an image file
5004 int contains()(char* uri
) {
5005 return mx_texture_cache_contains(&this, uri
);
5009 // Checks whether there are any textures associated with the given URI by
5010 // the given identifier.
5011 // RETURNS: %TRUE if the data exists, %FALSE otherwise
5012 // <uri>: A URI or path to an image file
5013 // <ident>: A unique identifier
5014 int contains_meta()(char* uri
, void* ident
) {
5015 return mx_texture_cache_contains_meta(&this, uri
, ident
);
5018 // This is a wrapper around mx_texture_cache_get_texture() which returns
5020 // RETURNS: a newly created ClutterTexture
5021 // <uri>: A URI or path to a image file
5022 Clutter
.Actor
* get_actor()(char* uri
) {
5023 return mx_texture_cache_get_actor(&this, uri
);
5026 // Create a #CoglHandle representing a texture of the specified image. Adds
5027 // the image to the cache if the image had not been previously loaded.
5028 // Subsequent calls with the same image URI/path will return the #CoglHandle of
5029 // the previously loaded image with an increased reference count.
5030 // RETURNS: a #CoglHandle to the cached texture
5031 // <uri>: A URI or path to an image file
5032 Cogl
.Handle
get_cogl_texture()(char* uri
) {
5033 return mx_texture_cache_get_cogl_texture(&this, uri
);
5037 // Retrieves the #CoglHandle of the previously added image associated
5038 // with the given unique identifier.
5040 // See mx_texture_cache_insert_meta()
5042 // reference. %NULL if no image was found.
5043 // RETURNS: A #CoglHandle to a texture, with an added
5044 // <uri>: A URI or path to an image file
5045 // <ident>: A unique identifier
5046 Cogl
.Handle
/*new*/ get_meta_cogl_texture()(char* uri
, void* ident
) {
5047 return mx_texture_cache_get_meta_cogl_texture(&this, uri
, ident
);
5051 // Create a new ClutterTexture using the previously added image associated
5052 // with the given unique identifier.
5054 // See mx_texture_cache_insert_meta()
5056 // %NULL if no image was found
5057 // RETURNS: A newly allocated #ClutterTexture, or
5058 // <uri>: A URI or path to an image file
5059 // <ident>: A unique identifier
5060 Clutter
.Texture
* /*new*/ get_meta_texture()(char* uri
, void* ident
) {
5061 return mx_texture_cache_get_meta_texture(&this, uri
, ident
);
5064 // Returns the number of items in the texture cache
5065 // RETURNS: the current size of the cache
5067 return mx_texture_cache_get_size(&this);
5070 // Create a new ClutterTexture with the specified image. Adds the image to the
5071 // cache if the image had not been previously loaded. Subsequent calls with
5072 // the same image URI/path will return a new ClutterTexture with the previously
5074 // RETURNS: a newly created ClutterTexture
5075 // <uri>: A URI or path to a image file
5076 Clutter
.Texture
* get_texture()(char* uri
) {
5077 return mx_texture_cache_get_texture(&this, uri
);
5081 // Inserts a texture into the texture cache. This can be useful if you
5082 // want to cache a texture from a custom or unhandled URI type, or you
5083 // want to override a particular texture.
5085 // If the image is already in the cache, this texture will replace it. A
5086 // reference will be taken on the given texture.
5087 // <uri>: A URI or local file path
5088 // <texture>: A #CoglHandle to a texture
5089 void insert()(char* uri
, Cogl
.Handle
* texture
) {
5090 mx_texture_cache_insert(&this, uri
, texture
);
5094 // Inserts a texture that's associated with a URI into the cache.
5095 // If the metadata already exists for this URI, it will be replaced.
5097 // This is useful if you have a widely used modification of an image,
5098 // for example, an image with a border composited around it.
5099 // <uri>: A URI or local file path
5100 // <ident>: A unique identifier
5101 // <texture>: A #CoglHandle to a texture
5102 // <destroy_func>: An optional destruction function for @ident
5103 void insert_meta()(char* uri
, void* ident
, Cogl
.Handle
* texture
, GLib2
.DestroyNotify destroy_func
) {
5104 mx_texture_cache_insert_meta(&this, uri
, ident
, texture
, destroy_func
);
5106 void load_cache()(char* filename
) {
5107 mx_texture_cache_load_cache(&this, filename
);
5111 struct TextureCacheClass
{
5112 GObject2
.ObjectClass parent_class
;
5113 extern (C
) void function (TextureCache
* self
, char* uri
, Clutter
.Texture
* texture
) loaded
;
5114 extern (C
) void function (TextureCache
* self
, GLib2
.Error
* error
) error_loading
;
5115 extern (C
) void function () _padding_0
;
5116 extern (C
) void function () _padding_1
;
5117 extern (C
) void function () _padding_2
;
5118 extern (C
) void function () _padding_3
;
5119 extern (C
) void function () _padding_4
;
5123 // The contents of this structure are private and should only be accessed
5124 // through the public API.
5125 struct TextureFrame
/* : Clutter.Actor */ {
5126 mixin Atk
.ImplementorIface
.__interface__
;
5127 mixin Clutter
.Animatable
.__interface__
;
5128 mixin Clutter
.Scriptable
.__interface__
;
5129 alias parent_instance
this;
5130 alias parent_instance super_
;
5131 alias parent_instance actor
;
5132 Clutter
.Actor parent_instance
;
5133 private TextureFramePrivate
* priv
;
5136 // A #MxTextureFrame is a specialized texture that efficiently clones
5137 // an area of the given @texture while keeping preserving portions of the
5140 // A #MxTextureFrame can be used to make a rectangular texture fit a
5141 // given size without stretching its borders.
5142 // RETURNS: the newly created #MxTextureFrame
5143 // <texture>: a #ClutterTexture or %NULL
5144 // <top>: top margin preserving its content
5145 // <right>: right margin preserving its content
5146 // <bottom>: bottom margin preserving its content
5147 // <left>: left margin preserving its content
5148 static TextureFrame
* new_()(Clutter
.Texture
* texture
, float top
, float right
, float bottom
, float left
) {
5149 return mx_texture_frame_new(texture
, top
, right
, bottom
, left
);
5152 // Retrieve the current slice lines from the specified frame.
5153 // <top>: width of the top slice
5154 // <right>: width of the right slice
5155 // <bottom>: width of the bottom slice
5156 // <left>: width of the left slice
5157 void get_border_values()(float* top
, float* right
, float* bottom
, float* left
) {
5158 mx_texture_frame_get_border_values(&this, top
, right
, bottom
, left
);
5161 // Return the texture used by the #MxTextureFrame
5162 // RETURNS: a #ClutterTexture owned by the #MxTextureFrame
5163 Clutter
.Texture
* get_parent_texture()() {
5164 return mx_texture_frame_get_parent_texture(&this);
5167 // Set the slice lines of the specified frame. The slices are calculated as
5168 // widths from the edge of the frame.
5169 // <top>: width of the top slice
5170 // <right>: width of the right slice
5171 // <bottom>: width of the bottom slice
5172 // <left>: width of the left slice
5173 void set_border_values()(float top
, float right
, float bottom
, float left
) {
5174 mx_texture_frame_set_border_values(&this, top
, right
, bottom
, left
);
5177 // Set the #ClutterTexture used by this #MxTextureFrame
5178 // <texture>: A #ClutterTexture
5179 void set_parent_texture()(Clutter
.Texture
* texture
) {
5180 mx_texture_frame_set_parent_texture(&this, texture
);
5184 struct TextureFrameClass
{
5185 Clutter
.ActorClass parent_class
;
5186 extern (C
) void function () _padding_0
;
5187 extern (C
) void function () _padding_1
;
5188 extern (C
) void function () _padding_2
;
5189 extern (C
) void function () _padding_3
;
5190 extern (C
) void function () _padding_4
;
5193 struct TextureFramePrivate
{
5197 // The contents of this structure is private and should only be accessed using
5198 // the provided API.
5199 struct Toggle
/* : Widget */ {
5200 mixin Atk
.ImplementorIface
.__interface__
;
5201 mixin Clutter
.Animatable
.__interface__
;
5202 mixin Clutter
.Scriptable
.__interface__
;
5203 mixin Focusable
.__interface__
;
5204 mixin Stylable
.__interface__
;
5206 alias parent super_
;
5207 alias parent widget
;
5209 TogglePrivate
* priv
;
5211 static Toggle
* new_()() {
5212 return mx_toggle_new();
5214 int get_active()() {
5215 return mx_toggle_get_active(&this);
5217 void set_active()(int active
) {
5218 mx_toggle_set_active(&this, active
);
5222 struct ToggleClass
{
5223 WidgetClass parent_class
;
5224 extern (C
) void function () _padding_0
;
5225 extern (C
) void function () _padding_1
;
5226 extern (C
) void function () _padding_2
;
5227 extern (C
) void function () _padding_3
;
5228 extern (C
) void function () _padding_4
;
5231 struct TogglePrivate
{
5235 // The contents of this structure are private and should only be accessed
5236 // through the public API.
5237 struct Toolbar
/* : Bin */ {
5238 mixin Atk
.ImplementorIface
.__interface__
;
5239 mixin Clutter
.Animatable
.__interface__
;
5240 mixin Clutter
.Container
.__interface__
;
5241 mixin Clutter
.Scriptable
.__interface__
;
5242 mixin Focusable
.__interface__
;
5243 mixin Stylable
.__interface__
;
5245 alias parent super_
;
5248 ToolbarPrivate
* priv
;
5251 // Create a new #MxToolbar. This is not normally necessary if using #MxWindow,
5252 // where #mx_window_get_toolbar should be used to retrieve the toolbar instead.
5253 // RETURNS: A newly allocated #MxToolbar
5254 static Toolbar
* new_()() {
5255 return mx_toolbar_new();
5258 // Get the value of the #MxToolbar:has-close-button property.
5259 // RETURNS: the current value of the "hast-close-button" property.
5260 int get_has_close_button()() {
5261 return mx_toolbar_get_has_close_button(&this);
5264 // Set the #MxToolbar:has-close-button property
5265 // <has_close_button>: #TRUE if a close button should be displayed
5266 void set_has_close_button()(int has_close_button
) {
5267 mx_toolbar_set_has_close_button(&this, has_close_button
);
5270 // Emitted when the close button of the toolbar is clicked.
5272 // Normally, the parent stage will be closed when the close button is
5273 // clicked. Return #TRUE from this handler to prevent the stage from being
5275 // RETURNS: #TRUE to prevent the parent stage being destroyed.
5276 extern (C
) alias static c_int
function (Toolbar
* this_
, void* user_data
=null) signal_close_button_clicked
;
5278 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
5279 return super_
.signal_connect
!name(cb
, data
, cf
);
5282 ulong signal_connect(string name
:"close-button-clicked", CB
:signal_close_button_clicked
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
5283 return signal_connect_data
!()(&this, cast(char*)"close-button-clicked",
5284 cast(GObject2
.Callback
)cb
, data
, null, cf
);
5288 struct ToolbarClass
{
5289 BinClass parent_class
;
5290 extern (C
) int function (Toolbar
* toolbar
) close_button_clicked
;
5291 extern (C
) void function () _padding_0
;
5292 extern (C
) void function () _padding_1
;
5293 extern (C
) void function () _padding_2
;
5294 extern (C
) void function () _padding_3
;
5295 extern (C
) void function () _padding_4
;
5298 struct ToolbarPrivate
{
5302 // The contents of this structure is private and should only be accessed using
5303 // the provided API.
5304 struct Tooltip
/* : FloatingWidget */ {
5305 mixin Atk
.ImplementorIface
.__interface__
;
5306 mixin Clutter
.Animatable
.__interface__
;
5307 mixin Clutter
.Scriptable
.__interface__
;
5308 mixin Stylable
.__interface__
;
5309 alias parent_instance
this;
5310 alias parent_instance super_
;
5311 alias parent_instance floatingwidget
;
5312 FloatingWidget parent_instance
;
5313 private TooltipPrivate
* priv
;
5317 // Browse mode is entered whenever a tooltip is displayed and it is
5318 // left after a short delay when a tooltip is hidden. This is used to
5319 // make tooltips display quicker when a previous tooltip is already
5323 // RETURNS: %TRUE if the app is in tooltip browse mode or %FALSE
5324 static int is_in_browse_mode()() {
5325 return mx_tooltip_is_in_browse_mode();
5328 // Get the text displayed on the tooltip
5329 // RETURNS: the text for the tooltip. This must not be freed by the application
5330 char* get_text()() {
5331 return mx_tooltip_get_text(&this);
5334 // Retrieve the area on the stage that the tooltip currently applies to
5336 // by the application.
5337 // RETURNS: the #ClutterGeometry, owned by the tooltip which must not be freed
5338 Clutter
.Geometry
* get_tip_area()() {
5339 return mx_tooltip_get_tip_area(&this);
5343 mx_tooltip_hide(&this);
5346 // Sets the text displayed on the tooltip
5347 // <text>: text to set the label to
5348 void set_text()(char* text
) {
5349 mx_tooltip_set_text(&this, text
);
5352 // Set the area on the stage that the tooltip applies to.
5353 // <area>: A #ClutterGeometry
5354 void set_tip_area()(Clutter
.Geometry
* area
) {
5355 mx_tooltip_set_tip_area(&this, area
);
5358 // Utility function to set the geometry of the tooltip area
5359 // from an existing actor.
5360 // See also mx_tooltip_set_tip_area
5361 // <actor>: A #ClutterActor
5362 void set_tip_area_from_actor()(Clutter
.Actor
* actor
) {
5363 mx_tooltip_set_tip_area_from_actor(&this, actor
);
5365 // Show the tooltip relative to the associated widget.
5367 mx_tooltip_show(&this);
5371 // Defines the animation when tooltips are shown and hidden.
5372 enum TooltipAnimation
/* Version 1.2 */ {
5376 struct TooltipClass
{
5377 FloatingWidgetClass parent_class
;
5378 extern (C
) void function () _padding_0
;
5379 extern (C
) void function () _padding_1
;
5380 extern (C
) void function () _padding_2
;
5381 extern (C
) void function () _padding_3
;
5382 extern (C
) void function () _padding_4
;
5385 struct TooltipPrivate
{
5388 enum int VERSION_HEX
= 0;
5389 enum VERSION_S
= "1.99.2";
5391 // The contents of this structure are private and should only be accessed
5392 // through the public API.
5393 struct Viewport
/* : Bin */ {
5394 mixin Atk
.ImplementorIface
.__interface__
;
5395 mixin Clutter
.Animatable
.__interface__
;
5396 mixin Clutter
.Container
.__interface__
;
5397 mixin Clutter
.Scriptable
.__interface__
;
5398 mixin Focusable
.__interface__
;
5399 mixin Scrollable
.__interface__
;
5400 mixin Stylable
.__interface__
;
5402 alias parent super_
;
5405 private ViewportPrivate
* priv
;
5407 static Viewport
* new_()() {
5408 return mx_viewport_new();
5410 void get_origin()(float* x
, float* y
, float* z
) {
5411 mx_viewport_get_origin(&this, x
, y
, z
);
5413 int get_sync_adjustments()() {
5414 return mx_viewport_get_sync_adjustments(&this);
5416 void set_origin()(float x
, float y
, float z
) {
5417 mx_viewport_set_origin(&this, x
, y
, z
);
5419 void set_sync_adjustments()(int sync
) {
5420 mx_viewport_set_sync_adjustments(&this, sync
);
5424 struct ViewportClass
{
5425 BinClass parent_class
;
5426 extern (C
) void function () _padding_0
;
5427 extern (C
) void function () _padding_1
;
5428 extern (C
) void function () _padding_2
;
5429 extern (C
) void function () _padding_3
;
5430 extern (C
) void function () _padding_4
;
5433 struct ViewportPrivate
{
5437 // Base class for stylable actors. The contents of the #MxWidget
5438 // structure are private and should only be accessed through the
5440 struct Widget
/* : Clutter.Actor */ {
5441 mixin Atk
.ImplementorIface
.__interface__
;
5442 mixin Clutter
.Animatable
.__interface__
;
5443 mixin Clutter
.Scriptable
.__interface__
;
5444 mixin Stylable
.__interface__
;
5445 alias parent_instance
this;
5446 alias parent_instance super_
;
5447 alias parent_instance actor
;
5448 Clutter
.Actor parent_instance
;
5449 private WidgetPrivate
* priv
;
5453 // Used to implement how a new style instance should be applied in the widget.
5454 // For instance, setting style instance on stylable internal children.
5455 // <style>: A #MxStyle
5456 void apply_style()(Style
* style
) {
5457 mx_widget_apply_style(&this, style
);
5460 // Copies @allocation into @area and accounts for the padding values. This
5461 // gives the area that is available in which to allocate children with respect
5463 // <allocation>: A #ClutterActorBox
5464 // <area>: A #ClutterActorBox
5465 void get_available_area()(Clutter
.ActorBox
* allocation
, Clutter
.ActorBox
* area
) {
5466 mx_widget_get_available_area(&this, allocation
, area
);
5469 // Get the texture used as the background image. This is set using the
5470 // "background-image" CSS property. This function should normally only be used
5472 // RETURNS: a #ClutterActor
5473 Clutter
.Actor
* get_background_image()() {
5474 return mx_widget_get_background_image(&this);
5477 // Get the texture used as the border image. This is set using the
5478 // "border-image" CSS property. This function should normally only be used
5480 // RETURNS: #ClutterActor
5481 Clutter
.Actor
* get_border_image()() {
5482 return mx_widget_get_border_image(&this);
5484 // Get the value of the "disabled" property.
5485 int get_disabled()() {
5486 return mx_widget_get_disabled(&this);
5489 // Get the object in the #MxWidget:menu property.
5490 // RETURNS: The current object in the "menu" property.
5491 Menu
* get_menu()() {
5492 return mx_widget_get_menu(&this);
5495 // Gets the padding of the widget, set using the "padding" CSS property. This
5496 // function should normally only be used by subclasses.
5497 // <padding>: A pointer to an #MxPadding to fill
5498 void get_padding()(Padding
* padding
) {
5499 mx_widget_get_padding(&this, padding
);
5502 // Get the value of the "tooltip-delay" property.
5503 // RETURNS: the current delay value in milliseconds
5504 uint get_tooltip_delay()() {
5505 return mx_widget_get_tooltip_delay(&this);
5508 // Get the current tooltip string
5509 // RETURNS: The current tooltip string, owned by the #MxWidget
5510 char* get_tooltip_text()() {
5511 return mx_widget_get_tooltip_text(&this);
5513 // Hide the tooltip for @widget
5514 void hide_tooltip()() {
5515 mx_widget_hide_tooltip(&this);
5518 // Cancel a long-press timeout if one is running and emit the signal to notify
5519 // that the long-press has been cancelled.
5520 void long_press_cancel()() {
5521 mx_widget_long_press_cancel(&this);
5524 // Emit the long-press query signal and start a long-press timeout if required.
5525 // <event>: the event used to determine whether to run a long-press
5526 void long_press_query()(Clutter
.ButtonEvent
* event
) {
5527 mx_widget_long_press_query(&this, event
);
5530 // Invokes #MxWidget::paint_background() using the default background
5531 // image and/or color from the @widget style
5533 // This function should be used by subclasses of #MxWidget that override
5534 // the paint() virtual function and cannot chain up
5535 void paint_background()() {
5536 mx_widget_paint_background(&this);
5539 // Set the disabled property. Disabled widgets have a "disabled" pseudo-class
5540 // until disabled is set to #FALSE.
5541 // <disabled>: value to set
5542 void set_disabled()(int disabled
) {
5543 mx_widget_set_disabled(&this, disabled
);
5546 // Set the value of the #MxWidget:menu property.
5547 // <menu>: A #MxMenu
5548 void set_menu()(Menu
* menu
) {
5549 mx_widget_set_menu(&this, menu
);
5552 // Set the value, in milliseconds, of the "tooltip-delay" property.
5553 // This is initially set to MX_WIDGET_TOOLTIP_TIMEOUT.
5554 void set_tooltip_delay()(uint delay
) {
5555 mx_widget_set_tooltip_delay(&this, delay
);
5558 // Set the tooltip text of the widget. Note that setting tooltip text will cause
5559 // the widget to be set reactive. If you no longer need tooltips and you do not
5560 // need the widget to be reactive, you must set ClutterActor::reactive to
5562 // <text>: text to set as the tooltip
5563 void set_tooltip_text()(char* text
) {
5564 mx_widget_set_tooltip_text(&this, text
);
5566 // Show the tooltip for @widget
5567 void show_tooltip()() {
5568 mx_widget_show_tooltip(&this);
5570 // Emitted when the user holds a mouse button down for a longer period.
5571 extern (C
) alias static c_int
function (Widget
* this_
, float object
, float p0
, LongPressAction
* p1
, void* user_data
=null) signal_long_press
;
5573 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
5574 return super_
.signal_connect
!name(cb
, data
, cf
);
5577 ulong signal_connect(string name
:"long-press", CB
:signal_long_press
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
5578 return signal_connect_data
!()(&this, cast(char*)"long-press",
5579 cast(GObject2
.Callback
)cb
, data
, null, cf
);
5583 // Base class for stylable actors.
5584 struct WidgetClass
{
5585 private Clutter
.ActorClass parent_class
;
5586 extern (C
) void function (Widget
* self
, Clutter
.Actor
* background
, Clutter
.Color
* color
) paint_background
;
5587 extern (C
) int function (Widget
* widget
, LongPressAction action
, float x
, float y
) long_press
;
5588 // <style>: A #MxStyle
5589 extern (C
) void function (Widget
* widget
, Style
* style
) apply_style
;
5590 extern (C
) void function () _padding_0
;
5591 extern (C
) void function () _padding_1
;
5592 extern (C
) void function () _padding_2
;
5593 extern (C
) void function () _padding_3
;
5594 extern (C
) void function () _padding_4
;
5595 extern (C
) void function () _padding_5
;
5596 extern (C
) void function () _padding_6
;
5597 extern (C
) void function () _padding_7
;
5598 extern (C
) void function () _padding_8
;
5601 struct WidgetPrivate
{
5605 // The contents of this structure is private and should only be accessed using
5606 // the provided API.
5607 struct Window
/* : GObject.Object */ {
5609 alias parent super_
;
5610 alias parent object
;
5611 GObject2
.Object parent
;
5612 WindowPrivate
* priv
;
5615 // Creates a new #MxWindow.
5616 // RETURNS: A #MxWindow
5617 static Window
* /*new*/ new_()() {
5618 return mx_window_new();
5621 // Creates a new #MxWindow, using @stage as the backing #ClutterStage. This
5622 // function is meant for use primarily for embedding a #MxWindow into
5623 // a foreign stage when using a Clutter toolkit integration library.
5624 // RETURNS: A #MxWindow
5625 // <stage>: A #ClutterStage
5626 static Window
* /*new*/ new_with_clutter_stage()(Clutter
.Stage
* stage
) {
5627 return mx_window_new_with_clutter_stage(stage
);
5630 // Gets the #MxWindow parent of the #ClutterStage, if it exists.
5631 // RETURNS: A #MxWindow, or %NULL
5632 // <stage>: A #ClutterStage
5633 static Window
* get_for_stage()(Clutter
.Stage
* stage
) {
5634 return mx_window_get_for_stage(stage
);
5637 // Get the primary child of the window. See mx_window_set_child().
5638 // RETURNS: A #ClutterActor, or %NULL
5639 Clutter
.Actor
* get_child()() {
5640 return mx_window_get_child(&this);
5643 // Gets the #ClutterStage managed by the window.
5644 // RETURNS: A #ClutterStage
5645 Clutter
.Stage
* get_clutter_stage()() {
5646 return mx_window_get_clutter_stage(&this);
5650 // Determines if the window has been set to be in fullscreen mode.
5653 // RETURNS: %TRUE if the window has been set to be in fullscreen mode,
5654 int get_fullscreen()() {
5655 return mx_window_get_fullscreen(&this);
5658 // Determines whether the window has a toolbar or not.
5659 // See mx_window_set_has_toolbar().
5660 // RETURNS: %TRUE if the window has a toolbar, otherwise %FALSE
5661 int get_has_toolbar()() {
5662 return mx_window_get_has_toolbar(&this);
5665 // Gets the currently set window icon name. This will be %NULL if there is none
5666 // set, or the icon was set with mx_window_set_icon_from_cogl_texture().
5667 // RETURNS: The window icon name, or %NULL
5668 char* get_icon_name()() {
5669 return mx_window_get_icon_name(&this);
5672 // Determines if the window is in small-screen mode.
5673 // See mx_window_set_small_screen().
5674 // RETURNS: %TRUE if the window is in small-screen mode, otherwise %FALSE
5675 int get_small_screen()() {
5676 return mx_window_get_small_screen(&this);
5680 // Retrieves the title used for the window.
5681 // RETURNS: The title used for the window
5682 char* get_title()() {
5683 return mx_window_get_title(&this);
5686 // Retrieves the toolbar associated with the window.
5687 // RETURNS: A #MxToolbar
5688 Toolbar
* get_toolbar()() {
5689 return mx_window_get_toolbar(&this);
5692 // Retrieves the absolute position of the window on the screen.
5693 // <x>: A pointer for the x-coordinate
5694 // <y>: A pointer for the y-coordinate
5695 void get_window_position()(/*out*/ int* x
, /*out*/ int* y
) {
5696 mx_window_get_window_position(&this, x
, y
);
5700 // Retrieve the rotation of the window.
5701 // RETURNS: An #MxWindowRotation
5702 WindowRotation
get_window_rotation()() {
5703 return mx_window_get_window_rotation(&this);
5707 // Retrieves the size of the display area of the window, taking into
5708 // account any window border. This includes the area occupied by the
5709 // window's toolbar, if it's enabled.
5710 // <width>: A #gint pointer for the window's width
5711 // <height>: A #gint pointer for the window's height
5712 void get_window_size()(/*out*/ int* width
, /*out*/ int* height
) {
5713 mx_window_get_window_size(&this, width
, height
);
5719 mx_window_hide(&this);
5723 // Present the window. The actual behaviour is specific to the window system.
5725 mx_window_present(&this);
5728 // Adds @actor to the window and sets it as the primary child. When the
5729 // stage managed in the window changes size, the child will be resized
5731 // <actor>: A #ClutterActor
5732 void set_child()(Clutter
.Actor
* actor
) {
5733 mx_window_set_child(&this, actor
);
5737 // Set the window to be in fullscreen mode or windowed mode.
5740 // Setting fullscreen mode doesn't necessarily mean the window is actually
5741 // fullscreen. Setting this property is only a request to the underlying
5744 // <fullscreen>: %TRUE to request fullscreen mode, %FALSE to disable
5745 void set_fullscreen()(int fullscreen
) {
5746 mx_window_set_fullscreen(&this, fullscreen
);
5749 // Sets whether the window has a toolbar or not. If the window has a toolbar,
5750 // client-side window decorations will be enabled.
5751 // <toolbar>: %TRUE if the toolbar should be displayed
5752 void set_has_toolbar()(int toolbar
) {
5753 mx_window_set_has_toolbar(&this, toolbar
);
5756 // Sets the window icon from a texture. This will take precedence over
5757 // any currently set icon-name.
5758 // <texture>: A #CoglHandle for a texture
5759 void set_icon_from_cogl_texture()(Cogl
.Handle texture
) {
5760 mx_window_set_icon_from_cogl_texture(&this, texture
);
5763 // Set an icon-name to use for the window icon. The icon will be looked up
5764 // from the default theme.
5765 // <icon_name>: An icon name, or %NULL
5766 void set_icon_name()(char* icon_name
=null) {
5767 mx_window_set_icon_name(&this, icon_name
);
5770 // Enables or disables small-screen mode. This mode is meant primarily
5771 // for platforms with limited screen-space, such as netbooks. When enabled,
5772 // the window will take up all available room and will disable moving and
5774 // <small_screen>: %TRUE if small-screen mode should be enabled
5775 void set_small_screen()(int small_screen
) {
5776 mx_window_set_small_screen(&this, small_screen
);
5780 // Sets the title used for the window, the results of which are
5781 // window-system specific.
5782 // <title>: A string to use for the window title name
5783 void set_title()(char* title
) {
5784 mx_window_set_title(&this, title
);
5788 // Sets the toolbar associated with the window.
5789 void set_toolbar()(Toolbar
* toolbar
) {
5790 mx_window_set_toolbar(&this, toolbar
);
5793 // Sets the absolute position of the window on the screen.
5794 // <x>: An x-coordinate
5795 // <y>: A y-coordinate
5796 void set_window_position()(int x
, int y
) {
5797 mx_window_set_window_position(&this, x
, y
);
5801 // Set the rotation of the window.
5802 // <rotation>: The #MxWindowRotation
5803 void set_window_rotation()(WindowRotation rotation
) {
5804 mx_window_set_window_rotation(&this, rotation
);
5808 // Sets the size of the window, taking into account any window border. This
5809 // corresponds to the window's available area for its child, minus the area
5810 // occupied by the window's toolbar, if it's enabled.
5813 // Setting the window size may involve a request to the underlying windowing
5814 // system, and may not immediately be reflected.
5816 // <width>: A width, in pixels
5817 // <height>: A height, in pixels
5818 void set_window_size()(int width
, int height
) {
5819 mx_window_set_window_size(&this, width
, height
);
5825 mx_window_show(&this);
5827 // Emitted when the stage managed by the window is destroyed.
5828 extern (C
) alias static void function (Window
* this_
, void* user_data
=null) signal_destroy
;
5830 ulong signal_connect(string name
, CB
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
5831 return super_
.signal_connect
!name(cb
, data
, cf
);
5834 ulong signal_connect(string name
:"destroy", CB
:signal_destroy
)(CB cb
, void* data
=null, ConnectFlags cf
=cast(ConnectFlags
)0) {
5835 return signal_connect_data
!()(&this, cast(char*)"destroy",
5836 cast(GObject2
.Callback
)cb
, data
, null, cf
);
5840 struct WindowClass
{
5841 GObject2
.ObjectClass parent_class
;
5842 extern (C
) void function (Window
* window
) destroy
;
5843 extern (C
) void function () _padding_0
;
5844 extern (C
) void function () _padding_1
;
5845 extern (C
) void function () _padding_2
;
5846 extern (C
) void function () _padding_3
;
5847 extern (C
) void function () _padding_4
;
5850 struct WindowPrivate
{
5853 // Defines the clock-wise rotation angle of a window.
5854 enum WindowRotation
/* Version 1.2 */ {
5860 static void actor_box_clamp_to_pixels()(Clutter
.ActorBox
* box
) {
5861 mx_actor_box_clamp_to_pixels(box
);
5864 static void allocate_align_fill()(Clutter
.Actor
* child
, Clutter
.ActorBox
* childbox
, Align x_alignment
, Align y_alignment
, int x_fill
, int y_fill
) {
5865 mx_allocate_align_fill(child
, childbox
, x_alignment
, y_alignment
, x_fill
, y_fill
);
5868 // MOVED TO: BorderImage.set_from_string
5869 static void border_image_set_from_string()(GObject2
.Value
* value
, char* str, char* filename
) {
5870 mx_border_image_set_from_string(value
, str, filename
);
5875 // MOVED TO: FocusHint.from_direction
5876 // Transforms a focus direction to a focus hint. This is a convenience
5877 // function for actors that implement the #MxFocusable interface, to
5878 // pass the correct #MxFocusHint to their children when calling
5879 // mx_focusable_accept_focus().
5881 // %MX_FOCUS_DIRECTION_UP maps to %MX_FOCUS_HINT_FROM_BELOW,
5882 // %MX_FOCUS_DIRECTION_DOWN maps to %MX_FOCUS_HINT_FROM_ABOVE,
5883 // %MX_FOCUS_DIRECTION_LEFT maps to %MX_FOCUS_HINT_FROM_RIGHT,
5884 // %MX_FOCUS_DIRECTION_RIGHT maps to %MX_FOCUS_HINT_FROM_LEFT,
5885 // %MX_FOCUS_DIRECTION_NEXT maps to %MX_FOCUS_HINT_FIRST,
5886 // %MX_FOCUS_DIRECTION_PREVIOUS maps to %MX_FOCUS_HINT_LAST and
5887 // anything else maps to %MX_FOCUS_HINT_PRIOR.
5888 // RETURNS: A #MxFocusHint
5889 // <direction>: A #MxFocusDirection
5890 static FocusHint
focus_hint_from_direction()(FocusDirection direction
) {
5891 return mx_focus_hint_from_direction(direction
);
5894 // MOVED TO: FontWeight.set_from_string
5895 static void font_weight_set_from_string()(GObject2
.Value
* value
, char* str) {
5896 mx_font_weight_set_from_string(value
, str);
5899 // MOVED TO: ImageError.quark
5900 static GLib2
.Quark
image_error_quark()() {
5901 return mx_image_error_quark();
5905 // Initializes internationalization support for Mx. If MxApplication is
5906 // used, this is called automatically. Otherwise it has to be called
5907 // together with clutter_init() before using Mx.
5908 static void set_locale()() {
5913 // Generates a string describing the time given in @time_ using
5914 // colloquial language suitable for display to the user. Examples of
5915 // what might be returned are "A few minutes ago" or "Yesterday".
5916 // RETURNS: a string. Free with g_free().
5917 // <time_>: a time value
5918 static char* /*new*/ utils_format_time()(GLib2
.TimeVal
* time_
) {
5919 return mx_utils_format_time(time_
);
5926 Action
* /*new*/ mx_action_new();
5927 Action
* /*new*/ mx_action_new_full(char* name
, char* display_name
, ActionCallbackFunc activated_cb
, void* user_data
);
5928 Action
* mx_action_new_stateful(char* name
, GLib2
.VariantType
* parameter_type
, GLib2
.Variant
* state
);
5929 Action
* mx_action_new_with_parameter(char* name
, GLib2
.VariantType
* parameter_type
=null);
5930 int mx_action_get_active(Action
* this_
);
5931 char* mx_action_get_display_name(Action
* this_
);
5932 char* mx_action_get_icon(Action
* this_
);
5933 char* mx_action_get_name(Action
* this_
);
5934 void mx_action_set_active(Action
* this_
, int active
);
5935 void mx_action_set_display_name(Action
* this_
, char* name
);
5936 void mx_action_set_icon(Action
* this_
, char* name
);
5937 void mx_action_set_name(Action
* this_
, char* name
);
5938 ActorManager
* mx_actor_manager_new(Clutter
.Stage
* stage
);
5939 ActorManager
* mx_actor_manager_get_for_stage(Clutter
.Stage
* stage
);
5940 c_ulong
mx_actor_manager_add_actor(ActorManager
* this_
, Clutter
.Container
* container
, Clutter
.Actor
* actor
);
5941 void mx_actor_manager_cancel_operation(ActorManager
* this_
, c_ulong id
);
5942 void mx_actor_manager_cancel_operations(ActorManager
* this_
, Clutter
.Actor
* actor
);
5943 c_ulong
mx_actor_manager_create_actor(ActorManager
* this_
, ActorManagerCreateFunc create_func
, void* userdata
, GLib2
.DestroyNotify destroy_func
);
5944 uint mx_actor_manager_get_n_operations(ActorManager
* this_
);
5945 Clutter
.Stage
* mx_actor_manager_get_stage(ActorManager
* this_
);
5946 uint mx_actor_manager_get_time_slice(ActorManager
* this_
);
5947 c_ulong
mx_actor_manager_remove_actor(ActorManager
* this_
, Clutter
.Container
* container
, Clutter
.Actor
* actor
);
5948 void mx_actor_manager_remove_container(ActorManager
* this_
, Clutter
.Container
* container
);
5949 void mx_actor_manager_set_time_slice(ActorManager
* this_
, uint msecs
);
5950 Adjustment
* /*new*/ mx_adjustment_new();
5951 Adjustment
* /*new*/ mx_adjustment_new_with_values(double value
, double lower
, double upper
, double step_increment
, double page_increment
, double page_size
);
5952 int mx_adjustment_get_clamp_value(Adjustment
* this_
);
5953 int mx_adjustment_get_elastic(Adjustment
* this_
);
5954 double mx_adjustment_get_lower(Adjustment
* this_
);
5955 double mx_adjustment_get_page_increment(Adjustment
* this_
);
5956 double mx_adjustment_get_page_size(Adjustment
* this_
);
5957 double mx_adjustment_get_step_increment(Adjustment
* this_
);
5958 double mx_adjustment_get_upper(Adjustment
* this_
);
5959 double mx_adjustment_get_value(Adjustment
* this_
);
5960 void mx_adjustment_get_values(Adjustment
* this_
, double* value
, double* lower
, double* upper
, double* step_increment
, double* page_increment
, double* page_size
);
5961 void mx_adjustment_interpolate(Adjustment
* this_
, double value
, uint duration
, c_ulong mode
);
5962 void mx_adjustment_interpolate_relative(Adjustment
* this_
, double offset
, uint duration
, c_ulong mode
);
5963 void mx_adjustment_set_clamp_value(Adjustment
* this_
, int clamp
);
5964 void mx_adjustment_set_elastic(Adjustment
* this_
, int elastic
);
5965 void mx_adjustment_set_lower(Adjustment
* this_
, double lower
);
5966 void mx_adjustment_set_page_increment(Adjustment
* this_
, double increment
);
5967 void mx_adjustment_set_page_size(Adjustment
* this_
, double page_size
);
5968 void mx_adjustment_set_step_increment(Adjustment
* this_
, double increment
);
5969 void mx_adjustment_set_upper(Adjustment
* this_
, double upper
);
5970 void mx_adjustment_set_value(Adjustment
* this_
, double value
);
5971 void mx_adjustment_set_values(Adjustment
* this_
, double value
, double lower
, double upper
, double step_increment
, double page_increment
, double page_size
);
5972 Application
* /*new*/ mx_application_new(/*inout*/ int* argc
, /*inout*/ char*** argv
, char* name
, ApplicationFlags flags
);
5973 void mx_application_add_action(Application
* this_
, Action
* action
);
5974 void mx_application_add_window(Application
* this_
, Window
* window
);
5975 Window
* mx_application_create_window(Application
* this_
);
5976 GLib2
.List
* /*new container*/ mx_application_get_actions(Application
* this_
);
5977 ApplicationFlags
mx_application_get_flags(Application
* this_
);
5978 GLib2
.List
* mx_application_get_windows(Application
* this_
);
5979 void mx_application_invoke_action(Application
* this_
, char* name
);
5980 void mx_application_invoke_action_with_parameter(Application
* this_
, char* name
, GLib2
.Variant
* variant
);
5981 int mx_application_is_running(Application
* this_
);
5982 void mx_application_quit(Application
* this_
);
5983 void mx_application_remove_action(Application
* this_
, char* name
);
5984 void mx_application_remove_window(Application
* this_
, Window
* window
);
5985 void mx_application_run(Application
* this_
);
5986 void mx_bin_allocate_child(Bin
* this_
, Clutter
.ActorBox
* box
, Clutter
.AllocationFlags flags
);
5987 void mx_bin_get_alignment(Bin
* this_
, Align
* x_align
, Align
* y_align
);
5988 Clutter
.Actor
* mx_bin_get_child(Bin
* this_
);
5989 void mx_bin_get_fill(Bin
* this_
, /*out*/ int* x_fill
, /*out*/ int* y_fill
);
5990 void mx_bin_set_alignment(Bin
* this_
, Align x_align
, Align y_align
);
5991 void mx_bin_set_child(Bin
* this_
, Clutter
.Actor
* child
);
5992 void mx_bin_set_fill(Bin
* this_
, int x_fill
, int y_fill
);
5993 int mx_border_image_equal(BorderImage
* this_
, BorderImage
* b2
);
5994 void mx_border_image_set_from_string(GObject2
.Value
* value
, char* str, char* filename
);
5995 BoxLayout
* mx_box_layout_new();
5996 BoxLayout
* mx_box_layout_new_with_orientation(Orientation orientation
);
5997 void mx_box_layout_add_actor(BoxLayout
* this_
, Clutter
.Actor
* actor
, int position
);
5998 void mx_box_layout_add_actor_with_properties(BoxLayout
* this_
, Clutter
.Actor
* actor
, int position
, char* first_property
, ...);
5999 int mx_box_layout_child_get_expand(BoxLayout
* this_
, Clutter
.Actor
* child
);
6000 Align
mx_box_layout_child_get_x_align(BoxLayout
* this_
, Clutter
.Actor
* child
);
6001 int mx_box_layout_child_get_x_fill(BoxLayout
* this_
, Clutter
.Actor
* child
);
6002 Align
mx_box_layout_child_get_y_align(BoxLayout
* this_
, Clutter
.Actor
* child
);
6003 int mx_box_layout_child_get_y_fill(BoxLayout
* this_
, Clutter
.Actor
* child
);
6004 void mx_box_layout_child_set_expand(BoxLayout
* this_
, Clutter
.Actor
* child
, int expand
);
6005 void mx_box_layout_child_set_x_align(BoxLayout
* this_
, Clutter
.Actor
* child
, Align x_align
);
6006 void mx_box_layout_child_set_x_fill(BoxLayout
* this_
, Clutter
.Actor
* child
, int x_fill
);
6007 void mx_box_layout_child_set_y_align(BoxLayout
* this_
, Clutter
.Actor
* child
, Align y_align
);
6008 void mx_box_layout_child_set_y_fill(BoxLayout
* this_
, Clutter
.Actor
* child
, int y_fill
);
6009 int mx_box_layout_get_enable_animations(BoxLayout
* this_
);
6010 Orientation
mx_box_layout_get_orientation(BoxLayout
* this_
);
6011 int mx_box_layout_get_scroll_to_focused(BoxLayout
* this_
);
6012 uint mx_box_layout_get_spacing(BoxLayout
* this_
);
6013 void mx_box_layout_set_enable_animations(BoxLayout
* this_
, int enable_animations
);
6014 void mx_box_layout_set_orientation(BoxLayout
* this_
, Orientation orientation
);
6015 void mx_box_layout_set_scroll_to_focused(BoxLayout
* this_
, int scroll_to_focused
);
6016 void mx_box_layout_set_spacing(BoxLayout
* this_
, uint spacing
);
6017 Button
* mx_button_new();
6018 Button
* mx_button_new_with_label(char* text
);
6019 Action
* mx_button_get_action(Button
* this_
);
6020 char* mx_button_get_icon_name(Button
* this_
);
6021 Position
mx_button_get_icon_position(Button
* this_
);
6022 uint mx_button_get_icon_size(Button
* this_
);
6023 int mx_button_get_icon_visible(Button
* this_
);
6024 int mx_button_get_is_toggle(Button
* this_
);
6025 char* mx_button_get_label(Button
* this_
);
6026 int mx_button_get_label_visible(Button
* this_
);
6027 int mx_button_get_toggled(Button
* this_
);
6028 void mx_button_set_action(Button
* this_
, Action
* action
);
6029 void mx_button_set_icon_name(Button
* this_
, char* icon_name
=null);
6030 void mx_button_set_icon_position(Button
* this_
, Position position
);
6031 void mx_button_set_icon_size(Button
* this_
, uint icon_size
);
6032 void mx_button_set_icon_visible(Button
* this_
, int visible
);
6033 void mx_button_set_is_toggle(Button
* this_
, int toggle
);
6034 void mx_button_set_label(Button
* this_
, char* text
);
6035 void mx_button_set_label_visible(Button
* this_
, int visible
);
6036 void mx_button_set_toggled(Button
* this_
, int toggled
);
6037 ButtonGroup
* mx_button_group_new();
6038 void mx_button_group_add(ButtonGroup
* this_
, Button
* button
);
6039 void mx_button_group_foreach(ButtonGroup
* this_
, Clutter
.Callback callback
, void* userdata
);
6040 Button
* mx_button_group_get_active_button(ButtonGroup
* this_
);
6041 int mx_button_group_get_allow_no_active(ButtonGroup
* this_
);
6042 GLib2
.SList
* mx_button_group_get_buttons(ButtonGroup
* this_
);
6043 void mx_button_group_remove(ButtonGroup
* this_
, Button
* button
);
6044 void mx_button_group_set_active_button(ButtonGroup
* this_
, Button
* button
=null);
6045 void mx_button_group_set_allow_no_active(ButtonGroup
* this_
, int allow_no_active
);
6046 Clipboard
* mx_clipboard_get_default();
6047 void mx_clipboard_get_text(Clipboard
* this_
, ClipboardCallbackFunc callback
, void* user_data
);
6048 void mx_clipboard_set_text(Clipboard
* this_
, char* text
);
6049 ComboBox
* mx_combo_box_new();
6050 void mx_combo_box_append_text(ComboBox
* this_
, char* text
);
6051 char* mx_combo_box_get_active_icon_name(ComboBox
* this_
);
6052 char* mx_combo_box_get_active_text(ComboBox
* this_
);
6053 int mx_combo_box_get_index(ComboBox
* this_
);
6054 void mx_combo_box_insert_text(ComboBox
* this_
, int position
, char* text
);
6055 void mx_combo_box_insert_text_with_icon(ComboBox
* this_
, int position
, char* text
, char* icon
);
6056 void mx_combo_box_prepend_text(ComboBox
* this_
, char* text
);
6057 void mx_combo_box_remove_all(ComboBox
* this_
);
6058 void mx_combo_box_remove_text(ComboBox
* this_
, int position
);
6059 void mx_combo_box_set_active_icon_name(ComboBox
* this_
, char* icon_name
=null);
6060 void mx_combo_box_set_active_text(ComboBox
* this_
, char* text
);
6061 void mx_combo_box_set_index(ComboBox
* this_
, int index
);
6062 DeformBowTie
* mx_deform_bow_tie_new();
6063 int mx_deform_bow_tie_get_flip_back(DeformBowTie
* this_
);
6064 double mx_deform_bow_tie_get_period(DeformBowTie
* this_
);
6065 void mx_deform_bow_tie_set_flip_back(DeformBowTie
* this_
, int flip_back
);
6066 void mx_deform_bow_tie_set_period(DeformBowTie
* this_
, double period
);
6067 DeformPageTurn
* mx_deform_page_turn_new();
6068 double mx_deform_page_turn_get_angle(DeformPageTurn
* this_
);
6069 double mx_deform_page_turn_get_period(DeformPageTurn
* this_
);
6070 double mx_deform_page_turn_get_radius(DeformPageTurn
* this_
);
6071 void mx_deform_page_turn_set_angle(DeformPageTurn
* this_
, double angle
);
6072 void mx_deform_page_turn_set_period(DeformPageTurn
* this_
, double period
);
6073 void mx_deform_page_turn_set_radius(DeformPageTurn
* this_
, double radius
);
6074 void mx_deform_texture_get_resolution(DeformTexture
* this_
, /*out*/ int* tiles_x
=null, /*out*/ int* tiles_y
=null);
6075 void mx_deform_texture_get_textures(DeformTexture
* this_
, /*out*/ Clutter
.Texture
** front
=null, /*out*/ Clutter
.Texture
** back
=null);
6076 void mx_deform_texture_invalidate(DeformTexture
* this_
);
6077 void mx_deform_texture_set_resolution(DeformTexture
* this_
, int tiles_x
, int tiles_y
);
6078 void mx_deform_texture_set_textures(DeformTexture
* this_
, Clutter
.Texture
* front
=null, Clutter
.Texture
* back
=null);
6079 DeformWaves
* mx_deform_waves_new();
6080 double mx_deform_waves_get_amplitude(DeformWaves
* this_
);
6081 double mx_deform_waves_get_angle(DeformWaves
* this_
);
6082 double mx_deform_waves_get_period(DeformWaves
* this_
);
6083 double mx_deform_waves_get_radius(DeformWaves
* this_
);
6084 void mx_deform_waves_set_amplitude(DeformWaves
* this_
, double amplitude
);
6085 void mx_deform_waves_set_angle(DeformWaves
* this_
, double angle
);
6086 void mx_deform_waves_set_period(DeformWaves
* this_
, double period
);
6087 void mx_deform_waves_set_radius(DeformWaves
* this_
, double radius
);
6088 Dialog
* mx_dialog_new();
6089 void mx_dialog_add_action(Dialog
* this_
, Action
* action
);
6090 GLib2
.List
* /*new container*/ mx_dialog_get_actions(Dialog
* this_
);
6091 void mx_dialog_remove_action(Dialog
* this_
, Action
* action
);
6092 void mx_dialog_set_transient_parent(Dialog
* this_
, Clutter
.Actor
* actor
);
6093 void mx_draggable_disable(Draggable
* this_
);
6094 void mx_draggable_enable(Draggable
* this_
);
6095 DragAxis
mx_draggable_get_axis(Draggable
* this_
);
6096 Clutter
.Actor
* mx_draggable_get_drag_actor(Draggable
* this_
);
6097 uint mx_draggable_get_drag_threshold(Draggable
* this_
);
6098 int mx_draggable_is_enabled(Draggable
* this_
);
6099 void mx_draggable_set_axis(Draggable
* this_
, DragAxis axis
);
6100 void mx_draggable_set_drag_actor(Draggable
* this_
, Clutter
.Actor
* actor
);
6101 void mx_draggable_set_drag_threshold(Draggable
* this_
, uint threshold
);
6102 int mx_droppable_accept_drop(Droppable
* this_
, Draggable
* draggable
);
6103 void mx_droppable_disable(Droppable
* this_
);
6104 void mx_droppable_enable(Droppable
* this_
);
6105 int mx_droppable_is_enabled(Droppable
* this_
);
6106 Entry
* mx_entry_new();
6107 Entry
* mx_entry_new_with_text(char* text
);
6108 Clutter
.Actor
* mx_entry_get_clutter_text(Entry
* this_
);
6109 char* mx_entry_get_hint_text(Entry
* this_
);
6110 char* mx_entry_get_icon_highlight_suffix(Entry
* this_
);
6111 dchar mx_entry_get_password_char(Entry
* this_
);
6112 char* mx_entry_get_text(Entry
* this_
);
6113 void mx_entry_set_hint_text(Entry
* this_
, char* text
);
6114 void mx_entry_set_icon_highlight_suffix(Entry
* this_
, char* suffix
);
6115 void mx_entry_set_password_char(Entry
* this_
, dchar password_char
);
6116 void mx_entry_set_primary_icon_from_file(Entry
* this_
, char* filename
);
6117 void mx_entry_set_primary_icon_tooltip_text(Entry
* this_
, char* text
);
6118 void mx_entry_set_secondary_icon_from_file(Entry
* this_
, char* filename
);
6119 void mx_entry_set_secondary_icon_tooltip_text(Entry
* this_
, char* text
);
6120 void mx_entry_set_text(Entry
* this_
, char* text
);
6121 Expander
* mx_expander_new();
6122 int mx_expander_get_expanded(Expander
* this_
);
6123 void mx_expander_set_expanded(Expander
* this_
, int expanded
);
6124 void mx_expander_set_label(Expander
* this_
, char* label
);
6125 FadeEffect
* mx_fade_effect_new();
6126 void mx_fade_effect_get_border(FadeEffect
* this_
, /*out*/ uint* top
, /*out*/ uint* right
, /*out*/ uint* bottom
, /*out*/ uint* left
);
6127 void mx_fade_effect_get_bounds(FadeEffect
* this_
, /*out*/ int* x
, /*out*/ int* y
, /*out*/ uint* width
, /*out*/ uint* height
);
6128 void mx_fade_effect_get_color(FadeEffect
* this_
, /*out*/ Clutter
.Color
* color
);
6129 void mx_fade_effect_set_border(FadeEffect
* this_
, uint top
, uint right
, uint bottom
, uint left
);
6130 void mx_fade_effect_set_bounds(FadeEffect
* this_
, int x
, int y
, uint width
, uint height
);
6131 void mx_fade_effect_set_color(FadeEffect
* this_
, Clutter
.Color
* color
);
6132 FocusManager
* mx_focus_manager_get_for_stage(Clutter
.Stage
* stage
);
6133 Focusable
* mx_focus_manager_get_focused(FocusManager
* this_
);
6134 Clutter
.Stage
* mx_focus_manager_get_stage(FocusManager
* this_
);
6135 void mx_focus_manager_move_focus(FocusManager
* this_
, FocusDirection direction
);
6136 void mx_focus_manager_push_focus(FocusManager
* this_
, Focusable
* focusable
);
6137 void mx_focus_manager_push_focus_with_hint(FocusManager
* this_
, Focusable
* focusable
, FocusHint hint
);
6138 Focusable
* mx_focusable_accept_focus(Focusable
* this_
, FocusHint hint
);
6139 Focusable
* mx_focusable_move_focus(Focusable
* this_
, FocusDirection direction
, Focusable
* from
);
6140 Frame
* mx_frame_new();
6141 Grid
* mx_grid_new();
6142 Align
mx_grid_get_child_x_align(Grid
* this_
);
6143 Align
mx_grid_get_child_y_align(Grid
* this_
);
6144 float mx_grid_get_column_spacing(Grid
* this_
);
6145 int mx_grid_get_homogenous_columns(Grid
* this_
);
6146 int mx_grid_get_homogenous_rows(Grid
* this_
);
6147 int mx_grid_get_line_alignment(Grid
* this_
);
6148 int mx_grid_get_max_stride(Grid
* this_
);
6149 Orientation
mx_grid_get_orientation(Grid
* this_
);
6150 float mx_grid_get_row_spacing(Grid
* this_
);
6151 void mx_grid_set_child_x_align(Grid
* this_
, Align value
);
6152 void mx_grid_set_child_y_align(Grid
* this_
, Align value
);
6153 void mx_grid_set_column_spacing(Grid
* this_
, float value
);
6154 void mx_grid_set_homogenous_columns(Grid
* this_
, int value
);
6155 void mx_grid_set_homogenous_rows(Grid
* this_
, int value
);
6156 void mx_grid_set_line_alignment(Grid
* this_
, Align value
);
6157 void mx_grid_set_max_stride(Grid
* this_
, int value
);
6158 void mx_grid_set_orientation(Grid
* this_
, Orientation orientation
);
6159 void mx_grid_set_row_spacing(Grid
* this_
, float value
);
6160 Icon
* mx_icon_new();
6161 char* mx_icon_get_icon_name(Icon
* this_
);
6162 int mx_icon_get_icon_size(Icon
* this_
);
6163 void mx_icon_set_icon_name(Icon
* this_
, char* icon_name
);
6164 void mx_icon_set_icon_size(Icon
* this_
, int size
);
6165 IconTheme
* /*new*/ mx_icon_theme_new();
6166 IconTheme
* mx_icon_theme_get_default();
6167 GLib2
.List
* mx_icon_theme_get_search_paths(IconTheme
* this_
);
6168 char* mx_icon_theme_get_theme_name(IconTheme
* this_
);
6169 int mx_icon_theme_has_icon(IconTheme
* this_
, char* icon_name
);
6170 Cogl
.Handle
mx_icon_theme_lookup(IconTheme
* this_
, char* icon_name
, int size
);
6171 Clutter
.Texture
* mx_icon_theme_lookup_texture(IconTheme
* this_
, char* icon_name
, int size
);
6172 void mx_icon_theme_set_search_paths(IconTheme
* this_
, GLib2
.List
* paths
);
6173 void mx_icon_theme_set_theme_name(IconTheme
* this_
, char* theme_name
);
6174 Image
* mx_image_new();
6175 void mx_image_animate_scale_mode(Image
* this_
, c_ulong mode
, uint duration
, ImageScaleMode scale_mode
);
6176 void mx_image_clear(Image
* this_
);
6177 int mx_image_get_allow_upscale(Image
* this_
);
6178 float mx_image_get_image_rotation(Image
* this_
);
6179 int mx_image_get_load_async(Image
* this_
);
6180 uint mx_image_get_scale_height_threshold(Image
* this_
);
6181 ImageScaleMode
mx_image_get_scale_mode(Image
* this_
);
6182 uint mx_image_get_scale_width_threshold(Image
* this_
);
6183 uint mx_image_get_transition_duration(Image
* this_
);
6184 void mx_image_set_allow_upscale(Image
* this_
, int allow
);
6185 int mx_image_set_from_buffer(Image
* this_
, ubyte* buffer
, size_t buffer_size
, GLib2
.DestroyNotify buffer_free_func
, GLib2
.Error
** error
);
6186 int mx_image_set_from_buffer_at_size(Image
* this_
, ubyte* buffer
, size_t buffer_size
, GLib2
.DestroyNotify buffer_free_func
, int width
, int height
, GLib2
.Error
** error
);
6187 int mx_image_set_from_cogl_texture(Image
* this_
, Cogl
.Handle texture
);
6188 int mx_image_set_from_data(Image
* this_
, ubyte* data
, Cogl
.PixelFormat pixel_format
, int width
, int height
, int rowstride
, GLib2
.Error
** error
);
6189 int mx_image_set_from_file(Image
* this_
, char* filename
, GLib2
.Error
** error
);
6190 int mx_image_set_from_file_at_size(Image
* this_
, char* filename
, int width
, int height
, GLib2
.Error
** error
);
6191 void mx_image_set_image_rotation(Image
* this_
, float rotation
);
6192 void mx_image_set_load_async(Image
* this_
, int load_async
);
6193 void mx_image_set_scale_height_threshold(Image
* this_
, uint pixels
);
6194 void mx_image_set_scale_mode(Image
* this_
, ImageScaleMode mode
);
6195 void mx_image_set_scale_width_threshold(Image
* this_
, uint pixels
);
6196 void mx_image_set_transition_duration(Image
* this_
, uint duration
);
6197 Clutter
.Actor
* /*new*/ mx_item_factory_create(ItemFactory
* this_
);
6198 ItemView
* mx_item_view_new();
6199 void mx_item_view_add_attribute(ItemView
* this_
, char* attribute
, int column
);
6200 void mx_item_view_freeze(ItemView
* this_
);
6201 ItemFactory
* mx_item_view_get_factory(ItemView
* this_
);
6202 Type
mx_item_view_get_item_type(ItemView
* this_
);
6203 Clutter
.Model
* mx_item_view_get_model(ItemView
* this_
);
6204 void mx_item_view_set_factory(ItemView
* this_
, ItemFactory
* factory
=null);
6205 void mx_item_view_set_item_type(ItemView
* this_
, Type item_type
);
6206 void mx_item_view_set_model(ItemView
* this_
, Clutter
.Model
* model
);
6207 void mx_item_view_thaw(ItemView
* this_
);
6208 KineticScrollView
* mx_kinetic_scroll_view_new();
6209 double mx_kinetic_scroll_view_get_acceleration_factor(KineticScrollView
* this_
);
6210 uint mx_kinetic_scroll_view_get_clamp_duration(KineticScrollView
* this_
);
6211 c_ulong
mx_kinetic_scroll_view_get_clamp_mode(KineticScrollView
* this_
);
6212 int mx_kinetic_scroll_view_get_clamp_to_center(KineticScrollView
* this_
);
6213 double mx_kinetic_scroll_view_get_deceleration(KineticScrollView
* this_
);
6214 uint mx_kinetic_scroll_view_get_mouse_button(KineticScrollView
* this_
);
6215 double mx_kinetic_scroll_view_get_overshoot(KineticScrollView
* this_
);
6216 ScrollPolicy
mx_kinetic_scroll_view_get_scroll_policy(KineticScrollView
* this_
);
6217 int mx_kinetic_scroll_view_get_use_captured(KineticScrollView
* this_
);
6218 void mx_kinetic_scroll_view_set_acceleration_factor(KineticScrollView
* this_
, double acceleration_factor
);
6219 void mx_kinetic_scroll_view_set_clamp_duration(KineticScrollView
* this_
, uint clamp_duration
);
6220 void mx_kinetic_scroll_view_set_clamp_mode(KineticScrollView
* this_
, c_ulong clamp_mode
);
6221 void mx_kinetic_scroll_view_set_clamp_to_center(KineticScrollView
* this_
, int clamp_to_center
);
6222 void mx_kinetic_scroll_view_set_deceleration(KineticScrollView
* this_
, double rate
);
6223 void mx_kinetic_scroll_view_set_mouse_button(KineticScrollView
* this_
, uint button
);
6224 void mx_kinetic_scroll_view_set_overshoot(KineticScrollView
* this_
, double overshoot
);
6225 void mx_kinetic_scroll_view_set_scroll_policy(KineticScrollView
* this_
, ScrollPolicy policy
);
6226 void mx_kinetic_scroll_view_set_use_captured(KineticScrollView
* this_
, int use_captured
);
6227 void mx_kinetic_scroll_view_stop(KineticScrollView
* this_
);
6228 Label
* mx_label_new();
6229 Label
* mx_label_new_with_text(char* text
);
6230 Clutter
.Actor
* mx_label_get_clutter_text(Label
* this_
);
6231 int mx_label_get_fade_out(Label
* this_
);
6232 int mx_label_get_line_wrap(Label
* this_
);
6233 int mx_label_get_show_tooltip(Label
* this_
);
6234 char* mx_label_get_text(Label
* this_
);
6235 int mx_label_get_use_markup(Label
* this_
);
6236 Align
mx_label_get_x_align(Label
* this_
);
6237 Align
mx_label_get_y_align(Label
* this_
);
6238 void mx_label_set_fade_out(Label
* this_
, int fade
);
6239 void mx_label_set_line_wrap(Label
* this_
, int line_wrap
);
6240 void mx_label_set_show_tooltip(Label
* this_
, int show_tooltip
);
6241 void mx_label_set_text(Label
* this_
, char* text
);
6242 void mx_label_set_use_markup(Label
* this_
, int use_markup
);
6243 void mx_label_set_x_align(Label
* this_
, Align align_
);
6244 void mx_label_set_y_align(Label
* this_
, Align align_
);
6245 ListView
* mx_list_view_new();
6246 void mx_list_view_add_attribute(ListView
* this_
, char* attribute
, int column
);
6247 void mx_list_view_freeze(ListView
* this_
);
6248 ItemFactory
* mx_list_view_get_factory(ListView
* this_
);
6249 Type
mx_list_view_get_item_type(ListView
* this_
);
6250 Clutter
.Model
* mx_list_view_get_model(ListView
* this_
);
6251 void mx_list_view_set_factory(ListView
* this_
, ItemFactory
* factory
=null);
6252 void mx_list_view_set_item_type(ListView
* this_
, Type item_type
);
6253 void mx_list_view_set_model(ListView
* this_
, Clutter
.Model
* model
);
6254 void mx_list_view_thaw(ListView
* this_
);
6255 Menu
* mx_menu_new();
6256 void mx_menu_add_action(Menu
* this_
, Action
* action
);
6257 void mx_menu_remove_action(Menu
* this_
, Action
* action
);
6258 void mx_menu_remove_all(Menu
* this_
);
6259 void mx_menu_show_with_position(Menu
* this_
, float x
, float y
);
6260 Notebook
* mx_notebook_new();
6261 Clutter
.Actor
* mx_notebook_get_current_page(Notebook
* this_
);
6262 int mx_notebook_get_enable_gestures(Notebook
* this_
);
6263 void mx_notebook_next_page(Notebook
* this_
);
6264 void mx_notebook_previous_page(Notebook
* this_
);
6265 void mx_notebook_set_current_page(Notebook
* this_
, Clutter
.Actor
* page
);
6266 void mx_notebook_set_enable_gestures(Notebook
* this_
, int enabled
);
6267 Offscreen
* mx_offscreen_new();
6268 int mx_offscreen_get_accumulation_enabled(Offscreen
* this_
);
6269 Cogl
.Handle
mx_offscreen_get_accumulation_material(Offscreen
* this_
);
6270 int mx_offscreen_get_auto_update(Offscreen
* this_
);
6271 Cogl
.Handle
mx_offscreen_get_buffer(Offscreen
* this_
);
6272 Clutter
.Actor
* mx_offscreen_get_child(Offscreen
* this_
);
6273 int mx_offscreen_get_pick_child(Offscreen
* this_
);
6274 int mx_offscreen_get_redirect_enabled(Offscreen
* this_
);
6275 void mx_offscreen_set_accumulation_enabled(Offscreen
* this_
, int enable
);
6276 void mx_offscreen_set_auto_update(Offscreen
* this_
, int auto_update
);
6277 void mx_offscreen_set_child(Offscreen
* this_
, Clutter
.Actor
* actor
);
6278 void mx_offscreen_set_pick_child(Offscreen
* this_
, int pick
);
6279 void mx_offscreen_set_redirect_enabled(Offscreen
* this_
, int enabled
);
6280 void mx_offscreen_update(Offscreen
* this_
);
6281 PathBar
* mx_path_bar_new();
6282 void mx_path_bar_clear(PathBar
* this_
);
6283 int mx_path_bar_get_clear_on_change(PathBar
* this_
);
6284 int mx_path_bar_get_editable(PathBar
* this_
);
6285 Entry
* mx_path_bar_get_entry(PathBar
* this_
);
6286 char* mx_path_bar_get_label(PathBar
* this_
, int level
);
6287 int mx_path_bar_get_level(PathBar
* this_
);
6288 char* mx_path_bar_get_text(PathBar
* this_
);
6289 int mx_path_bar_pop(PathBar
* this_
);
6290 int mx_path_bar_push(PathBar
* this_
, char* name
);
6291 void mx_path_bar_set_clear_on_change(PathBar
* this_
, int clear_on_change
);
6292 void mx_path_bar_set_editable(PathBar
* this_
, int editable
);
6293 void mx_path_bar_set_label(PathBar
* this_
, int level
, char* label
);
6294 void mx_path_bar_set_text(PathBar
* this_
, char* text
);
6295 ProgressBar
* mx_progress_bar_new();
6296 double mx_progress_bar_get_progress(ProgressBar
* this_
);
6297 void mx_progress_bar_set_progress(ProgressBar
* this_
, double progress
);
6298 ScrollBar
* mx_scroll_bar_new();
6299 ScrollBar
* mx_scroll_bar_new_with_adjustment(Adjustment
* adjustment
);
6300 Adjustment
* mx_scroll_bar_get_adjustment(ScrollBar
* this_
);
6301 Orientation
mx_scroll_bar_get_orientation(ScrollBar
* this_
);
6302 void mx_scroll_bar_set_adjustment(ScrollBar
* this_
, Adjustment
* adjustment
);
6303 void mx_scroll_bar_set_orientation(ScrollBar
* this_
, Orientation orientation
);
6304 ScrollView
* mx_scroll_view_new();
6305 void mx_scroll_view_ensure_visible(ScrollView
* this_
, Clutter
.Geometry
* geometry
);
6306 int mx_scroll_view_get_enable_gestures(ScrollView
* this_
);
6307 int mx_scroll_view_get_enable_mouse_scrolling(ScrollView
* this_
);
6308 ScrollPolicy
mx_scroll_view_get_scroll_policy(ScrollView
* this_
);
6309 void mx_scroll_view_set_enable_gestures(ScrollView
* this_
, int enabled
);
6310 void mx_scroll_view_set_enable_mouse_scrolling(ScrollView
* this_
, int enabled
);
6311 void mx_scroll_view_set_scroll_policy(ScrollView
* this_
, ScrollPolicy policy
);
6312 void mx_scrollable_get_adjustments(Scrollable
* this_
, /*out*/ Adjustment
** hadjustment
=null, /*out*/ Adjustment
** vadjustment
=null);
6313 void mx_scrollable_set_adjustments(Scrollable
* this_
, Adjustment
* hadjustment
, Adjustment
* vadjustment
);
6314 Settings
* mx_settings_get_default();
6315 Slider
* mx_slider_new();
6316 double mx_slider_get_buffer_value(Slider
* this_
);
6317 double mx_slider_get_value(Slider
* this_
);
6318 void mx_slider_set_buffer_value(Slider
* this_
, double value
);
6319 void mx_slider_set_value(Slider
* this_
, double value
);
6320 Spinner
* mx_spinner_new();
6321 int mx_spinner_get_animating(Spinner
* this_
);
6322 void mx_spinner_set_animating(Spinner
* this_
, int animating
);
6323 Stack
* mx_stack_new();
6324 int mx_stack_child_get_crop(Stack
* this_
, Clutter
.Actor
* child
);
6325 int mx_stack_child_get_fit(Stack
* this_
, Clutter
.Actor
* child
);
6326 Align
mx_stack_child_get_x_align(Stack
* this_
, Clutter
.Actor
* child
);
6327 int mx_stack_child_get_x_fill(Stack
* this_
, Clutter
.Actor
* child
);
6328 Align
mx_stack_child_get_y_align(Stack
* this_
, Clutter
.Actor
* child
);
6329 int mx_stack_child_get_y_fill(Stack
* this_
, Clutter
.Actor
* child
);
6330 void mx_stack_child_set_crop(Stack
* this_
, Clutter
.Actor
* child
, int crop
);
6331 void mx_stack_child_set_fit(Stack
* this_
, Clutter
.Actor
* child
, int fit
);
6332 void mx_stack_child_set_x_align(Stack
* this_
, Clutter
.Actor
* child
, Align x_align
);
6333 void mx_stack_child_set_x_fill(Stack
* this_
, Clutter
.Actor
* child
, int x_fill
);
6334 void mx_stack_child_set_y_align(Stack
* this_
, Clutter
.Actor
* child
, Align y_align
);
6335 void mx_stack_child_set_y_fill(Stack
* this_
, Clutter
.Actor
* child
, int y_fill
);
6336 void mx_stylable_apply_clutter_text_attributes(Stylable
* this_
, Clutter
.Text
* text
);
6337 void mx_stylable_connect_change_notifiers(Stylable
* this_
);
6338 GObject2
.ParamSpec
* mx_stylable_find_property(Stylable
* this_
, char* property_name
);
6339 void mx_stylable_get(Stylable
* this_
, char* first_property_name
, ...);
6340 int mx_stylable_get_default_value(Stylable
* this_
, char* property_name
, /*out*/ GObject2
.Value
* value_out
);
6341 void mx_stylable_get_property(Stylable
* this_
, char* property_name
, /*out*/ GObject2
.Value
* value
);
6342 Style
* mx_stylable_get_style(Stylable
* this_
);
6343 char* mx_stylable_get_style_class(Stylable
* this_
);
6344 char* mx_stylable_get_style_pseudo_class(Stylable
* this_
);
6345 GObject2
.ParamSpec
** /*new container*/ mx_stylable_list_properties(Stylable
* this_
, /*out*/ uint* n_props
);
6346 void mx_stylable_set_style(Stylable
* this_
, Style
* style
);
6347 void mx_stylable_set_style_class(Stylable
* this_
, char* style_class
);
6348 void mx_stylable_set_style_pseudo_class(Stylable
* this_
, char* pseudo_class
);
6349 void mx_stylable_style_changed(Stylable
* this_
, StyleChangedFlags flags
);
6350 void mx_stylable_style_pseudo_class_add(Stylable
* this_
, char* new_class
);
6351 int mx_stylable_style_pseudo_class_contains(Stylable
* this_
, char* pseudo_class
);
6352 void mx_stylable_style_pseudo_class_remove(Stylable
* this_
, char* remove_class
);
6353 void mx_stylable_iface_install_property(StylableIface
* this_
, Type owner_type
, GObject2
.ParamSpec
* pspec
);
6354 Style
* /*new*/ mx_style_new();
6355 Style
* mx_style_get_default();
6356 void mx_style_get(Style
* this_
, Stylable
* stylable
, char* first_property_name
, ...);
6357 void mx_style_get_property(Style
* this_
, Stylable
* stylable
, GObject2
.ParamSpec
* pspec
, /*out*/ GObject2
.Value
* value
);
6358 void mx_style_get_valist(Style
* this_
, Stylable
* stylable
, char* first_property_name
, va_list va_args
);
6359 int mx_style_load_from_file(Style
* this_
, char* filename
, GLib2
.Error
** error
);
6360 Table
* mx_table_new();
6361 void mx_table_add_actor(Table
* this_
, Clutter
.Actor
* actor
, int row
, int column
);
6362 void mx_table_add_actor_with_properties(Table
* this_
, Clutter
.Actor
* actor
, int row
, int column
, char* first_property_name
, ...);
6363 int mx_table_child_get_column(Table
* this_
, Clutter
.Actor
* child
);
6364 int mx_table_child_get_column_span(Table
* this_
, Clutter
.Actor
* child
);
6365 int mx_table_child_get_row(Table
* this_
, Clutter
.Actor
* child
);
6366 int mx_table_child_get_row_span(Table
* this_
, Clutter
.Actor
* child
);
6367 Align
mx_table_child_get_x_align(Table
* this_
, Clutter
.Actor
* child
);
6368 int mx_table_child_get_x_expand(Table
* this_
, Clutter
.Actor
* child
);
6369 int mx_table_child_get_x_fill(Table
* this_
, Clutter
.Actor
* child
);
6370 Align
mx_table_child_get_y_align(Table
* this_
, Clutter
.Actor
* child
);
6371 int mx_table_child_get_y_expand(Table
* this_
, Clutter
.Actor
* child
);
6372 int mx_table_child_get_y_fill(Table
* this_
, Clutter
.Actor
* child
);
6373 void mx_table_child_set_column(Table
* this_
, Clutter
.Actor
* child
, int col
);
6374 void mx_table_child_set_column_span(Table
* this_
, Clutter
.Actor
* child
, int span
);
6375 void mx_table_child_set_row(Table
* this_
, Clutter
.Actor
* child
, int row
);
6376 void mx_table_child_set_row_span(Table
* this_
, Clutter
.Actor
* child
, int span
);
6377 void mx_table_child_set_x_align(Table
* this_
, Clutter
.Actor
* child
, Align align_
);
6378 void mx_table_child_set_x_expand(Table
* this_
, Clutter
.Actor
* child
, int expand
);
6379 void mx_table_child_set_x_fill(Table
* this_
, Clutter
.Actor
* child
, int fill
);
6380 void mx_table_child_set_y_align(Table
* this_
, Clutter
.Actor
* child
, Align align_
);
6381 void mx_table_child_set_y_expand(Table
* this_
, Clutter
.Actor
* child
, int expand
);
6382 void mx_table_child_set_y_fill(Table
* this_
, Clutter
.Actor
* child
, int fill
);
6383 int mx_table_get_column_count(Table
* this_
);
6384 int mx_table_get_column_spacing(Table
* this_
);
6385 int mx_table_get_row_count(Table
* this_
);
6386 int mx_table_get_row_spacing(Table
* this_
);
6387 void mx_table_set_column_spacing(Table
* this_
, int spacing
);
6388 void mx_table_set_row_spacing(Table
* this_
, int spacing
);
6389 TextureCache
* mx_texture_cache_get_default();
6390 int mx_texture_cache_contains(TextureCache
* this_
, char* uri
);
6391 int mx_texture_cache_contains_meta(TextureCache
* this_
, char* uri
, void* ident
);
6392 Clutter
.Actor
* mx_texture_cache_get_actor(TextureCache
* this_
, char* uri
);
6393 Cogl
.Handle
mx_texture_cache_get_cogl_texture(TextureCache
* this_
, char* uri
);
6394 Cogl
.Handle
/*new*/ mx_texture_cache_get_meta_cogl_texture(TextureCache
* this_
, char* uri
, void* ident
);
6395 Clutter
.Texture
* /*new*/ mx_texture_cache_get_meta_texture(TextureCache
* this_
, char* uri
, void* ident
);
6396 int mx_texture_cache_get_size(TextureCache
* this_
);
6397 Clutter
.Texture
* mx_texture_cache_get_texture(TextureCache
* this_
, char* uri
);
6398 void mx_texture_cache_insert(TextureCache
* this_
, char* uri
, Cogl
.Handle
* texture
);
6399 void mx_texture_cache_insert_meta(TextureCache
* this_
, char* uri
, void* ident
, Cogl
.Handle
* texture
, GLib2
.DestroyNotify destroy_func
);
6400 void mx_texture_cache_load_cache(TextureCache
* this_
, char* filename
);
6401 TextureFrame
* mx_texture_frame_new(Clutter
.Texture
* texture
, float top
, float right
, float bottom
, float left
);
6402 void mx_texture_frame_get_border_values(TextureFrame
* this_
, float* top
, float* right
, float* bottom
, float* left
);
6403 Clutter
.Texture
* mx_texture_frame_get_parent_texture(TextureFrame
* this_
);
6404 void mx_texture_frame_set_border_values(TextureFrame
* this_
, float top
, float right
, float bottom
, float left
);
6405 void mx_texture_frame_set_parent_texture(TextureFrame
* this_
, Clutter
.Texture
* texture
);
6406 Toggle
* mx_toggle_new();
6407 int mx_toggle_get_active(Toggle
* this_
);
6408 void mx_toggle_set_active(Toggle
* this_
, int active
);
6409 Toolbar
* mx_toolbar_new();
6410 int mx_toolbar_get_has_close_button(Toolbar
* this_
);
6411 void mx_toolbar_set_has_close_button(Toolbar
* this_
, int has_close_button
);
6412 int mx_tooltip_is_in_browse_mode();
6413 char* mx_tooltip_get_text(Tooltip
* this_
);
6414 Clutter
.Geometry
* mx_tooltip_get_tip_area(Tooltip
* this_
);
6415 void mx_tooltip_hide(Tooltip
* this_
);
6416 void mx_tooltip_set_text(Tooltip
* this_
, char* text
);
6417 void mx_tooltip_set_tip_area(Tooltip
* this_
, Clutter
.Geometry
* area
);
6418 void mx_tooltip_set_tip_area_from_actor(Tooltip
* this_
, Clutter
.Actor
* actor
);
6419 void mx_tooltip_show(Tooltip
* this_
);
6420 Viewport
* mx_viewport_new();
6421 void mx_viewport_get_origin(Viewport
* this_
, float* x
, float* y
, float* z
);
6422 int mx_viewport_get_sync_adjustments(Viewport
* this_
);
6423 void mx_viewport_set_origin(Viewport
* this_
, float x
, float y
, float z
);
6424 void mx_viewport_set_sync_adjustments(Viewport
* this_
, int sync
);
6425 void mx_widget_apply_style(Widget
* this_
, Style
* style
);
6426 void mx_widget_get_available_area(Widget
* this_
, Clutter
.ActorBox
* allocation
, Clutter
.ActorBox
* area
);
6427 Clutter
.Actor
* mx_widget_get_background_image(Widget
* this_
);
6428 Clutter
.Actor
* mx_widget_get_border_image(Widget
* this_
);
6429 int mx_widget_get_disabled(Widget
* this_
);
6430 Menu
* mx_widget_get_menu(Widget
* this_
);
6431 void mx_widget_get_padding(Widget
* this_
, Padding
* padding
);
6432 uint mx_widget_get_tooltip_delay(Widget
* this_
);
6433 char* mx_widget_get_tooltip_text(Widget
* this_
);
6434 void mx_widget_hide_tooltip(Widget
* this_
);
6435 void mx_widget_long_press_cancel(Widget
* this_
);
6436 void mx_widget_long_press_query(Widget
* this_
, Clutter
.ButtonEvent
* event
);
6437 void mx_widget_paint_background(Widget
* this_
);
6438 void mx_widget_set_disabled(Widget
* this_
, int disabled
);
6439 void mx_widget_set_menu(Widget
* this_
, Menu
* menu
);
6440 void mx_widget_set_tooltip_delay(Widget
* this_
, uint delay
);
6441 void mx_widget_set_tooltip_text(Widget
* this_
, char* text
);
6442 void mx_widget_show_tooltip(Widget
* this_
);
6443 Window
* /*new*/ mx_window_new();
6444 Window
* /*new*/ mx_window_new_with_clutter_stage(Clutter
.Stage
* stage
);
6445 Window
* mx_window_get_for_stage(Clutter
.Stage
* stage
);
6446 Clutter
.Actor
* mx_window_get_child(Window
* this_
);
6447 Clutter
.Stage
* mx_window_get_clutter_stage(Window
* this_
);
6448 int mx_window_get_fullscreen(Window
* this_
);
6449 int mx_window_get_has_toolbar(Window
* this_
);
6450 char* mx_window_get_icon_name(Window
* this_
);
6451 int mx_window_get_small_screen(Window
* this_
);
6452 char* mx_window_get_title(Window
* this_
);
6453 Toolbar
* mx_window_get_toolbar(Window
* this_
);
6454 void mx_window_get_window_position(Window
* this_
, /*out*/ int* x
, /*out*/ int* y
);
6455 WindowRotation
mx_window_get_window_rotation(Window
* this_
);
6456 void mx_window_get_window_size(Window
* this_
, /*out*/ int* width
, /*out*/ int* height
);
6457 void mx_window_hide(Window
* this_
);
6458 void mx_window_present(Window
* this_
);
6459 void mx_window_set_child(Window
* this_
, Clutter
.Actor
* actor
);
6460 void mx_window_set_fullscreen(Window
* this_
, int fullscreen
);
6461 void mx_window_set_has_toolbar(Window
* this_
, int toolbar
);
6462 void mx_window_set_icon_from_cogl_texture(Window
* this_
, Cogl
.Handle texture
);
6463 void mx_window_set_icon_name(Window
* this_
, char* icon_name
=null);
6464 void mx_window_set_small_screen(Window
* this_
, int small_screen
);
6465 void mx_window_set_title(Window
* this_
, char* title
);
6466 void mx_window_set_toolbar(Window
* this_
, Toolbar
* toolbar
);
6467 void mx_window_set_window_position(Window
* this_
, int x
, int y
);
6468 void mx_window_set_window_rotation(Window
* this_
, WindowRotation rotation
);
6469 void mx_window_set_window_size(Window
* this_
, int width
, int height
);
6470 void mx_window_show(Window
* this_
);
6471 void mx_actor_box_clamp_to_pixels(Clutter
.ActorBox
* box
);
6472 void mx_allocate_align_fill(Clutter
.Actor
* child
, Clutter
.ActorBox
* childbox
, Align x_alignment
, Align y_alignment
, int x_fill
, int y_fill
);
6473 FocusHint
mx_focus_hint_from_direction(FocusDirection direction
);
6474 void mx_font_weight_set_from_string(GObject2
.Value
* value
, char* str);
6475 GLib2
.Quark
mx_image_error_quark();
6476 void mx_set_locale();
6477 char* /*new*/ mx_utils_format_time(GLib2
.TimeVal
* time_
);