From: Govindaraju S M <govi.sm@samsung.com>
Subject: edje multisense patch for sound sample, tone and haptic play
... This is the beginning of sound (and haptic) support in Edje - it
works, but only at certain basic sample playback levels. more will come.
SVN revision: 64731
Currently, when the part in edc move by transition, it moves from the
one of the states to another of the states even if it is ainimating.
We need it to move from current position, because the animation is not
natural and smooth. So I made the "CURRENT" option.
SVN revision: 64675
Currently, when the part in edc move by transition, it moves from the
one of the states to another of the states even if it is ainimating.
We need it to move from current position, because the animation is not
natural and smooth. So I made the "CURRENT" option.
And I removed the unnecessary tab for indentation.
SVN revision: 64545
elm_entry_autocapital_type_set API is high level API to call ecore_imf_context_autocapital_type_set.
Application programmer can choose the type of autocapitalization such as
WORD, SENTENCE, ALLCHARACTER through this API.
elm_entry_input_panel_enabled_set API is for setting whether input panel
(virtual keyboard) should be appeared when entry has a focus or pressed.
It can be used by dialer or calculator application programmer because those
application prefer to use its keypad NOT virtual keyboard supported by system.
They want to use entry to show the cursor for providing the cursor handling
method but don't want to appear system keyboard.
SVN revision: 64423
Info added includes: cursor position of the action, content related to the
action, and the action that happened (added/removed).
Also fixed tab insertion to delete the current selection.
SVN revision: 63773
Subject: [E-devel] [PATCH] add elm_entry_input_panel_layout_set API
elm_entry_input_panel_layout_set API is high level API to call
ecore_imf_context_input_panel_layout_set (through edje).
This API will be used to set layout of input panel (such as URL, Email,
Number layout...) by application programmer.
Would you please review this patch?
Please let me know if I have to do more.
SVN revision: 62782
Sometimes the options can just be known during runtime, like available
video engines for emotion.
This goes in now as it will avoid further API breaks, so before Edje 1.0
SVN revision: 52874
These are yet-another hint, they are not enforced as documentation
already said, yet they will be useful for tools (ie: editje) to
explain to users if parameter will be set only once, or provides no
getter and such.
This will save future ABI breaks, that's why I want it in 1.0 :-)
SVN revision: 52873
Sometimes you want to catch an action like "clicked" from elm/button
or "mouse,clicked,1" from a regular part and want to set a property
like "play" on some object. In this case there is no source property
to copy, so setting the destination makes sense. This was possible
with Embryo, and now it is with regular "program".
Sample EDC:
{{{
// test.edc, compile with edje_cc and run with edje_player
externals {
external: "elm";
}
collections {
group { name: "main";
parts {
part { name: "bg"; type: RECT;
description { state: "default" 0.0;
color: 255 255 255 255;
}
}
part { name: "button"; type: EXTERNAL;
source: "elm/button";
description { state: "default" 0.0;
rel2.relative: 1.0 0.5;
}
}
part { name: "display"; type: TEXT;
description { state: "default" 0.0;
color: 0 128 0 255;
rel1.relative: 0.0 0.5;
rel2.relative: 0.5 1.0;
text { font: "Sans"; size: 16; }
}
}
part { name: "entry"; type: EXTERNAL;
source: "elm/scrolled_entry";
description { state: "default" 0.0;
rel1.relative: 0.5 0.5;
params.bool: "editable" 0;
}
}
programs {
program {
signal: "clicked";
source: "button";
action: PARAM_SET "display" "text" "hello world!";
}
program {
signal: "clicked";
source: "button";
action: PARAM_SET "entry" "text" "bla!";
}
}
}
}
}
}}}
SVN revision: 47635
Choices are useful to represent enumerations and restricted set of
elements to user. Usually this is displayed in hoversel/comboboxes.
SVN revision: 47570
Edje got a new program action called PARAM_COPY in the form:
action: PARAM_COPY "src_part" "src_param" "dst_part" "dst_param";
This will copy the parameter "src_param" from part "src_part" to
parameter "dst_param" of part "dst_part".
So far so good, why the "crazy" in the first line? Because this also:
* do type conversion!
* set properties of native parts, not just EXTERNAL!
The type conversion allows one to get an integer and display that in a
text property, or get an string and convert into a float.
The set of native parts is quite simple, basically a map of Edje.h
edje_object_part_*_set(). With that one can set the string to be used
by a TEXT, or set drag page/step/size/value! (page/step increments are
not supported at the moment, if it is worth, they may be supported in
future).
Sample EDC:
{{{
// test.edc, compile with edje_cc and run with edje_player
externals {
external: "elm";
}
collections {
group { name: "main";
parts {
part { name: "bg"; type: RECT;
description { state: "default" 0.0;
color: 255 255 255 255;
}
}
part { name: "entry"; type: EXTERNAL;
source: "elm/scrolled_entry";
description { state: "default" 0.0;
rel2.relative: 1.0 0.5;
}
}
part { name: "display"; type: TEXT;
description { state: "default" 0.0;
color: 0 128 0 255;
rel1.relative: 0.0 0.5;
text { font: "Sans"; size: 16; }
}
}
programs {
program {
signal: "changed";
source: "entry";
action: PARAM_COPY "entry" "text" "display" "text";
}
}
}
}
}
}}}
SVN revision: 47500
I'm now introducing a couple of goodies to make externals more useful,
they are:
* add: extra parameter with the part name. This may be used by
external objects to emit signals in the name of that part.
* param_set/param_get: set parameters at runtime, given their names
and types. This avoids requiring users to get the actual object and
call methods. This abstraction is also good because it let one uses
Elementary without even linking to it ;-) (this have limits, like
complex types are not supported). Right now this is just exposed
to C, but goal is to have it exposed in Embryo and Lua as well.
* translate: new method to translate previously strings that are
specified statically, such as the parameters names.
Four new functions got added to the Edje API:
* edje_object_part_external_object_get() so we don't have to abuse
edje_object_part_swallow_get()
* edje_object_part_external_param_set() and
edje_object_part_external_param_get() that call the external type's
functions.
* edje_external_param_type_str() to convert types to string and
provide nicer debugs :-)
TODO:
* expose external_param_set()/external_param_get() to Embryo and Lua.
SVN revision: 47456
More of this can be done, and some may even be too much, but I'm losing
perspective over it and either I'm inclined to move all of them or none
at all.
Reviews, comment, fixes and reverts are welcome.
SVN revision: 45115
- add preview_get() and description_get(), breaking ABI badly.
- add abi_version field to be fileld with EDJE_EXTERNAL_TYPE_ABI_VERSION
and checked with edje_external_type_abi_version_get()
SVN revision: 44135
This is the recommended way to register a batch of types, it will not
do check (hash lookup) before adding and keys are added as "direct"
(not copied), thus lighter on memory.
SVN revision: 44102
Since we are on a freeze, the patch goes on updated to current svn, but without changing its API. After the freeze some things will be added, and some will change :)
SVN revision: 43302
these two new calls will escape the unescaped text if required, will
unescape when get is called.
Also I fixed edje_object_part_text_get() on non-editable TEXTBLOCK,
now it will return the text with markup.
SVN revision: 40066
:)... this allows e etc. to adapt to massivelyt different dpi screens with
slickness that even svg can't get to... why? you scale just what NEEDS
scaling (text, button sizes, and other limiting elements). other bits like
borders, padding etc. can remain pixel-perfect and thus the look is amazing.
pixel-perfect drawing with scalable adapting.
SVN revision: 35895
Some methods do no change object internal state and can be marked as
read only. In parallel have infamous edje_object_part_object_get() to
return a read-only object, so it's even more clear that one should not
touch this object state (either a cast or a compiler warning if you do
that!)
SVN revision: 35485
These can be used to automatically swallow in another group from the same file.
Parts within child groups can be referred to by a ':' separated 'full path' of
part names. Any API functions that take a part name will now accept a full path
also.
Signals emitted by child objects will be repeated up to the parents with the
source changed to be the path relative to the receiving object. E.g in the
example below, a mouse moving over the lower light green rectangle would result
in the parent object recieving a "mouse,move" signal with source "bot:inner".
**** NEW RESTRICTION **** part names should no longer include a ':' character.
This is not yet enforced by edje_cc, but will cause the part to be inaccessible
from the API.
Example EDC:
collections {
group {
name: "parent";
parts {
part {
name: "top";
type: GROUP;
source: "child";
description {
state: "default" 0.0;
rel2.relative: 1 0.5;
}
}
part {
name: "bot";
type: GROUP;
source: "child";
description {
state: "default" 0.0;
rel1.relative: 0 0.5;
}
}
}
}
group {
name: "child";
parts {
part {
name: "base";
type: RECT;
description {
state: "default" 0.0;
color: 160 208 8 255;
}
}
part {
name: "inner";
type: RECT;
description {
state: "default" 0.0;
rel1.offset: 10 10;
rel2.offset: -11 -11;
color: 210 228 76 255;
}
}
}
}
}
SVN revision: 30087
standard structs for messages, and i allow the message queue to fee itsel for
up to 8 iterations before forcing us to rever to normal loop processing
again. this shoudl cover most soignal emit/respond cases in normal usage
without forcing more loop to run and possibly a render.
SVN revision: 10662
2. message queue is in - i am currently not surer if i shoudl go with this
varags api internally ot move to a more manual "build a list" thing... but the
message queue does work - i've moved signals to use it.
SVN revision: 10653
examples in e_logo.edc
errr - the animators may have problems if somehow aan animator is deleted or
object deleteded or file changed while running thru the list...
SVN revision: 9567