On Tue, Oct 19, 2010 at 9:25 PM, Carsten Haitzler <ras...@rasterman.com> wrote:
> On Sun, 17 Oct 2010 16:56:09 +0200 Tom Hacohen
> <tom.haco...@partner.samsung.com> said:
>
>> Hey all,
>>
>> A colleague of mine is working on adding UI-Mirroring to EFL. This is
>> behavior often seen on systems that use RTL languages. It essentially
>> means that all of the objects on the screen swap sides.
>>
>> My colleague already wrote the code responsible for the actual mirroring
>> in Edje (with a lot of help from cedric, thanks mate :P) and now only
>> thing left is doing it conditionally, i.e only if the translation
>> indicates it should be, or if the programmer specifically set an object
>> to RTL.
>>
>> We had in mind the following design:
>> Adding two fields to Evas_Object:
>> 1. direction (will probably be inside cur/prev just like size coloring
>> and visibility) - the direction of the object.
>> 2. direction_changing_behavior (or hopefully a better name) - can be
>> either AUTO or MANUAL. Manual means the direction will not change unless
>> set by the user explicitly, and AUTO means it will update according to
>> it's father, i.e it's direction is always like it's father's direction.
>>
>> Drawing the object in LTR/RTL mode is easy, the more difficult part is
>
> well that depends how it's done... :) it may be easy enough - but you may just
> have created design problems (for ui designers). so unknown here. :)
>
>> setting a father's directions (manually) and propagating the changes
>> down to it's children (that will only change if they have AUTO set...).
>> First I planned to recursively go through an object and all of it's
>> children (ones that have AUTO set anyway), but Sachiel said it's
>> impossible, so I moved to plan B, which is using signals.
>>
>> I.e I want to have a signal DIRECTION_CHANGED, and have all the children
>> of each object register to that signal if they have any special handling
>> and they have AUTO set in the direction_changing_behavior (or they have
>> children that might have) - registration and handling will be done in
>> elm/evas/edje by us per object type (i.e image, button or foobar), and
>> not by the users of the API.
>>
>> What do you think of the callback idea? does this sound like a good
>> solution? Any other ideas maybe?
>
> imho all you need is the same as scale. you want a single global RTL or LTR
> (default is LTR) and then per object an api call to set this explicitly. the
> rest would be the job of something like elementary to just set it on 
> everything
> (like it does with scale etc.).

I also considered this, but Tasn enlightened me that this is context
specific and just parts of the interface should be like that. Thus no
canvas/global event.



-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--------------------------------------
MSN: barbi...@gmail.com
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202

------------------------------------------------------------------------------
Download new Adobe(R) Flash(R) Builder(TM) 4
The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly 
Flex(R) Builder(TM)) enable the development of rich applications that run
across multiple browsers and platforms. Download your free trials today!
http://p.sf.net/sfu/adobe-dev2dev
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to