forked from enlightenment/efl
Merge branch 'master' into devs/hermet/lottie
This commit is contained in:
commit
5aa6b79453
|
@ -43,7 +43,8 @@
|
|||
#ifndef CITY_HASH_H_
|
||||
#define CITY_HASH_H_
|
||||
|
||||
#include <stdlib.h> // for size_t.
|
||||
#include <sys/types.h> // for ssize_t.
|
||||
#include <stdlib.h>
|
||||
#include <stdint.h>
|
||||
#include <utility>
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ else
|
|||
env = find_program('env', native: true)
|
||||
edje_cc_exe = [env, 'EFL_RUN_IN_TREE=1', edje_cc.full_path()]
|
||||
endif
|
||||
edje_depends = [edje_cc, epp]
|
||||
edje_depends = [edje_cc, epp, evas_engine_buffer_mod]
|
||||
endif
|
||||
|
||||
edje_decc_src = [
|
||||
|
|
|
@ -31,7 +31,7 @@ test_ui_datepicker(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *e
|
|||
efl_ui_datepicker_date_set(efl_added, 1987, 9, 17),
|
||||
efl_ui_datepicker_date_max_set(efl_added, 1990, 9, 17),
|
||||
efl_ui_datepicker_date_min_set(efl_added, 1980, 9, 17),
|
||||
efl_event_callback_add(efl_added, EFL_UI_DATEPICKER_EVENT_CHANGED,_date_changed_cb, NULL),
|
||||
efl_event_callback_add(efl_added, EFL_UI_DATEPICKER_EVENT_DATE_CHANGED,_date_changed_cb, NULL),
|
||||
efl_pack(bx, efl_added));
|
||||
|
||||
efl_gfx_entity_size_set(win, EINA_SIZE2D(150, 170));
|
||||
|
|
|
@ -30,7 +30,7 @@ test_ui_timepicker(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *e
|
|||
|
||||
efl_add(EFL_UI_TIMEPICKER_CLASS, bx,
|
||||
efl_ui_timepicker_time_set(efl_added, 11, 35),
|
||||
efl_event_callback_add(efl_added, EFL_UI_TIMEPICKER_EVENT_CHANGED,_time_changed_cb, NULL),
|
||||
efl_event_callback_add(efl_added, EFL_UI_TIMEPICKER_EVENT_TIME_CHANGED,_time_changed_cb, NULL),
|
||||
efl_pack(bx, efl_added));
|
||||
|
||||
efl_gfx_entity_size_set(win, EINA_SIZE2D(150, 170));
|
||||
|
|
|
@ -126,7 +126,6 @@ _append_section(const Eolian_State *state, const char *desc, int ind, int curl,
|
|||
Eina_Bool try_note = EINA_TRUE;
|
||||
while (*desc)
|
||||
{
|
||||
eina_strbuf_reset(wbuf);
|
||||
while (*desc && isspace(*desc) && (*desc != '\n'))
|
||||
eina_strbuf_append_char(wbuf, *desc++);
|
||||
if (try_note)
|
||||
|
@ -155,6 +154,8 @@ _append_section(const Eolian_State *state, const char *desc, int ind, int curl,
|
|||
#undef CHECK_NOTE
|
||||
try_note = EINA_FALSE;
|
||||
}
|
||||
int limit = DOC_LIMIT(ind);
|
||||
int wlen;
|
||||
if (*desc == '\\')
|
||||
{
|
||||
desc++;
|
||||
|
@ -180,7 +181,47 @@ _append_section(const Eolian_State *state, const char *desc, int ind, int curl,
|
|||
}
|
||||
else if (*desc == '$')
|
||||
{
|
||||
desc++;
|
||||
if (*++desc == '[')
|
||||
{
|
||||
++desc;
|
||||
eina_strbuf_append(wbuf, "<tt>");
|
||||
wlen = eina_strbuf_length_get(wbuf);
|
||||
while ((*desc != '\0') && (*desc != ']') && (*desc != '\n'))
|
||||
{
|
||||
if (*desc == ' ')
|
||||
{
|
||||
eina_strbuf_append_char(wbuf, ' ');
|
||||
wlen = eina_strbuf_length_get(wbuf);
|
||||
if ((int)(curl + wlen) > limit)
|
||||
{
|
||||
curl = 3;
|
||||
eina_strbuf_append_char(buf, '\n');
|
||||
curl += _indent_line(buf, ind);
|
||||
eina_strbuf_append(buf, " * ");
|
||||
if (*eina_strbuf_string_get(wbuf) == ' ')
|
||||
eina_strbuf_remove(wbuf, 0, 1);
|
||||
}
|
||||
curl += eina_strbuf_length_get(wbuf);
|
||||
eina_strbuf_append(buf, eina_strbuf_string_get(wbuf));
|
||||
eina_strbuf_reset(wbuf);
|
||||
++desc;
|
||||
continue;
|
||||
}
|
||||
/* skip escape */
|
||||
if (*desc == '\\')
|
||||
{
|
||||
++desc;
|
||||
if ((*desc == '\0') || (*desc == '\n'))
|
||||
break;
|
||||
}
|
||||
eina_strbuf_append_char(wbuf, *desc++);
|
||||
}
|
||||
if (*desc == ']')
|
||||
++desc;
|
||||
eina_strbuf_append(wbuf, "</tt>");
|
||||
curl += 5;
|
||||
goto split;
|
||||
}
|
||||
if (isalpha(*desc))
|
||||
eina_strbuf_append(wbuf, "@c ");
|
||||
else
|
||||
|
@ -188,8 +229,8 @@ _append_section(const Eolian_State *state, const char *desc, int ind, int curl,
|
|||
}
|
||||
while (*desc && !isspace(*desc))
|
||||
eina_strbuf_append_char(wbuf, *desc++);
|
||||
int limit = DOC_LIMIT(ind);
|
||||
int wlen = eina_strbuf_length_get(wbuf);
|
||||
split:
|
||||
wlen = eina_strbuf_length_get(wbuf);
|
||||
if ((int)(curl + wlen) > limit)
|
||||
{
|
||||
curl = 3;
|
||||
|
@ -201,6 +242,7 @@ _append_section(const Eolian_State *state, const char *desc, int ind, int curl,
|
|||
}
|
||||
curl += eina_strbuf_length_get(wbuf);
|
||||
eina_strbuf_append(buf, eina_strbuf_string_get(wbuf));
|
||||
eina_strbuf_reset(wbuf);
|
||||
if (*desc == '\n')
|
||||
{
|
||||
desc++;
|
||||
|
|
|
@ -37,6 +37,10 @@ struct alias_definition_generator
|
|||
if (!as_generator(eolian_mono::type).generate(std::back_inserter(alias_type), alias.base_type, context))
|
||||
return false;
|
||||
|
||||
std::string alias_type_doc;
|
||||
alias_type_doc = utils::replace_all(alias_type, "<", "<");
|
||||
alias_type_doc = utils::replace_all(alias_type_doc, ">", ">");
|
||||
|
||||
std::string const alias_name = utils::remove_all(alias.eolian_name, '_');
|
||||
if (!as_generator(
|
||||
documentation
|
||||
|
@ -44,7 +48,7 @@ struct alias_definition_generator
|
|||
<< "{\n"
|
||||
<< scope_tab << "private " << alias_type << " payload;\n\n"
|
||||
|
||||
<< scope_tab << "/// <summary>Converts an instance of " << alias_type << " to this struct.</summary>\n"
|
||||
<< scope_tab << "/// <summary>Converts an instance of " << alias_type_doc << " to this struct.</summary>\n"
|
||||
<< scope_tab << "/// <param name=\"value\">The value to be converted.</param>\n"
|
||||
<< scope_tab << "/// <returns>A struct with the given value.</returns>\n"
|
||||
<< scope_tab << "public static implicit operator " << alias_name << "(" << alias_type << " value)\n"
|
||||
|
@ -52,7 +56,7 @@ struct alias_definition_generator
|
|||
<< scope_tab << scope_tab << "return new " << alias_name << "{payload=value};\n"
|
||||
<< scope_tab << "}\n\n"
|
||||
|
||||
<< scope_tab << "/// <summary>Converts an instance of this struct to " << alias_type << ".</summary>\n"
|
||||
<< scope_tab << "/// <summary>Converts an instance of this struct to " << alias_type_doc << ".</summary>\n"
|
||||
<< scope_tab << "/// <param name=\"value\">The value to be converted packed in this struct.</param>\n"
|
||||
<< scope_tab << "/// <returns>The actual value the alias is wrapping.</returns>\n"
|
||||
<< scope_tab << "public static implicit operator " << alias_type << "(" << alias_name << " value)\n"
|
||||
|
|
|
@ -416,6 +416,7 @@ struct event_definition_generator
|
|||
std::string upper_c_name = utils::to_uppercase(evt.c_name);
|
||||
if (!as_generator(
|
||||
scope_tab << "/// <summary>Method to raise event "<< event_name << ".</summary>\n"
|
||||
<< scope_tab << "/// <param name=\"e\">Event to raise.</param>\n"
|
||||
<< scope_tab << "public void On" << event_name << "(" << event_args_type << " e)\n"
|
||||
<< scope_tab << "{\n"
|
||||
<< scope_tab << scope_tab << "var key = \"_" << upper_c_name << "\";\n"
|
||||
|
|
|
@ -88,6 +88,20 @@ namespace eolian_mono { namespace utils {
|
|||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
inline std::string replace_all(std::string s, std::string target, std::string replace)
|
||||
{
|
||||
size_t pos = s.find(target);
|
||||
|
||||
while (pos != std::string::npos)
|
||||
{
|
||||
s.replace(pos, target.length(), replace);
|
||||
pos += replace.length();
|
||||
pos = s.find(target, pos);
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
} }
|
||||
|
||||
#endif
|
||||
|
|
|
@ -13,6 +13,7 @@ static class UnsafeNativeMethods
|
|||
{
|
||||
private delegate void init_func_delegate();
|
||||
[DllImport(efl.Libs.Ecore)] public static extern void ecore_init();
|
||||
[DllImport(efl.Libs.Ecore)] public static extern void ecore_init_ex(int argc, IntPtr argv);
|
||||
[DllImport(efl.Libs.Ecore)] public static extern void ecore_shutdown();
|
||||
// dotnet loads libraries from DllImport with RTLD_LOCAL. Due to the
|
||||
// way evas modules are built with meson, currently they do not link directly
|
||||
|
@ -54,6 +55,7 @@ public static class All
|
|||
Eina.Config.Init();
|
||||
Efl.Eo.Config.Init();
|
||||
ecore_init();
|
||||
ecore_init_ex(0, IntPtr.Zero);
|
||||
evas_init();
|
||||
eldbus.Config.Init();
|
||||
|
||||
|
|
|
@ -46,6 +46,7 @@ public abstract class Application
|
|||
Eina.Config.Init();
|
||||
Efl.Eo.Config.Init();
|
||||
ecore_init();
|
||||
ecore_init_ex(0, IntPtr.Zero);
|
||||
evas_init();
|
||||
eldbus.Config.Init();
|
||||
|
||||
|
|
|
@ -278,17 +278,31 @@ public class Hash<TKey, TValue> : IEnumerable<KeyValuePair<TKey, TValue>>, IDi
|
|||
IntPtr nk = GetNativePtr<TKey>(gchnk, ForceRefKey<TKey>());
|
||||
var r = eina_hash_del_by_key(Handle, nk);
|
||||
FreeNativeIndirection<TKey>(gchnk, ForceRefKey<TKey>());
|
||||
// NativeFreeRef<TKey>(nk, OwnKey && r);
|
||||
return r;
|
||||
}
|
||||
|
||||
/// <summary>Searches this hash for <c>val</c> and deletes it from the hash, also deleting it.</summary>
|
||||
/// <returns><c>true</c> if the value was found and deleted, false if it was <c>null</c> or not found.</returns>
|
||||
public bool DelByValue(TValue val)
|
||||
{
|
||||
IntPtr gchnv = CopyNativeObject(val, false);
|
||||
IntPtr nv = GetNativePtr<TValue>(gchnv, false);
|
||||
var r = eina_hash_del_by_data(Handle, nv);
|
||||
FreeNativeIndirection<TValue>(gchnv, false);
|
||||
return r;
|
||||
// We don't use the C version of `eina_hash_del_by_data` because it requires the exact pointer
|
||||
// we passed to add(). As our hashes store the data by pointer, this makes it harder to pass the
|
||||
// same value.
|
||||
if (val == null)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
foreach (var pair in this)
|
||||
{
|
||||
if (pair.Value != null && val.Equals(pair.Value))
|
||||
{
|
||||
return this.DelByKey(pair.Key);
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
public void Remove(TKey key)
|
||||
|
|
|
@ -25,9 +25,9 @@ class TestMain
|
|||
|
||||
Console.WriteLine("Starting MainLoop");
|
||||
|
||||
timer.TimerTickEvt += listener.on_tick;
|
||||
timer.TimerTickEvt += listener.another_callback;
|
||||
timer.TimerTickEvt -= listener.another_callback;
|
||||
timer.TimerTickEvent += listener.on_tick;
|
||||
timer.TimerTickEvent += listener.another_callback;
|
||||
timer.TimerTickEvent -= listener.another_callback;
|
||||
|
||||
loop.Begin();
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ public class Example
|
|||
button.SetText(text);
|
||||
button.SetSize(new Eina.Size2D(w, h));
|
||||
|
||||
((Efl.Ui.Clickable)button).ClickedEvt += callback;
|
||||
((Efl.Ui.Clickable)button).ClickedEvent += callback;
|
||||
|
||||
return button;
|
||||
}
|
||||
|
@ -57,7 +57,7 @@ public class Example
|
|||
Efl.Ui.Slider slider = new Efl.Ui.Slider(box);
|
||||
slider.SetSize(new Eina.Size2D(W, H));
|
||||
|
||||
slider.ChangedEvt += (object sender, EventArgs e) => {
|
||||
slider.ChangedEvent += (object sender, EventArgs e) => {
|
||||
bar.SetRangeValue(slider.GetRangeValue());
|
||||
};
|
||||
|
||||
|
|
|
@ -83,7 +83,8 @@ _svg_shutdown(void)
|
|||
{
|
||||
if (rsvg)
|
||||
{
|
||||
rsvg_handle_close(rsvg, NULL);
|
||||
// we don't really need this it seems and it's deprecated in 2.46
|
||||
// rsvg_handle_close(rsvg, NULL);
|
||||
g_object_unref(rsvg);
|
||||
}
|
||||
// Maybe it's not crashing anymore, let's try it.
|
||||
|
|
|
@ -1,25 +1,29 @@
|
|||
class @beta Efl.Boolean_Model extends Efl.Composite_Model
|
||||
{
|
||||
[[Efl boolean model class]]
|
||||
[[@Efl.Model that efficiently stores boolean properties (they can only be $true or $false).
|
||||
|
||||
Internally the values are stored in a compact bit buffer, taking up minimum memory.
|
||||
An example usage is @Efl.Ui.Select_Model.
|
||||
]]
|
||||
methods {
|
||||
boolean_add {
|
||||
[[Add a new named boolean property with a defined default value.]]
|
||||
[[Adds a new named boolean property with a default value.]]
|
||||
params {
|
||||
@in name: string;
|
||||
@in default_value: bool;
|
||||
@in name: string; [[The name of the new boolean property.]]
|
||||
@in default_value: bool; [[Default value for new boolean property.]]
|
||||
}
|
||||
}
|
||||
boolean_del {
|
||||
[[Delete an existing named boolean property]]
|
||||
[[Deletes an existing named boolean property.]]
|
||||
params {
|
||||
@in name: string;
|
||||
@in name: string; [[Name of the property to be deleted.]]
|
||||
}
|
||||
}
|
||||
boolean_iterator_get {
|
||||
[[Get an iterator that will quickly find all the index with the requested value for a specific boolean.]]
|
||||
[[Gets an iterator that will quickly find all the indices with the requested value for a specific property.]]
|
||||
params {
|
||||
@in name: string;
|
||||
@in request: bool;
|
||||
@in name: string; [[The name of the property to examine.]]
|
||||
@in request: bool; [[The value to look for.]]
|
||||
}
|
||||
return: iterator<ptr(uint64)>; [[The iterator that is valid until any change is made on the model.]]
|
||||
}
|
||||
|
|
|
@ -79,18 +79,18 @@ class @beta Ecore.Audio.In extends Ecore.Audio
|
|||
}
|
||||
}
|
||||
@property output {
|
||||
[[The output that this input is attached to
|
||||
]]
|
||||
get {
|
||||
[[Gets the output that this input is attached to
|
||||
]]
|
||||
}
|
||||
values {
|
||||
output: Ecore.Audio; [[The output]] /* FIXME-cyclic Should be Ecore.Audio.Out */
|
||||
}
|
||||
}
|
||||
@property remaining {
|
||||
[[The remaining time of the input
|
||||
]]
|
||||
get {
|
||||
[[Gets the remaining time of the input
|
||||
]]
|
||||
}
|
||||
values {
|
||||
remaining: double; [[The amount of time in seconds left to play]]
|
||||
|
|
|
@ -740,10 +740,10 @@ _edje_process_sizeclass(Edje *ed)
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef HAVE_EPHYSICS
|
||||
static inline void
|
||||
_edje_process_physics(Edje *ed)
|
||||
{
|
||||
#ifdef HAVE_EPHYSICS
|
||||
if (EPH_LOAD())
|
||||
{
|
||||
EPH_CALL(ephysics_init)();
|
||||
|
@ -758,10 +758,8 @@ _edje_process_physics(Edje *ed)
|
|||
ed->collection->physics.world.gravity.y,
|
||||
ed->collection->physics.world.gravity.z);
|
||||
}
|
||||
#else
|
||||
ERR("Edje compiled without support to physics.");
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
Eina_Error
|
||||
_edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const char *group, const char *parent, Eina_List *group_path, Eina_Array *nested)
|
||||
|
@ -856,7 +854,13 @@ _edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const ch
|
|||
unsigned int i;
|
||||
|
||||
if (ed->collection->physics_enabled)
|
||||
_edje_process_physics(ed);
|
||||
{
|
||||
#ifdef HAVE_EPHYSICS
|
||||
_edje_process_physics(ed);
|
||||
#else
|
||||
ERR("Edje compiled without support to physics.");
|
||||
#endif
|
||||
}
|
||||
|
||||
/* handle multiseat stuff */
|
||||
_edje_devices_add(ed, tev);
|
||||
|
|
|
@ -466,17 +466,7 @@ edje_object_mmap_set(Edje_Object *obj, const Eina_File *file, const char *group)
|
|||
EAPI Eina_Bool
|
||||
edje_object_file_set(Edje_Object *obj, const char *file, const char *group)
|
||||
{
|
||||
// We can't blindly unload here - this loses swallowed content (in
|
||||
// swallows, boxes, tables etc.) ... this here along with an actual
|
||||
// implementation of file unload broke the pager in E for starters
|
||||
// as shading then unshading (double click titlebar) a window would
|
||||
// lose the mini preview image obj swallowed in. also fullscreening
|
||||
// would do it. this also broke gadget bar, the xkb gadget in it too
|
||||
// and more... so this is a particularly bad thing break. we need to
|
||||
// iterate over every child and re-swallow, re-pack into boxes, tables
|
||||
// etc. because that is what edje used to do. unloading here is definitely
|
||||
// worse ... so disable for now.
|
||||
// efl_file_unload(obj);
|
||||
/* mtime checking of file is handled in efl.file mixin */
|
||||
return efl_file_simple_load(obj, file, group);
|
||||
}
|
||||
|
||||
|
|
|
@ -22,10 +22,8 @@ class @beta Efl.Canvas.Layout extends Efl.Canvas.Group implements Efl.File, Efl.
|
|||
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.]]
|
||||
|
@ -37,15 +35,14 @@ class @beta Efl.Canvas.Layout extends Efl.Canvas.Group implements Efl.File, Efl.
|
|||
return: iterator<string> @move; [[Part name iterator]]
|
||||
}
|
||||
@property seat {
|
||||
[[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.
|
||||
]]
|
||||
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.
|
||||
]]
|
||||
|
||||
return: Efl.Input.Device; [[The seat device or $null if not found.]]
|
||||
}
|
||||
keys {
|
||||
|
@ -53,14 +50,14 @@ class @beta Efl.Canvas.Layout extends Efl.Canvas.Group implements Efl.File, Efl.
|
|||
}
|
||||
}
|
||||
@property seat_name {
|
||||
get {
|
||||
[[Gets the name given to a set by Edje.
|
||||
[[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.
|
||||
]]
|
||||
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.
|
||||
]]
|
||||
get {
|
||||
return: stringshare; [[The name's character string or $null if not found.]]
|
||||
}
|
||||
keys {
|
||||
|
@ -68,8 +65,8 @@ class @beta Efl.Canvas.Layout extends Efl.Canvas.Group implements Efl.File, Efl.
|
|||
}
|
||||
}
|
||||
@property layout_load_error {
|
||||
[[The (last) file loading error for a given object.]]
|
||||
get {
|
||||
[[Gets the (last) file loading error for a given object.]]
|
||||
}
|
||||
values {
|
||||
error: Eina.Error; [[The load error code.]]
|
||||
|
|
|
@ -8,87 +8,87 @@ interface Efl.Layout.Group
|
|||
]]
|
||||
methods {
|
||||
@property group_size_min {
|
||||
get {
|
||||
[[Gets the minimum size specified -- as an EDC property -- for a
|
||||
given Edje object
|
||||
[[The minimum size specified -- as an EDC property -- for a
|
||||
given Edje object
|
||||
|
||||
This function retrieves the obj object's minimum size values, as
|
||||
declared in its EDC group definition. For instance, for an Edje
|
||||
object of minimum size 100x100 pixels:
|
||||
collections {
|
||||
group {
|
||||
name: "a_group";
|
||||
min: 100 100;
|
||||
}
|
||||
This property retrieves the obj object's minimum size values, as
|
||||
declared in its EDC group definition. For instance, for an Edje
|
||||
object of minimum size 100x100 pixels:
|
||||
collections {
|
||||
group {
|
||||
name: "a_group";
|
||||
min: 100 100;
|
||||
}
|
||||
}
|
||||
|
||||
Note: If the $min EDC property was not declared for this object,
|
||||
this call will return 0x0.
|
||||
Note: If the $min EDC property was not declared for this object,
|
||||
this call will return 0x0.
|
||||
|
||||
Note: On failure, this function also return 0x0.
|
||||
Note: On failure, this function also return 0x0.
|
||||
|
||||
See also @.group_size_max.
|
||||
]]
|
||||
See also @.group_size_max.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
min: Eina.Size2D; [[The minimum size as set in EDC.]]
|
||||
}
|
||||
}
|
||||
@property group_size_max {
|
||||
get {
|
||||
[[Gets the maximum size specified -- as an EDC property -- for a
|
||||
given Edje object
|
||||
[[The maximum size specified -- as an EDC property -- for a
|
||||
given Edje object
|
||||
|
||||
This function retrieves the object's maximum size values, as
|
||||
declared in its EDC group definition. For instance, for an Edje
|
||||
object of maximum size 100x100 pixels:
|
||||
collections {
|
||||
group {
|
||||
name: "a_group";
|
||||
max: 100 100;
|
||||
}
|
||||
This property retrieves the object's maximum size values, as
|
||||
declared in its EDC group definition. For instance, for an Edje
|
||||
object of maximum size 100x100 pixels:
|
||||
collections {
|
||||
group {
|
||||
name: "a_group";
|
||||
max: 100 100;
|
||||
}
|
||||
}
|
||||
|
||||
Note: If the $max EDC property was not declared for the object,
|
||||
this call will return the maximum size a given Edje object may
|
||||
have, for each axis.
|
||||
Note: If the $max EDC property was not declared for the object,
|
||||
this call will return the maximum size a given Edje object may
|
||||
have, for each axis.
|
||||
|
||||
Note: On failure, this function will return 0x0.
|
||||
Note: On failure, this function will return 0x0.
|
||||
|
||||
See also @.group_size_min.
|
||||
]]
|
||||
See also @.group_size_min.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
max: Eina.Size2D; [[The maximum size as set in EDC.]]
|
||||
}
|
||||
}
|
||||
@property group_data {
|
||||
get {
|
||||
[[Retrives an EDC data field's value from a given Edje object's group.
|
||||
[[The EDC data field's value from a given Edje object's group.
|
||||
|
||||
This function fetches an EDC data field's value, which is declared
|
||||
on the objects building EDC file, under its group. EDC data blocks
|
||||
are most commonly used to pass arbitrary parameters from an
|
||||
application's theme to its code.
|
||||
This property represents an EDC data field's value, which is declared
|
||||
on the objects building EDC file, under its group. EDC data blocks
|
||||
are most commonly used to pass arbitrary parameters from an
|
||||
application's theme to its code.
|
||||
|
||||
EDC data fields always hold strings as values, hence the return
|
||||
type of this function. Check the complete "syntax reference" for
|
||||
EDC files.
|
||||
EDC data fields always hold strings as values, hence the return
|
||||
type of this function. Check the complete "syntax reference" for
|
||||
EDC files.
|
||||
|
||||
This is how a data item is defined in EDC:
|
||||
collections {
|
||||
group {
|
||||
name: "a_group";
|
||||
data {
|
||||
item: "key1" "value1";
|
||||
item: "key2" "value2";
|
||||
}
|
||||
This is how a data item is defined in EDC:
|
||||
collections {
|
||||
group {
|
||||
name: "a_group";
|
||||
data {
|
||||
item: "key1" "value1";
|
||||
item: "key2" "value2";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Warning: Do not confuse this call with edje_file_data_get(), which
|
||||
queries for a global EDC data field on an EDC declaration file.
|
||||
]]
|
||||
Warning: Do not confuse this call with edje_file_data_get(), which
|
||||
queries for a global EDC data field on an EDC declaration file.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
keys {
|
||||
key: string; [[The data field's key string]]
|
||||
|
|
|
@ -3,8 +3,8 @@ interface @beta Efl.Cached.Item
|
|||
[[Efl Cached Item interface]]
|
||||
methods {
|
||||
@property memory_size {
|
||||
[[The memory size associated with an object.]]
|
||||
get {
|
||||
[[Get the memory size associated with an object.]]
|
||||
}
|
||||
values {
|
||||
consumed: uint; [[Bytes of memory consumed by this object.]]
|
||||
|
|
|
@ -9,20 +9,18 @@ interface Efl.Canvas.Pointer
|
|||
methods {
|
||||
/* FIXME Efl.Input.Device is not stable yet*/
|
||||
@property pointer_inside @beta {
|
||||
[[Whether the mouse pointer is logically inside the canvas.
|
||||
|
||||
This value is $false or $true, depending on whether a pointer,in or pointer,out
|
||||
event has been previously received.
|
||||
|
||||
A return value of $true indicates the mouse is logically
|
||||
inside the canvas, and $false implies it is logically
|
||||
outside the canvas.
|
||||
|
||||
A canvas begins with the mouse being assumed outside ($false).
|
||||
]]
|
||||
get {
|
||||
[[Returns whether the mouse pointer is logically inside the
|
||||
canvas.
|
||||
|
||||
When this function is called it will return a value of either
|
||||
$false or $true, depending on whether a pointer,in or pointer,out
|
||||
event has been called previously.
|
||||
|
||||
A return value of $true indicates the mouse is logically
|
||||
inside the canvas, and $false implies it is logically
|
||||
outside the canvas.
|
||||
|
||||
A canvas begins with the mouse being assumed outside ($false).
|
||||
]]
|
||||
}
|
||||
keys {
|
||||
seat: Efl.Input.Device @optional; [[The seat to consider, if $null
|
||||
|
|
|
@ -9,17 +9,17 @@ interface Efl.Canvas.Scene
|
|||
]]
|
||||
methods {
|
||||
@property image_max_size {
|
||||
[[The maximum image size the canvas can possibly handle.
|
||||
|
||||
This function returns the largest image or surface size that
|
||||
the canvas can handle in pixels, and if there is one, returns $true.
|
||||
It returns $false if no extra constraint on maximum image
|
||||
size exists.
|
||||
|
||||
The default limit is 65535x65535.
|
||||
|
||||
]]
|
||||
get {
|
||||
[[Get the maximum image size the canvas can possibly handle.
|
||||
|
||||
This function returns the largest image or surface size that
|
||||
the canvas can handle in pixels, and if there is one, returns $true.
|
||||
It returns $false if no extra constraint on maximum image
|
||||
size exists.
|
||||
|
||||
The default limit is 65535x65535.
|
||||
|
||||
]]
|
||||
return: bool; [[$true on success, $false otherwise]]
|
||||
}
|
||||
values {
|
||||
|
@ -33,8 +33,8 @@ interface Efl.Canvas.Scene
|
|||
]]
|
||||
}
|
||||
@property group_objects_calculating {
|
||||
[[Get if the canvas is currently calculating group objects.]]
|
||||
get {
|
||||
[[Get if the canvas is currently calculating group objects.]]
|
||||
}
|
||||
values {
|
||||
calculating: bool; [[$true if currently calculating group objects.]]
|
||||
|
@ -213,12 +213,12 @@ interface Efl.Canvas.Scene
|
|||
}
|
||||
/* FIXME Efl.Input.Device is not stable yet*/
|
||||
@property pointer_position @beta {
|
||||
get {
|
||||
[[This function returns the current known pointer coordinates
|
||||
[[The current known pointer coordinates.
|
||||
|
||||
This function returns the current position of the main input
|
||||
pointer (mouse, pen, etc...).
|
||||
]]
|
||||
This function returns the current position of the main input
|
||||
pointer (mouse, pen, etc...).
|
||||
]]
|
||||
get {
|
||||
return: bool; [[$true if a pointer exists for the given seat, otherwise $false.]]
|
||||
}
|
||||
keys {
|
||||
|
|
|
@ -10,6 +10,7 @@ struct _Efl_File_Data
|
|||
Eina_Stringshare *vpath; /* efl_file_set */
|
||||
Eina_Stringshare *key; /* efl_file_key_set */
|
||||
Eina_File *file; /* efl_file_mmap_set */
|
||||
time_t mtime;
|
||||
Eina_Bool file_opened : 1; /* if `file` was opened implicitly during load */
|
||||
Eina_Bool setting : 1; /* set when this file is internally calling methods to avoid infinite recursion */
|
||||
Eina_Bool loaded : 1; /* whether the currently set file properties have been loaded */
|
||||
|
@ -91,6 +92,7 @@ _efl_file_file_set(Eo *obj, Efl_File_Data *pd, const char *file)
|
|||
char *tmp;
|
||||
Eina_Error err = 0;
|
||||
Eina_Bool same;
|
||||
struct stat st;
|
||||
|
||||
tmp = (char*)(file);
|
||||
if (tmp)
|
||||
|
@ -98,9 +100,17 @@ _efl_file_file_set(Eo *obj, Efl_File_Data *pd, const char *file)
|
|||
|
||||
same = !eina_stringshare_replace(&pd->vpath, tmp ?: file);
|
||||
free(tmp);
|
||||
if (file)
|
||||
{
|
||||
err = stat(pd->vpath, &st);
|
||||
if (same && (!err)) same = st.st_mtime == pd->mtime;
|
||||
}
|
||||
if (same) return err;
|
||||
pd->mtime = file && (!err) ? st.st_mtime : 0;
|
||||
pd->loaded = EINA_FALSE;
|
||||
if (!pd->setting)
|
||||
if (pd->setting)
|
||||
err = 0; /* this is from mmap_set, which may provide a virtual file */
|
||||
else
|
||||
{
|
||||
pd->setting = 1;
|
||||
err = efl_file_mmap_set(obj, NULL);
|
||||
|
|
|
@ -7,62 +7,50 @@ mixin Efl.File requires Efl.Object {
|
|||
]]
|
||||
methods {
|
||||
@property mmap {
|
||||
[[The mmaped file from where an object will fetch the real
|
||||
data (it must be an @Eina.File).
|
||||
|
||||
If mmap is set during object construction, the object will automatically
|
||||
call @.load during the finalize phase of construction.
|
||||
]]
|
||||
set {
|
||||
[[Set the mmaped file from where an object will fetch the real
|
||||
data (it must be an @Eina.File).
|
||||
|
||||
If mmap is set during object construction, the object will automatically
|
||||
call @.load during the finalize phase of construction.
|
||||
]]
|
||||
|
||||
return: Eina.Error; [[0 on success, error code otherwise]]
|
||||
}
|
||||
get {
|
||||
[[Get the mmaped file from where an object will fetch the real
|
||||
data (it must be an @Eina.File).
|
||||
]]
|
||||
}
|
||||
values {
|
||||
f: const(Eina.File) @by_ref; [[The handle to the @Eina.File that will be used]]
|
||||
}
|
||||
}
|
||||
@property file {
|
||||
[[The file path from where an object will fetch the data.
|
||||
|
||||
If file is set during object construction, the object will automatically
|
||||
call @.load during the finalize phase of construction.
|
||||
|
||||
You must not modify the strings on the returned pointers.
|
||||
]]
|
||||
set {
|
||||
[[Set the file path from where an object will fetch the data.
|
||||
|
||||
If file is set during object construction, the object will automatically
|
||||
call @.load during the finalize phase of construction.
|
||||
]]
|
||||
|
||||
return: Eina.Error; [[0 on success, error code otherwise]]
|
||||
}
|
||||
get {
|
||||
[[Retrieve the file path from where an object is to fetch the data.
|
||||
|
||||
You must not modify the strings on the returned pointers.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
file: string; [[The file path.]]
|
||||
}
|
||||
}
|
||||
@property key {
|
||||
set {
|
||||
[[Set the key which corresponds to the target data within a file.
|
||||
[[The key which corresponds to the target data within a file.
|
||||
|
||||
Some filetypes can contain multiple data streams which are indexed by
|
||||
a key. Use this property for such cases.
|
||||
]]
|
||||
Some file types can contain multiple data streams which are indexed by
|
||||
a key. Use this property for such cases (See for example @Efl.Ui.Image or
|
||||
@Efl.Ui.Layout).
|
||||
|
||||
You must not modify the strings on the returned pointers.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the previously-set key which corresponds to the target data within a file.
|
||||
|
||||
Some filetypes can contain multiple data streams which are indexed by
|
||||
a key. Use this property for such cases (See for example @Efl.Ui.Image or
|
||||
@Efl.Ui.Layout).
|
||||
|
||||
You must not modify the strings on the returned pointers.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
key: string; [[The group that the data belongs to. See the class documentation
|
||||
|
@ -71,9 +59,9 @@ mixin Efl.File requires Efl.Object {
|
|||
}
|
||||
}
|
||||
@property loaded {
|
||||
[[The load state of the object.
|
||||
]]
|
||||
get {
|
||||
[[Get the load state of the object.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
loaded: bool; [[$true if the object is loaded, $false otherwise.]]
|
||||
|
|
|
@ -1,25 +1,48 @@
|
|||
interface @beta Efl.Gfx.Arrangement
|
||||
{
|
||||
[[API common to all UI container objects.]]
|
||||
[[
|
||||
This interface provides methods for manipulating how contents are arranged within a container,
|
||||
providing more granularity for content positioning.
|
||||
|
||||
@since 1.23
|
||||
]]
|
||||
methods
|
||||
{
|
||||
@property content_align {
|
||||
[[Alignment of the container within its bounds]]
|
||||
[[This property determines how contents will be aligned within a container if there is
|
||||
unused space.
|
||||
|
||||
It is different than the @Efl.Gfx.Hint.hint_align property in that it affects the position
|
||||
of all the contents within the container. For example, if a box widget has extra space
|
||||
on the horizontal axis, this property can be used to align the box's contents to the
|
||||
left or the right side.
|
||||
|
||||
See also @Efl.Gfx.Hint.hint_align.
|
||||
]]
|
||||
set {}
|
||||
get {}
|
||||
values {
|
||||
align_horiz: double; [[Horizontal alignment]]
|
||||
align_vert: double; [[Vertical alignment]]
|
||||
align_horiz: double; [[Double, ranging from 0.0 to 1.0, where 0.0 is at the start of the horizontal axis
|
||||
and 1.0 is at the end. The default value is 0.5.]]
|
||||
align_vert: double; [[Double, ranging from 0.0 to 1.0, where 0.0 is at the start of the vertical axis
|
||||
and 1.0 is at the end. The default value is 0.5.]]
|
||||
}
|
||||
}
|
||||
@property content_padding {
|
||||
[[Padding between items contained in this object.]]
|
||||
[[This property determines the space between a container's content items.
|
||||
|
||||
It is different than the @Efl.Gfx.Hint.hint_margin property in that it is applied to each
|
||||
content item within the container instead of a single item. The calculation for these two properties
|
||||
is cumulative.
|
||||
|
||||
See also @Efl.Gfx.Hint.hint_margin.
|
||||
]]
|
||||
set {}
|
||||
get {}
|
||||
values {
|
||||
pad_horiz: double; [[Horizontal padding]]
|
||||
pad_vert: double; [[Vertical padding]]
|
||||
scalable: bool; [[$true if scalable, $false otherwise]]
|
||||
pad_horiz: double; [[Horizontal padding. The default value is 0.0.]]
|
||||
pad_vert: double; [[Vertical padding. The default value is 0.0.]]
|
||||
scalable: bool; [[$true if scalable, $false otherwise. The default value is $false.]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,35 +9,28 @@ mixin Efl.Gfx.Color
|
|||
data: null;
|
||||
methods {
|
||||
@property color @pure_virtual {
|
||||
[[The general/main color of the given Evas object.
|
||||
|
||||
Represents the main color's RGB component (and alpha channel)
|
||||
values, which range from 0 to 255. For the alpha channel,
|
||||
which defines the object's transparency level, 0 means totally
|
||||
transparent, while 255 means opaque. These color values are
|
||||
premultiplied by the alpha value.
|
||||
|
||||
Usually you'll use this attribute for text and rectangle objects,
|
||||
where the main color is the only color. If set for objects
|
||||
which themselves have colors, like the images one, those colors
|
||||
get modulated by this one.
|
||||
|
||||
All newly created Evas rectangles get the default color
|
||||
values of 255 255 255 255 (opaque white).
|
||||
|
||||
When reading this property, use $NULL pointers on the components you're not interested
|
||||
in and they'll be ignored by the function.
|
||||
]]
|
||||
set {
|
||||
[[Sets the general/main color of the given Evas object to the given
|
||||
one.
|
||||
|
||||
See also @.color.get (for an example)
|
||||
|
||||
These color values are expected to be premultiplied by alpha.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Retrieves the general/main color of the given Evas object.
|
||||
|
||||
Retrieves the main color's RGB component (and alpha channel)
|
||||
values, which range from 0 to 255. For the alpha channel,
|
||||
which defines the object's transparency level, 0 means totally
|
||||
transparent, while 255 means opaque. These color values are
|
||||
premultiplied by the alpha value.
|
||||
|
||||
Usually youll use this attribute for text and rectangle objects,
|
||||
where the main color is their unique one. If set for objects
|
||||
which themselves have colors, like the images one, those colors
|
||||
get modulated by this one.
|
||||
|
||||
All newly created Evas rectangles get the default color
|
||||
values of 255 255 255 255 (opaque white).
|
||||
|
||||
Use null pointers on the components you're not interested
|
||||
in: they'll be ignored by the function.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
r: int;
|
||||
|
@ -47,15 +40,11 @@ mixin Efl.Gfx.Color
|
|||
}
|
||||
}
|
||||
@property color_code {
|
||||
[[Hexadecimal color code of given Evas object (#RRGGBBAA).
|
||||
]]
|
||||
set {
|
||||
[[Set the color of given Evas object to the given hex color code(#RRGGBBAA).
|
||||
e.g. efl_gfx_color_code_set(obj, "#FFCCAACC");
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get hex color code of given Evas object.
|
||||
This returns a short lived hex color code string.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
colorcode: string; [[the hex color code.]]
|
||||
|
|
|
@ -6,34 +6,27 @@ mixin @beta Efl.Gfx.Color_Class
|
|||
data: null;
|
||||
methods {
|
||||
@property color_class @pure_virtual {
|
||||
[[Color for the color class.
|
||||
|
||||
This property sets the color values for a 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 last two only apply
|
||||
to text parts).
|
||||
|
||||
Setting color emits a signal "color_class,set" with source being
|
||||
the given color.
|
||||
|
||||
When retrieving the color of an object, if no explicit
|
||||
object color is set, then global values will be used.
|
||||
|
||||
Note: These color values are expected to be premultiplied by $a.]]
|
||||
set {
|
||||
[[Set the color of color class.
|
||||
|
||||
This function sets the color values for a 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: These color values are expected to be premultiplied by $a.]]
|
||||
return: bool; [[$true if setting the color succeeded, $false otherwise]]
|
||||
}
|
||||
get {
|
||||
[[Get the color of color class.
|
||||
|
||||
This function gets the color values for a 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: These color values are expected to be premultiplied by $a.]]
|
||||
return: bool; [[$true if getting the color succeeded, $false otherwise]]
|
||||
}
|
||||
keys {
|
||||
|
@ -48,36 +41,27 @@ mixin @beta Efl.Gfx.Color_Class
|
|||
}
|
||||
}
|
||||
@property color_class_code {
|
||||
[[Hexadecimal color code string of the color class.
|
||||
|
||||
This property sets the color values for a 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 last two only apply
|
||||
to text parts).
|
||||
|
||||
Setting color emits a signal "color_class,set" with source being
|
||||
the given color.
|
||||
|
||||
When retrieving the color of an object, if no explicit
|
||||
object color is set, then global values will be used.
|
||||
|
||||
Note: These color values are expected to be premultiplied by the alpha.]]
|
||||
set {
|
||||
[[Set the hex color string of color class.
|
||||
|
||||
This function sets the color values for a 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: These color values are expected to be premultiplied by the alpha.]]
|
||||
return: bool; [[$true if setting the color succeeded, $false otherwise]]
|
||||
}
|
||||
get {
|
||||
[[Get the hex color string of color class.
|
||||
|
||||
This function gets the color values for a 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).
|
||||
|
||||
Returns $NULL if the color class cannot be fetched.
|
||||
|
||||
Note: These color values are expected to be premultiplied by $a.]]
|
||||
}
|
||||
keys {
|
||||
color_class: string; [[The name of color class]]
|
||||
|
@ -88,10 +72,10 @@ mixin @beta Efl.Gfx.Color_Class
|
|||
}
|
||||
}
|
||||
@property color_class_description @pure_virtual {
|
||||
get {
|
||||
[[Get the description of a color class.
|
||||
[[Get the description of a color class.
|
||||
|
||||
This function gets the description of a color class in use by an object.]]
|
||||
This function gets the description of a color class in use by an object.]]
|
||||
get {
|
||||
}
|
||||
keys {
|
||||
color_class: string; [[The name of color class]]
|
||||
|
|
|
@ -11,22 +11,19 @@ interface @beta Efl.Gfx.Filter
|
|||
c_prefix: efl_gfx;
|
||||
methods {
|
||||
@property filter_program {
|
||||
[[A graphical filter program on this object.
|
||||
|
||||
Valid for Text and Image objects at the moment.
|
||||
|
||||
The argument passed to this function is a string containing
|
||||
a valid Lua program based on the filters API as described in
|
||||
the "EFL Graphics Filters" reference page.
|
||||
|
||||
Set to $null to disable filtering.
|
||||
]]
|
||||
set {
|
||||
[[Set a graphical filter program on this object.
|
||||
|
||||
Valid for Text and Image objects at the moment.
|
||||
|
||||
The argument passed to this function is a string containing
|
||||
a valid Lua program based on the filters API as described in
|
||||
the "EFL Graphics Filters" reference page.
|
||||
|
||||
Set to $null to disable filtering.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Gets the code of the filter program set on this object.
|
||||
May be $null.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
code: string; [[The Lua program source code.]]
|
||||
|
|
|
@ -14,12 +14,12 @@ interface @beta Efl.Gfx.Frame_Controller
|
|||
|
||||
methods {
|
||||
@property animated {
|
||||
get {
|
||||
[[Check if an object can be animated (has multiple frames).
|
||||
[[Whether an object can be animated (has multiple frames).
|
||||
|
||||
This will be $true for animated object for instance but $false
|
||||
for a single frame object.
|
||||
]]
|
||||
This will be $true for animated object for instance but $false
|
||||
for a single frame object.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
is_animated: bool; [[$true if the object is animated]]
|
||||
|
@ -28,11 +28,9 @@ interface @beta Efl.Gfx.Frame_Controller
|
|||
@property frame {
|
||||
[[Index of the current frame of an animated object.
|
||||
|
||||
Ranges from 1 to @.frame_count. Valid only if @.animated.
|
||||
Ranges from 1 to @.frame_count. Valid only if @.animated is $true.
|
||||
]]
|
||||
set {
|
||||
[[Set the frame to current frame of an animated object.
|
||||
]]
|
||||
return: bool; [[Returns $true if the frame index is valid.]]
|
||||
}
|
||||
get {}
|
||||
|
@ -41,58 +39,56 @@ interface @beta Efl.Gfx.Frame_Controller
|
|||
}
|
||||
}
|
||||
@property frame_count {
|
||||
get {
|
||||
[[Get the total number of frames of the object, if animated.
|
||||
[[The total number of frames of the object, if animated.
|
||||
|
||||
Returns -1 if not animated.
|
||||
]]
|
||||
Returns -1 if not animated.
|
||||
]]
|
||||
get {
|
||||
return: int; [[The number of frames in the animated object.]]
|
||||
}
|
||||
}
|
||||
@property loop_type {
|
||||
/* FIXME: external type used from evas / emile */
|
||||
[[The kind of looping the animated object does.
|
||||
|
||||
If it returns @Efl.Gfx.Frame_Controller_Loop_Hint.loop, you should
|
||||
display frames in a sequence like: 1->2->3->1->2->3->1...
|
||||
|
||||
If it returns @Efl.Gfx.Frame_Controller_Loop_Hint.pingpong, it is
|
||||
better to display frames in a sequence like:
|
||||
1->2->3->2->1->2->3->1...
|
||||
|
||||
The default type is @Efl.Gfx.Frame_Controller_Loop_Hint.loop.
|
||||
]]
|
||||
get {
|
||||
[[Get the kind of looping the animated object does.
|
||||
|
||||
This returns the kind of looping the animated object wants to do.
|
||||
|
||||
If it returns @Efl.Gfx.Frame_Controller_Loop_Hint.loop, you should
|
||||
display frames in a sequence like: 1->2->3->1->2->3->1...
|
||||
|
||||
If it returns @Efl.Gfx.Frame_Controller_Loop_Hint.pingpong, it is
|
||||
better to display frames in a sequence like:
|
||||
1->2->3->2->1->2->3->1...
|
||||
|
||||
The default type is @Efl.Gfx.Frame_Controller_Loop_Hint.loop.
|
||||
]]
|
||||
return: Efl.Gfx.Frame_Controller_Loop_Hint; [[Loop type of the animated object.]]
|
||||
}
|
||||
}
|
||||
@property loop_count {
|
||||
[[The number times the animation of the object loops.
|
||||
|
||||
This returns loop count of animated object. The loop count is the number
|
||||
of times the animation will play fully from first to last frame
|
||||
until the animation should stop (at the final frame).
|
||||
|
||||
If 0 is returned, then looping should happen indefinitely
|
||||
(no limit to the number of times it loops).
|
||||
]]
|
||||
get {
|
||||
[[Get the number times the animation of the object loops.
|
||||
|
||||
This returns loop count of animated object. The loop count is the number
|
||||
of times the animation will play fully from first to last frame
|
||||
until the animation should stop (at the final frame).
|
||||
|
||||
If 0 is returned, then looping should happen indefinitely
|
||||
(no limit to the number of times it loops).
|
||||
]]
|
||||
return: int; [[The number of loop of an animated object.]]
|
||||
}
|
||||
}
|
||||
@property frame_duration {
|
||||
[[The duration of a sequence of frames.
|
||||
|
||||
This returns total duration in seconds that the specified
|
||||
sequence of frames should take.
|
||||
|
||||
If $start_frame is 1 and $frame_num is 0, this returns the
|
||||
duration of frame 1. If $start_frame is 1 and $frame_num is 1,
|
||||
this returns the total duration of frame 1 + frame 2.
|
||||
]]
|
||||
get {
|
||||
[[Get the duration of a sequence of frames.
|
||||
|
||||
This returns total duration in seconds that the specified
|
||||
sequence of frames should take.
|
||||
|
||||
If $start_frame is 1 and $frame_num is 0, this returns the
|
||||
duration of frame 1. If $start_frame is 1 and $frame_num is 1,
|
||||
this returns the total duration of frame 1 + frame 2.
|
||||
]]
|
||||
}
|
||||
keys {
|
||||
start_frame: int; [[The first frame, rangers from 1 to @.frame_count.]]
|
||||
|
|
|
@ -6,11 +6,10 @@ interface @beta Efl.Gfx.Gradient
|
|||
c_prefix: efl_gfx_gradient;
|
||||
methods {
|
||||
@property stop {
|
||||
[[The list of color stops for the gradient]]
|
||||
set {
|
||||
[[Set the list of color stops for the gradient]]
|
||||
}
|
||||
get {
|
||||
[[Get the list of color stops.]]
|
||||
}
|
||||
values {
|
||||
colors: ptr(const(Efl.Gfx.Gradient_Stop)); [[Color stops list]]
|
||||
|
@ -18,16 +17,15 @@ interface @beta Efl.Gfx.Gradient
|
|||
}
|
||||
}
|
||||
@property spread {
|
||||
[[The spread method that should be used for this gradient.
|
||||
The default is @Efl.Gfx.Gradient_Spread.pad.
|
||||
]]
|
||||
set {
|
||||
[[Specifies the spread method that should be used for this gradient.]]
|
||||
}
|
||||
get {
|
||||
[[Returns the spread method use by this gradient. The default is
|
||||
EFL_GFX_GRADIENT_SPREAD_PAD.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
s: Efl.Gfx.Gradient_Spread; [[Spread type to be used]]
|
||||
s: Efl.Gfx.Gradient_Spread; [[Spread type to be used.]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,11 +3,10 @@ interface @beta Efl.Gfx.Gradient_Linear extends Efl.Gfx.Gradient
|
|||
[[Efl graphics gradient linear interface]]
|
||||
methods {
|
||||
@property start {
|
||||
[[The start point of this linear gradient.]]
|
||||
set {
|
||||
[[Sets the start point of this linear gradient.]]
|
||||
}
|
||||
get {
|
||||
[[Gets the start point of this linear gradient.]]
|
||||
}
|
||||
values {
|
||||
x: double; [[X co-ordinate of start point]]
|
||||
|
@ -15,11 +14,10 @@ interface @beta Efl.Gfx.Gradient_Linear extends Efl.Gfx.Gradient
|
|||
}
|
||||
}
|
||||
@property end {
|
||||
[[The end point of this linear gradient.]]
|
||||
set {
|
||||
[[Sets the end point of this linear gradient.]]
|
||||
}
|
||||
get {
|
||||
[[Gets the end point of this linear gradient.]]
|
||||
}
|
||||
values {
|
||||
x: double; [[X co-ordinate of end point]]
|
||||
|
|
|
@ -3,11 +3,10 @@ interface @beta Efl.Gfx.Gradient_Radial extends Efl.Gfx.Gradient
|
|||
[[Efl graphics gradient radial interface]]
|
||||
methods {
|
||||
@property center {
|
||||
[[The center of this radial gradient.]]
|
||||
set {
|
||||
[[Sets the center of this radial gradient.]]
|
||||
}
|
||||
get {
|
||||
[[Gets the center of this radial gradient.]]
|
||||
}
|
||||
values {
|
||||
x: double; [[X co-ordinate of center point]]
|
||||
|
@ -15,22 +14,20 @@ interface @beta Efl.Gfx.Gradient_Radial extends Efl.Gfx.Gradient
|
|||
}
|
||||
}
|
||||
@property radius {
|
||||
[[The radius of this radial gradient.]]
|
||||
set {
|
||||
[[Sets the center radius of this radial gradient.]]
|
||||
}
|
||||
get {
|
||||
[[Gets the center radius of this radial gradient.]]
|
||||
}
|
||||
values {
|
||||
r: double; [[Center radius]]
|
||||
}
|
||||
}
|
||||
@property focal {
|
||||
[[The focal point of this radial gradient.]]
|
||||
set {
|
||||
[[Sets the focal point of this radial gradient.]]
|
||||
}
|
||||
get {
|
||||
[[Gets the focal point of this radial gradient.]]
|
||||
}
|
||||
values {
|
||||
x: double; [[X co-ordinate of focal point]]
|
||||
|
|
|
@ -244,9 +244,10 @@ interface Efl.Gfx.Hint
|
|||
boundaries of a container/manager. Accepted values are in
|
||||
the 0.0 to 1.0 range.
|
||||
|
||||
For the horizontal component, 0.0 means to the left, 1.0
|
||||
means to the right. Analogously, for the vertical component,
|
||||
0.0 to the top, 1.0 means to the bottom.
|
||||
For the horizontal component, 0.0 means the start of the axis
|
||||
in the direction that the current language reads, 1.0 means the end of the axis.
|
||||
|
||||
For the vertical component, 0.0 to the top, 1.0 means to the bottom.
|
||||
|
||||
This is not a size enforcement in any way, it's just a hint
|
||||
that should be used whenever appropriate.
|
||||
|
@ -257,8 +258,8 @@ interface Efl.Gfx.Hint
|
|||
@image html alignment-hints.png
|
||||
*/
|
||||
values {
|
||||
x: double; [[Double, ranging from 0.0 to 1.0.]]
|
||||
y: double; [[Double, ranging from 0.0 to 1.0.]]
|
||||
x: double; [[Double, ranging from 0.0 to 1.0, where 0.0 is at the start of the horizontal axis and 1.0 is at the end.]]
|
||||
y: double; [[Double, ranging from 0.0 to 1.0, where 0.0 is at the start of the vertical axis and 1.0 is at the end.]]
|
||||
}
|
||||
}
|
||||
@property hint_fill {
|
||||
|
|
|
@ -248,20 +248,14 @@ interface @beta Efl.Gfx.Image
|
|||
}
|
||||
}
|
||||
@property scale_hint {
|
||||
set {
|
||||
[[Set the scale hint of a given image of the canvas.
|
||||
[[The scale hint of a given image of the canvas.
|
||||
|
||||
This function sets the scale hint value of the given image
|
||||
object in the canvas, which will affect how Evas is to cache
|
||||
scaled versions of its original source image.
|
||||
]]
|
||||
The scale hint affects how Evas is to cache
|
||||
scaled versions of its original source image.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the scale hint of a given image of the canvas.
|
||||
|
||||
This function returns the scale hint value of the given image
|
||||
object of the canvas.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
hint: Efl.Gfx.Image_Scale_Hint; [[Scalable or static size hint,
|
||||
|
@ -269,8 +263,8 @@ interface @beta Efl.Gfx.Image
|
|||
}
|
||||
}
|
||||
@property image_load_error {
|
||||
[[The (last) file loading error for a given object.]]
|
||||
get {
|
||||
[[Gets the (last) file loading error for a given object.]]
|
||||
}
|
||||
values {
|
||||
error: Eina.Error; [[The load error code.]]
|
||||
|
|
|
@ -71,19 +71,13 @@ interface @beta Efl.Gfx.Image_Load_Controller
|
|||
}
|
||||
}
|
||||
@property load_dpi {
|
||||
set {
|
||||
[[Set the DPI resolution of an image object's source image.
|
||||
[[The DPI resolution of an image object's source image.
|
||||
|
||||
This function sets the DPI resolution of a given loaded canvas
|
||||
image. Most useful for the SVG image loader.
|
||||
]]
|
||||
Most useful for the SVG image loader.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the DPI resolution of a loaded image object in the canvas.
|
||||
|
||||
This function returns the DPI resolution of the given canvas
|
||||
image.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
dpi: double; [[The DPI resolution.]]
|
||||
|
@ -99,22 +93,19 @@ interface @beta Efl.Gfx.Image_Load_Controller
|
|||
}
|
||||
}
|
||||
@property load_region {
|
||||
[[Inform a given image object to load a selective region of its
|
||||
source image.
|
||||
|
||||
This property is useful when one is not showing all of an
|
||||
image's area on its image object.
|
||||
|
||||
Note: The image loader for the image format in question has
|
||||
to support selective region loading in order for this function
|
||||
to work.
|
||||
]]
|
||||
set {
|
||||
[[Inform a given image object to load a selective region of its
|
||||
source image.
|
||||
|
||||
This function is useful when one is not showing all of an
|
||||
image's area on its image object.
|
||||
|
||||
Note: The image loader for the image format in question has
|
||||
to support selective region loading in order for this function
|
||||
to work.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Retrieve the coordinates of a given image object's selective
|
||||
(source image) load region.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
region: Eina.Rect; [[A region of the image.]]
|
||||
|
@ -159,14 +150,13 @@ interface @beta Efl.Gfx.Image_Load_Controller
|
|||
}
|
||||
}
|
||||
@property load_skip_header {
|
||||
[[Initial load should skip header check and leave it all to data load
|
||||
[[Initial load should skip header check and leave it all to data load.
|
||||
|
||||
If this is true, then future loads of images will defer header
|
||||
loading to a preload stage and/or data load later on rather than
|
||||
at the start when the load begins (e.g. when file is set).
|
||||
]]
|
||||
set {
|
||||
[[Set the skip header state for susbsequent loads of a file. ]]
|
||||
}
|
||||
get {}
|
||||
values {
|
||||
|
|
|
@ -104,10 +104,8 @@ mixin @beta Efl.Gfx.Path requires Efl.Object
|
|||
}
|
||||
}
|
||||
append_squadratic_to {
|
||||
[[Same as efl_gfx_path_append_quadratic_to() api only difference is
|
||||
[[Same as @.append_quadratic_to api only difference is
|
||||
that it uses the current control point to draw the bezier.
|
||||
|
||||
See also @.append_quadratic_to.
|
||||
]]
|
||||
params {
|
||||
@in x: double; [[X co-ordinate of end point of the line.]]
|
||||
|
@ -130,10 +128,8 @@ mixin @beta Efl.Gfx.Path requires Efl.Object
|
|||
}
|
||||
}
|
||||
append_scubic_to {
|
||||
[[Same as efl_gfx_path_append_cubic_to() api only difference is that it
|
||||
[[Same as @.append_cubic_to api only difference is that it
|
||||
uses the current control point to draw the bezier.
|
||||
|
||||
See also @.append_cubic_to.
|
||||
]]
|
||||
params {
|
||||
@in x: double; [[X co-ordinate of end point of the line.]]
|
||||
|
|
|
@ -3,22 +3,18 @@ interface @beta Efl.Gfx.Size_Class
|
|||
[[Efl Gfx Size Class interface]]
|
||||
methods {
|
||||
@property size_class {
|
||||
set {
|
||||
[[Set width and height of size class.
|
||||
[[Width and height of size class.
|
||||
|
||||
This function sets width and height for a size class.
|
||||
This will make all edje parts in the specified object that have
|
||||
the specified size class update their size with given values.
|
||||
]]
|
||||
This property sets width and height for a size class.
|
||||
This will make all edje parts in the specified object that have
|
||||
the specified size class update their size with given values.
|
||||
When reading, these values will only be valid until the size class is changed
|
||||
or the edje object is deleted.
|
||||
]]
|
||||
set {
|
||||
return: bool; [[$true, on success or $false, on error]]
|
||||
}
|
||||
get {
|
||||
[[Get width and height of size class.
|
||||
|
||||
This function gets width and height for a size class.
|
||||
These values will only be valid until the size class is changed
|
||||
or the edje object is deleted.
|
||||
]]
|
||||
return: bool; [[$true, on success or $false, on error]]
|
||||
}
|
||||
keys {
|
||||
|
|
|
@ -10,28 +10,24 @@ interface Efl.Gfx.Stack
|
|||
event_prefix: efl_gfx_entity;
|
||||
methods {
|
||||
@property layer {
|
||||
[[The layer of its canvas that the given object will be part of.
|
||||
|
||||
If you don't use this property, you'll be dealing with a unique
|
||||
layer of objects (the default one). Additional layers are handy when
|
||||
you don't want a set of objects to interfere with another set with
|
||||
regard to stacking. Two layers are completely disjoint in that
|
||||
matter.
|
||||
|
||||
This is a low-level function, which you'd be using when something
|
||||
should be always on top, for example.
|
||||
|
||||
Warning: Don't change the layer of
|
||||
smart objects' children. Smart objects have a layer of their own,
|
||||
which should contain all their child objects.
|
||||
]]
|
||||
set {
|
||||
[[Sets the layer of its canvas that the given object will be part of.
|
||||
|
||||
If you don't use this function, you'll be dealing with an unique
|
||||
layer of objects (the default one). Additional layers are handy when
|
||||
you don't want a set of objects to interfere with another set with
|
||||
regard to stacking. Two layers are completely disjoint in that
|
||||
matter.
|
||||
|
||||
This is a low-level function, which you'd be using when something
|
||||
should be always on top, for example.
|
||||
|
||||
Warning: Don't change the layer of
|
||||
smart objects' children. Smart objects have a layer of their own,
|
||||
which should contain all their child objects.
|
||||
|
||||
See also @.layer.get()]]
|
||||
}
|
||||
get {
|
||||
[[Retrieves the layer of its canvas that the given object is part of.
|
||||
|
||||
See also @.layer.set()]]
|
||||
}
|
||||
values {
|
||||
l: short; [[The number of the layer to place the object on.
|
||||
|
@ -39,25 +35,25 @@ interface Efl.Gfx.Stack
|
|||
}
|
||||
}
|
||||
@property below {
|
||||
[[The Evas object stacked right below this object.
|
||||
|
||||
This function will traverse layers in its search, if there are
|
||||
objects on layers below the one $obj is placed at.
|
||||
|
||||
See also @.layer.]]
|
||||
get {
|
||||
[[Get the Evas object stacked right below $obj
|
||||
|
||||
This function will traverse layers in its search, if there are
|
||||
objects on layers below the one $obj is placed at.
|
||||
|
||||
See also @.layer.get(), @.layer.set() and @.below.get()]]
|
||||
return: Efl.Gfx.Stack @no_unused; [[The @Efl.Gfx.Stack object directly below $obj, if any,
|
||||
or $null, if none.]]
|
||||
}
|
||||
}
|
||||
@property above {
|
||||
[[Get the Evas object stacked right above this object.
|
||||
|
||||
This function will traverse layers in its search, if there are
|
||||
objects on layers above the one $obj is placed at.
|
||||
|
||||
See also @.layer and @.below]]
|
||||
get {
|
||||
[[Get the Evas object stacked right above $obj
|
||||
|
||||
This function will traverse layers in its search, if there are
|
||||
objects on layers above the one $obj is placed at.
|
||||
|
||||
See also @.layer.get(), @.layer.set() and @.below.get()]]
|
||||
return: Efl.Gfx.Stack @no_unused; [[The @Efl.Gfx.Stack object directly below $obj, if any,
|
||||
or $null, if none.]]
|
||||
}
|
||||
|
|
|
@ -5,18 +5,14 @@ interface @beta Efl.Gfx.Text_Class
|
|||
[[Efl Gfx Text Class interface]]
|
||||
methods {
|
||||
@property text_class {
|
||||
set {
|
||||
[[Set Edje text class.
|
||||
[[Font and font size from edje text class.
|
||||
|
||||
This function sets the text class for the Edje.]]
|
||||
When reading the font string will only be valid until the text class is changed
|
||||
or the edje object is deleted.]]
|
||||
set {
|
||||
return: bool; [[$true, on success or $false, on error]]
|
||||
}
|
||||
get {
|
||||
[[Get font and font size from edje text class.
|
||||
|
||||
This function gets the font and the font size from 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 {
|
||||
|
|
|
@ -19,22 +19,23 @@ interface @beta Efl.Model
|
|||
c_prefix: efl_model;
|
||||
methods {
|
||||
@property properties {
|
||||
[[Get properties from model.
|
||||
|
||||
Properties_get is due to provide callers a way the fetch the
|
||||
current properties implemented/used by the model. The event
|
||||
@[Efl.Model.properties,changed] will be raised to notify
|
||||
listeners of any modifications in the properties.
|
||||
|
||||
See also @[Efl.Model.properties,changed].
|
||||
]]
|
||||
get {
|
||||
[[Get properties from model.
|
||||
|
||||
Properties_get is due to provide callers a way the fetch the
|
||||
current properties implemented/used by the model. The event
|
||||
@[Efl.Model.properties,changed] will be raised to notify
|
||||
listeners of any modifications in the properties.
|
||||
|
||||
See also @[Efl.Model.properties,changed].
|
||||
]]
|
||||
}
|
||||
values {
|
||||
properties: iterator<string> @move; [[Array of current properties]]
|
||||
}
|
||||
}
|
||||
@property property {
|
||||
@property property {
|
||||
[[ ]]
|
||||
set {
|
||||
[[Set a property value of a given property name.
|
||||
|
||||
|
@ -71,7 +72,7 @@ interface @beta Efl.Model
|
|||
value: any_value_ptr; [[Property value]]
|
||||
}
|
||||
}
|
||||
property_ready_get {
|
||||
property_ready_get {
|
||||
[[Get a future value when it changes to something that is not error:EAGAIN
|
||||
|
||||
@.property.get can return an error with code EAGAIN when it doesn't have any
|
||||
|
@ -82,7 +83,7 @@ interface @beta Efl.Model
|
|||
|
||||
|
||||
The future can also be canceled if the model itself gets destroyed.
|
||||
]]
|
||||
]]
|
||||
params {
|
||||
@in property: string; [[Property name.]]
|
||||
}
|
||||
|
@ -126,17 +127,17 @@ interface @beta Efl.Model
|
|||
return: future<array<Efl.Object>>; [[Array of children]]
|
||||
}
|
||||
@property children_count {
|
||||
get {
|
||||
[[Get children count.
|
||||
[[Number of children.
|
||||
|
||||
When efl_model_load is completed @.children_count.get
|
||||
can be used to get the number of children. @.children_count.get
|
||||
can also be used before calling @.children_slice_get so a valid
|
||||
range is known. Event @[Efl.Model.children,count,changed] is
|
||||
emitted when count is finished.
|
||||
When efl_model_load is completed @.children_count.get
|
||||
can be used to get the number of children. @.children_count.get
|
||||
can also be used before calling @.children_slice_get so a valid
|
||||
range is known. Event @[Efl.Model.children,count,changed] is
|
||||
emitted when count is finished.
|
||||
|
||||
See also @.children_slice_get.
|
||||
]]
|
||||
See also @.children_slice_get.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
count: uint; [[Current known children count]]
|
||||
|
|
|
@ -10,7 +10,7 @@ interface Efl.Pack_Linear extends Efl.Pack
|
|||
pack_begin {
|
||||
[[Prepend an object at the beginning of this container.
|
||||
|
||||
This is the same as @.pack_at($subobj, 0).
|
||||
This is the same as @.pack_at with a $[0] index.
|
||||
|
||||
When this container is deleted, it will request deletion of the
|
||||
given $subobj. Use @Efl.Pack.unpack to remove $subobj from this
|
||||
|
@ -24,7 +24,7 @@ interface Efl.Pack_Linear extends Efl.Pack
|
|||
pack_end {
|
||||
[[Append object at the end of this container.
|
||||
|
||||
This is the same as @.pack_at($subobj, -1).
|
||||
This is the same as @.pack_at with a $[-1] index.
|
||||
|
||||
When this container is deleted, it will request deletion of the
|
||||
given $subobj. Use @Efl.Pack.unpack to remove $subobj from this
|
||||
|
@ -66,14 +66,14 @@ interface Efl.Pack_Linear extends Efl.Pack
|
|||
pack_at {
|
||||
[[Inserts $subobj BEFORE the sub-object at position $index.
|
||||
|
||||
$index ranges from -$count to $count-1, where positive numbers go
|
||||
from first sub-object (0) to last ($count-1), and negative numbers go
|
||||
from last sub-object (-1) to first (-$count). $count is
|
||||
$index ranges from $[-count] to $[count-1], where positive numbers go
|
||||
from first sub-object ($[0]) to last ($[count-1]), and negative numbers go
|
||||
from last sub-object ($[-1]) to first ($[-count]). $count is
|
||||
the number of sub-objects currently in the container as returned by
|
||||
@Efl.Container.content_count.
|
||||
|
||||
If $index is less than -$count, it will trigger @.pack_begin($subobj)
|
||||
whereas $index greater than $count-1 will trigger @.pack_end($subobj).
|
||||
If $index is less than $[-count], it will trigger @.pack_begin
|
||||
whereas $index greater than $[count-1] will trigger @.pack_end.
|
||||
|
||||
When this container is deleted, it will request deletion of the
|
||||
given $subobj. Use @Efl.Pack.unpack to remove $subobj from this
|
||||
|
@ -82,7 +82,7 @@ interface Efl.Pack_Linear extends Efl.Pack
|
|||
params {
|
||||
@in subobj: Efl.Gfx.Entity; [[Object to pack.]]
|
||||
@in index: int; [[Index of existing sub-object to insert BEFORE.
|
||||
Valid range is -$count to ($count-1).
|
||||
Valid range is $[-count] to $[count-1]).
|
||||
]]
|
||||
}
|
||||
return: bool; [[$false if $subobj could not be packed.]]
|
||||
|
@ -90,18 +90,18 @@ interface Efl.Pack_Linear extends Efl.Pack
|
|||
pack_content_get {
|
||||
[[Sub-object at a given $index in this container.
|
||||
|
||||
$index ranges from -$count to $count-1, where positive numbers go
|
||||
from first sub-object (0) to last ($count-1), and negative numbers go
|
||||
from last sub-object (-1) to first (-$count). $count is
|
||||
$index ranges from $[-count] to $[count-1], where positive numbers go
|
||||
from first sub-object ($[0]) to last ($[count-1]), and negative numbers go
|
||||
from last sub-object ($[-1]) to first ($[-count]). $count is
|
||||
the number of sub-objects currently in the container as returned by
|
||||
@Efl.Container.content_count.
|
||||
|
||||
If $index is less than -$count, it will return the first sub-object
|
||||
whereas $index greater than $count-1 will return the last sub-object.
|
||||
If $index is less than $[-count], it will return the first sub-object
|
||||
whereas $index greater than $[count-1] will return the last sub-object.
|
||||
]]
|
||||
params {
|
||||
@in index: int; [[Index of the existing sub-object to retrieve.
|
||||
Valid range is -$count to ($count-1).
|
||||
Valid range is $[-count] to $[count-1].
|
||||
]]
|
||||
}
|
||||
return: Efl.Gfx.Entity; [[The sub-object contained at the given $index.]]
|
||||
|
@ -112,15 +112,15 @@ interface Efl.Pack_Linear extends Efl.Pack
|
|||
@in subobj: const(Efl.Gfx.Entity); [[An existing sub-object in this container.]]
|
||||
}
|
||||
return: int(-1); [[-1 in case $subobj is not found,
|
||||
or the index of $subobj in the range 0 to ($count-1).
|
||||
or the index of $subobj in the range $[0] to $[count-1].
|
||||
]]
|
||||
}
|
||||
pack_unpack_at {
|
||||
[[Pop out (remove) the sub-object at the specified $index.
|
||||
|
||||
$index ranges from -$count to $count-1, where positive numbers go
|
||||
from first sub-object (0) to last ($count-1), and negative numbers go
|
||||
from last sub-object (-1) to first (-$count). $count is
|
||||
$index ranges from $[-count] to $[count-1], where positive numbers go
|
||||
from first sub-object ($[0]) to last ($[count-1]), and negative numbers go
|
||||
from last sub-object ($[-1]) to first ($[-count]). $count is
|
||||
the number of sub-objects currently in the container as returned by
|
||||
@Efl.Container.content_count.
|
||||
|
||||
|
@ -129,7 +129,7 @@ interface Efl.Pack_Linear extends Efl.Pack
|
|||
]]
|
||||
params {
|
||||
@in index: int; [[Index of the sub-object to remove.
|
||||
Valid range is -$count to ($count-1).
|
||||
Valid range is $[-count] to $[count-1].
|
||||
]]
|
||||
}
|
||||
return: Efl.Gfx.Entity; [[The sub-object if it could be removed.]]
|
||||
|
|
|
@ -12,7 +12,7 @@ interface Efl.Part
|
|||
Part proxy objects have a special lifetime that
|
||||
is limited to one and only one function call. This
|
||||
behavior is implemented in efl_part() which call
|
||||
Efl.Part.part_get(). Calling Efl.Part.part_get() directly
|
||||
@.part_get(). Calling @.part_get() directly
|
||||
should be avoided.
|
||||
|
||||
In other words, the caller does not hold a reference
|
||||
|
|
|
@ -6,63 +6,58 @@ interface @beta Efl.Player
|
|||
[[Start a playing playable object.]]
|
||||
}
|
||||
stop {
|
||||
[[Stop playable object.]]
|
||||
[[Stop playable object.]]
|
||||
}
|
||||
@property playable {
|
||||
[[Whether or not the playable can be played.]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
play: bool; [[$true if the object have playable data, $false otherwise]]
|
||||
}
|
||||
[[Whether or not the playable can be played.]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
play: bool; [[$true if the object have playable data, $false otherwise]]
|
||||
}
|
||||
}
|
||||
@property play {
|
||||
set {
|
||||
[[Set play/pause state of the media file.
|
||||
[[Playback state of the media file.
|
||||
|
||||
This functions sets the currently playing status of the
|
||||
video. Using this function to play or pause the video
|
||||
doesn't alter it's current position.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get play/pause state of the media file.]]
|
||||
}
|
||||
values {
|
||||
play: bool; [[$true if playing, $false otherwise.]]
|
||||
}
|
||||
This property sets the currently playback state of the
|
||||
video. Using this function to play or pause the video
|
||||
doesn't alter it's current position.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
}
|
||||
values {
|
||||
play: bool; [[$true if playing, $false otherwise.]]
|
||||
}
|
||||
}
|
||||
@property pos {
|
||||
set {
|
||||
[[Set the position in the media file.
|
||||
[[Position in the media file.
|
||||
|
||||
This functions sets the current position of the media file
|
||||
to "sec", this only works on seekable streams. Setting the
|
||||
position doesn't change the playing state of the media file.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the position in the media file.
|
||||
|
||||
The position is returned as the number of seconds since the
|
||||
beginning of the media file.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
sec: double; [[The position (in seconds).]]
|
||||
}
|
||||
This property sets the current position of the media file
|
||||
to $sec seconds since the beginning of the media file.
|
||||
This only works on seekable streams. Setting the
|
||||
position doesn't change the playing state of the media file.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
}
|
||||
values {
|
||||
sec: double; [[The position (in seconds).]]
|
||||
}
|
||||
}
|
||||
@property progress {
|
||||
get {
|
||||
[[Get how much of the file has been played.
|
||||
[[How much of the file has been played.
|
||||
|
||||
This function gets the progress in playing the file, the
|
||||
return value is in the [0, 1] range.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
progress: double; [[The progress within the [0, 1] range.]]
|
||||
}
|
||||
This function gets the progress in playing the file, the
|
||||
return value is in the [0, 1] range.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
progress: double; [[The progress within the [0, 1] range.]]
|
||||
}
|
||||
}
|
||||
@property play_speed {
|
||||
[[Control the play speed of the media file.
|
||||
|
|
|
@ -8,12 +8,12 @@ interface Efl.Screen
|
|||
]]
|
||||
methods {
|
||||
@property screen_size_in_pixels {
|
||||
get {
|
||||
[[Get screen size (in pixels) for the screen.
|
||||
[[Screen size (in pixels) for the screen.
|
||||
|
||||
Note that on some display systems this information is not available and
|
||||
a value of 0x0 will be returned.
|
||||
]]
|
||||
Note that on some display systems this information is not available and
|
||||
a value of 0x0 will be returned.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
size: Eina.Size2D; [[The screen size in pixels.]]
|
||||
|
@ -32,34 +32,34 @@ interface Efl.Screen
|
|||
// }
|
||||
// }
|
||||
@property screen_scale_factor {
|
||||
[[Screen scaling factor.
|
||||
|
||||
This is the factor by which window contents will be scaled on the screen.
|
||||
|
||||
Note that on some display systems this information is not available and a
|
||||
value of 1.0 will be returned.
|
||||
]]
|
||||
get {
|
||||
[[Get screen scaling factor.
|
||||
|
||||
This is the factor by which window contents will be scaled on the screen.
|
||||
|
||||
Note that on some display systems this information is not available and a
|
||||
value of 1.0 will be returned.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
size: float; [[The screen scaling factor.]]
|
||||
}
|
||||
}
|
||||
@property screen_rotation {
|
||||
get {
|
||||
[[Get the rotation of the screen.
|
||||
[[The rotation of the screen.
|
||||
|
||||
Most engines only return multiples of 90.
|
||||
]]
|
||||
Most engines only return multiples of 90.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
rotation: int; [[Screen rotation in degrees.]]
|
||||
}
|
||||
}
|
||||
@property screen_dpi {
|
||||
[[The pixel density in DPI (Dots Per Inch) for the screen that a window is on.
|
||||
]]
|
||||
get {
|
||||
[[Get the pixel density in DPI (Dots Per Inch) for the screen that a window is on.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
xdpi: int; [[Horizontal DPI.]]
|
||||
|
|
|
@ -6,20 +6,15 @@ interface Efl.Text
|
|||
]]
|
||||
methods {
|
||||
@property text {
|
||||
set {
|
||||
[[Sets the text string to be displayed by the given text object.
|
||||
[[The text string to be displayed by the given text object.
|
||||
|
||||
See also @.text.get.
|
||||
]]
|
||||
Do not release (free) the returned value.
|
||||
|
||||
See also @.text.get.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Retrieves the text string currently being displayed by the given
|
||||
text object.
|
||||
|
||||
Do not free() the return value.
|
||||
|
||||
See also @.text.set.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
text: string; [[Text string to display on it.]]
|
||||
|
|
|
@ -53,32 +53,25 @@ interface @beta Efl.Text_Font {
|
|||
c_prefix: efl_text;
|
||||
methods {
|
||||
@property font {
|
||||
[[The font family, filename and size for a given text object.
|
||||
|
||||
This property controls the font name and size of a text object.
|
||||
The font string has to follow fontconfig's convention for
|
||||
naming fonts, as it's the underlying library used to query system
|
||||
fonts by Evas (see the fc-list command's output, on your system,
|
||||
to get an idea). Alternatively, youe can use the full path to a font
|
||||
file.
|
||||
|
||||
To skip changing font family pass null as font family.
|
||||
To skip changing font size pass 0 as font size.
|
||||
|
||||
When reading it, the font name string is still owned by
|
||||
Evas and should not be freed.
|
||||
See also @.font_source.
|
||||
]]
|
||||
set {
|
||||
[[Set the font family, filename and size for a given text object.
|
||||
|
||||
This function allows the font name and size of a text object to
|
||||
be set. The font string has to follow fontconfig's convention for
|
||||
naming fonts, as it's the underlying library used to query system
|
||||
fonts by Evas (see the fc-list command's output, on your system,
|
||||
to get an idea). Alternatively, youe can use the full path to a font
|
||||
file.
|
||||
|
||||
To skip changing font family pass null as font family.
|
||||
To skip changing font size pass 0 as font size.
|
||||
|
||||
See also @.font.get, @.font_source.get.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Retrieve the font family and size in use on a given text object.
|
||||
|
||||
This function allows the font name and size of a text object to
|
||||
be queried. Remember that the font name string is still owned by
|
||||
Evas and should not have free() called on it by the caller of the
|
||||
function.
|
||||
|
||||
See also @.font.set.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
font: string; [[The font family name or filename.]]
|
||||
|
@ -86,22 +79,17 @@ interface @beta Efl.Text_Font {
|
|||
}
|
||||
}
|
||||
@property font_source {
|
||||
[[The font (source) file to be used on a given text object.
|
||||
|
||||
This function allows the font file to be explicitly set for a
|
||||
given text object, overriding system lookup, which will first
|
||||
occur in the given file's contents.
|
||||
|
||||
See also @.font.
|
||||
]]
|
||||
set {
|
||||
[[Set the font (source) file to be used on a given text object.
|
||||
|
||||
This function allows the font file to be explicitly set for a
|
||||
given text object, overriding system lookup, which will first
|
||||
occur in the given file's contents.
|
||||
|
||||
See also @.font.set.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the font file's path which is being used on a given text
|
||||
object.
|
||||
|
||||
See @.font.get for more details.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
font_source: string; [[The font file's path.]]
|
||||
|
|
|
@ -50,9 +50,9 @@ interface @beta Efl.Ui.Scrollable_Interactive extends Efl.Ui.Scrollable
|
|||
@property scroll_freeze {
|
||||
[[Freeze property
|
||||
This function will freeze scrolling movement (by input of a user).
|
||||
Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally.
|
||||
Unlike @.movement_block, this function freezes bidirectionally.
|
||||
If you want to freeze in only one direction,
|
||||
See @.movement_block.set.
|
||||
see @.movement_block.set.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
|
|
|
@ -605,7 +605,7 @@ eio_file_chown(const char *path,
|
|||
return &c->common;
|
||||
#else
|
||||
EINA_SAFETY_ON_NULL_RETURN_VAL(error_cb, NULL);
|
||||
error_cb(data, NULL, EINVAL);
|
||||
error_cb((char *)data, NULL, EINVAL);
|
||||
return NULL;
|
||||
(void)path;
|
||||
(void)user;
|
||||
|
|
|
@ -319,15 +319,14 @@ mixin @beta Efl.Access.Object requires Efl.Object
|
|||
[[Removes all attributes in accessible object.]]
|
||||
}
|
||||
@property reading_info_type @protected {
|
||||
[[Reading information of an accessible object.
|
||||
|
||||
If no reading information is set, 0 is returned which means all four reading information types will be
|
||||
read from object highlight.
|
||||
If set to 0, existing reading info will be deleted.]]
|
||||
get {
|
||||
[[Gets reading information types of an accessible object. if no reading information
|
||||
is set, 0 is returned which means all four reading information types will be read on
|
||||
object highlight]]
|
||||
}
|
||||
set {
|
||||
[[Sets reading information of an accessible object. If set as 0, existing
|
||||
reading info will be deleted and by default all four reading information types
|
||||
like name, role, state and description will be read on object highlight]]
|
||||
}
|
||||
values {
|
||||
reading_info: Efl.Access.Reading.Info.Type; [[Reading information types]]
|
||||
|
@ -447,8 +446,8 @@ mixin @beta Efl.Access.Object requires Efl.Object
|
|||
[[Removes all relationships in accessible object.]]
|
||||
}
|
||||
@property access_root @static @beta {
|
||||
[[Root object of accessible object hierarchy]]
|
||||
get {
|
||||
[[Get root object of accessible object hierarchy]]
|
||||
values {
|
||||
ret: Efl.Object; [[Root object]]
|
||||
}
|
||||
|
|
|
@ -3,8 +3,8 @@ interface @beta Efl.Access.Selection
|
|||
[[Elementary access selection interface]]
|
||||
methods {
|
||||
@property selected_children_count @protected @beta {
|
||||
[[Gets the number of currently selected children]]
|
||||
get {
|
||||
[[Gets the number of currently selected children]]
|
||||
return: int; [[Number of currently selected children]]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -48,8 +48,8 @@ interface @beta Efl.Access.Text
|
|||
[[Elementary accessible text interface]]
|
||||
methods {
|
||||
@property character @protected @beta {
|
||||
[[Gets single character present in accessible widget's text at given offset.]]
|
||||
get {
|
||||
[[Gets single character present in accessible widget's text at given offset.]]
|
||||
}
|
||||
keys {
|
||||
offset: int; [[Position in text.]]
|
||||
|
@ -61,8 +61,8 @@ interface @beta Efl.Access.Text
|
|||
}
|
||||
}
|
||||
@property string @protected @beta {
|
||||
[[Gets string, start and end offset in text according to given initial offset and granularity.]]
|
||||
get {
|
||||
[[Gets string, start and end offset in text according to given initial offset and granularity.]]
|
||||
}
|
||||
keys {
|
||||
granularity: Efl.Access.Text_Granularity; [[Text granularity]]
|
||||
|
@ -76,8 +76,8 @@ interface @beta Efl.Access.Text
|
|||
}
|
||||
}
|
||||
@property access_text @protected @beta {
|
||||
[[Gets text of accessible widget.]]
|
||||
get {
|
||||
[[Gets text of accessible widget.]]
|
||||
}
|
||||
keys {
|
||||
start_offset: int; [[Position in text.]]
|
||||
|
@ -100,8 +100,8 @@ interface @beta Efl.Access.Text
|
|||
}
|
||||
}
|
||||
@property attribute @protected @beta {
|
||||
[[Indicate if a text attribute with a given name is set]]
|
||||
get {
|
||||
[[Indicate if a text attribute with a given name is set]]
|
||||
return: bool; [[$true if attribute name is set, $false otherwise]]
|
||||
}
|
||||
keys {
|
||||
|
@ -114,8 +114,8 @@ interface @beta Efl.Access.Text
|
|||
}
|
||||
}
|
||||
@property text_attributes @protected @beta {
|
||||
[[Gets list of all text attributes.]]
|
||||
get {
|
||||
[[Gets list of all text attributes.]]
|
||||
}
|
||||
keys {
|
||||
start_offset: ptr(int); [[Start offset]]
|
||||
|
|
|
@ -16,8 +16,8 @@ interface @beta Efl.Access.Value
|
|||
}
|
||||
}
|
||||
@property range @protected @beta {
|
||||
[[The range of all possible values and its description]]
|
||||
get {
|
||||
[[Gets a range of all possible values and its description]]
|
||||
}
|
||||
values {
|
||||
lower_limit: double; [[Lower limit of the range]]
|
||||
|
@ -26,8 +26,8 @@ interface @beta Efl.Access.Value
|
|||
}
|
||||
}
|
||||
@property increment @protected @beta {
|
||||
[[Gets an minimal incrementation value]]
|
||||
get {
|
||||
[[Gets an minimal incrementation value]]
|
||||
}
|
||||
values {
|
||||
increment: double; [[Minimal incrementation value]]
|
||||
|
|
|
@ -32,8 +32,8 @@ class @beta Efl.Datetime.Manager extends Efl.Object
|
|||
}
|
||||
}
|
||||
@property string {
|
||||
[[Get the string that matches with the format.]]
|
||||
get {
|
||||
[[Get the string that matches with the format.]]
|
||||
}
|
||||
keys {
|
||||
fmt: string; [[The format string]]
|
||||
|
|
|
@ -1,6 +1,11 @@
|
|||
class @beta Efl.Ui.Calendar_Item extends Efl.Object implements Efl.Ui.Focus.Object
|
||||
{
|
||||
[[EFL UI Calendar Item class]]
|
||||
[[Item in a @Efl.Ui.Calendar
|
||||
|
||||
@Efl.Object.parent.set is the @Efl.Ui.Calendar object where this item is in.
|
||||
|
||||
This object is usally internal and should not be instantiated or used.
|
||||
]]
|
||||
methods {
|
||||
@property day_number {
|
||||
[[Day number]]
|
||||
|
|
|
@ -854,7 +854,8 @@ _efl_ui_collection_efl_pack_linear_pack_at(Eo *obj, Efl_Ui_Collection_Data *pd,
|
|||
clamp = clamp_index(pd, index);
|
||||
index = index_adjust(pd, index);
|
||||
subobj_list = eina_list_nth_list(pd->items, index);
|
||||
EINA_SAFETY_ON_NULL_RETURN_VAL(subobj_list, EINA_FALSE);
|
||||
if (pd->items)
|
||||
EINA_SAFETY_ON_NULL_RETURN_VAL(subobj_list, EINA_FALSE);
|
||||
if (!register_item(obj, pd, subobj))
|
||||
return EINA_FALSE;
|
||||
if (clamp == 0)
|
||||
|
|
|
@ -144,7 +144,7 @@ _field_changed_cb(void *data, const Efl_Event *ev)
|
|||
}
|
||||
|
||||
DATE_SET();
|
||||
efl_event_callback_call(data, EFL_UI_DATEPICKER_EVENT_CHANGED, NULL);
|
||||
efl_event_callback_call(data, EFL_UI_DATEPICKER_EVENT_DATE_CHANGED, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -70,6 +70,6 @@ class @beta Efl.Ui.Datepicker extends Efl.Ui.Layout_Base
|
|||
Efl.Object.destructor;
|
||||
}
|
||||
events {
|
||||
changed: void; [[Called when date value is changed]]
|
||||
date,changed: void; [[Called when date value is changed]]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -77,8 +77,8 @@ class @beta Efl.Ui.Flip extends Efl.Ui.Widget implements Efl.Pack_Linear
|
|||
}
|
||||
}
|
||||
@property front_visible {
|
||||
[[Get flip front visibility state.]]
|
||||
get {
|
||||
[[Get flip front visibility state.]]
|
||||
return: bool; [[$true if front front is showing, $false if
|
||||
the back is showing.]]
|
||||
}
|
||||
|
|
|
@ -16,8 +16,8 @@ mixin Efl.Ui.Focus.Object
|
|||
}
|
||||
}
|
||||
@property focus {
|
||||
[[Whether the widget is currently focused or not.]]
|
||||
get {
|
||||
[[Returns whether the widget is currently focused or not.]]
|
||||
}
|
||||
set @protected {
|
||||
[[This is called by the manager and should never be called by
|
||||
|
|
|
@ -9,35 +9,26 @@ class @beta Efl.Ui.Frame extends Efl.Ui.Layout_Base implements Efl.Input.Clickab
|
|||
]]
|
||||
methods {
|
||||
@property collapse {
|
||||
[[Manually collapse a frame without animations.
|
||||
Use this to toggle the collapsed state of a frame, bypassing animations.
|
||||
]]
|
||||
set {
|
||||
[[Manually collapse a frame without animations
|
||||
Use this to toggle the collapsed state of a frame, bypassing animations.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Determine the collapse state of a frame
|
||||
Use this to determine the collapse state of a frame.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
collapse: bool; [[$true to collapse, $false to expand.]]
|
||||
}
|
||||
}
|
||||
@property autocollapse {
|
||||
[[Toggle autocollapsing of a frame.
|
||||
When $enable is $true, clicking a frame's label will collapse the frame
|
||||
vertically, shrinking it to the height of the label.
|
||||
By default, this is DISABLED.
|
||||
]]
|
||||
set {
|
||||
[[Toggle autocollapsing of a frame
|
||||
When $enable is $true, clicking a frame's label will collapse the frame
|
||||
vertically, shrinking it to the height of the label.
|
||||
By default, this is DISABLED.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Determine autocollapsing of a frame
|
||||
|
||||
When this returns $true, clicking a frame's label will collapse the frame
|
||||
vertically, shrinking it to the height of the label.
|
||||
By default, this is DISABLED.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
autocollapse: bool; [[Whether to enable autocollapse.]]
|
||||
|
|
|
@ -128,7 +128,7 @@ _efl_ui_group_item_efl_pack_linear_pack_end(Eo *obj, Efl_Ui_Group_Item_Data *pd,
|
|||
int group_index = efl_pack_index_get(container, obj);
|
||||
|
||||
_register_item(obj, pd, subobj);
|
||||
HANDLE_REG_CALL(efl_pack_at(container, subobj, group_index + eina_list_count(pd->registered_items) + 1));
|
||||
HANDLE_REG_CALL(efl_pack_at(container, subobj, group_index + eina_list_count(pd->registered_items)));
|
||||
}
|
||||
|
||||
EOLIAN static Eina_Bool
|
||||
|
|
|
@ -31,34 +31,32 @@ class @beta Efl.Ui.Image extends Efl.Ui.Widget implements Efl.Input.Clickable, E
|
|||
event_prefix: efl_ui_image;
|
||||
methods {
|
||||
@property icon {
|
||||
[[The image name, using icon standards names.
|
||||
|
||||
For example, freedesktop.org defines standard icon names such
|
||||
as "home" and "network". There can be different icon sets to
|
||||
match those icon keys. The "name" given as parameter is one of
|
||||
these "keys" and will be used to look in the freedesktop.org
|
||||
paths and elementary theme.
|
||||
|
||||
If the name is not found in any of the expected locations and is
|
||||
the absolute path of an image file, this image will be used.
|
||||
Lookup order used by @.icon.set can be set using "icon_theme" in config.
|
||||
|
||||
If the image was set using @Efl.File.file instead of
|
||||
@.icon.set, then reading this property will return null.
|
||||
|
||||
Note: The image set by this function is changed when
|
||||
@Efl.File.load is called.
|
||||
|
||||
Note: This function does not accept relative icon paths.
|
||||
|
||||
See also @.icon.get.
|
||||
]]
|
||||
set {
|
||||
[[Set the image by icon standards names.
|
||||
|
||||
For example, freedesktop.org defines standard icon names such
|
||||
as "home" and "network". There can be different icon sets to
|
||||
match those icon keys. The "name" given as parameter is one of
|
||||
these "keys" and will be used to look in the freedesktop.org
|
||||
paths and elementary theme.
|
||||
|
||||
If the name is not found in any of the expected locations and is
|
||||
the absolute path of an image file, this image will be used.
|
||||
Lookup order used by @.icon.set can be set using "icon_theme" in config.
|
||||
|
||||
Note: The image set by this function is changed when
|
||||
@Efl.File.load is called.
|
||||
|
||||
Note: This function does not accept relative icon path.
|
||||
|
||||
See also @.icon.get.
|
||||
]]
|
||||
return: bool; [[$true on success, $false on error]]
|
||||
}
|
||||
get {
|
||||
[[Get the icon name of image set by icon standard names.
|
||||
|
||||
If the image was set using efl_file_set() instead of
|
||||
@.icon.set, then this function will return null.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
name: string; [[The icon name]]
|
||||
|
|
|
@ -10,35 +10,27 @@ class @beta Efl.Ui.Image_Zoomable extends Efl.Ui.Image implements Efl.Ui.Zoom,
|
|||
[[Elementary Image Zoomable class]]
|
||||
methods {
|
||||
@property gesture_enabled {
|
||||
set {
|
||||
[[Set the gesture state for photocam.
|
||||
[[The gesture state for photocam.
|
||||
|
||||
This sets the gesture state to on or off for photocam. The
|
||||
default is off. This will start multi touch zooming.
|
||||
]]
|
||||
This sets the gesture state to on or off for photocam. The
|
||||
default is off. This will start multi touch zooming.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the gesture state for photocam.
|
||||
|
||||
This gets the current gesture state for the photocam object.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
gesture: bool; [[The gesture state.]]
|
||||
}
|
||||
}
|
||||
@property image_region {
|
||||
get {
|
||||
[[Get the region of the image that is currently shown
|
||||
[[The region of the image that is currently shown
|
||||
|
||||
See also @.image_region.set.
|
||||
]]
|
||||
Setting it shows the region of the image without using animation.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
set {
|
||||
[[Set the viewed region of the image
|
||||
|
||||
This shows the region of the image without using animation.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
region: Eina.Rect; [[The region in the original image pixels.]]
|
||||
|
|
|
@ -23,49 +23,43 @@ class @beta Efl.Ui.Panel extends Efl.Ui.Layout_Base
|
|||
[[Elementary panel class]]
|
||||
methods {
|
||||
@property orient {
|
||||
set {
|
||||
[[Sets the orientation of the panel
|
||||
[[The orientation of the panel
|
||||
|
||||
Sets from where the panel will (dis)appear.
|
||||
]]
|
||||
Sets from where the panel will (dis)appear.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Gets the orientation of the panel.]]
|
||||
}
|
||||
values {
|
||||
orient: Efl.Ui.Panel_Orient; [[The panel orientation.]]
|
||||
}
|
||||
}
|
||||
@property hidden {
|
||||
[[The state of the panel.]]
|
||||
set {
|
||||
[[Sets the state of the panel.]]
|
||||
}
|
||||
get {
|
||||
[[Gets the state of the panel.]]
|
||||
}
|
||||
values {
|
||||
hidden: bool; [[If $true, the panel will run the animation to disappear.]]
|
||||
}
|
||||
}
|
||||
@property scrollable {
|
||||
[[The scrollability of the panel.]]
|
||||
set {
|
||||
[[Sets the scrollability of the panel.]]
|
||||
}
|
||||
get {
|
||||
[[Gets the state of the scrollability.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
scrollable: bool; [[The scrollable state.]]
|
||||
}
|
||||
}
|
||||
@property scrollable_content_size {
|
||||
[[The size of the scrollable panel.]]
|
||||
set {
|
||||
[[Sets the size of the scrollable panel.]]
|
||||
}
|
||||
get {
|
||||
[[Gets the size of the scrollable panel.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
ratio: double; [[Size ratio]]
|
||||
|
|
|
@ -27,15 +27,13 @@ class @beta Efl.Ui.Progressbar extends Efl.Ui.Layout_Base implements Efl.Ui.Rang
|
|||
}
|
||||
}
|
||||
@property pulse {
|
||||
set {
|
||||
[[Start/stop a given progress bar "pulsing" animation, if its under that mode
|
||||
[[Start/stop a given progress bar "pulsing" animation, if its under that mode.
|
||||
|
||||
Note: This call won't do anything if $obj is not under "pulsing mode". See @.pulse_mode.
|
||||
]]
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[ Get the pulsing state on a given progressbar widget. See @.pulse_mode.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
state: bool; [[$true, to start the pulsing animation, $false to stop it]]
|
||||
|
|
|
@ -3,19 +3,19 @@ class @beta Efl.Ui.Select_Model extends Efl.Boolean_Model
|
|||
[[Efl ui select model class]]
|
||||
methods {
|
||||
selected_get {
|
||||
[[Get an iterator of all the selected child of this model.
|
||||
[[Gets an iterator of all the selected child of this model.
|
||||
]]
|
||||
return: iterator<uint64>; [[The iterator gives indices of selected children.
|
||||
It is valid until any change is made on the model.]]
|
||||
}
|
||||
unselected_get {
|
||||
[[Get an iterator of all the child of this model that are not selected.
|
||||
[[Gets an iterator of all the child of this model that are not selected.
|
||||
]]
|
||||
return: iterator<uint64>; [[The iterator gives indices of unselected children.
|
||||
It is valid until any change is made on the model.]]
|
||||
}
|
||||
@property single_selection {
|
||||
[[Define if we support only one exclusive selection at a time when set to $true.
|
||||
[[Defines if we support only one exclusive selection at a time when set to $true.
|
||||
|
||||
If disable with $false, it will have the behavior of a multi select mode.
|
||||
]]
|
||||
|
|
|
@ -103,6 +103,17 @@ _drag_value_fetch(Evas_Object *obj)
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
_adjust_to_step(Efl_Ui_Slider *obj, Efl_Ui_Slider_Data *pd)
|
||||
{
|
||||
if (pd->step)
|
||||
{
|
||||
double relative_step = pd->step/(pd->val_max - pd->val_min);
|
||||
double new_value = (round(pd->val/relative_step))*relative_step;
|
||||
_user_value_update(obj, new_value);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
_drag_value_update(Evas_Object *obj)
|
||||
{
|
||||
|
@ -518,6 +529,7 @@ _spacer_up_cb(void *data,
|
|||
if (sd->spacer_down) sd->spacer_down = EINA_FALSE;
|
||||
|
||||
_drag_value_fetch(data);
|
||||
_adjust_to_step(data, sd);
|
||||
efl_event_callback_call(data, EFL_UI_SLIDER_EVENT_SLIDER_DRAG_STOP, NULL);
|
||||
|
||||
if (sd->frozen)
|
||||
|
|
|
@ -24,14 +24,12 @@ class @beta Efl.Ui.Text extends Efl.Ui.Layout_Base implements Efl.Input.Clickabl
|
|||
}
|
||||
}
|
||||
@property input_panel_show_on_demand {
|
||||
[[The attribute to show the input panel in case of only a user's explicit Mouse Up event.
|
||||
It doesn't request to show the input panel even though it has focus.
|
||||
]]
|
||||
set {
|
||||
[[Set the attribute to show the input panel in case of only a user's explicit Mouse Up event.
|
||||
It doesn't request to show the input panel even though it has focus.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the attribute to show the input panel in case of only an user's explicit Mouse Up event.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
ondemand: bool; [[If $true, the input panel will be shown in case of only Mouse up event.
|
||||
|
@ -40,13 +38,10 @@ class @beta Efl.Ui.Text extends Efl.Ui.Layout_Base implements Efl.Input.Clickabl
|
|||
}
|
||||
}
|
||||
@property context_menu_disabled {
|
||||
[[This disables the entry's contextual (longpress) menu.]]
|
||||
set {
|
||||
[[This disables the entry's contextual (longpress) menu.]]
|
||||
}
|
||||
get {
|
||||
[[This returns whether the entry's contextual (longpress) menu is
|
||||
disabled.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
disabled: bool; [[If $true, the menu is disabled.]]
|
||||
|
@ -54,95 +49,83 @@ class @beta Efl.Ui.Text extends Efl.Ui.Layout_Base implements Efl.Input.Clickabl
|
|||
}
|
||||
@property cnp_mode {
|
||||
/* FIXME: Efl.Ui.Selection_Format does not allow markup without images! */
|
||||
[[Control pasting of text and images for the widget.
|
||||
|
||||
Normally the entry allows both text and images to be pasted.
|
||||
|
||||
Note: This only changes the behaviour of text.
|
||||
]]
|
||||
set {
|
||||
[[Control pasting of text and images for the widget.
|
||||
|
||||
Normally the entry allows both text and images to be pasted.
|
||||
|
||||
Note: This only changes the behaviour of text.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Getting elm_entry text paste/drop mode.
|
||||
|
||||
Normally the entry allows both text and images to be pasted.
|
||||
This gets the copy & paste mode of the entry.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
format: Efl.Ui.Selection_Format; [[Format for copy & paste.]]
|
||||
}
|
||||
}
|
||||
@property input_panel_language {
|
||||
set {
|
||||
[[Set the language mode of the input panel.
|
||||
[[The language mode of the input panel.
|
||||
|
||||
This API can be used if you want to show the alphabet keyboard mode.
|
||||
]]
|
||||
This API can be used if you want to show the alphabet keyboard mode.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the language mode of the input panel.]]
|
||||
}
|
||||
values {
|
||||
lang: Elm.Input.Panel.Lang; [[Language to be set to the input panel.]]
|
||||
}
|
||||
}
|
||||
@property selection_handler_disabled {
|
||||
[[This disables the entry's selection handlers.]]
|
||||
set {
|
||||
[[This disables the entry's selection handlers.]]
|
||||
}
|
||||
get {
|
||||
[[This returns whether the entry's selection handlers are disabled.]]
|
||||
}
|
||||
values {
|
||||
disabled: bool; [[If $true, the selection handlers are disabled.]]
|
||||
}
|
||||
}
|
||||
@property input_panel_layout_variation {
|
||||
[[Set the input panel layout variation of the entry
|
||||
]]
|
||||
set {
|
||||
[[Set the input panel layout variation of the entry
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the input panel layout variation of the entry
|
||||
]]
|
||||
}
|
||||
values {
|
||||
variation: int; [[Layout variation type.]]
|
||||
}
|
||||
}
|
||||
@property autocapital_type {
|
||||
[[Set the autocapitalization type on the immodule.]]
|
||||
set {
|
||||
[[Set the autocapitalization type on the immodule.]]
|
||||
}
|
||||
get {
|
||||
[[Get the autocapitalization type on the immodule.]]
|
||||
}
|
||||
values {
|
||||
autocapital_type: Elm.Autocapital.Type; [[The type of autocapitalization.]]
|
||||
}
|
||||
}
|
||||
@property password_mode {
|
||||
set {
|
||||
[[Sets the entry to password mode.
|
||||
[[Sets the entry to password mode.
|
||||
|
||||
In password mode entries are implicitly single line and the display of
|
||||
any text inside them is replaced with asterisks (*).
|
||||
]]
|
||||
In password mode entries are implicitly single line and the display of
|
||||
any text inside them is replaced with asterisks (*).
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get whether the entry is set to password mode.]]
|
||||
}
|
||||
values {
|
||||
password: bool; [[If true, password mode is enabled.]]
|
||||
}
|
||||
}
|
||||
@property input_panel_return_key_disabled {
|
||||
[[Set the return key on the input panel to be disabled.]]
|
||||
set {
|
||||
[[Set the return key on the input panel to be disabled.]]
|
||||
}
|
||||
get {
|
||||
[[Get whether the return key on the input panel should be disabled or not.]]
|
||||
}
|
||||
values {
|
||||
disabled: bool; [[The state to put in in: $true for
|
||||
|
@ -150,71 +133,66 @@ class @beta Efl.Ui.Text extends Efl.Ui.Layout_Base implements Efl.Input.Clickabl
|
|||
}
|
||||
}
|
||||
@property prediction_allow {
|
||||
[[Whether the entry should allow predictive text.]]
|
||||
set {
|
||||
[[Set whether the entry should allow predictive text.]]
|
||||
}
|
||||
get {
|
||||
[[Get whether the entry allows predictive text.]]
|
||||
}
|
||||
values {
|
||||
prediction: bool; [[Whether the entry should allow predictive text.]]
|
||||
}
|
||||
}
|
||||
@property input_hint {
|
||||
[[Sets the input hint which allows input methods to fine-tune their behavior.]]
|
||||
set {
|
||||
[[Sets the input hint which allows input methods to fine-tune their behavior.]]
|
||||
}
|
||||
get {
|
||||
[[Gets the value of input hint.]]
|
||||
}
|
||||
values {
|
||||
hints: Elm.Input.Hints; [[Input hint.]]
|
||||
}
|
||||
}
|
||||
@property input_panel_layout {
|
||||
[[Set the input panel layout of the entry.]]
|
||||
set {
|
||||
[[Set the input panel layout of the entry.]]
|
||||
}
|
||||
get {
|
||||
[[Get the input panel layout of the entry.]]
|
||||
}
|
||||
values {
|
||||
layout: Elm.Input.Panel.Layout(Elm.Input.Panel.Layout.invalid); [[Layout type.]]
|
||||
}
|
||||
}
|
||||
@property input_panel_return_key_type {
|
||||
set {
|
||||
[[Set the "return" key type. This type is used to set string or icon on the "return" key of the input panel.
|
||||
[[Set the "return" key type. This type is used to set string or icon on the "return" key of the input panel.
|
||||
|
||||
An input panel displays the string or icon associated with this type.
|
||||
]]
|
||||
An input panel displays the string or icon associated with this type.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the "return" key type.]]
|
||||
}
|
||||
values {
|
||||
return_key_type: Elm.Input.Panel.Return_Key.Type; [[The type of "return" key on the input panel.]]
|
||||
}
|
||||
}
|
||||
@property input_panel_enabled {
|
||||
[[Sets the attribute to show the input panel automatically.]]
|
||||
set {
|
||||
[[Sets the attribute to show the input panel automatically.]]
|
||||
}
|
||||
get {
|
||||
[[Get the attribute to show the input panel automatically.]]
|
||||
}
|
||||
values {
|
||||
enabled: bool; [[If $true, the input panel is appeared when entry is clicked or has a focus.]]
|
||||
}
|
||||
}
|
||||
@property input_panel_return_key_autoenabled {
|
||||
set {
|
||||
[[Set whether the return key on the input panel is disabled automatically when entry has no text.
|
||||
[[Whether the return key on the input panel is disabled automatically when entry has no text.
|
||||
|
||||
If $enabled is $true, the return key on input panel is disabled when the entry has no text.
|
||||
The return key on the input panel is automatically enabled when the entry has text.
|
||||
The default value is $false.
|
||||
]]
|
||||
If $enabled is $true, the return key on input panel is disabled when the entry has no text.
|
||||
The return key on the input panel is automatically enabled when the entry has text.
|
||||
The default value is $false.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
values {
|
||||
enabled: bool; [[If $true, the return key is automatically disabled when the entry has no text.]]
|
||||
|
|
|
@ -106,7 +106,7 @@ _field_changed_cb(void *data, const Efl_Event *ev)
|
|||
}
|
||||
|
||||
TIME_SET();
|
||||
efl_event_callback_call(data, EFL_UI_TIMEPICKER_EVENT_CHANGED, NULL);
|
||||
efl_event_callback_call(data, EFL_UI_TIMEPICKER_EVENT_TIME_CHANGED, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -40,6 +40,6 @@ class @beta Efl.Ui.Timepicker extends Efl.Ui.Layout_Base
|
|||
Efl.Object.destructor;
|
||||
}
|
||||
events {
|
||||
changed: void; [[Called when date is changed]]
|
||||
time,changed: void; [[Called when time is changed]]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,38 +5,33 @@ class @beta Efl.Ui.Video extends Efl.Ui.Layout_Base
|
|||
[[Efl UI video class]]
|
||||
methods {
|
||||
@property remember_position {
|
||||
set {
|
||||
[[Set whether the object can remember the last played position.
|
||||
[[Whether the object can remember the last played position.
|
||||
|
||||
Note: This API only serves as indication. System support is
|
||||
required.
|
||||
]]
|
||||
Note: This API only serves as indication. System support is
|
||||
required.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Set whether the object can remember the last played position.
|
||||
|
||||
Note: This API only serves as indication. System support is
|
||||
required.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
remember: bool; [[$true when the object can remember the last position, $false otherwise]]
|
||||
}
|
||||
}
|
||||
@property emotion {
|
||||
[[The underlying Emotion object.]]
|
||||
get {
|
||||
[[Get the underlying Emotion object.]]
|
||||
return: Efl.Canvas.Object; [[The underlying Emotion object.]]
|
||||
}
|
||||
}
|
||||
@property title {
|
||||
[[The title (for instance DVD title) from this emotion object.
|
||||
|
||||
This function is only useful when playing a DVD.
|
||||
|
||||
Note: Don't change or free the string returned by this function.
|
||||
]]
|
||||
get {
|
||||
[[Get the title (for instance DVD title) from this emotion object.
|
||||
|
||||
This function is only useful when playing a DVD.
|
||||
|
||||
Note: Don't change or free the string returned by this function.
|
||||
]]
|
||||
return: string; [[A string containing the title.]]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -206,6 +206,8 @@ _efl_ui_widget_scrollable_content_scrollable_content_set(Eo *obj, Efl_Ui_Widget_
|
|||
EOLIAN static Eo *
|
||||
_efl_ui_widget_scrollable_content_scrollable_content_get(const Eo *obj EINA_UNUSED, Efl_Ui_Widget_Scrollable_Content_Data *pd)
|
||||
{
|
||||
if (pd->label) return NULL;
|
||||
if (!pd->scroller) return NULL;
|
||||
return efl_content_get(pd->scroller);
|
||||
}
|
||||
|
||||
|
@ -224,6 +226,7 @@ _efl_ui_widget_scrollable_content_scrollable_text_set(Eo *obj, Efl_Ui_Widget_Scr
|
|||
EOLIAN static const char *
|
||||
_efl_ui_widget_scrollable_content_scrollable_text_get(const Eo *obj EINA_UNUSED, Efl_Ui_Widget_Scrollable_Content_Data *pd)
|
||||
{
|
||||
if (!pd->label) return NULL;
|
||||
return elm_object_text_get(pd->label);
|
||||
//return efl_text_get(pd->label);
|
||||
}
|
||||
|
|
|
@ -43,6 +43,8 @@ mixin @beta Efl.Ui.Widget_Scrollable_Content requires Efl.Object
|
|||
@property scrollable_content {
|
||||
[[This is the content which will be placed in the internal scroller.
|
||||
|
||||
If a scrollable text string is set, this will return $NULL.
|
||||
|
||||
@since 1.23
|
||||
]]
|
||||
set {
|
||||
|
@ -54,27 +56,18 @@ mixin @beta Efl.Ui.Widget_Scrollable_Content requires Efl.Object
|
|||
}
|
||||
}
|
||||
@property scrollable_text {
|
||||
[[The text string to be displayed by the given text object.
|
||||
The text will use @Efl.Text_Format_Wrap.mixed wrapping,
|
||||
and it will be scrollable depending on its size relative to the
|
||||
object's geometry.
|
||||
|
||||
When reading, do not free the return value.
|
||||
|
||||
@since 1.23
|
||||
]]
|
||||
set {
|
||||
[[Sets the text string to be displayed by the given text object.
|
||||
The text will use @Efl.Text_Format_Wrap.mixed wrapping,
|
||||
and it will be scrollable depending on its size relative to the
|
||||
object's geometry.
|
||||
|
||||
See also @.scrollable_text.get.
|
||||
|
||||
@since 1.23
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Retrieves the text string currently being displayed by the given
|
||||
text object.
|
||||
|
||||
Do not free() the return value.
|
||||
|
||||
See also @.scrollable_text.set.
|
||||
|
||||
@since 1.23
|
||||
]]
|
||||
}
|
||||
values {
|
||||
text: string; [[Text string to display on it.]]
|
||||
|
|
|
@ -165,11 +165,10 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
}
|
||||
}
|
||||
@property keyboard_mode @beta {
|
||||
[[The keyboard mode of the window.]]
|
||||
set {
|
||||
[[Sets the keyboard mode of the window.]]
|
||||
}
|
||||
get {
|
||||
[[Get the keyboard mode of the window.]]
|
||||
}
|
||||
values {
|
||||
mode: Efl.Ui.Win_Keyboard_Mode; [[The mode, one of @Efl.Ui.Win_Keyboard_Mode.]]
|
||||
|
@ -205,45 +204,39 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
}
|
||||
}
|
||||
@property screen_constrain @beta {
|
||||
set {
|
||||
[[Constrain the maximum width and height of a window to the
|
||||
width and height of the screen.
|
||||
[[Constrain the maximum width and height of a window to the
|
||||
width and height of the screen.
|
||||
|
||||
When $constrain is $true, $obj will never resize larger than
|
||||
the screen.
|
||||
]]
|
||||
When $constrain is $true, $obj will never resize larger than
|
||||
the screen.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the constraints on the maximum width and height of a
|
||||
window relative to the width and height of the screen.
|
||||
|
||||
When this function returns $true, $obj will never resize
|
||||
larger than the screen.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
constrain: bool; [[$true to restrict the window's maximum size.]]
|
||||
}
|
||||
}
|
||||
@property prop_focus_skip @beta {
|
||||
[[Set the window to be skipped by keyboard focus.
|
||||
|
||||
This sets the window to be skipped by normal keyboard input.
|
||||
This means a window manager will be asked not to focus this
|
||||
window as well as omit it from things like the taskbar, pager,
|
||||
"alt-tab" list etc. etc.
|
||||
|
||||
Call this and enable it on a window BEFORE you show it for
|
||||
the first time, otherwise it may have no effect.
|
||||
|
||||
Use this for windows that have only output information or
|
||||
might only be interacted with by the mouse or touchscreen,
|
||||
never for typing. This may have
|
||||
side-effects like making the window non-accessible in
|
||||
some cases unless the window is specially handled. Use
|
||||
this with care.
|
||||
]]
|
||||
set {
|
||||
[[Set the window to be skipped by keyboard focus.
|
||||
|
||||
This sets the window to be skipped by normal keyboard input.
|
||||
This means a window manager will be asked not to focus this
|
||||
window as well as omit it from things like the taskbar, pager,
|
||||
"alt-tab" list etc. etc.
|
||||
|
||||
Call this and enable it on a window BEFORE you show it for
|
||||
the first time, otherwise it may have no effect.
|
||||
|
||||
Use this for windows that have only output information or
|
||||
might only be interacted with by the mouse or touchscreen,
|
||||
never for typing. This may have
|
||||
side-effects like making the window non-accessible in
|
||||
some cases unless the window is specially handled. Use
|
||||
this with care.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
skip: bool; [[The skip flag state ($true if it is to be skipped).]]
|
||||
|
@ -291,29 +284,24 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
}
|
||||
}
|
||||
@property icon_object {
|
||||
set {
|
||||
[[Set a window object's icon.
|
||||
[[A window object's icon.
|
||||
|
||||
This sets an image to be used as the icon for the given
|
||||
window, in the window manager decoration part. The exact
|
||||
pixel dimensions of the object (not object size) will be
|
||||
used and the image pixels will be used as-is when this
|
||||
function is called. If the image object has been updated,
|
||||
then call this function again to source the image pixels
|
||||
and place them in the window's icon. Note that only objects of
|
||||
type @Efl.Canvas.Image or @Efl.Ui.Image are allowed.
|
||||
]]
|
||||
This sets an image to be used as the icon for the given
|
||||
window, in the window manager decoration part. The exact
|
||||
pixel dimensions of the object (not object size) will be
|
||||
used and the image pixels will be used as-is when this
|
||||
function is called. If the image object has been updated,
|
||||
then call this function again to source the image pixels
|
||||
and place them in the window's icon. Note that only objects of
|
||||
type @Efl.Canvas.Image or @Efl.Ui.Image are allowed.
|
||||
]]
|
||||
set {
|
||||
values {
|
||||
icon: Efl.Canvas.Object;
|
||||
[[The image object to use for an icon.]]
|
||||
}
|
||||
}
|
||||
get {
|
||||
[[Get the icon object used for the window.
|
||||
|
||||
The object returns is the one marked by @.icon_object.set as
|
||||
the object to use for the window icon.
|
||||
]]
|
||||
values {
|
||||
icon: const(Efl.Canvas.Object);
|
||||
[[The Evas image object to use for an icon.]]
|
||||
|
@ -321,60 +309,55 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
}
|
||||
}
|
||||
@property minimized {
|
||||
[[The minimized state of a window.]]
|
||||
set {
|
||||
[[Set the minimized state of a window.]]
|
||||
}
|
||||
get {
|
||||
[[Get the minimized state of a window.]]
|
||||
}
|
||||
values {
|
||||
state: bool; [[If $true, the window is minimized.]]
|
||||
}
|
||||
}
|
||||
@property maximized {
|
||||
[[The maximized state of a window.]]
|
||||
set {
|
||||
[[Set the maximized state of a window.]]
|
||||
}
|
||||
get {
|
||||
[[Get the maximized state of a window.]]
|
||||
}
|
||||
values {
|
||||
maximized: bool; [[If $true, the window is maximized.]]
|
||||
}
|
||||
}
|
||||
@property fullscreen {
|
||||
[[The fullscreen state of a window.]]
|
||||
set {
|
||||
[[Set the fullscreen state of a window.]]
|
||||
}
|
||||
get {
|
||||
[[Get the fullscreen state of a window.]]
|
||||
}
|
||||
values {
|
||||
fullscreen: bool; [[If $true, the window is fullscreen.]]
|
||||
}
|
||||
}
|
||||
@property sticky @beta {
|
||||
set {
|
||||
[[Set the sticky state of the window.
|
||||
[[The sticky state of the window.
|
||||
|
||||
Hints the Window Manager that the window in $obj should be
|
||||
left fixed at its position even when the virtual desktop
|
||||
it's on moves or changes.
|
||||
]]
|
||||
Hints the Window Manager that the window in $obj should be
|
||||
left fixed at its position even when the virtual desktop
|
||||
it's on moves or changes.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the sticky state of the window.]]
|
||||
}
|
||||
values {
|
||||
sticky: bool; [[If $true, the window's sticky state is enabled.]]
|
||||
}
|
||||
}
|
||||
@property urgent @beta {
|
||||
[[The urgent state of a window.]]
|
||||
set {
|
||||
[[Set the urgent state of a window.]]
|
||||
}
|
||||
get {
|
||||
[[Get the urgent state of a window.]]
|
||||
}
|
||||
values {
|
||||
urgent: Efl.Ui.Win_Urgent_Mode;
|
||||
|
@ -382,26 +365,24 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
}
|
||||
}
|
||||
@property modal @beta {
|
||||
[[The modal state of a window.]]
|
||||
set {
|
||||
[[Set the modal state of a window.]]
|
||||
}
|
||||
get {
|
||||
[[Get the modal state of a window.]]
|
||||
}
|
||||
values {
|
||||
modal: Efl.Ui.Win_Modal_Mode; [[The mode of a window, one of @Efl.Ui.Win_Modal_Mode.]]
|
||||
}
|
||||
}
|
||||
@property borderless @beta {
|
||||
set {
|
||||
[[Set the borderless state of a window.
|
||||
[[The borderless state of a window.
|
||||
|
||||
This function requests the Window Manager not to draw any
|
||||
decoration around the window.
|
||||
]]
|
||||
This function requests the Window Manager not to draw any
|
||||
decoration around the window.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the borderless state of a window.]]
|
||||
}
|
||||
values {
|
||||
borderless: bool; [[If $true, the window is borderless.]]
|
||||
|
@ -413,17 +394,14 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
|
||||
It is a hint of how the Window Manager should handle it. Unlike
|
||||
@.win_type and @.win_name this can be changed at runtime.
|
||||
|
||||
The returned string is an internal one and should not be
|
||||
freed or modified. It will also be invalid if a new role
|
||||
is set or if the window is destroyed.
|
||||
]]
|
||||
set {
|
||||
[[Set the role of the window.]]
|
||||
}
|
||||
get {
|
||||
[[Get the role of the window.
|
||||
|
||||
The returned string is an internal one and should not be
|
||||
freed or modified. It will also be invalid if a new role
|
||||
is set or if the window is destroyed.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
role: string; [[The role to set.]]
|
||||
|
@ -522,24 +500,23 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
}
|
||||
}
|
||||
@property alpha {
|
||||
[[The alpha channel state of a window.
|
||||
|
||||
If $alpha is true, the alpha channel of the canvas will be
|
||||
enabled possibly making parts of the window completely or
|
||||
partially transparent. This is also subject to the underlying
|
||||
system supporting it, for example a system using a
|
||||
compositing manager.
|
||||
|
||||
Note: Alpha window can be enabled automatically by window
|
||||
theme style's property. If "alpha" data.item is "1" or
|
||||
"true" in window style(eg. elm/win/base/default), the window
|
||||
is switched to alpha automatically without the explicit api
|
||||
call.
|
||||
]]
|
||||
set {
|
||||
[[Set the alpha channel state of a window.
|
||||
|
||||
If $alpha is true, the alpha channel of the canvas will be
|
||||
enabled possibly making parts of the window completely or
|
||||
partially transparent. This is also subject to the underlying
|
||||
system supporting it, for example a system using a
|
||||
compositing manager.
|
||||
|
||||
Note: Alpha window can be enabled automatically by window
|
||||
theme style's property. If "alpha" data.item is "1" or
|
||||
"true" in window style(eg. elm/win/base/default), the window
|
||||
is switched to alpha automatically without the explicit api
|
||||
call.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the alpha channel state of a window.]]
|
||||
}
|
||||
values {
|
||||
alpha: bool; [[$true if the window alpha channel is enabled,
|
||||
|
@ -547,19 +524,19 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
}
|
||||
}
|
||||
@property stack_id @beta {
|
||||
[[Get the stack ID string of the window as an opaque string.
|
||||
|
||||
This ID is immutable and can never be modified. It will be
|
||||
an opaque string that has no specific defined format or
|
||||
content other than being a string (no character with a
|
||||
value of 0).
|
||||
|
||||
This string is intended for use as a stack master ID to be
|
||||
use by other windows to make this window part of a stack
|
||||
of windows to be placed on top of each other as if they are
|
||||
a series of dialogs or questions one after the other, allowing
|
||||
you to go back through history.]]
|
||||
get {
|
||||
[[Get the stack ID string of the window as an opaque string.
|
||||
|
||||
This ID is immutable and can never be modified. It will be
|
||||
an opaque string that has no specific defined format or
|
||||
content other than being a string (no character with a
|
||||
value of 0).
|
||||
|
||||
This string is intended for use as a stack master ID to be
|
||||
use by other windows to make this window part of a stack
|
||||
of windows to be placed on top of each other as if they are
|
||||
a series of dialogs or questions one after the other, allowing
|
||||
you to go back through history.]]
|
||||
}
|
||||
values {
|
||||
id: string; [[An opaque string that has no specific format
|
||||
|
@ -568,16 +545,15 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
}
|
||||
}
|
||||
@property stack_master_id @beta {
|
||||
set {
|
||||
[[Set the window stack ID to use as the master top-level.
|
||||
[[The window stack ID to use as the master top-level.
|
||||
|
||||
This sets the ID string to be used as the master top-level
|
||||
window as the base of a stack of windows. This must be set
|
||||
before the first time the window is shown and should never
|
||||
be changed afterwards.]]
|
||||
This sets the ID string to be used as the master top-level
|
||||
window as the base of a stack of windows. This must be set
|
||||
before the first time the window is shown and should never
|
||||
be changed afterwards.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the stack master Id that has been set.]]
|
||||
}
|
||||
values {
|
||||
id: string; [[An opaque string that has no specific format,
|
||||
|
|
|
@ -21,26 +21,24 @@ class @beta Elm.Code_Widget extends Efl.Ui.Layout
|
|||
c_prefix: efl_ui_code_widget;
|
||||
methods {
|
||||
@property code {
|
||||
[[The underlying code object that this widget renders.
|
||||
This can only be set during construction, once the widget is created the
|
||||
backing code object cannot be changed.]]
|
||||
set {
|
||||
[[Set the underlying code object that this widget renders.
|
||||
This can only be set during construction, once the widget is created the
|
||||
backing code object cannot be changed.]]
|
||||
}
|
||||
get {
|
||||
[[Get the underlying code object we are rendering]]
|
||||
}
|
||||
values {
|
||||
code: ptr(Elm.Code); [[Our underlying Elm.Code object]]
|
||||
}
|
||||
}
|
||||
@property font {
|
||||
[[Set the font that this widget uses, the font should be a monospaced scalable font.
|
||||
Passing $NULL will load the default system monospaced font.
|
||||
When reading, the font name is a copy and should be freed once it is no longer needed.]]
|
||||
set {
|
||||
[[Set the font that this widget uses, the font should be a monospaced scalable font.
|
||||
Passing $NULL will load the default system monospaced font.]]
|
||||
}
|
||||
get {
|
||||
[[Get the font currently in use.
|
||||
The font name is a copy ad should be freed once it is no longer needed]]
|
||||
}
|
||||
values {
|
||||
name: string; [[The name of the font to load]]
|
||||
|
@ -48,24 +46,23 @@ class @beta Elm.Code_Widget extends Efl.Ui.Layout
|
|||
}
|
||||
}
|
||||
@property columns {
|
||||
[[The number of columns in the widget currently.
|
||||
This will be the max of the number of columns to represent the longest line and
|
||||
the minimum required to fill the visible widget width.]]
|
||||
get {
|
||||
[[Get the number of columns in the widget currently.
|
||||
This will be the max of the number of columns to represent the longest line and
|
||||
the minimum required to fill the visible widget width.]]
|
||||
}
|
||||
values {
|
||||
columns: uint; [[The number of columns required to render the widget]]
|
||||
}
|
||||
}
|
||||
@property gravity {
|
||||
set {
|
||||
[[Set how this widget's scroller should respond to new lines being added.
|
||||
[[Set how this widget's scroller should respond to new lines being added.
|
||||
|
||||
An x value of 0.0 will maintain the distance from the left edge, 1.0 will ensure the rightmost edge (of the longest line) is respected
|
||||
With 0.0 for y the view will keep it's position relative to the top whereas 1.0 will scroll downward as lines are added.]]
|
||||
An x value of 0.0 will maintain the distance from the left edge, 1.0 will ensure the rightmost edge (of the longest line) is respected
|
||||
With 0.0 for y the view will keep it's position relative to the top whereas 1.0 will scroll downward as lines are added.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the current x and y gravity of the widget's scroller]]
|
||||
}
|
||||
values {
|
||||
x: double; [[The horizontal value of the scroller gravity - valid values are 0.0 and 1.0]]
|
||||
|
@ -73,11 +70,10 @@ class @beta Elm.Code_Widget extends Efl.Ui.Layout
|
|||
}
|
||||
}
|
||||
@property policy {
|
||||
[[The widget's policy for scrollbar visibility.]]
|
||||
set {
|
||||
[[Set the policy for scrollbar visibility.]]
|
||||
}
|
||||
get {
|
||||
[[Get the widget's policy for scrollbar visibility.]]
|
||||
}
|
||||
values {
|
||||
policy_h: Elm.Code_Widget_Scroller_Policy; [[The horizontal scrollbar visibility policy]]
|
||||
|
@ -85,32 +81,28 @@ class @beta Elm.Code_Widget extends Efl.Ui.Layout
|
|||
}
|
||||
}
|
||||
@property tabstop {
|
||||
set {
|
||||
[[Set the width of a tab stop, used purely for visual layout of tab characters.
|
||||
[[The width of a tab stop, used purely for visual layout of tab characters.
|
||||
|
||||
Recommended value is between 2 and 8.]]
|
||||
Recommended value is between 2 and 8.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the current width of a tab stop.
|
||||
This is used to determine where characters after a tab should appear in the line.]]
|
||||
}
|
||||
values {
|
||||
tabstop: uint; [[Maximum width of a tab character]]
|
||||
}
|
||||
}
|
||||
@property editable {
|
||||
set {
|
||||
[[Set whether this widget allows editing
|
||||
[[Whether this widget allows editing.
|
||||
|
||||
If editable then the widget will allow user input to manipulate
|
||||
the underlying Elm.Code_File of this Elm.Code instance.
|
||||
Any other Elm.Code_Widget's connected to this Elm.Code will
|
||||
update to reflect the changes.]]
|
||||
If editable then the widget will allow user input to manipulate
|
||||
the underlying Elm.Code_File of this Elm.Code instance.
|
||||
Any other Elm.Code_Widget's connected to this Elm.Code will
|
||||
update to reflect the changes.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the current editable state of this widget
|
||||
|
||||
returns EINA_TRUE if the widget is editable, EINA_FALSE otherwise.
|
||||
[[Returns EINA_TRUE if the widget is editable, EINA_FALSE otherwise.
|
||||
If this widget is not editable the underlying Elm.Code_File could
|
||||
still be manipulated by a different widget or the filesystem.]]
|
||||
}
|
||||
|
@ -119,39 +111,36 @@ class @beta Elm.Code_Widget extends Efl.Ui.Layout
|
|||
}
|
||||
}
|
||||
@property line_numbers {
|
||||
set {
|
||||
[[Set whether line numbers should be displayed in the left gutter.
|
||||
[[Whether line numbers should be displayed in the left gutter.
|
||||
|
||||
Passing EINA_TRUE will reserve a space for showing line numbers,
|
||||
EINA_FALSE will turn this off.]]
|
||||
Passing EINA_TRUE will reserve a space for showing line numbers,
|
||||
EINA_FALSE will turn this off.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the status of line number display for this widget.]]
|
||||
}
|
||||
values {
|
||||
line_numbers: bool; [[Whether or not line numbers (or their placeholder) should be shown]]
|
||||
}
|
||||
}
|
||||
@property line_width_marker {
|
||||
set {
|
||||
[[Set where the line width market should be shown.
|
||||
[[Where the line width market should be shown.
|
||||
|
||||
Passing a non-zero value will set which line width to mark with a vertical line.
|
||||
Passing 0 will hide this marker.]]
|
||||
Passing a non-zero value will set which line width to mark with a vertical line.
|
||||
Passing 0 will hide this marker.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the position of the line width marker, any positive return indicates where the marker appears.]]
|
||||
}
|
||||
values {
|
||||
line_width_marker: uint; [[Where to display a line width marker, if at all]]
|
||||
}
|
||||
}
|
||||
@property show_whitespace {
|
||||
[[Whether white space should be shown.]]
|
||||
set {
|
||||
[[Set whether white space should be shown.]]
|
||||
}
|
||||
get {
|
||||
[[Get whether or not white space will be visible.]]
|
||||
}
|
||||
values {
|
||||
show_whitespace: bool; [[Whether or not we show whitespace characters]]
|
||||
|
@ -168,33 +157,30 @@ class @beta Elm.Code_Widget extends Efl.Ui.Layout
|
|||
}
|
||||
}
|
||||
@property syntax_enabled {
|
||||
[[Whether syntax highlighting should be use for this widget.]]
|
||||
set {
|
||||
[[Set whether syntax highlighting should be use for this widget.]]
|
||||
}
|
||||
get {
|
||||
[[Get this widget's enabled state for syntax highlighting.]]
|
||||
}
|
||||
values {
|
||||
syntax_enabled: bool; [[Whether or not to enable syntax highlighting]]
|
||||
}
|
||||
}
|
||||
@property tab_inserts_spaces {
|
||||
[[Whether space characters should be inserted instead of tabs.]]
|
||||
set {
|
||||
[[Set whether space characters should be inserted instead of tabs.]]
|
||||
}
|
||||
get {
|
||||
[[Get whether or not space characters will be inserted instead of tabs.]]
|
||||
}
|
||||
values {
|
||||
tab_inserts_spaces: bool; [[$true if we should insert space characters instead of a tab when the Tab key is pressed]]
|
||||
}
|
||||
}
|
||||
@property cursor_position {
|
||||
[[The current location of the text cursor.]]
|
||||
set {
|
||||
[[Set the current location of the text cursor.]]
|
||||
}
|
||||
get {
|
||||
[[Get the current x and y position of the widget's cursor.]]
|
||||
}
|
||||
values {
|
||||
row: uint; [[The vertical position ov the cursur - the fist row is 1]]
|
||||
|
|
|
@ -223,7 +223,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property paging {
|
||||
[[Pagin property]]
|
||||
[[Paging property]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
|
@ -279,31 +279,31 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property scroll_up_cb {
|
||||
[[Set the callback to run when the content has been moved up.]]
|
||||
set {
|
||||
[[Set the callback to run when the content has been moved up.]]
|
||||
}
|
||||
values {
|
||||
scroll_up_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property hbar_drag_cb {
|
||||
[[Set the callback to run when the horizontal scrollbar is dragged.]]
|
||||
set {
|
||||
[[Set the callback to run when the horizontal scrollbar is dragged.]]
|
||||
}
|
||||
values {
|
||||
hbar_drag_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property drag_start_cb {
|
||||
[[Set the callback to run when dragging of the contents has started.]]
|
||||
set {
|
||||
[[Set the callback to run when dragging of the contents has started.]]
|
||||
}
|
||||
values {
|
||||
drag_start_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property freeze {
|
||||
[[Freeze property]]
|
||||
[[Freeze property]]
|
||||
set {
|
||||
}
|
||||
values {
|
||||
|
@ -311,48 +311,48 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property content_viewport_resize_cb {
|
||||
[[When the viewport is resized, the callback is called.]]
|
||||
set {
|
||||
[[When the viewport is resized, the callback is called.]]
|
||||
}
|
||||
values {
|
||||
viewport_resize_cb: Elm_Interface_Scrollable_Resize_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property scroll_left_cb {
|
||||
[[Set the callback to run when the content has been moved to the left]]
|
||||
set {
|
||||
[[Set the callback to run when the content has been moved to the left]]
|
||||
}
|
||||
values {
|
||||
scroll_left_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property vbar_press_cb {
|
||||
[[Set the callback to run when the vertical scrollbar is pressed.]]
|
||||
set {
|
||||
[[Set the callback to run when the vertical scrollbar is pressed.]]
|
||||
}
|
||||
values {
|
||||
vbar_press_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property hbar_press_cb {
|
||||
[[Set the callback to run when the horizontal scrollbar is pressed.]]
|
||||
set {
|
||||
[[Set the callback to run when the horizontal scrollbar is pressed.]]
|
||||
}
|
||||
values {
|
||||
hbar_press_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property hbar_unpress_cb {
|
||||
[[Set the callback to run when the horizontal scrollbar is unpressed.]]
|
||||
set {
|
||||
[[Set the callback to run when the horizontal scrollbar is unpressed.]]
|
||||
}
|
||||
values {
|
||||
hbar_unpress_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property drag_stop_cb {
|
||||
[[Set the callback to run when dragging of the contents has stopped.]]
|
||||
set {
|
||||
[[Set the callback to run when dragging of the contents has stopped.]]
|
||||
}
|
||||
values {
|
||||
drag_stop_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
|
@ -367,8 +367,8 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property page_change_cb {
|
||||
[[Set the callback to run when the visible page changes.]]
|
||||
set {
|
||||
[[Set the callback to run when the visible page changes.]]
|
||||
}
|
||||
values {
|
||||
page_change_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
|
@ -383,24 +383,24 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property animate_start_cb {
|
||||
[[Set the callback to run when the scrolling animation has started.]]
|
||||
set {
|
||||
[[Set the callback to run when the scrolling animation has started.]]
|
||||
}
|
||||
values {
|
||||
animate_start_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property scroll_down_cb {
|
||||
[[Set the callback to run when the content has been moved down.]]
|
||||
set {
|
||||
[[Set the callback to run when the content has been moved down.]]
|
||||
}
|
||||
values {
|
||||
scroll_down_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property page_relative {
|
||||
[[Set scroll page size relative to viewport size.]]
|
||||
set {
|
||||
[[Set scroll page size relative to viewport size.]]
|
||||
}
|
||||
values {
|
||||
h_pagerel: double; [[Page relation horizontal]]
|
||||
|
@ -408,23 +408,23 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property scroll_cb {
|
||||
[[Set the callback to run when the content has been moved.]]
|
||||
set {
|
||||
[[Set the callback to run when the content has been moved.]]
|
||||
}
|
||||
values {
|
||||
scroll_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property animate_stop_cb {
|
||||
[[Set the callback to run when the scrolling animation has stopped.]]
|
||||
set {
|
||||
[[Set the callback to run when the scrolling animation has stopped.]]
|
||||
}
|
||||
values {
|
||||
animate_stop_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property content_min_limit_cb {
|
||||
[[set the callback to run on minimal limit content]]
|
||||
[[set the callback to run on minimal limit content]]
|
||||
set {
|
||||
}
|
||||
values {
|
||||
|
@ -432,15 +432,15 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property scroll_right_cb {
|
||||
[[Set the callback to run when the content has been moved to the right.]]
|
||||
set {
|
||||
[[Set the callback to run when the content has been moved to the right.]]
|
||||
}
|
||||
values {
|
||||
scroll_right_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property scrollable_content {
|
||||
[[Content property]]
|
||||
[[Content property]]
|
||||
set {
|
||||
}
|
||||
values {
|
||||
|
@ -448,55 +448,55 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property edge_left_cb {
|
||||
[[Set the callback to run when the left edge of the content has been reached.]]
|
||||
set {
|
||||
[[Set the callback to run when the left edge of the content has been reached.]]
|
||||
}
|
||||
values {
|
||||
edge_left_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property vbar_drag_cb {
|
||||
[[Set the callback to run when the horizontal scrollbar is dragged.]]
|
||||
set {
|
||||
[[Set the callback to run when the horizontal scrollbar is dragged.]]
|
||||
}
|
||||
values {
|
||||
vbar_drag_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property vbar_unpress_cb {
|
||||
[[Set the callback to run when the horizontal scrollbar is unpressed.]]
|
||||
set {
|
||||
[[Set the callback to run when the horizontal scrollbar is unpressed.]]
|
||||
}
|
||||
values {
|
||||
vbar_unpress_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property edge_bottom_cb {
|
||||
[[Set the callback to run when the bottom edge of the content has been reached.]]
|
||||
set {
|
||||
[[Set the callback to run when the bottom edge of the content has been reached.]]
|
||||
}
|
||||
values {
|
||||
edge_bottom_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property edge_right_cb {
|
||||
[[Set the callback to run when the right edge of the content has been reached.]]
|
||||
set {
|
||||
[[Set the callback to run when the right edge of the content has been reached.]]
|
||||
}
|
||||
values {
|
||||
edge_right_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property edge_top_cb {
|
||||
[[Set the callback to run when the top edge of the content has been reached.]]
|
||||
set {
|
||||
[[Set the callback to run when the top edge of the content has been reached.]]
|
||||
}
|
||||
values {
|
||||
edge_top_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property objects {
|
||||
[[Object property]]
|
||||
[[Object property]]
|
||||
set {
|
||||
}
|
||||
values {
|
||||
|
@ -505,13 +505,13 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property last_page {
|
||||
[[Scroll last page number.
|
||||
|
||||
The page number starts from 0. 0 is the first page.
|
||||
This returns the last page number among the pages.
|
||||
|
||||
See: @.current_page, @.page_show and @.page_bring_in.]]
|
||||
get {
|
||||
[[Get scroll last page number.
|
||||
|
||||
The page number starts from 0. 0 is the first page.
|
||||
This returns the last page number among the pages.
|
||||
|
||||
See: @.current_page, @.page_show and @.page_bring_in.]]
|
||||
}
|
||||
values {
|
||||
pagenumber_h: int; [[The horizontal page number]]
|
||||
|
@ -519,15 +519,15 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property current_page {
|
||||
[[Scroll current page number.
|
||||
|
||||
The page number starts from 0. 0 is the first page.
|
||||
Current page means the page which meets the top-left of the viewport.
|
||||
If there are two or more pages in the viewport, it returns the number of the page
|
||||
which meets the top-left of the viewport.
|
||||
|
||||
See: @.last_page, @.page_show and @.page_bring_in.]]
|
||||
get {
|
||||
[[Get scroll current page number.
|
||||
|
||||
The page number starts from 0. 0 is the first page.
|
||||
Current page means the page which meets the top-left of the viewport.
|
||||
If there are two or more pages in the viewport, it returns the number of the page
|
||||
which meets the top-left of the viewport.
|
||||
|
||||
See: @.last_page, @.page_show and @.page_bring_in.]]
|
||||
}
|
||||
values {
|
||||
pagenumber_h: int; [[The horizontal page number]]
|
||||
|
@ -546,10 +546,10 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
}
|
||||
}
|
||||
@property content_size {
|
||||
get {
|
||||
[[Get the size of the content object
|
||||
[[Get the size of the content object
|
||||
|
||||
This gets the size of the content object of the scroller.]]
|
||||
This gets the size of the content object of the scroller.]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
w: int; [[Width of the content object.]]
|
||||
|
|
|
@ -4,15 +4,15 @@ class @beta Efl.Canvas.Video extends Efl.Canvas.Group
|
|||
[[Efl canvas video class]]
|
||||
methods {
|
||||
@property option {
|
||||
[[Sets options for the current module.
|
||||
|
||||
This function allows one to mute the video or audio of the
|
||||
emotion object.
|
||||
|
||||
Please don't use this function, consider using
|
||||
@Efl.Player.mute instead.
|
||||
]]
|
||||
set {
|
||||
[[Set the specified option for the current module.
|
||||
|
||||
This function allows one to mute the video or audio of the
|
||||
emotion object.
|
||||
|
||||
Please don't use this function, consider using
|
||||
@Efl.Player.mute instead.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
opt: string; [[The option that is being set. Currently
|
||||
|
@ -22,23 +22,23 @@ class @beta Efl.Canvas.Video extends Efl.Canvas.Group
|
|||
}
|
||||
}
|
||||
@property engine {
|
||||
[[Initializes an emotion object with the specified module.
|
||||
|
||||
This function is required after creating the emotion object,
|
||||
in order to specify which module will be used with this
|
||||
object. Different objects can use different modules to
|
||||
play a media file. The current supported modules are
|
||||
gstreamer and xine.
|
||||
|
||||
To use any of them, you need to make sure that support for
|
||||
them was compiled correctly.
|
||||
|
||||
It's possible to disable the build of a module with
|
||||
--disable-module_name.
|
||||
|
||||
See also @Efl.File.file.
|
||||
]]
|
||||
set {
|
||||
[[Initializes an emotion object with the specified module.
|
||||
|
||||
This function is required after creating the emotion object,
|
||||
in order to specify which module will be used with this
|
||||
object. Different objects can use different modules to
|
||||
play a media file. The current supported modules are
|
||||
gstreamer and xine.
|
||||
|
||||
To use any of them, you need to make sure that support for
|
||||
them was compiled correctly.
|
||||
|
||||
It's possible to disable the build of a module with
|
||||
--disable-module_name.
|
||||
|
||||
See also @Efl.File.file.
|
||||
]]
|
||||
return: bool; [[$true if the specified module was successfully
|
||||
initialized for this object, $false otherwise.]]
|
||||
}
|
||||
|
|
|
@ -144,28 +144,28 @@ abstract Efl.Object
|
|||
}
|
||||
}
|
||||
@property event_global_freeze_count @static {
|
||||
get {
|
||||
[[Return the global count of freeze events.
|
||||
[[Return the global count of freeze events.
|
||||
|
||||
This is the amount of calls to @.event_global_freeze minus
|
||||
the amount of calls to @.event_global_thaw.
|
||||
EFL will not emit any event while this count is > 0 (Except
|
||||
events marked $hot).
|
||||
]]
|
||||
This is the amount of calls to @.event_global_freeze minus
|
||||
the amount of calls to @.event_global_thaw.
|
||||
EFL will not emit any event while this count is > 0 (Except
|
||||
events marked $hot).
|
||||
]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
fcount: int; [[The global event freeze count.]]
|
||||
}
|
||||
}
|
||||
@property event_freeze_count {
|
||||
get {
|
||||
[[Return the count of freeze events for this object.
|
||||
[[Return the count of freeze events for this object.
|
||||
|
||||
This is the amount of calls to @.event_freeze minus
|
||||
the amount of calls to @.event_thaw.
|
||||
This object will not emit any event while this count is > 0
|
||||
(Except events marked $hot).
|
||||
]]
|
||||
This is the amount of calls to @.event_freeze minus
|
||||
the amount of calls to @.event_thaw.
|
||||
This object will not emit any event while this count is > 0
|
||||
(Except events marked $hot).
|
||||
]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
fcount: int; [[The event freeze count of this object.]]
|
||||
|
@ -403,7 +403,7 @@ abstract Efl.Object
|
|||
}
|
||||
}
|
||||
provider_register {
|
||||
[[Will register a manager of a specific class to be answered by eo.provider_find.]]
|
||||
[[Will register a manager of a specific class to be answered by @.provider_find.]]
|
||||
params {
|
||||
@in klass: const(Efl.Class); [[The class provided by the registered provider.]]
|
||||
@in provider: const(Efl.Object); [[The provider for the newly registered class that has to provide that
|
||||
|
@ -413,7 +413,7 @@ abstract Efl.Object
|
|||
}
|
||||
provider_unregister {
|
||||
[[Will unregister a manager of a specific class that was previously registered and answered by
|
||||
eo.provider_find.]]
|
||||
@.provider_find.]]
|
||||
params {
|
||||
@in klass: const(Efl.Class); [[The class provided by the provider to unregister for.]]
|
||||
@in provider: const(Efl.Object); [[The provider for the registered class to unregister.]]
|
||||
|
|
|
@ -1217,19 +1217,16 @@ parse_accessor:
|
|||
check_next(ls, '{');
|
||||
if ((ls->t.token == TOK_DOC) && !prop->impl->common_doc)
|
||||
{
|
||||
if (getenv("EOLIAN_PROPERTY_DOC_WARN"))
|
||||
{
|
||||
Eolian_Object tmp;
|
||||
memset(&tmp, 0, sizeof(Eolian_Object));
|
||||
tmp.file = prop->base.file;
|
||||
tmp.line = line;
|
||||
tmp.column = col;
|
||||
tmp.unit = ls->unit;
|
||||
eolian_state_log_obj(ls->state, &tmp,
|
||||
"%s doc without property doc for '%s.%s'",
|
||||
is_get ? "getter" : "setter",
|
||||
ls->klass->base.name, prop->base.name);
|
||||
}
|
||||
Eolian_Object tmp;
|
||||
memset(&tmp, 0, sizeof(Eolian_Object));
|
||||
tmp.file = prop->base.file;
|
||||
tmp.line = line;
|
||||
tmp.column = col;
|
||||
tmp.unit = ls->unit;
|
||||
eolian_state_log_obj(ls->state, &tmp,
|
||||
"%s doc without property doc for '%s.%s'",
|
||||
is_get ? "getter" : "setter",
|
||||
ls->klass->base.name, prop->base.name);
|
||||
}
|
||||
if (is_get)
|
||||
{
|
||||
|
|
|
@ -314,7 +314,6 @@ eolian_documentation_tokenize(const char *doc, Eolian_Doc_Token *ret)
|
|||
#undef CMP_MARK_NOTE
|
||||
|
||||
mloop:
|
||||
|
||||
/* monospace markup ($foo) */
|
||||
if ((doc[0] == '$') && ((doc[1] == '_') || isalpha(doc[1])))
|
||||
{
|
||||
|
@ -326,6 +325,28 @@ mloop:
|
|||
return ret->text_end;
|
||||
}
|
||||
|
||||
/* complex monospace markup ($[...]) */
|
||||
if ((doc[0] == '$') && (doc[1] == '['))
|
||||
{
|
||||
doc += 2;
|
||||
ret->text = doc;
|
||||
ret->text_end = ret->text;
|
||||
while ((ret->text_end[0] != '\0') && (ret->text_end[0] != ']') &&
|
||||
(ret->text_end[0] != '\n'))
|
||||
{
|
||||
/* escape: skip backslash */
|
||||
if ((ret->text_end[0] == '\\') && (ret->text_end[1] != '\0') &&
|
||||
(ret->text_end[1] != '\n'))
|
||||
++ret->text_end;
|
||||
++ret->text_end;
|
||||
}
|
||||
ret->type = EOLIAN_DOC_TOKEN_MARKUP_MONOSPACE;
|
||||
/* return past the ending bracket as that's markup syntax */
|
||||
if (ret->text_end[0] == ']')
|
||||
return ret->text_end + 1;
|
||||
return ret->text_end;
|
||||
}
|
||||
|
||||
/* references */
|
||||
Eolian_Doc_Token_Type rtp = _get_ref_token(doc, &ret->text_end);
|
||||
if (rtp != EOLIAN_DOC_TOKEN_UNKNOWN)
|
||||
|
@ -349,7 +370,8 @@ mloop:
|
|||
continue;
|
||||
}
|
||||
/* monospace markup */
|
||||
if ((schr[0] == '$') && ((schr[1] == '_') || isalpha(schr[1])))
|
||||
if ((schr[0] == '$') && (
|
||||
(schr[1] == '_') || (schr[1] == '[') || isalpha(schr[1])))
|
||||
{
|
||||
pschr = schr;
|
||||
break;
|
||||
|
|
|
@ -50,16 +50,16 @@ mixin @beta Efl.Canvas.Filter.Internal requires Efl.Object extends Efl.Gfx.Filte
|
|||
|
||||
methods {
|
||||
@property filter_changed @protected {
|
||||
[[Marks this filter as changed.]]
|
||||
set {
|
||||
[[Marks this filter as changed.]]
|
||||
}
|
||||
values {
|
||||
val: bool; [[$true if filter changed, $false otherwise]]
|
||||
}
|
||||
}
|
||||
@property filter_invalid @protected {
|
||||
[[Marks this filter as invalid.]]
|
||||
set {
|
||||
[[Marks this filter as invalid.]]
|
||||
}
|
||||
values {
|
||||
val: bool; [[$true if filter is invalid, $false otherwise]]
|
||||
|
@ -102,11 +102,11 @@ mixin @beta Efl.Canvas.Filter.Internal requires Efl.Object extends Efl.Gfx.Filte
|
|||
]]
|
||||
}
|
||||
@property filter_output_buffer @protected {
|
||||
get {
|
||||
[[Retrieve cached output buffer, if any.
|
||||
[[Retrieves cached output buffer, if any.
|
||||
|
||||
Does not increment the reference count.
|
||||
]]
|
||||
Does not increment the reference count.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
values {
|
||||
buffer: void_ptr; [[Output buffer]]
|
||||
|
|
|
@ -84,55 +84,49 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
}
|
||||
}
|
||||
@property clipper {
|
||||
[[Clip one object to another.
|
||||
|
||||
This property will clip the object $obj to the area occupied
|
||||
by the object $clip. This means the object $obj will only be
|
||||
visible within the area occupied by the clipping object
|
||||
($clip).
|
||||
|
||||
The color of the object being clipped will be multiplied by
|
||||
the color of the clipping one, so the resulting color for the
|
||||
former will be "RESULT = (OBJ * CLIP) / (255 * 255)", per color
|
||||
element (red, green, blue and alpha).
|
||||
|
||||
Clipping is recursive, so clipping objects may be clipped by
|
||||
others, and their color will in term be multiplied. You may
|
||||
not set up circular clipping lists (i.e. object 1 clips
|
||||
object 2, which clips object 1): the behavior of Evas is
|
||||
undefined in this case.
|
||||
|
||||
Objects which do not clip others are visible in the canvas as
|
||||
normal; those that clip one or more objects become invisible
|
||||
themselves, only affecting what they clip. If an object ceases
|
||||
to have other objects being clipped by it, it will become
|
||||
visible again.
|
||||
|
||||
The visibility of an object affects the objects that are
|
||||
clipped by it, so if the object clipping others is not shown
|
||||
(as in @Efl.Gfx.Entity.visible), the objects clipped by it will
|
||||
not be shown either.
|
||||
|
||||
If $obj was being clipped by another object when this function
|
||||
is called, it gets implicitly removed from the old clipper's
|
||||
domain and is made now to be clipped by its new clipper.
|
||||
|
||||
If $clip is $null, this call will disable clipping for the object
|
||||
i.e. its visibility and color get detached from the previous
|
||||
clipper. If it wasn't, this has no effect.
|
||||
|
||||
Note: Only rectangle and image (masks) objects can be used
|
||||
as clippers. Anything else will result in undefined behaviour.
|
||||
]]
|
||||
set {
|
||||
[[Clip one object to another.
|
||||
|
||||
This function will clip the object $obj to the area occupied
|
||||
by the object $clip. This means the object $obj will only be
|
||||
visible within the area occupied by the clipping object
|
||||
($clip).
|
||||
|
||||
The color of the object being clipped will be multiplied by
|
||||
the color of the clipping one, so the resulting color for the
|
||||
former will be "RESULT = (OBJ * CLIP) / (255 * 255)", per color
|
||||
element (red, green, blue and alpha).
|
||||
|
||||
Clipping is recursive, so clipping objects may be clipped by
|
||||
others, and their color will in term be multiplied. You may
|
||||
not set up circular clipping lists (i.e. object 1 clips
|
||||
object 2, which clips object 1): the behavior of Evas is
|
||||
undefined in this case.
|
||||
|
||||
Objects which do not clip others are visible in the canvas as
|
||||
normal; those that clip one or more objects become invisible
|
||||
themselves, only affecting what they clip. If an object ceases
|
||||
to have other objects being clipped by it, it will become
|
||||
visible again.
|
||||
|
||||
The visibility of an object affects the objects that are
|
||||
clipped by it, so if the object clipping others is not shown
|
||||
(as in @Efl.Gfx.Entity.visible), the objects clipped by it will
|
||||
not be shown either.
|
||||
|
||||
If $obj was being clipped by another object when this function
|
||||
is called, it gets implicitly removed from the old clipper's
|
||||
domain and is made now to be clipped by its new clipper.
|
||||
|
||||
If $clip is $null, this call will disable clipping for the object
|
||||
i.e. its visibility and color get detached from the previous
|
||||
clipper. If it wasn't, this has no effect.
|
||||
|
||||
Note: Only rectangle and image (masks) objects can be used
|
||||
as clippers. Anything else will result in undefined behaviour.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the object clipping $obj (if any).
|
||||
|
||||
This function returns the object clipping $obj. If $obj is
|
||||
not being clipped at all, $null is returned. The object $obj
|
||||
must be a valid Evas_Object.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
clipper: Efl.Canvas.Object; [[The object to clip $obj by.]]
|
||||
|
@ -156,27 +150,26 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
}
|
||||
}
|
||||
@property repeat_events {
|
||||
[[Whether an Evas object is to repeat events to objects below it.
|
||||
|
||||
If $repeat is $true, it will make events on $obj to also be
|
||||
repeated for the next lower object in the objects' stack (see
|
||||
see @Efl.Gfx.Stack.below).
|
||||
|
||||
If $repeat is $false, events occurring on $obj will be
|
||||
processed only on it.
|
||||
]]
|
||||
/* FIXME-doc
|
||||
Example:
|
||||
@dontinclude evas-stacking.c
|
||||
@skip if (strcmp(ev->key, "r") == 0)
|
||||
@until }
|
||||
|
||||
See the full @ref Example_Evas_Stacking "example".
|
||||
*/
|
||||
set {
|
||||
[[Set whether an Evas object is to repeat events.
|
||||
|
||||
If $repeat is $true, it will make events on $obj to also be
|
||||
repeated for the next lower object in the objects' stack (see
|
||||
see @Efl.Gfx.Stack.below).
|
||||
|
||||
If $repeat is $false, events occurring on $obj will be
|
||||
processed only on it.
|
||||
]]
|
||||
/* FIXME-doc
|
||||
Example:
|
||||
@dontinclude evas-stacking.c
|
||||
@skip if (strcmp(ev->key, "r") == 0)
|
||||
@until }
|
||||
|
||||
See the full @ref Example_Evas_Stacking "example".
|
||||
*/
|
||||
}
|
||||
get {
|
||||
[[Determine whether an object is set to repeat events.]]
|
||||
}
|
||||
values {
|
||||
repeat: bool; [[Whether $obj is to repeat events ($true) or
|
||||
|
@ -248,31 +241,28 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
return: bool; [[$true if the seat was removed from the focus list or $false otherwise.]]
|
||||
}
|
||||
@property precise_is_inside {
|
||||
[[Whether to use precise (usually expensive) point collision
|
||||
detection for a given Evas object.
|
||||
|
||||
Use this property to make Evas treat objects' transparent
|
||||
areas as not belonging to it with regard to mouse pointer
|
||||
events. By default, all of the object's boundary rectangle
|
||||
will be taken in account for them.
|
||||
|
||||
Warning: By using precise point collision detection you'll be
|
||||
making Evas more resource intensive.
|
||||
]]
|
||||
/* FIXME-doc
|
||||
Example code follows.
|
||||
@dontinclude evas-events.c
|
||||
@skip if (strcmp(ev->key, "p") == 0)
|
||||
@until }
|
||||
|
||||
See the full example @ref Example_Evas_Events "here".
|
||||
*/
|
||||
set {
|
||||
[[Set whether to use precise (usually expensive) point collision
|
||||
detection for a given Evas object.
|
||||
|
||||
Use this function to make Evas treat objects' transparent
|
||||
areas as not belonging to it with regard to mouse pointer
|
||||
events. By default, all of the object's boundary rectangle
|
||||
will be taken in account for them.
|
||||
|
||||
Warning: By using precise point collision detection you'll be
|
||||
making Evas more resource intensive.
|
||||
]]
|
||||
/* FIXME-doc
|
||||
Example code follows.
|
||||
@dontinclude evas-events.c
|
||||
@skip if (strcmp(ev->key, "p") == 0)
|
||||
@until }
|
||||
|
||||
See the full example @ref Example_Evas_Events "here".
|
||||
*/
|
||||
}
|
||||
get {
|
||||
[[Determine whether an object is set to use precise point
|
||||
collision detection.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
precise: bool; [[Whether to use precise point collision
|
||||
|
@ -280,27 +270,23 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
}
|
||||
}
|
||||
@property propagate_events {
|
||||
[[Whether events on a smart object's member should be
|
||||
propagated up to its parent.
|
||||
|
||||
This function has no effect if $obj is not a member of a
|
||||
smart object.
|
||||
|
||||
If $prop is $true, events occurring on this object will be
|
||||
propagated on to the smart object of which $obj is a member.
|
||||
If $prop is $false, events occurring on this object will not
|
||||
be propagated on to the smart object of which $obj is a
|
||||
member. The default value is $true.
|
||||
|
||||
See also @.repeat_events.set, @.pass_events.set.
|
||||
]]
|
||||
set {
|
||||
[[Set whether events on a smart object's member should be
|
||||
propagated up to its parent.
|
||||
|
||||
This function has no effect if $obj is not a member of a
|
||||
smart object.
|
||||
|
||||
If $prop is $true, events occurring on this object will be
|
||||
propagated on to the smart object of which $obj is a member.
|
||||
If $prop is $false, events occurring on this object will not
|
||||
be propagated on to the smart object of which $obj is a
|
||||
member. The default value is $true.
|
||||
|
||||
See also @.repeat_events.set, @.pass_events.set.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Retrieve whether an Evas object is set to propagate events.
|
||||
|
||||
See also @.repeat_events.get, @.pass_events.get.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
propagate: bool; [[Whether to propagate events ($true) or not
|
||||
|
@ -308,24 +294,20 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
}
|
||||
}
|
||||
@property pass_events {
|
||||
[[Whether an Evas object is to pass (ignore) events.
|
||||
|
||||
If $pass is $true, it will make events on $obj to be ignored.
|
||||
They will be triggered on the next lower object (that is not
|
||||
set to pass events), instead (see @Efl.Gfx.Stack.below).
|
||||
|
||||
If $pass is $false events will be processed on that object
|
||||
as normal.
|
||||
|
||||
See also @.repeat_events.set, @.propagate_events.set
|
||||
]]
|
||||
set {
|
||||
[[Set whether an Evas object is to pass (ignore) events.
|
||||
|
||||
If $pass is $true, it will make events on $obj to be ignored.
|
||||
They will be triggered on the next lower object (that is not
|
||||
set to pass events), instead (see @Efl.Gfx.Stack.below).
|
||||
|
||||
If $pass is $false events will be processed on that object
|
||||
as normal.
|
||||
|
||||
See also @.repeat_events.set, @.propagate_events.set
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Determine whether an object is set to pass (ignore) events.
|
||||
|
||||
See also @.repeat_events.get, @.propagate_events.get.
|
||||
]]
|
||||
/* FIXME-doc
|
||||
Example:
|
||||
@dontinclude evas-stacking.c
|
||||
|
@ -341,15 +323,12 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
}
|
||||
}
|
||||
@property anti_alias {
|
||||
[[Whether or not the given Evas object is to be drawn
|
||||
anti-aliased.
|
||||
]]
|
||||
set {
|
||||
[[Sets whether or not the given Evas object is to be drawn
|
||||
anti-aliased.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Retrieves whether or not the given Evas object is to be drawn
|
||||
anti_aliased.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
anti_alias: bool; [[$true if the object is to be anti_aliased,
|
||||
|
@ -357,22 +336,22 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
}
|
||||
}
|
||||
@property clipped_objects {
|
||||
[[List of objects currently clipped by $obj.
|
||||
|
||||
This returns the internal list handle containing all
|
||||
objects clipped by the object $obj. If none are clipped by
|
||||
it, the call returns $null. This list is only valid until
|
||||
the clip list is changed and should be fetched again with
|
||||
another call to this function if any objects being clipped
|
||||
by this object are unclipped, clipped by a new object,
|
||||
deleted or get the clipper deleted. These operations will
|
||||
invalidate the list returned, so it should not be used
|
||||
anymore after that point. Any use of the list after this
|
||||
may have undefined results, possibly leading to crashes.
|
||||
|
||||
See also @.clipper.
|
||||
]]
|
||||
get {
|
||||
[[Return a list of objects currently clipped by $obj.
|
||||
|
||||
This returns the internal list handle containing all
|
||||
objects clipped by the object $obj. If none are clipped by
|
||||
it, the call returns $null. This list is only valid until
|
||||
the clip list is changed and should be fetched again with
|
||||
another call to this function if any objects being clipped
|
||||
by this object are unclipped, clipped by a new object,
|
||||
deleted or get the clipper deleted. These operations will
|
||||
invalidate the list returned, so it should not be used
|
||||
anymore after that point. Any use of the list after this
|
||||
may have undefined results, possibly leading to crashes.
|
||||
|
||||
See also @.clipper.
|
||||
]]
|
||||
return: iterator<Efl.Canvas.Object> @no_unused; [[An iterator over the
|
||||
list of objects clipped by $obj.]]
|
||||
}
|
||||
|
@ -460,57 +439,46 @@ abstract Efl.Canvas.Object extends Efl.Loop_Consumer implements Efl.Gfx.Entity,
|
|||
}
|
||||
}
|
||||
@property no_render {
|
||||
get {
|
||||
[[Returns the state of the "no-render" flag, which means, when
|
||||
true, that an object should never be rendered on the canvas.
|
||||
[[Disables all rendering on the canvas.
|
||||
|
||||
This flag can be used to avoid rendering visible clippers on
|
||||
the canvas, even if they currently don't clip any object.
|
||||
]]
|
||||
This flag will be used to indicate to Evas that this object
|
||||
should never be rendered on the canvas under any
|
||||
circumstances. In particular, this is useful to avoid
|
||||
drawing clipper objects (or masks) even when they don't
|
||||
clip any object. This can also be used to replace the old
|
||||
source_visible flag with proxy objects.
|
||||
|
||||
This is different to the visible property, as even visible
|
||||
objects marked as "no-render" will never appear on screen.
|
||||
But those objects can still be used as proxy sources or
|
||||
clippers. When hidden, all "no-render" objects will
|
||||
completely disappear from the canvas, and hide their
|
||||
clippees or be invisible when used as proxy sources.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
set {
|
||||
[[Disable all rendering on the canvas.
|
||||
|
||||
This flag will be used to indicate to Evas that this object
|
||||
should never be rendered on the canvas under any
|
||||
circumstances. In particular, this is useful to avoid
|
||||
drawing clipper objects (or masks) even when they don't
|
||||
clip any object. This can also be used to replace the old
|
||||
source_visible flag with proxy objects.
|
||||
|
||||
This is different to the visible property, as even visible
|
||||
objects marked as "no-render" will never appear on screen.
|
||||
But those objects can still be used as proxy sources or
|
||||
clippers. When hidden, all "no-render" objects will
|
||||
completely disappear from the canvas, and hide their
|
||||
clippees or be invisible when used as proxy sources.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
enable: bool; [[Enable "no-render" mode.]]
|
||||
}
|
||||
}
|
||||
@property coords_inside {
|
||||
get {
|
||||
[[Returns whether the coords are logically inside the
|
||||
object.
|
||||
[[Whether the coordinates are logically inside the object.
|
||||
|
||||
When this function is called it will return a value of either
|
||||
$false or $true, depending on if the coords are inside the object's
|
||||
current geometry.
|
||||
|
||||
A return value of $true indicates the position is logically
|
||||
A value of $true indicates the position is logically
|
||||
inside the object, and $false implies it is logically
|
||||
outside the object.
|
||||
|
||||
If $e is not a valid object, the return value is undefined.
|
||||
If $obj is not a valid object, the return value is undefined.
|
||||
]]
|
||||
get {
|
||||
}
|
||||
keys {
|
||||
pos: Eina.Position2D; [[The position in pixels.]]
|
||||
pos: Eina.Position2D; [[The coordinates in pixels.]]
|
||||
}
|
||||
values {
|
||||
return: bool; [[$true if the coords are inside the object, $false otherwise]]
|
||||
return: bool; [[$true if the coordinates are inside the object, $false otherwise]]
|
||||
}
|
||||
}
|
||||
gesture_manager_get @beta {
|
||||
|
|
|
@ -6,30 +6,26 @@ abstract @beta Efl.Canvas.Vg.Node extends Efl.Object
|
|||
[[Efl vector graphics abstract class]]
|
||||
methods {
|
||||
@property transformation {
|
||||
set {
|
||||
[[Sets the transformation matrix to be used for this node object.
|
||||
[[The transformation matrix to be used for this node object.
|
||||
|
||||
Note: Pass $null to cancel the applied transformation.
|
||||
]]
|
||||
Note: Pass $null to cancel the applied transformation.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Gets the transformation matrix used for this node object.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
m: ptr(const(Eina.Matrix3)); [[Transformation matrix.]]
|
||||
}
|
||||
}
|
||||
@property origin {
|
||||
set {
|
||||
[[Sets the origin position of the node object.
|
||||
[[The origin position of the node object.
|
||||
|
||||
This origin position affects node transformation.
|
||||
]]
|
||||
This origin position affects node transformation.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Gets the origin position of the node object.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
x: double; [[$origin x position.]]
|
||||
|
|
|
@ -33,12 +33,11 @@ class @beta Efl.Canvas.Vg.Object extends Efl.Canvas.Object implements Efl.File,
|
|||
}
|
||||
}
|
||||
@property viewbox {
|
||||
[[The viewbox for the evas vg canvas.
|
||||
viewbox if set should be mapped to the canvas geometry when rendering the vg tree.]]
|
||||
get {
|
||||
[[Get the current viewbox from the evas_object_vg]]
|
||||
}
|
||||
set {
|
||||
[[Sets the viewbox for the evas vg canvas.
|
||||
viewbox if set should be mapped to the canvas geometry when rendering the vg tree.]]
|
||||
}
|
||||
values {
|
||||
viewbox: Eina.Rect; [[viewbox for the vg canvas]]
|
||||
|
@ -52,26 +51,24 @@ class @beta Efl.Canvas.Vg.Object extends Efl.Canvas.Object implements Efl.File,
|
|||
}
|
||||
}
|
||||
@property root_node {
|
||||
[[The root node of the evas_object_vg.
|
||||
|
||||
Note: To manually create the shape object and show in the Vg
|
||||
object canvas you must create the hierarchy and set as root node.
|
||||
|
||||
It takes the ownership of the root node. ]]
|
||||
get {
|
||||
[[Get the root node of the evas_object_vg.
|
||||
]]
|
||||
}
|
||||
set {
|
||||
[[Set the root node of the evas_object_vg.
|
||||
|
||||
Note: To manually create the shape object and show in the Vg
|
||||
object canvas you must create the hierarchy and set as root node.
|
||||
|
||||
It takes the ownership of the root node. ]]
|
||||
}
|
||||
values {
|
||||
root: Efl.Canvas.Vg.Node; [[Root node of the VG canvas.]]
|
||||
}
|
||||
}
|
||||
@property default_size {
|
||||
[[The default vector size that specified from vector resource.
|
||||
@since 1.22]]
|
||||
get {
|
||||
[[Get the default vector size that specified from vector resource.
|
||||
@since 1.22]]
|
||||
}
|
||||
values {
|
||||
size: Eina.Size2D;
|
||||
|
|
|
@ -23,13 +23,13 @@ interface Efl.Input.Interface
|
|||
event_prefix: efl;
|
||||
methods {
|
||||
@property seat_event_filter @beta {
|
||||
[[Whether input events from a given seat are enabled.
|
||||
If the filter list is empty (no seat is disabled) this object
|
||||
will report mouse, keyboard and focus events from any seat, otherwise those events will
|
||||
only be reported if the event comes from a seat that is not in the list.]]
|
||||
set {
|
||||
[[Add or remove a given seat to the filter list. If the filter list is empty this object
|
||||
will report mouse, keyboard and focus events from any seat, otherwise those events will
|
||||
only be reported if the event comes from a seat that is in the list.]]
|
||||
}
|
||||
get {
|
||||
[[Check if input events from a given seat is enabled.]]
|
||||
}
|
||||
keys {
|
||||
seat: Efl.Input.Device; [[The seat to act on.]]
|
||||
|
|
|
@ -800,18 +800,30 @@ _animator_repeater(void *data, const Efl_Event *event)
|
|||
DBG("Emitting animator tick on %p.", obj->object);
|
||||
}
|
||||
|
||||
static void
|
||||
_check_event_catcher_add(void *data, const Efl_Event *event)
|
||||
void
|
||||
evas_object_callbacks_finalized(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj)
|
||||
{
|
||||
if (obj->animator_ref > 0)
|
||||
{
|
||||
if (obj->layer && obj->layer->evas)
|
||||
{
|
||||
efl_event_callback_add(obj->layer->evas->evas, EFL_CANVAS_OBJECT_EVENT_ANIMATOR_TICK, _animator_repeater, obj);
|
||||
DBG("Registering an animator tick on canvas %p for object %p.",
|
||||
obj->layer->evas->evas, obj->object);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
evas_object_callbacks_event_catcher_add(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, const Efl_Callback_Array_Item *array)
|
||||
{
|
||||
const Efl_Callback_Array_Item_Full *array = event->info;
|
||||
Evas_Object_Protected_Data *obj = data;
|
||||
Evas_Callback_Type type = EVAS_CALLBACK_LAST;
|
||||
void *gd = NULL;
|
||||
int i;
|
||||
|
||||
for (i = 0; array[i].desc != NULL; i++)
|
||||
{
|
||||
if (obj->layer->evas->gesture_manager)
|
||||
if (obj->layer && obj->layer->evas && obj->layer->evas->gesture_manager)
|
||||
{
|
||||
if (!gd) gd = _efl_canvas_gesture_manager_private_data_get(obj->layer->evas->gesture_manager);
|
||||
|
||||
|
@ -822,9 +834,12 @@ _check_event_catcher_add(void *data, const Efl_Event *event)
|
|||
{
|
||||
if (obj->animator_ref++ > 0) break;
|
||||
|
||||
efl_event_callback_add(obj->layer->evas->evas, EFL_CANVAS_OBJECT_EVENT_ANIMATOR_TICK, _animator_repeater, obj);
|
||||
DBG("Registering an animator tick on canvas %p for object %p.",
|
||||
obj->layer->evas->evas, obj->object);
|
||||
if (efl_finalized_get(eo_obj))
|
||||
{
|
||||
efl_event_callback_add(obj->layer->evas->evas, EFL_CANVAS_OBJECT_EVENT_ANIMATOR_TICK, _animator_repeater, obj);
|
||||
DBG("Registering an animator tick on canvas %p for object %p.",
|
||||
obj->layer->evas->evas, obj->object);
|
||||
}
|
||||
}
|
||||
else if ((type = _legacy_evas_callback_type(array[i].desc)) != EVAS_CALLBACK_LAST)
|
||||
{
|
||||
|
@ -838,11 +853,9 @@ _check_event_catcher_add(void *data, const Efl_Event *event)
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
_check_event_catcher_del(void *data, const Efl_Event *event)
|
||||
void
|
||||
evas_object_callbacks_event_catcher_del(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, const Efl_Callback_Array_Item *array)
|
||||
{
|
||||
const Efl_Callback_Array_Item_Full *array = event->info;
|
||||
Evas_Object_Protected_Data *obj = data;
|
||||
void *gd = NULL;
|
||||
int i;
|
||||
|
||||
|
@ -870,18 +883,3 @@ _check_event_catcher_del(void *data, const Efl_Event *event)
|
|||
}
|
||||
}
|
||||
|
||||
EFL_CALLBACKS_ARRAY_DEFINE(event_catcher_watch,
|
||||
{ EFL_EVENT_CALLBACK_ADD, _check_event_catcher_add },
|
||||
{ EFL_EVENT_CALLBACK_DEL, _check_event_catcher_del });
|
||||
|
||||
void
|
||||
evas_object_callback_init(Efl_Canvas_Object *eo_obj, Evas_Object_Protected_Data *obj)
|
||||
{
|
||||
efl_event_callback_array_add(eo_obj, event_catcher_watch(), obj);
|
||||
}
|
||||
|
||||
void
|
||||
evas_object_callback_shutdown(Efl_Canvas_Object *eo_obj, Evas_Object_Protected_Data *obj)
|
||||
{
|
||||
efl_event_callback_array_del(eo_obj, event_catcher_watch(), obj);
|
||||
}
|
||||
|
|
|
@ -8,21 +8,18 @@ class @beta Evas.Canvas3D.Light extends Evas.Canvas3D.Object
|
|||
|
||||
methods {
|
||||
@property directional {
|
||||
[[The directional flag of the given light.
|
||||
|
||||
Directional light is a type of light which is infinitely far away with no
|
||||
attenuation. The light direction is determined by the containing node's
|
||||
forward vector (negative Z-axis).
|
||||
|
||||
By default, directional is not enabled.
|
||||
|
||||
\@ref evas_canvas3d_node_look_at_set]]
|
||||
set {
|
||||
[[Set the directional flag of the given light.
|
||||
|
||||
Directional light is a type of light which is infinitely far away with no
|
||||
attenuation. The light direction is determined by the containing node's
|
||||
forward vector (negative Z-axis).
|
||||
|
||||
By default, directional is not enabled.
|
||||
|
||||
\@ref evas_canvas3d_node_look_at_set]]
|
||||
}
|
||||
get {
|
||||
[[Get the directional flag of the given light.
|
||||
|
||||
See also @.directional.set]]
|
||||
}
|
||||
values {
|
||||
directional: bool; [[Whether the light is directional ($true), or not ($false).]]
|
||||
|
@ -30,22 +27,19 @@ class @beta Evas.Canvas3D.Light extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property spot_exponent {
|
||||
[[The spot exponent of the given light.
|
||||
|
||||
Higher spot exponent means intensity at the center of the cone is relatively
|
||||
stronger. Zero exponent means the light intensity is evenly distributed. The
|
||||
spot exponent has no effect when the light is not spot light (spot cutoff
|
||||
angle is less than 180 degree).
|
||||
|
||||
Default spot exponent is 0.
|
||||
|
||||
See also @.spot_cutoff.set]]
|
||||
set {
|
||||
[[Set the spot exponent of the given light.
|
||||
|
||||
Higher spot exponent means intensity at the center of the cone is relatively
|
||||
stronger. Zero exponent means the light intensity is evenly distibuted. The
|
||||
spot exponent has no effect when the light is not spot light (spot cutoff
|
||||
angle is less than 180 degree).
|
||||
|
||||
Default spot exponent is 0.
|
||||
|
||||
See also @.spot_cutoff.set]]
|
||||
}
|
||||
get {
|
||||
[[Get the spot exponent of the given light.
|
||||
|
||||
See also @.spot_exponent.set]]
|
||||
}
|
||||
values {
|
||||
exponent: Evas.Real; [[Spot exponent value.]]
|
||||
|
@ -53,18 +47,15 @@ class @beta Evas.Canvas3D.Light extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property spot_cutoff {
|
||||
[[The spot cutoff angle of the given light.
|
||||
|
||||
Only angle less than 180 degree will make it spot light, so that other spot
|
||||
light attribute will take effect.
|
||||
|
||||
Default spot cutoff angle is 180.]]
|
||||
set {
|
||||
[[Set the spot cutoff angle of the given light.
|
||||
|
||||
Only angle less than 180 degree will make it spot light, so that other spot
|
||||
light attribute will take effect.
|
||||
|
||||
Default spot cutoff angle is 180.]]
|
||||
}
|
||||
get {
|
||||
[[Get the spot cutoff angle of the given light.
|
||||
|
||||
See also @.spot_cutoff.set]]
|
||||
}
|
||||
values {
|
||||
cutoff: Evas.Real; [[Cutoff angle in degree..]]
|
||||
|
@ -72,17 +63,14 @@ class @beta Evas.Canvas3D.Light extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property attenuation_enable {
|
||||
[[The attenuation enable flag of the given light.
|
||||
|
||||
By default, light attenuation is not enabled.
|
||||
|
||||
See also @.attenuation_set]]
|
||||
set {
|
||||
[[Set the attenuation enable flag of the given light.
|
||||
|
||||
By default, light attenuation is not enabled.
|
||||
|
||||
See also @.attenuation_set]]
|
||||
}
|
||||
get {
|
||||
[[Get the attenuation enable flag of the given light.
|
||||
|
||||
See also @.attenuation_enable.set]]
|
||||
}
|
||||
values {
|
||||
enable: bool; [[Whether to enable attenuation ($true), or not ($false)..]]
|
||||
|
|
|
@ -44,22 +44,18 @@ class @beta Evas.Canvas3D.Material extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property enable {
|
||||
[[The material attribute enable flag of the given material.
|
||||
|
||||
You might want to disable some material reflection contribution.
|
||||
For example, Emission attribute is rarely used. Disabling unused
|
||||
attributes might help the shading less complex so that can get
|
||||
speed up.
|
||||
|
||||
By default, diffuse and specular is enabled.
|
||||
]]
|
||||
set {
|
||||
[[Set the material attribute enable flag of the given material.
|
||||
|
||||
You might want to disable some material reflection contribution.
|
||||
For example, Emission attribute is rarely used. Disabling unused
|
||||
attributes might help the shading less complex so that can get
|
||||
speed up.
|
||||
|
||||
By default, diffuse and specular is enabled.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the material attribute enable flag of the given material.
|
||||
|
||||
See also @.enable.set.
|
||||
]]
|
||||
}
|
||||
keys {
|
||||
attrib: Evas.Canvas3D.Material_Attrib; [[Material attribute ID.]]
|
||||
|
@ -70,22 +66,18 @@ class @beta Evas.Canvas3D.Material extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property shininess {
|
||||
[[The shininess of the given material.
|
||||
|
||||
Shininess is only used when specular attribute is enabled. Higher shininess
|
||||
value will make the object more shiny.
|
||||
|
||||
Default shininess value is 150.0.
|
||||
|
||||
See also @.enable.set.
|
||||
]]
|
||||
set {
|
||||
[[Set the shininess of the given material.
|
||||
|
||||
Shininess is only used when specular attribute is enabled. Higher shininess
|
||||
value will make the object more shiny.
|
||||
|
||||
Default shininess value is 150.0.
|
||||
|
||||
See also @.enable.set.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the shininess of the given material.
|
||||
|
||||
See also @.shininess.set.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
shininess: Evas.Real; [[Shininess value.]]
|
||||
|
@ -93,19 +85,15 @@ class @beta Evas.Canvas3D.Material extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property texture {
|
||||
[[The texture of the given material.
|
||||
|
||||
You have to enable the desired attribute first.
|
||||
|
||||
See also @.enable.set.
|
||||
]]
|
||||
set {
|
||||
[[Set the texture of the given material.
|
||||
|
||||
You have to enable the desired attribute first.
|
||||
|
||||
See also @.enable.set.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the texture of the given material.
|
||||
|
||||
See also @.texture.set.
|
||||
]]
|
||||
}
|
||||
|
||||
keys {
|
||||
|
|
|
@ -238,57 +238,53 @@ class @beta Evas.Canvas3D.Mesh extends Evas.Canvas3D.Object implements Efl.File,
|
|||
}
|
||||
}
|
||||
@property shader_mode {
|
||||
set {
|
||||
[[Set the shader mode of the given mesh.
|
||||
[[Set the shader mode of the given mesh.
|
||||
|
||||
Default shader mode is EVAS_CANVAS3D_SHADER_MODE_VERTEX_COLOR.
|
||||
]]
|
||||
Default shader mode is EVAS_CANVAS3D_SHADER_MODE_VERTEX_COLOR.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the shader mode of the given mesh.]]
|
||||
}
|
||||
values {
|
||||
mode: Evas.Canvas3D.Shader_Mode; [[The shader mode.]]
|
||||
}
|
||||
}
|
||||
@property color_pick_enable {
|
||||
set {
|
||||
[[Set possibility color picking.]]
|
||||
[[Set possibility color picking.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get status of color picking of the mesh.]]
|
||||
}
|
||||
values {
|
||||
enabled: bool; [[Possibility flag.]]
|
||||
}
|
||||
}
|
||||
@property vertex_count {
|
||||
[[The vertex count of the given mesh.
|
||||
|
||||
Each key frame should have same vertex count to be properly
|
||||
interpolated. Key frames have their own vertex data and the
|
||||
data should have more vertices than the mesh's vertex count.
|
||||
|
||||
Default vertex count is 0.
|
||||
]]
|
||||
set {
|
||||
[[Set the vertex count of the given mesh.
|
||||
|
||||
Each key frame should have same vertex count to be properly
|
||||
interpolated. Key frames have their own vertex data and the
|
||||
data should have more vertices than the mesh's vertex count.
|
||||
|
||||
Default vertex count is 0.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the vertex count of the given mesh.]]
|
||||
}
|
||||
values {
|
||||
count: uint; [[Vertex count.]]
|
||||
}
|
||||
}
|
||||
@property fog_enable {
|
||||
set {
|
||||
[[Enable or disable fog effect for given mesh.
|
||||
[[Enable or disable fog effect for given mesh.
|
||||
|
||||
Default fog is disabled.
|
||||
]]
|
||||
Default fog is disabled.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the enable status of fog effect for given mesh.]]
|
||||
}
|
||||
values {
|
||||
enabled: bool; [[Fog enabled status.]]
|
||||
|
@ -296,11 +292,11 @@ class @beta Evas.Canvas3D.Mesh extends Evas.Canvas3D.Object implements Efl.File,
|
|||
}
|
||||
|
||||
@property alpha_test_enable {
|
||||
set {
|
||||
[[Get the enable status of alpha test for given mesh.
|
||||
[[The enable status of alpha test for given mesh.
|
||||
|
||||
Default alpha test disabled.
|
||||
]]
|
||||
Default alpha test disabled.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the enable status of alpha test for given mesh.]]
|
||||
|
@ -311,19 +307,16 @@ class @beta Evas.Canvas3D.Mesh extends Evas.Canvas3D.Object implements Efl.File,
|
|||
}
|
||||
|
||||
@property alpha_func {
|
||||
set {
|
||||
[[Set the alpha func.
|
||||
[[The alpha function.
|
||||
|
||||
The alpha test discards fragments depending on the outcome of
|
||||
a comparison between an incoming fragment's alpha value and a
|
||||
constant reference value. This func specifies the reference
|
||||
value and the comparison function.
|
||||
]]
|
||||
The alpha test discards fragments depending on the outcome of
|
||||
a comparison between an incoming fragment's alpha value and a
|
||||
constant reference value. This function specifies the reference
|
||||
value and the comparison function.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the reference value and the comparison function for alpha
|
||||
testing.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
comparison_func: Evas.Canvas3D.Comparison; [[The alpha comparison function.]]
|
||||
|
@ -332,11 +325,10 @@ class @beta Evas.Canvas3D.Mesh extends Evas.Canvas3D.Object implements Efl.File,
|
|||
}
|
||||
|
||||
@property blending_enable {
|
||||
set {
|
||||
[[Enable or disable blending for given mesh.]]
|
||||
[[Enable or disable blending for given mesh.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get whether blending is enabled for the mesh.]]
|
||||
}
|
||||
values {
|
||||
blending: bool; [[The blending state.]]
|
||||
|
@ -344,15 +336,14 @@ class @beta Evas.Canvas3D.Mesh extends Evas.Canvas3D.Object implements Efl.File,
|
|||
}
|
||||
|
||||
@property frame_material {
|
||||
set {
|
||||
[[Set the material of the key frame of the given mesh.
|
||||
[[The material of the key frame of the given mesh.
|
||||
|
||||
Setting different materials for each key frame is useful for
|
||||
doing animations like GIF images or color changing animations.
|
||||
]]
|
||||
Setting different materials for each key frame is useful for
|
||||
doing animations like GIF images or color changing animations.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the material of the key frame of the given mesh.]]
|
||||
}
|
||||
keys {
|
||||
frame: int; [[The number of the key frame.]]
|
||||
|
@ -363,32 +354,30 @@ class @beta Evas.Canvas3D.Mesh extends Evas.Canvas3D.Object implements Efl.File,
|
|||
}
|
||||
|
||||
@property vertex_assembly {
|
||||
[[The vertex assembly of the given mesh.
|
||||
|
||||
Vertex assembly defines how the engine organizes vertices into
|
||||
geometric primitives.
|
||||
|
||||
Default vertex assembly is EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES.
|
||||
]]
|
||||
set {
|
||||
[[Set the vertex assembly of the given mesh.
|
||||
|
||||
Vertex assembly defines how the engine organizes vertices into
|
||||
geometric primitives.
|
||||
|
||||
Default vertex assembly is EVAS_CANVAS3D_VERTEX_ASSEMBLY_TRIANGLES.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the vertex assembly of the given mesh.]]
|
||||
}
|
||||
values {
|
||||
assembly: Evas.Canvas3D.Vertex_Assembly; [[The vertex assembly.]]
|
||||
}
|
||||
}
|
||||
@property shadows_edges_filtering {
|
||||
set {
|
||||
[[Set the shadow edges blur parameters.
|
||||
[[The shadow edges blur parameters.
|
||||
|
||||
The averaging values in window is used for blurring.
|
||||
User can set the size of window and num of points in window.
|
||||
]]
|
||||
The averaging values in window is used for blurring.
|
||||
User can set the size of window and num of points in window.
|
||||
]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the shadow edges blur parameters.]]
|
||||
}
|
||||
values {
|
||||
blur_level: int; [[Number of points within a bluring radius.]]
|
||||
|
@ -396,24 +385,20 @@ class @beta Evas.Canvas3D.Mesh extends Evas.Canvas3D.Object implements Efl.File,
|
|||
}
|
||||
}
|
||||
@property shadows_constant_bias {
|
||||
[[The offset shadow toward object.]]
|
||||
set {
|
||||
[[Set offset shadow toward object.]]
|
||||
}
|
||||
get {
|
||||
[[Get offset shadow toward object.]]
|
||||
}
|
||||
values {
|
||||
bias: Evas.Real; [[Offset.]]
|
||||
}
|
||||
}
|
||||
@property lod_boundary {
|
||||
[[The LOD boundary distances.]]
|
||||
set {
|
||||
[[Set LOD boundary distances.]]
|
||||
}
|
||||
get {
|
||||
[[Get LOD boundary distances.
|
||||
|
||||
See also @Evas.Canvas3D.Mesh.lod_boundary.set.]]
|
||||
}
|
||||
values {
|
||||
near_lod: Evas.Real; [[Up boundary]]
|
||||
|
|
|
@ -235,17 +235,14 @@ class @beta Evas.Canvas3D.Node extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property position_inherit {
|
||||
set {
|
||||
[[Set the position inheritance flag of the given node.
|
||||
[[The position inheritance flag of the given node.
|
||||
|
||||
When inheritance is enabled, a node's world space position is determined by
|
||||
adding the parent node's world position and the node's position. Otherwise
|
||||
the node's position will be the world space position.]]
|
||||
When inheritance is enabled, a node's world space position is determined by
|
||||
adding the parent node's world position and the node's position. Otherwise
|
||||
the node's position will be the world space position.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the position inheritance flag of the given node.
|
||||
|
||||
See also @Evas.Canvas3D.Node.position_inherit.set.]]
|
||||
}
|
||||
values {
|
||||
inherit: bool; [[Whether to inherit parent position.]]
|
||||
|
@ -253,18 +250,15 @@ class @beta Evas.Canvas3D.Node extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property orientation_inherit {
|
||||
set {
|
||||
[[Set the orientation inheritance flag of the given node.
|
||||
[[The orientation inheritance flag of the given node.
|
||||
|
||||
When inheritance is enabled, a node's world space orientation is determined
|
||||
by multiplying the parent node's world orientation and the node's
|
||||
orientation. Otherwise the node's orientation will be the world space
|
||||
orientation.]]
|
||||
When inheritance is enabled, a node's world space orientation is determined
|
||||
by multiplying the parent node's world orientation and the node's
|
||||
orientation. Otherwise the node's orientation will be the world space
|
||||
orientation.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the orientation inheritance flag of the given node.
|
||||
|
||||
See also @Evas.Canvas3D.Node.orientation_inherit.set.]]
|
||||
}
|
||||
values {
|
||||
inherit: bool; [[Whether to inherit parent orientation.]]
|
||||
|
@ -272,17 +266,14 @@ class @beta Evas.Canvas3D.Node extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property scale_inherit {
|
||||
set {
|
||||
[[Set the scale inheritance flag of the given node.
|
||||
[[The scale inheritance flag of the given node.
|
||||
|
||||
When inheritance is enabled, a node's world space scale is determined by
|
||||
multiplying the parent node's world scale and the node's scale. Otherwise
|
||||
the node's scale will be the world space scale.]]
|
||||
When inheritance is enabled, a node's world space scale is determined by
|
||||
multiplying the parent node's world scale and the node's scale. Otherwise
|
||||
the node's scale will be the world space scale.]]
|
||||
set {
|
||||
}
|
||||
get {
|
||||
[[Get the scale inheritance flag of the given node.
|
||||
|
||||
See also @Evas.Canvas3D.Node.scale_inherit.set.]]
|
||||
}
|
||||
values {
|
||||
inherit: bool; [[Whether to inherit parent scale.]]
|
||||
|
@ -290,18 +281,15 @@ class @beta Evas.Canvas3D.Node extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property camera {
|
||||
[[A camera attached to the given node.
|
||||
|
||||
If the node is not of type EVAS_CANVAS3D_NODE_TYPE_CAMERA, error message will be
|
||||
generated and nothing happens.
|
||||
|
||||
See also @Evas.Canvas3D.Node.member_add.]]
|
||||
set {
|
||||
[[Set a camera to the given node.
|
||||
|
||||
If the node is not of type EVAS_CANVAS3D_NODE_TYPE_CAMERA, error message will be
|
||||
generated and nothing happens.
|
||||
|
||||
See also @Evas.Canvas3D.Node.member_add.]]
|
||||
}
|
||||
get {
|
||||
[[Get the camera of the given node.
|
||||
|
||||
See also @Evas.Canvas3D.Node.camera.set.]]
|
||||
}
|
||||
values {
|
||||
// FIXME: Evas_Canvas3D_Camera is necessary, but that introduces a cycle
|
||||
|
@ -310,18 +298,15 @@ class @beta Evas.Canvas3D.Node extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property light {
|
||||
[[A light attached to the given node.
|
||||
|
||||
If the node is not of type EVAS_CANVAS3D_NODE_TYPE_LIGHT, error message will be
|
||||
generated and nothing happens.
|
||||
|
||||
See also @Evas.Canvas3D.Node.member_add.]]
|
||||
set {
|
||||
[[Set the light of the given node.
|
||||
|
||||
If the node is not of type EVAS_CANVAS3D_NODE_TYPE_LIGHT, error message will be
|
||||
generated and nothing happens.
|
||||
|
||||
See also @Evas.Canvas3D.Node.member_add.]]
|
||||
}
|
||||
get {
|
||||
[[Get the light of the given node.
|
||||
|
||||
See also @Evas.Canvas3D.Node.light.set.]]
|
||||
}
|
||||
values {
|
||||
light: Evas.Canvas3D.Light; [[The light of the given node if any, or $null if there're none.]]
|
||||
|
@ -329,23 +314,17 @@ class @beta Evas.Canvas3D.Node extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property mesh_frame {
|
||||
[[The animation frame number of the given node for the given mesh.
|
||||
|
||||
If the node is not of type EVAS_CANVAS3D_NODE_TYPE_MESH or the given mesh does not
|
||||
belong to the given mesh error mesh will be generated and nothing happens.
|
||||
|
||||
Default mesh frame is 0.
|
||||
|
||||
See also @Evas.Canvas3D.Node.mesh_add.]]
|
||||
set {
|
||||
[[Set the animation frame number of the given node for the given mesh.
|
||||
|
||||
If the node is not of type EVAS_CANVAS3D_NODE_TYPE_MESH or the given mesh does not
|
||||
belong to the given mesh error mesh will be generated and nothing happens.
|
||||
|
||||
Default mesh frame is 0.
|
||||
|
||||
See also @Evas.Canvas3D.Node.mesh_add.]]
|
||||
}
|
||||
get {
|
||||
[[Set the animation frame number of the given node for the given mesh.
|
||||
|
||||
If the node is not of type EVAS_CANVAS3D_NODE_TYPE_MESH or the given mesh does not
|
||||
belong to the given mesh error mesh will be generated and nothing happens.
|
||||
|
||||
See also @Evas.Canvas3D.Node.mesh_add.]]
|
||||
}
|
||||
keys {
|
||||
mesh: Evas.Canvas3D.Mesh; [[The given mesh.]]
|
||||
|
@ -356,13 +335,10 @@ class @beta Evas.Canvas3D.Node extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property billboard_target {
|
||||
[[Set behavior of node like billboard object.]]
|
||||
set {
|
||||
[[Set behavior of node like billboard object.]]
|
||||
}
|
||||
get {
|
||||
[[Get the target node for billboard object.
|
||||
|
||||
See also @Evas.Canvas3D.Node.billboard_target.set.]]
|
||||
}
|
||||
values {
|
||||
target: Evas.Canvas3D.Node; [[The pointer to target node for billboard object,
|
||||
|
@ -370,13 +346,10 @@ class @beta Evas.Canvas3D.Node extends Evas.Canvas3D.Object
|
|||
}
|
||||
}
|
||||
@property lod_enable {
|
||||
[[Enable behavior of node like LOD object.]]
|
||||
set {
|
||||
[[Enable behavior of node like LOD object.]]
|
||||
}
|
||||
get {
|
||||
[[Get(check) status of node does node is LOD object.
|
||||
|
||||
See also @Evas.Canvas3D.Node.lod_enable.set.]]
|
||||
}
|
||||
values {
|
||||
enable: bool; [[status property (true/false)]]
|
||||
|
|
|
@ -7,126 +7,111 @@ class @beta Evas.Canvas3D.Primitive extends Evas.Canvas3D.Object
|
|||
|
||||
methods {
|
||||
@property form {
|
||||
[[The form of the given primitive.
|
||||
|
||||
Form defines which function will be chosen to set data to mesh
|
||||
on call of evas_canvas3d_mesh_primitive_set.
|
||||
|
||||
Now available next forms of primitives are tabulated primitives (SQUARE and CUBE),
|
||||
solids of revolution (CYLINDER, CONE, SPHERE and TORUS) and surfaces (SURFACE and TERRAIN).
|
||||
|
||||
Default form is EVAS_CANVAS3D_MESH_PRIMITIVE_NONE.]]
|
||||
set {
|
||||
[[Set the form of the given primitive.
|
||||
|
||||
Form defines which function will be chosen to set data to mesh
|
||||
on call of evas_canvas3d_mesh_primitive_set.
|
||||
|
||||
Now available next forms of primitives are tabulated primitives (SQUARE and CUBE),
|
||||
solids of revolution (CYLINDER, CONE, SPHERE and TORUS) and surfaces (SURFACE and TERRAIN).
|
||||
|
||||
Default form is EVAS_CANVAS3D_MESH_PRIMITIVE_NONE.]]
|
||||
}
|
||||
get {
|
||||
[[Get the form of the given primitive.
|
||||
|
||||
See also @.form.set.]]
|
||||
}
|
||||
values {
|
||||
form: Evas.Canvas3D.Mesh_Primitive; [[Form of primitive.]]
|
||||
}
|
||||
}
|
||||
@property mode {
|
||||
[[The mode of the given primitive.
|
||||
|
||||
Mode defines which function will be chosen to set data to mesh
|
||||
on call of evas_canvas3d_mesh_primitive_set. It helps to choose
|
||||
an alternative algorithm for primitives with a given form,
|
||||
such as a cone without a base or sphere textured in alternative way.
|
||||
|
||||
Mods of primitives are now available
|
||||
without base (bases) (supported for cylinder and cone) and
|
||||
with alternative UV (supported by sphere).
|
||||
|
||||
Default form is EVAS_CANVAS3D_PRIMITIVE_MODE_DEFAULT.]]
|
||||
set {
|
||||
[[Set the mode of the given primitive.
|
||||
|
||||
Mode defines which function will be chosen to set data to mesh
|
||||
on call of evas_canvas3d_mesh_primitive_set. It helps to choose
|
||||
an alternative algorithm for primitives with a given form,
|
||||
such as a cone without a base or sphere textured in alternative way.
|
||||
|
||||
Mods of primitives are now available
|
||||
without base (bases) (supported for cylinder and cone) and
|
||||
with alternative UV (supported by sphere).
|
||||
|
||||
Default form is EVAS_CANVAS3D_PRIMITIVE_MODE_DEFAULT.]]
|
||||
}
|
||||
get {
|
||||
[[Get the mode of the given primitive.
|
||||
|
||||
See also @.mode.set.]]
|
||||
}
|
||||
values {
|
||||
mode: Evas.Canvas3D.Primitive_Mode; [[Mode of primitive.]]
|
||||
}
|
||||
}
|
||||
@property ratio {
|
||||
[[The ratio of the given primitive.
|
||||
|
||||
Ratio is used only in torus as the ratio of the
|
||||
major radius and minor radius. For this usage
|
||||
Available values is from 1.0 to infinity.
|
||||
If ratio for torus has a bad value,
|
||||
3.0 will be used as the ratio.
|
||||
|
||||
Default ratio is 3.0.]]
|
||||
set {
|
||||
[[Set the ratio of the given primitive.
|
||||
|
||||
Ratio is used only in torus as the ratio of the
|
||||
major radius and minor radius. For this usage
|
||||
Available values is from 1.0 to infinity.
|
||||
If ratio for torus has a bad value,
|
||||
3.0 will be used as the ratio.
|
||||
|
||||
Default ratio is 3.0.]]
|
||||
}
|
||||
get {
|
||||
[[Get the ratio of the given primitive.
|
||||
|
||||
See also @.ratio.set.]]
|
||||
}
|
||||
values {
|
||||
ratio: Evas.Real; [[Ratio of primitive.]]
|
||||
}
|
||||
}
|
||||
@property precision {
|
||||
[[The precision of the given primitive.
|
||||
|
||||
Precision is used in all non tabulated primitives and defines
|
||||
the precision of created primitives.
|
||||
Available values range from 3 to infinity.
|
||||
If the value is more than 100, you may see a warning
|
||||
about possibility of incorrect values or slow processing.
|
||||
|
||||
Default ratio is 10.]]
|
||||
set {
|
||||
[[Set the precision of the given primitive.
|
||||
|
||||
Precision is used in all non tabulated primitives and defines
|
||||
the precision of created primitives.
|
||||
Available values range from 3 to infinity.
|
||||
If the value is more than 100, you may see a warning
|
||||
about possibility of incorrect values or slow processing.
|
||||
|
||||
Default ratio is 10.]]
|
||||
}
|
||||
get {
|
||||
[[Get the precision of the given primitive.
|
||||
|
||||
See also @.precision.set.]]
|
||||
}
|
||||
values {
|
||||
precision: int; [[Precision of primitive.]]
|
||||
}
|
||||
}
|
||||
@property surface {
|
||||
[[The surface of the given primitive.
|
||||
|
||||
Surface is used only in surface primitives and defines
|
||||
the equation of filling mesh data on call of
|
||||
evas_canvas3d_mesh_primitive_set.
|
||||
|
||||
This allows you to create customers primitives like
|
||||
shell, heart, hyperbolic paraboloid etc. See _shell_func in
|
||||
examples/evas/evas-3d-visual-test.c or _perlin_terrain in
|
||||
modules/evas/primitives/surfaces/terrain.c for usage examples.
|
||||
|
||||
Default surface is $null]]
|
||||
set {
|
||||
[[Set the surface of the given primitive.
|
||||
|
||||
Surface is used only in surface primitives and defines
|
||||
the equation of filling mesh data on call of
|
||||
evas_canvas3d_mesh_primitive_set.
|
||||
|
||||
This allows you to create customers primitives like
|
||||
shell, heart, hyperbolic paraboloid etc. See _shell_func in
|
||||
examples/evas/evas-3d-visual-test.c or _perlin_terrain in
|
||||
modules/evas/primitives/surfaces/terrain.c for usage examples.
|
||||
|
||||
Default surface is $null]]
|
||||
}
|
||||
values {
|
||||
surface: ptr(Evas.Canvas3D.Surface_Func); [[Pointer to customers surface function.]]
|
||||
}
|
||||
}
|
||||
@property tex_scale {
|
||||
[[The texture scale of the given primitive.
|
||||
|
||||
Texture scale uses in all non tabulated primitives
|
||||
and defines scale of texture coordinates or primitives.
|
||||
|
||||
It uses to create periodical textured meshes.
|
||||
|
||||
Default tex_scale is {1.0, 1.0}]]
|
||||
set {
|
||||
[[Set the texture scale of the given primitive.
|
||||
|
||||
Texture scale uses in all non tabulated primitives
|
||||
and defines scale of texture coordinates or primitives.
|
||||
|
||||
It uses to create periodical textured meshes.
|
||||
|
||||
Default tex_scale is {1.0, 1.0}]]
|
||||
}
|
||||
get {
|
||||
[[Get the texture scale of the given primitive.
|
||||
|
||||
See also @.tex_scale.set.]]
|
||||
}
|
||||
values {
|
||||
tex_scale_x: Evas.Real; [[Texture scale X coordinate]]
|
||||
|
|
|
@ -121,11 +121,10 @@ class @beta Evas.Canvas3D.Scene extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property root_node {
|
||||
[[The root node of a scene.]]
|
||||
set {
|
||||
[[Set the root node of a scene.]]
|
||||
}
|
||||
get {
|
||||
[[Get the root node of a scene.]]
|
||||
}
|
||||
values {
|
||||
node: Evas.Canvas3D.Node; [[A node which will be used as a
|
||||
|
@ -134,11 +133,10 @@ class @beta Evas.Canvas3D.Scene extends Evas.Canvas3D.Object
|
|||
}
|
||||
|
||||
@property camera_node {
|
||||
[[The camera node of a scene.]]
|
||||
set {
|
||||
[[Set the camera node of a scene.]]
|
||||
}
|
||||
get {
|
||||
[[Get the camera node of a scene.]]
|
||||
}
|
||||
values {
|
||||
node: Evas.Canvas3D.Node; [[A node which will be used as a
|
||||
|
@ -146,11 +144,10 @@ class @beta Evas.Canvas3D.Scene extends Evas.Canvas3D.Object
|
|||
}
|
||||
}
|
||||
@property shadows_depth {
|
||||
[[Scale and units used to calculate depth values.]]
|
||||
set {
|
||||
[[Set scale and units used to calculate depth values.]]
|
||||
}
|
||||
get {
|
||||
[[Get scale and units used to calculate depth values.]]
|
||||
}
|
||||
values {
|
||||
depth_offset: Evas.Real; [[Scale factor that is used to
|
||||
|
|
|
@ -6,38 +6,34 @@ class @beta Evas.Canvas3D.Texture extends Evas.Canvas3D.Object implements Efl.Fi
|
|||
data : Evas_Canvas3D_Texture_Data;
|
||||
methods {
|
||||
@property source_visible {
|
||||
[[The visibility flag of the source evas object of the given
|
||||
texture.
|
||||
|
||||
Call \@ref evas_object_show on the source object
|
||||
and control the visibility using this function.
|
||||
|
||||
By default the source object is visible.
|
||||
|
||||
See also @.source_set.
|
||||
]]
|
||||
set {
|
||||
[[Set the visibility flag of the source evas object of the given
|
||||
texture.
|
||||
|
||||
Call \@ref evas_object_show on the source object
|
||||
and control the visibility using this function.
|
||||
|
||||
By default the source object is visible.
|
||||
|
||||
See also @.source_set.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get the visibility flag of the source evas object of the given
|
||||
texture.
|
||||
]]
|
||||
}
|
||||
values {
|
||||
visible: bool; [[$true for visible, $false for invisible.]]
|
||||
}
|
||||
}
|
||||
@property atlas_enable {
|
||||
[[Enable flag to generation texture unit with support atlas.
|
||||
|
||||
Use this flag only when you cannot normalize texture coordinates.
|
||||
|
||||
By default it is enabled.
|
||||
]]
|
||||
set {
|
||||
[[Set enable flag to generation texture unit with support atlas.
|
||||
|
||||
Use this flag only when you cannot normalize texture coordinates.
|
||||
|
||||
By default it is enabled.
|
||||
]]
|
||||
}
|
||||
get {
|
||||
[[Get enable flag of generation texture unit with support atlas.]]
|
||||
}
|
||||
values {
|
||||
use_atlas: bool; [[$true for enable, $false for disable.]]
|
||||
|
|
|
@ -225,7 +225,6 @@ _efl_canvas_object_efl_object_constructor(Eo *eo_obj, Evas_Object_Protected_Data
|
|||
obj->events = eina_cow_alloc(evas_object_events_cow);
|
||||
|
||||
evas_object_inject(eo_obj, obj, evas);
|
||||
evas_object_callback_init(eo_obj, obj);
|
||||
|
||||
return eo_obj;
|
||||
|
||||
|
@ -255,6 +254,7 @@ _efl_canvas_object_efl_object_finalize(Eo *eo_obj, Evas_Object_Protected_Data *o
|
|||
e->finalize_objects = eina_list_prepend(e->finalize_objects, eo_obj);
|
||||
|
||||
end:
|
||||
evas_object_callbacks_finalized(eo_obj, obj);
|
||||
return efl_finalize(efl_super(eo_obj, MY_CLASS));
|
||||
}
|
||||
|
||||
|
@ -475,7 +475,6 @@ evas_object_free(Evas_Object_Protected_Data *obj, Eina_Bool clean_layer)
|
|||
if (!obj) return ;
|
||||
eo_obj = obj->object;
|
||||
|
||||
evas_object_callback_shutdown(eo_obj, obj);
|
||||
if (efl_isa(eo_obj, EFL_CANVAS_IMAGE_INTERNAL_CLASS))
|
||||
_evas_object_image_free(eo_obj);
|
||||
evas_object_map_set(eo_obj, NULL);
|
||||
|
@ -2431,6 +2430,73 @@ _efl_canvas_object_coords_inside_get(const Eo *eo_obj EINA_UNUSED, Evas_Object_P
|
|||
return RECTS_INTERSECT(pos.x, pos.y, 1, 1, c.x, c.y, c.w, c.h);
|
||||
}
|
||||
|
||||
EOLIAN static Eina_Bool
|
||||
_efl_canvas_object_efl_object_event_callback_priority_add(Eo *obj, Evas_Object_Protected_Data *pd,
|
||||
const Efl_Event_Description *desc,
|
||||
Efl_Callback_Priority priority,
|
||||
Efl_Event_Cb func,
|
||||
const void *user_data)
|
||||
{
|
||||
Efl_Callback_Array_Item full[2] = {
|
||||
{desc, func},
|
||||
{NULL, NULL}
|
||||
};
|
||||
|
||||
if (efl_event_callback_priority_add(efl_super(obj, MY_CLASS), desc, priority, func, user_data))
|
||||
{
|
||||
evas_object_callbacks_event_catcher_add(obj, pd, full);
|
||||
return EINA_TRUE;
|
||||
}
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
||||
EOLIAN static Eina_Bool
|
||||
_efl_canvas_object_efl_object_event_callback_del(Eo *obj, Evas_Object_Protected_Data *pd,
|
||||
const Efl_Event_Description *desc,
|
||||
Efl_Event_Cb func,
|
||||
const void *user_data)
|
||||
{
|
||||
Efl_Callback_Array_Item full[2] = {
|
||||
{desc, func},
|
||||
{NULL, NULL}
|
||||
};
|
||||
|
||||
if (efl_event_callback_del(efl_super(obj, MY_CLASS), desc, func, user_data))
|
||||
{
|
||||
evas_object_callbacks_event_catcher_del(obj, pd, full);
|
||||
return EINA_TRUE;
|
||||
}
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
||||
EOLIAN static Eina_Bool
|
||||
_efl_canvas_object_efl_object_event_callback_array_priority_add(Eo *obj, Evas_Object_Protected_Data *pd,
|
||||
const Efl_Callback_Array_Item *array,
|
||||
Efl_Callback_Priority priority,
|
||||
const void *user_data)
|
||||
{
|
||||
|
||||
if (efl_event_callback_array_priority_add(efl_super(obj, MY_CLASS), array, priority, user_data))
|
||||
{
|
||||
evas_object_callbacks_event_catcher_add(obj, pd, array);
|
||||
return EINA_TRUE;
|
||||
}
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
||||
EOLIAN static Eina_Bool
|
||||
_efl_canvas_object_efl_object_event_callback_array_del(Eo *obj, Evas_Object_Protected_Data *pd,
|
||||
const Efl_Callback_Array_Item *array,
|
||||
const void *user_data)
|
||||
{
|
||||
if (efl_event_callback_array_del(efl_super(obj, MY_CLASS), array, user_data))
|
||||
{
|
||||
evas_object_callbacks_event_catcher_del(obj, pd, array);
|
||||
return EINA_TRUE;
|
||||
}
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
||||
static void
|
||||
_is_frame_flag_set(Evas_Object_Protected_Data *obj, Eina_Bool is_frame)
|
||||
{
|
||||
|
@ -2699,7 +2765,11 @@ EOAPI EFL_VOID_FUNC_BODYV(efl_canvas_object_type_set, EFL_FUNC_CALL(type), const
|
|||
EFL_OBJECT_OP_FUNC(efl_canvas_object_is_frame_object_set, _efl_canvas_object_is_frame_object_set), \
|
||||
EFL_OBJECT_OP_FUNC(efl_canvas_object_is_frame_object_get, _efl_canvas_object_is_frame_object_get), \
|
||||
EFL_OBJECT_OP_FUNC(efl_canvas_object_legacy_ctor, _efl_canvas_object_legacy_ctor), \
|
||||
EFL_OBJECT_OP_FUNC(efl_canvas_object_type_set, _efl_canvas_object_type_set)
|
||||
EFL_OBJECT_OP_FUNC(efl_canvas_object_type_set, _efl_canvas_object_type_set), \
|
||||
EFL_OBJECT_OP_FUNC(efl_event_callback_priority_add, _efl_canvas_object_efl_object_event_callback_priority_add), \
|
||||
EFL_OBJECT_OP_FUNC(efl_event_callback_array_priority_add, _efl_canvas_object_efl_object_event_callback_array_priority_add), \
|
||||
EFL_OBJECT_OP_FUNC(efl_event_callback_del, _efl_canvas_object_efl_object_event_callback_del), \
|
||||
EFL_OBJECT_OP_FUNC(efl_event_callback_array_del, _efl_canvas_object_efl_object_event_callback_array_del)
|
||||
|
||||
#include "canvas/efl_canvas_object.eo.c"
|
||||
#include "canvas/efl_canvas_object_eo.legacy.c"
|
||||
|
|
|
@ -9802,8 +9802,8 @@ EAPI Eina_Bool evas_textblock_cursor_at_cluster_as_single_glyph(Evas_Textblock_C
|
|||
{
|
||||
Eina_Bool is_single_glyph = EINA_FALSE;
|
||||
size_t ret = _evas_textblock_cursor_cluster_pos_get(cur, forward, &is_single_glyph);
|
||||
|
||||
if ((abs(ret-cur->pos) > 1) && is_single_glyph)
|
||||
size_t distance = (ret > cur->pos) ? ret - cur->pos : cur->pos - ret;
|
||||
if ((distance > 1) && is_single_glyph)
|
||||
{
|
||||
return EINA_TRUE;
|
||||
}
|
||||
|
|
|
@ -1603,8 +1603,10 @@ void evas_object_clip_across_check(Evas_Object *obj, Evas_Object_Protected_Data
|
|||
void evas_object_clip_across_clippees_check(Evas_Object *obj, Evas_Object_Protected_Data *pd);
|
||||
void evas_object_mapped_clip_across_mark(Evas_Object *obj, Evas_Object_Protected_Data *pd);
|
||||
void evas_event_callback_call(Evas *e, Evas_Callback_Type type, void *event_info);
|
||||
void evas_object_callback_init(Efl_Canvas_Object *eo_obj, Evas_Object_Protected_Data *obj);
|
||||
void evas_object_callback_shutdown(Efl_Canvas_Object *eo_obj, Evas_Object_Protected_Data *obj);
|
||||
void evas_object_callbacks_finalized(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj);
|
||||
void evas_object_callbacks_event_catcher_add(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, const Efl_Callback_Array_Item *array);
|
||||
void evas_object_callbacks_event_catcher_del(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, const Efl_Callback_Array_Item *array);
|
||||
|
||||
void evas_object_event_callback_call(Evas_Object *obj, Evas_Object_Protected_Data *pd, Evas_Callback_Type type, void *event_info, int event_id, const Efl_Event_Description *efl_event_desc);
|
||||
Eina_List *evas_event_objects_event_list(Evas *e, Evas_Object *stop, int x, int y);
|
||||
void evas_debug_error(void);
|
||||
|
|
|
@ -144,7 +144,7 @@ struct Dl_info
|
|||
*/
|
||||
EAPI void *dlopen(const char* path, int mode);
|
||||
#ifndef HAVE_DLOPEN
|
||||
#define HAVE_DLOPEN 1
|
||||
# define HAVE_DLOPEN 1
|
||||
#endif
|
||||
/**
|
||||
* @brief Close a dynamic-link library.
|
||||
|
|
|
@ -58,6 +58,8 @@ mmap(void *addr EVIL_UNUSED,
|
|||
DWORD acs = 0;
|
||||
HANDLE handle;
|
||||
void *data;
|
||||
DWORD low;
|
||||
DWORD high;
|
||||
|
||||
/* get protection */
|
||||
protect = _evil_mmap_protection_get(prot);
|
||||
|
@ -89,7 +91,15 @@ mmap(void *addr EVIL_UNUSED,
|
|||
}
|
||||
}
|
||||
|
||||
fm = CreateFileMapping(handle, NULL, protect, 0, 0, NULL);
|
||||
#ifdef _WIN64
|
||||
low = (DWORD)((len >> 32) & 0x00000000ffffffff);
|
||||
low = (DWORD)(len & 0x00000000ffffffff);
|
||||
#else
|
||||
high = 0L;
|
||||
low = len;
|
||||
#endif
|
||||
|
||||
fm = CreateFileMapping(handle, NULL, protect, high, low, NULL);
|
||||
if (!fm)
|
||||
{
|
||||
fprintf(stderr, "[Evil] [mmap] CreateFileMapping failed: %s\n",
|
||||
|
|
|
@ -114,6 +114,10 @@ EAPI void *mmap(void *addr,
|
|||
int fd,
|
||||
off_t offset);
|
||||
|
||||
#ifndef HAVE_MMAP
|
||||
# define HAVE_MMAP 1
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Unmaps a mapped view of a file from the calling process's
|
||||
* address space.
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue