+++ /dev/null
-import edje_types;
-
-// FIXME: This EO doc needs a direct link to the "edcref" doc
-
-class Edje.Object (Efl.Canvas.Group, Efl.File, Efl.Container, Efl.Part,
- Efl.Observer, Efl.Ui.Base, Efl.Canvas.Layout_Calc,
- Efl.Canvas.Layout_Signal, Efl.Canvas.Layout_Group,
- Efl.Player)
-{
- [[Edje object class]]
- legacy_prefix: edje_object;
- eo_prefix: edje_obj;
- event_prefix: edje_object;
- data: Edje;
- methods {
- @property animation {
- [[Whether this object is animating or not.
-
- This property indicates whether animations are stopped or not.
- Animations here refer to transitions between states.
-
- If animations are disabled, transitions between states (as
- defined in EDC) are then instantaneous. This is conceptually similar
- to setting the @Efl.Player.play_speed to an infinitely high
- value.
- ]]
- get {
- [[Get the current state of animation, $true by default.]]
- }
- set {
- [[Start or stop animating this object.]]
- }
- values {
- on: bool; [[The animation state, $true by default.]]
- }
- }
- @property perspective {
- set {
- [[Sets the given perspective object on this Edje object.
-
- Make the given perspective object be the default perspective for this Edje
- object.
-
- There can be only one perspective object per Edje object, and if a
- previous one was set, it will be removed and the new perspective object
- will be used.
-
- An Edje perspective will only affect a part if it doesn't point to another
- part to be used as perspective.
-
- \@ref edje_object_perspective_new()
- See also @.perspective.get()
- \@ref edje_perspective_set()]]
- values {
- ps: ptr(Edje.Perspective); [[The perspective object that will be used.]]
- }
- }
- get {
- [[Gets the current perspective used on this Edje object.
-
- See also @.perspective.set()]]
- values {
- ps: ptr(const(Edje.Perspective)); [[The perspective object that will be used.]]
- }
- }
- }
-
- // TODO: Legacy only. EO may rely on futures.
- preload {
- [[Preloads the images on the Edje Object in the background.
-
- This function requests the preload of all data images (on the given
- object) in the background. The work is queued before being processed
- (because there might be other pending requests of this type).
- It emits a signal "preload,done" when finished.
-
- Note: Use $true on scenarios where you don't need
- the image data preloaded anymore.]]
-
- return: bool; [[$false if obj was not a valid Edje object
- otherwise $true]]
- params {
- @in cancel: bool; [[$false will add it the preloading work queue,
- $true will remove it (if it was issued before).]]
- }
- }
- @property load_error {
- get {
- [[Gets the (last) file loading error for a given Edje object
-
- This function is meant to be used after an Edje EDJ file
- loading, what takes place with the $file_set() function. If that
- function does not return $true, one should check for the reason
- of failure with this one.
- ]]
- legacy: null;
- }
- values {
- error: Efl.Image.Load.Error(Efl.Image.Load.Error.generic);
- [[The load error code.]]
- }
- }
-
- /* CLASS APIS BEGIN -------------------------------------------------- */
- @property global_color_class @class {
- set {
- [[Sets Edje color class.
-
- This function sets the color values for a process level color
- class. This will cause all edje parts in the current process that
- have the specified color class to have their colors multiplied by
- these values. (Object level color classes set by
- edje_object_color_class_set() will override the values set by this
- function).
-
- Setting color emits a signal "color_class,set" with source being
- the given color class in all objects.
-
- Note: unlike Evas, Edje colors are not pre-multiplied. That is,
- half-transparent white is 255 255 255 128.]]
- legacy: null;
- return: bool; [[$true on success, $false otherwise]]
- }
- get {
- [[Gets Edje color class.
-
- This function gets the color values for a process level color
- class. This value is the globally set and not per-object, that is,
- the value that would be used by objects if they did not override with
- @.color_class.set().
-
- See also, @.global_color_class.set()
-
- Note: unlike Evas, Edje colors are not pre-multiplied. That is,
- half-transparent white is 255 255 255 128.]]
- legacy: null;
- return: bool; [[$true if found or $false if not found and all values
- are zeored.]]
- }
- keys {
- color_class: string; [[The name of color class]]
- mode: Edje.Color_Class.Mode; [[Edje color class mode]]
- }
- values {
- r: int; [[Object Red value]]
- g: int; [[Object Green value]]
- b: int; [[Object Blue value]]
- a: int; [[Object Alpha value]]
- }
- }
- @property color_class {
- set {
- [[Sets the object color class.
-
- This function sets the color values for an object level color
- class. This will cause all edje parts in the specified object that
- have the specified color class to have their colors multiplied by
- these values.
-
- The first color is the object, the second is the text outline, and
- the third is the text shadow. (Note that the second two only apply
- to text parts).
-
- Setting color emits a signal "color_class,set" with source being
- the given color.
-
- Note: unlike Evas, Edje colors are not pre-multiplied. That is,
- half-transparent white is 255 255 255 128.]]
- legacy: null;
- return: bool; [[$true on success, $false otherwise]]
- }
- get {
- [[Gets the object color class.
-
- This function gets the color values for an object level color
- class. If no explicit object color is set, then global values will
- be used.
-
- The first color is the object, the second is the text outline, and
- the third is the text shadow. (Note that the second two only apply
- to text parts).
-
- Note: unlike Evas, Edje colors are not pre-multiplied. That is,
- half-transparent white is 255 255 255 128.]]
- legacy: null;
- return: bool; [[$true if found or $false if not found and all
- values are zeroed.]]
- }
- keys {
- color_class: string; [[The name of color class]]
- mode: Edje.Color_Class.Mode; [[Edje color class mode]]
- }
- values {
- r: int; [[Object Red value]]
- g: int; [[Object Green value]]
- b: int; [[Object Blue value]]
- a: int; [[Object Alpha value]]
- }
- }
- @property color_class_description {
- get {
- [[Gets the description of an object color class.
-
- This function gets the description of a color class in use by an object.]]
- return: string; [[The description of the target color class or $null if not found]]
- }
- keys {
- color_class: string; [[Color class description]]
- }
- }
- color_class_clear @const {
- [[Clears object color classes.
-
- @since 1.17.0]]
- return: bool; [[$true on success, or $false on error]]
- }
- color_class_del {
- [[Deletes the object color class.
-
- This function deletes any values at the object level for the
- specified object and color class.
-
- Deleting the color class will revert it to the values
- defined by edje_color_class_set() or the color class
- defined in the theme file.
-
- Deleting the color class will emit the signal "color_class,del"
- for the given Edje object.]]
- params {
- @in color_class: string; [[The color class to be deleted.]]
- }
- }
- @property text_class {
- set {
- [[Sets Edje text class.
-
- This function sets the text class for the Edje.]]
- return: bool; [[$true on success, or $false on error]]
- }
- get {
- [[Gets font and font size from edje text class.
-
- This function gets the font and the font size from the object
- text class. The font string will only be valid until the text
- class is changed or the edje object is deleted.]]
- return: bool; [[$true on success, or $false on error]]
- }
- keys {
- text_class: string; [[The text class name]]
- }
- values {
- font: string; [[Font name]]
- size: int; [[Font Size]]
- }
- }
- text_class_del {
- [[Deletes the object text class.
-
- This function deletes any values at the object level for the
- specified object and text class.
-
- Deleting the text class will revert it to the values
- defined by edje_text_class_set() or the text class
- defined in the theme file.
-
- @since 1.17]]
- params {
- @in text_class: string; [[The color class to be deleted.]]
- }
- }
- @property size_class {
- set {
- [[Sets the object size class.
-
- This function sets the min and max values for an object level size
- class. This will make all edje parts in the specified object that
- have the specified size class update their min and max size with given values.
-
- @since 1.17]]
- return: bool; [[$true on success, or $false on error]]
- }
- get {
- [[Gets the object size class.
-
- This function gets the min and max values for an object level size
- class. These values will only be valid until the size class is changed
- or the edje object is deleted.
-
- @since 1.17]]
- return: bool; [[$true on success, or $false on error]]
- }
- keys {
- size_class: string; [[The size class name]]
- }
- values {
- minw: int; [[The min width]]
- minh: int; [[The min height]]
- maxw: int; [[The max width]]
- maxh: int; [[The max height]]
- }
- }
- size_class_del {
- [[Deletes the object size class.
-
- This function deletes any values at the object level for the
- specified object and size class.
-
- Deleting the size class will revert it to the values
- defined by edje_size_class_set() or the color class
- defined in the theme file.
-
- @since 1.17]]
- params {
- @in size_class: string; [[Size class name]]
- }
- }
- /* CLASS APIS END ---------------------------------------------------- */
-
- access_part_iterate {
- [[Iterates over all accessibility-enabled part names.]]
- legacy: null;
- return: iterator<string> @owned; [[Part name iterator]]
- }
-
- /* TEXT PART APIS BEGIN ---------------------------------------------- */
- @property text_change_cb {
- set {
- [[Sets the object text callback.
-
- This function sets the callback to be called when the text changes.]]
- }
- values {
- func: Edje.Text.Change_Cb; [[The callback function to handle the text change]]
- data: void_ptr; [[The data associated to the callback function.]]
- }
- }
- @property item_provider {
- set {
- [[Sets the function that provides item objects for named items in an edje entry text
-
- Item objects may be deleted any time by Edje, and will be deleted when the
- Edje object is deleted (or file is set to a new file).]]
- }
- values {
- func: Edje.Item_Provider_Cb; [[The function to call (or $null to disable) to get item objects]]
- data: void_ptr; [[The data pointer to pass to the func callback]]
- }
- }
- /* TEXT PART APIS END ------------------------------------------------ */
-
- @property seat {
- get {
- [[Returns the seat device given its Edje's name.
-
- Edje references seats by a name that differs from Evas.
- Edje naming follows a incrementional convention: first
- registered name is "seat1", second is "seat2", differently
- from Evas.
-
- @since 1.19]]
-
- return: Efl.Input.Device; [[The seat device or $null if not found.]]
- }
- keys {
- name: stringshare; [[The name's character string.]]
- }
- }
- @property seat_name {
- get {
- [[Gets the name given to a set by Edje.
-
- Edje references seats by a name that differs from Evas.
- Edje naming follows a incrementional convention: first
- registered name is "seat1", second is "seat2", differently
- from Evas.
-
- @since 1.19]]
-
- return: stringshare; [[The name's character string or $null if not found.]]
- }
- keys {
- device: Efl.Input.Device; [[The seat device]]
- }
- }
- /***********************************************************************************
- * TIZEN_ONLY_FEATURE: API for handling text properties of Edje *
- ***********************************************************************************/
- @property part_text_min_policy {
- set {
- [[Sets the object text min calculation policy.
-
- Do not use this API without understanding whats going on.
- It is made for internal usage.
-
- \@if MOBILE \@since_tizen 3.0
- \@elseif WEARABLE \@since_tizen 3.0
- \@endif
- \@internal
- ]]
- return: bool; [[$true on success, or $false on error]]
- }
- get {
- [[Gets the object text min calculation policy.
-
- Do not use this API without understanding whats going on.
- It is made for internal usage.
-
- \@if MOBILE \@since_tizen 3.0
- \@elseif WEARABLE \@since_tizen 3.0
- \@endif
- \@internal
- ]]
- return: bool; [[$true on success, or $false on error]]
- }
- keys {
- part: string; [[The part name]]
- state_name: string; [[The state name]]
- }
- values {
- min_x: bool; [[The min width policy]]
- min_y: bool; [[The min height policy]]
- }
- }
- @property part_text_valign {
- set {
- [[Sets the valign for text.
-
- Do not use this API without understanding whats going on.
- It is made for internal usage.
- \@internal
- ]]
- return: bool; [[$true, on success or $false, on error]]
- }
- get {
- [[Gets the valign for text.
-
- Do not use this API without understanding whats going on.
- It is made for internal usage.
- \@internal
- ]]
- }
- keys {
- part: string; [[The part name]]
- }
- values {
- valign: double; [[The valign 0.0~1.0. -1.0 for respect EDC's align value.]]
- }
- }
- /*******
- * END *
- *******/
- /***********************************************************************************
- * TIZEN_ONLY_FEATURE: ellipsize.marquee, ellipsize.fade for TEXTBLOCK, TEXT part. *
- ***********************************************************************************/
- @property part_text_marquee_duration {
- set {
- [[Sets the duration for text's marquee.
-
- Do not use this API without understanding whats going on.
- It is made for internal usage.
- \@internal
- ]]
- return: bool; [[$true, on success or $false, on error]]
- }
- get {
- [[Gets the duration for text's marquee.
-
- Do not use this API without understanding whats going on.
- It is made for internal usage.
- \@internal
- ]]
- }
- keys {
- part: string; [[The part name]]
- }
- values {
- duration: double; [[The duration. 0.0 for respect EDC's duration value.]]
- }
- }
- @property part_text_marquee_speed {
- set {
- [[Sets the speed for text's marquee.
-
- Do not use this API without understanding whats going on.
- It is made for internal usage.
- \@internal
- ]]
- return: bool; [[$true, on success or $false, on error]]
- }
- get {
- [[Gets the speed for text's marquee.
-
- Do not use this API without understanding whats going on.
- It is made for internal usage.
- \@internal
- ]]
- }
- keys {
- part: string; [[The part name]]
- }
- values {
- speed: double; [[The speed. 0.0 for respect EDC's speed value.]]
- }
- }
- @property part_text_marquee_always {
- set {
- [[Sets the always mode for text's marquee.
-
- Do not use this API without understanding whats going on.
- It is made for internal usage.
- \@internal
- ]]
- return: bool; [[$true, on success or $false, on error]]
- }
- get {
- [[Gets the always mode for text's marquee.
-
- Do not use this API without understanding whats going on.
- It is made for internal usage.
- \@internal
- ]]
- }
- keys {
- part: string; [[The part name]]
- }
- values {
- always: bool; [[The always mode]]
- }
- }
- /*******
- * END *
- *******/
- /***********************************************************************************
- * TIZEN_ONLY_FEATURE: apply Tizen's color_class features. *
- ***********************************************************************************/
- color_class_parent_set {
- [[Sets the parent object for color class.
-
- \@if MOBILE \@since_tizen 3.0
- \@elseif WEARABLE \@since_tizen 3.0
- \@endif
- \@internal
- ]]
- params {
- @in parent: Efl.Object @nonull; [[The parent object for color class]]
- }
- }
- color_class_parent_unset {
- [[Unsets the parent object for color class.
-
- \@if MOBILE \@since_tizen 3.0
- \@elseif WEARABLE \@since_tizen 3.0
- \@endif
- \@internal
- ]]
- }
- /*******
- * END *
- *******/
- }
- implements {
- Efl.Gfx.visible { set; }
- Efl.Gfx.position { set; }
- Efl.Gfx.size { set; }
- Efl.Object.constructor;
- Efl.Object.destructor;
- Efl.Object.debug_name_override;
- Efl.Canvas.Object.no_render { set; }
- Efl.Canvas.Object.paragraph_direction { set; }
- Efl.Canvas.Group.group_calculate;
- Efl.Canvas.Layout_Calc.calc_auto_update_hints { get; set; }
- Efl.Canvas.Layout_Calc.calc_size_min;
- Efl.Canvas.Layout_Calc.calc_parts_extends;
- Efl.Canvas.Layout_Calc.calc_freeze;
- Efl.Canvas.Layout_Calc.calc_thaw;
- Efl.Canvas.Layout_Calc.calc_force;
- Efl.Canvas.Layout_Group.group_size_min { get; }
- Efl.Canvas.Layout_Group.group_size_max { get; }
- Efl.Canvas.Layout_Group.group_data { get; }
- Efl.Canvas.Layout_Signal.message_send;
- Efl.Canvas.Layout_Signal.signal_callback_add;
- Efl.Canvas.Layout_Signal.signal_callback_del;
- Efl.Canvas.Layout_Signal.signal_emit;
- Efl.Canvas.Layout_Signal.signal_process;
- Efl.Ui.Base.mirrored { set; get; }
- Efl.Ui.Base.language { set; get; }
- Efl.Ui.Base.scale { set; get; }
- Efl.Ui.Base.base_scale { get; }
- Efl.File.file { get; set; }
- Efl.File.mmap { get; set; }
- Efl.Container.content_remove;
- Efl.Part.part; [[Returns @Efl.Canvas.Layout.Part.]]
- Efl.Observer.update;
- Efl.Player.playable { get; }
- Efl.Player.play { get; set; }
- Efl.Player.play_speed { get; set; }
- }
- events {
- recalc; [[Edje re-calculated the object.]]
- }
-}