Commit Graph

283 Commits

Author SHA1 Message Date
Carsten Haitzler 77a55c3fd8 aaah well... 1. fix segv with edje_match stuff is deep child cleans up
pattersn - ref them.
2. edje lua... beating it into shape. slowly bit by bit.



SVN revision: 47685
2010-04-02 11:05:53 +00:00
Gustavo Sverzut Barbieri cfecbc912b Edje EXTERNAL API break, for good.
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
2010-03-25 18:05:42 +00:00
Cedric BAIL ae586e291e * edje: Only register callback once for external.
SVN revision: 46868
2010-03-04 14:44:20 +00:00
Gustavo Sverzut Barbieri fcb71a4b3b Edje now uses Eina_Bool where it should.
SVN revision: 46646
2010-02-28 15:57:17 +00:00
Cedric BAIL 51de26862a * edje: Add more focus event in edje. A start for a focus layout work.
SVN revision: 46389
2010-02-23 13:39:19 +00:00
Cedric BAIL e4ee012951 * edje: Change filter_state to filter and give the possibility to
filter from another part than the event source.



SVN revision: 46316
2010-02-19 18:30:46 +00:00
Gustavo Sverzut Barbieri 1ad4337878 proper shutdown of entries.
* must disconnect connected callbacks, particularly those to
   canvas. The object we previously connect will die anyway, but
   canvas continues alive, dispatching its
   EVAS_CALLBACK_CANVAS_FOCUS_IN and EVAS_CALLBACK_CANVAS_FOCUS_OUT,
   causing nasty segmentation faults!

 * must call _edje_clean_objects() *AFTER* the entry is shut
   down. Otherwise ed->evas will be NULL and
   evas_event_callback_del_full() will fail. I left extra checks on
   those, since this call will return the given data (in our case
   "ed") and NULL when callback connection was not found.

 * flag existence of entries and if they were already initalized and
   shutdown before, avoid redoing such work.

This fixes a stupid crash that bugged editje for a while now.



SVN revision: 46263
2010-02-17 23:43:31 +00:00
Carsten Haitzler 04ca0cb31e fix freeze/thaw to use less ... cpu.
SVN revision: 46181
2010-02-15 06:40:58 +00:00
Cedric BAIL 397b718cf1 * edje: Add filter_state to program.
Patch from "Tristan <blunderer@gmail.com>".


SVN revision: 46048
2010-02-10 15:07:17 +00:00
Gustavo Lima Chaves 2cca9e9b62 Fixing program addition on edje_edit: data was missing for the globs.
On regressions, please contact me.



SVN revision: 45340
2010-01-19 20:14:14 +00:00
Iván Briano ad2988b7fd Bunch of functions changed to return Eina_Bool.
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
2010-01-14 18:07:24 +00:00
Cedric BAIL 018a9dad66 * edje: Use Eina_Log.
Patch from Mathieu Taillefumier.


SVN revision: 44655
2009-12-22 13:46:00 +00:00
Cedric BAIL b32c9a3eae * edje: Add Fixed Point Math support to Edje.
You can try it by passing --enable-fixed-point to the configure. It
	will produce an ABI/API compatible Edje library that use internally
	Eina_F32p32 instead of double. It will load Eina_F32p32 instead of
	double from eet file (thanks to eet ability to convert them on the
	fly), so edje file are compatible between fixed point and floating
	point version.

	This patch touch almost all internal calc of Edje, I did test it with
	elementary_test, enlightenment and all my test apps, but it could
	certainly break some of your preferred Edje file. If you see any
	unexpected behaviour please report them to me as soon as possible.

	Note: For devs, I put few macros in edje_private.h that should now
	be used when doing calc in Edje, please use them so that Fixed Point
	doesn't break in the futur.


SVN revision: 44323
2009-12-09 15:44:54 +00:00
Iván Briano 521c89df41 dont segv if theres no file
SVN revision: 43958
2009-11-24 21:08:52 +00:00
Iván Briano 9892926bdf Autoload modules for external widgets
Patch by Fabiano Fidencio


SVN revision: 43951
2009-11-24 17:55:11 +00:00
Carsten Haitzler 3b07a3d255 fix segv on obj del - didnt remove callbacks!
SVN revision: 43596
2009-11-09 23:47:42 +00:00
Iván Briano 2ba79e04af Some more stuff in externals, little api change there, may change some more later.
SVN revision: 43379
2009-10-31 18:07:08 +00:00
Iván Briano 22952844c4 and bring external back now that the file was added
SVN revision: 43306
2009-10-27 01:08:19 +00:00
Carsten Haitzler d3fd0c30cb REVERT! broke edje.
try again and dont forget to add edje_external.c! (and any others needing
adding)



SVN revision: 43304
2009-10-27 00:27:50 +00:00
Iván Briano 68756f92b2 External objects support by Brian 'rephorm' Mattern
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
2009-10-26 21:33:56 +00:00
Vincent Torri cbcf159c27 warning--
SVN revision: 43266
2009-10-25 12:17:05 +00:00
Hannes Janetzek e7d76f6392 also remove text class members on object deletion
SVN revision: 42397
2009-09-11 00:48:57 +00:00
Vincent Torri 8b2bd0c079 * remove unused parameters (except in edje_lua.c, as i don't know the current status)
* remove unused variables


SVN revision: 41957
2009-08-24 16:40:42 +00:00
Hanspeter Portner da75132793 From: "Hanspeter Portner" <ventosus@airpost.net>
This concerns Ticket #109: Add Lua support for Edje

It adds Lua as scripting facility to Edje, letting Embryo untouched.
It should be easier to use and be more flexible than Embryo, imho ;-)

---
The patch
---

Lua 5.1 is used in sandboxed mode. Lua byte code is not
platform/architecture independent, Lua code is saved as text in the Edje
container and parsed at load time, therefore.

The patch goes in two directions

1) Analogous to Embryo for scripting logic, messaging and custom states.
The same things are implemented as in Embryo:

    - messaging from and to C
        - manual creation of timers, animators, pollers for custom events /
            animations
                - manual manipulation of Edje parts by means of the public
                    edje_object_part_* and internal functions and custom states
                    
                        -> those routines are actually implemented as Lua
bindings to
    functions in Edje.h and Ecore.h
        -> the implementation is done in an object oriented way, so that the
            interface gives the feel of an object description language, pretty
                similar to EDC itself
                    -> combining custom states and custom animators allows
for fancy
    animations and transitions, e.g circular/spline translations or
        complex/conditional transitions, etc.
            -> this is just the same as Embryo does, but implemented in Lua, so
                nothing new here, actually
                
                2) Dynamic object creation and manipulation
                
                    - this interface stems from the 'script_only' objects in
Edje. Those
    objects are a kind of scriptable Edje counterparts to Evas_Smart
        objects. The infrastructure for Embryo is already there, but has
            never been used
                - I added this in Lua and added some first bindings to
experiment
    with
        - I thought it would be useful to allow for a limited dynamic
            creation of ui parts
                - We can create instances of groups from within the same Edje
                    container and use them just like the main Edje object as
stated in
    1)
        - And there are some stand-alone bindings to dynamically create
            Evas_Image, Evas_Table, Evas_Line, Evas_Polygon as examples
            
                -> this may be useful to decouple the program from the ui
even more,
    to be able to do things that have to be done in the program itself
        atm, but actually belong to the user interface, but need dynamic
            creation of objects or complex interactions
                -> those objects are manipulated manually with Lua bindings
to the
    corresponding edje_object_* and evas_object_* functions
    
    ---
    Discussion points
    ---
    
    Both stuff in 1) & 2) is functioning, but needs testing, feedback,
    improvements, ...
    
    Stuff in 1) can already fully replace Embryo scripting with Lua
    scripting. There still is space for improvements/additions, though.
    
    Of the stuff in 2), I think it may only make sense to add the dynamic
    creation of groups defined in the same Edje container.  Dynamic creation
    of other Evas_Objects makes not much sense, as most of them can already
    be used as Edje parts and be manipulated with custom states (apart from
    polygons and lines) and it would make the whole theming potentially more
    programing-like and much more susceptible for errors, etc.
    
    Would this be useful, or drop it all?
    
    The scripting should be there just for logic, conditionals, custom
    states and animations, not for a whole dynamic canvas, imho.
    
    There is a patch around with EXTERNAL Edje parts. Seems to be a better,
    faster, more secure way to extend Edje with custom objects.
    
    There would be the possibility of precompiling Lua code at compile time
    (edje_cc) for faster loading, but we would have to patch and run our own
    Lua version.
    The Lua parser is pretty fast, though, and using
    byte-converted/endianness-swapped byte-code does only pay off for Lua
    chunks of some kilo lines.
    Byte code also occupies much more space than text in the final Edje
    container, as it includes debug symbols.
    
    ---
    
    Cedric and Vincent told me, that the plan was to replace Embryo totally
    by Lua before the official release of Edje at the end of the year? So it
    would make sense to bring Lua to svn soon and look how it fits in, test,
    debug, adapt it further to the themers needs, decide on its final shape,
    GATHER SOME PEOPLE TO HELP ;-)
    
    ---
    
    The Lua enhanced Edje is in sync with svn and can be get directly here
       git clone git://repo.or.cz/edje_lua.git
          cd edje_lua
             git checkout -b lua_patch origin/lua_patch
             
             or apply the attached patch
             
             There are also some examples to show the usage of the things
mentioned
above
    - showcase.edj: shows usage of custom animators, custom states,
        messaging and the script_only object
            - test.edj: test cases of script usage and bindings (custom states,
                custom transitions, tween_states, animators, timers,
object_parts),
    but most of it are experimental script_only objects
    
    http://didgmo.sourceforge.net/showcase.edj
    http://didgmo.sourceforge.net/test.edj
    
    The source of showcase.edc is attached, too, to just have a glimpse at
    Lua inside of EDC
    
    ---
    
    So, what do you guys think?
    
    Thanks and sry for the looong mail, hehe ;-)



SVN revision: 41802
2009-08-16 02:34:02 +00:00
Cedric BAIL 7df190d264 * edje_calc: Major cleanup.
- Edje_Real_Part use less memory.
		- Edje_Real_Part and Edje_Real_Part_State now use a mempool.
		- When both param1 and param2 are the same, only recalc param1.
		- Don't compute Edje_Real_Part more than one time per edje_recalc_do.



SVN revision: 41771
2009-08-14 17:19:42 +00:00
Cedric BAIL 8170df024a * edje: Oops, fix drag.
SVN revision: 41691
2009-08-11 14:55:26 +00:00
Cedric BAIL b69abd204f * edje: Free the Edje_Real_Part_Drag.
SVN revision: 41686
2009-08-11 13:07:46 +00:00
Cedric BAIL d16bbd3953 * edje: Make Edje_Real_Part_Drag a pointer. Win 100 bytes per states.
SVN revision: 41685
2009-08-11 12:47:00 +00:00
Cedric BAIL 9807d2e4c8 * edje: More cleanup of Edje_Real_Part.
SVN revision: 41683
2009-08-11 10:32:21 +00:00
Cedric BAIL 7047c5f561 * edje: Cleanup drag part of Edje_Real_Part.
SVN revision: 41682
2009-08-11 10:17:14 +00:00
Cedric BAIL b6a228e3eb * edje_load: More cleanup.
SVN revision: 41680
2009-08-11 10:06:37 +00:00
Cedric BAIL 922939d832 * edje: Some cleanup, mainly removing dead code.
SVN revision: 41679
2009-08-11 09:45:06 +00:00
Cedric BAIL 7f9a41a824 * edje: Add a cache for _edje_part_recalc_single.
WARNING: THIS CAN CAUSE RENDERING GLITCH AND OTHER WEIRD BEHAVIOUR WITH
	YOUR EDJE FILE. PLEASE REPORT ANY ALIEN STUFF.

	Note: This patch cache the result of _edje_part_recalc_single, until
	any relative part are moved, the object is resized or some property
	are changed (like during text set or color class set).

	Note: Be carefull when you call edje_object_size_min_restricted_calc,
	it's really an inderect heavy user of _edje_part_recalc_single and
	I wasn't able to bring it down.

	Note: This patch use more RAM, around 480 bytes per Edje state, so I
	don't recommand using it on a Desktop with a lot of CPU power.


SVN revision: 41663
2009-08-10 15:16:51 +00:00
Carsten Haitzler 02fef22de9 move adding of events if entry only if entry part exists.
SVN revision: 41103
2009-06-18 14:01:26 +00:00
Andreas Volz a5af5b19d7 updated docu
SVN revision: 40808
2009-05-24 08:24:32 +00:00
Gustavo Sverzut Barbieri b1f00aa9d5 edjeL convert error code to string.
SVN revision: 38268
2008-12-21 18:39:36 +00:00
Iván Briano 7f3dfc66f2 And finally, edje table goes in
SVN revision: 38204
2008-12-18 02:43:20 +00:00
Cedric BAIL e33474c92f Move to eina_hash. Nothing should break, but if you experience any unexpected behaviour
please ping me on #edevelop.



SVN revision: 38183
2008-12-17 14:26:47 +00:00
Sebastian Dransfeld 4615291cc2 evas_hash -> eina_hash
SVN revision: 38157
2008-12-15 21:00:19 +00:00
Cedric BAIL 2c668d6747 The for loop inside _edje_file_del is accessing Edje_Real_Part that could be
destroyed by _edje_cache_coll_unref. So moving the call to _edje_cache_coll_unref
after the last use of Edje_Real_Part should be better.


SVN revision: 38020
2008-12-08 14:23:26 +00:00
Gustavo Sverzut Barbieri 2f8f874b20 Shut up a bunch of warnings and fix some real errors.
SVN revision: 37954
2008-12-06 03:08:17 +00:00
Carsten Haitzler 90d3729897 bad edje! leak! fix fix!
SVN revision: 37840
2008-11-28 13:54:21 +00:00
Iván Briano 0ee4d07727 Edje Box in. Have fun with it.
SVN revision: 37783
2008-11-24 05:15:15 +00:00
Carsten Haitzler ba0bf9010f and actually force styles to be assigned early.
SVN revision: 37695
2008-11-18 01:46:56 +00:00
Carsten Haitzler 38f06f34e8 track subobjs (used by entry only for now) and emit signals to them too
SVN revision: 37688
2008-11-17 05:54:01 +00:00
Sebastian Dransfeld b2fa64de52 Formatting
SVN revision: 37626
2008-11-14 17:35:05 +00:00
Cedric BAIL 25f4acee01 This is a quick fix for edje match memory consuption. It is not the best
solution, but the fastest to implement without breaking edje file format.

So now, when a callback or a program don't use globbing charactere (*, ?,
[] and \), the match are put in a little rbtree instead of the big automate
matrix.

This patch could potentially break edje user, if you experience anything
strange with your edje file, please report.



SVN revision: 37577
2008-11-10 16:37:52 +00:00
Vincent Torri 0d8b00fdeb * move standard header files to source files
* remove gendoc


SVN revision: 37158
2008-10-26 17:18:19 +00:00
Cedric BAIL fa66dbf40a Remove Evas list from Edje and use Eina instead.
SVN revision: 36961
2008-10-22 11:34:42 +00:00
Cedric BAIL b489e1936b Switch evas_stringshare to eina_stringshare.
SVN revision: 36672
2008-10-15 14:11:11 +00:00
Carsten Haitzler ce0d40cae7 editable textblocks... a start (definitely not there yet)
SVN revision: 36611
2008-10-13 09:19:04 +00:00
Cedric BAIL 060f30aa6e Make EDJE_PROGRAM_CACHE configurable with autotools (with small fix for make it run again).
SVN revision: 35942
2008-09-11 11:14:39 +00:00
Cedric BAIL dec2f04734 Actually call eet_init/eet_shutdown and fix another potential memory leak.
SVN revision: 35615
2008-08-22 14:32:25 +00:00
Gustavo Sverzut Barbieri d428d6ec1d Add some consts to Edje's API.
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
2008-08-14 18:21:27 +00:00
Gustavo Sverzut Barbieri a85c8a5f2b Fix name incoherency: rename Edje->part to group.
It is very confusing to have "part" there and in the methods call,
because we want the group name, not part.


SVN revision: 35483
2008-08-14 18:04:43 +00:00
Carsten Haitzler e84a969a69 fix string len problem
SVN revision: 35305
2008-08-02 01:33:39 +00:00
doursse c5623c01b3 reorganize header files inclusion. Fix some problems when compiling on Windows
SVN revision: 34768
2008-06-07 10:06:14 +00:00
Carsten Haitzler 1c7b215135 printf--
SVN revision: 34702
2008-05-30 14:27:56 +00:00
Carsten Haitzler 15cd1238db start some serious work on script_only edje objects - for efficiency sake i'm
having an almost parallel codepath for script_only objects - they dont get to
use the older edje api calls for part defined objects. they will have a new
set of calls specifically for them. it's partly done - very little available
now, but will expand. lots of fixme's.


SVN revision: 34699
2008-05-30 11:20:49 +00:00
Carsten Haitzler 0e4c0eb8ec cedric small speedups patches for edje back in - minus the ones that break
things. (0004).


SVN revision: 34234
2008-04-10 08:58:19 +00:00
Carsten Haitzler ff6fb2e3bf actually. these patches broke illume! aaak! revert.!
SVN revision: 34180
2008-04-03 19:27:53 +00:00
Carsten Haitzler 48deca9592 1. cedrics patches for speedups. they breka nothing.
2. fix mouse in/out and other event flags stuff again.


SVN revision: 34174
2008-04-03 18:18:36 +00:00
doursse 8e386e3f73 remove trailing spaces
SVN revision: 34101
2008-03-24 08:22:01 +00:00
Carsten Haitzler b65d63440f add cedrics dict check patch
SVN revision: 33946
2008-03-06 17:52:59 +00:00
Carsten Haitzler 8a3e188813 leak--
SVN revision: 33893
2008-03-02 02:47:36 +00:00
Carsten Haitzler 7564343804 fix segv - cant access file after its been freed...
SVN revision: 33892
2008-03-02 02:34:23 +00:00
Carsten Haitzler e076a78519 cedric's eet and edje patches to use eet dictionaries for strings.
SVN revision: 33873
2008-03-01 06:38:09 +00:00
Gustavo Sverzut Barbieri 9abfa8f70a Cleanup of last patches and revert my patching mistakes.
Last 2 patches were swapped, I applied them in the wrong order and
missed the rejections, my bad.

I fixed it and also did some cleanup, looks better now.


SVN revision: 33855
2008-02-26 20:12:00 +00:00
Gustavo Sverzut Barbieri c48465c86a Fix a memory leak on edje destruction.
Patch by Cedric BAIL.


SVN revision: 33854
2008-02-26 19:06:33 +00:00
Gustavo Sverzut Barbieri 30b26c0937 Cleanup for possible memory leak.
Patch by Cedric BAIL.


SVN revision: 33853
2008-02-26 18:41:44 +00:00
Christopher Michael a77a6eb18c Fix evas_hash_foreach functions for recent evas changes.
Fix some formatting issues.


SVN revision: 33809
2008-02-22 10:42:50 +00:00
Gustavo Sverzut Barbieri 435dfe2a2a Reduce memory allocation for edje match.
Just allocate and build the match automate for callbacks and programs
only when required. On load for programs and when callbacks list has
been updated.

Patch by Cedric BAIL. (with minor fixes to use TABS where context was using)


SVN revision: 33804
2008-02-21 18:48:36 +00:00
Carsten Haitzler fff9c738a2 did some tests - this seems to be faster and seems to match correctly in some
test cases i brewed up. doesnt seem to break e so far and thats a fairly
comprehensive test.


SVN revision: 33515
2008-01-18 06:34:04 +00:00
Gustavo Sverzut Barbieri f068851044 Fix deletion of Edje with child "GROUP".
SVN revision: 31690
2007-09-12 17:42:21 +00:00
doursse 974152be16 remove trailingspaces
SVN revision: 31657
2007-09-08 18:31:56 +00:00
Gustavo Sverzut Barbieri eda1f13b33 Support for selectable pointer_mode.
Evas now support objects that do not grab mouse down event (NOGRAB) aside
with the default (AUTOGRAB). API is meant to be extensible.


SVN revision: 30950
2007-07-24 14:20:07 +00:00
Carsten Haitzler d6f9cc797e adrunko's precise event patch
SVN revision: 30939
2007-07-23 14:22:57 +00:00
rephorm 9c9b53bf7c yikes
SVN revision: 30782
2007-07-12 21:30:36 +00:00
rephorm d4a055585b Add GROUP Parts to edje.
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
2007-05-27 05:28:07 +00:00
rephorm e954849ee1 Remove part list, using table everywhere instead
SVN revision: 30085
2007-05-26 23:57:21 +00:00
rephorm 8a17d1986e only clear and re-apply gradients when the spectrum actually changes
SVN revision: 30065
2007-05-24 04:34:41 +00:00
rephorm 9bb90d5319 expand a few docs
SVN revision: 29521
2007-04-15 03:19:35 +00:00
moom 4c75d05f16 * Correctly unswallow a swallowed-object when an Edje-object is deleted.
Otherwise, they may be a segv when you call edje_extern_object_*() on a
previously-swallowed object.


SVN revision: 29373
2007-04-05 12:49:48 +00:00
Carsten Haitzler a9daf7dd89 cedric's patches.
SVN revision: 29353
2007-04-04 13:25:55 +00:00
Carsten Haitzler e0b17ee4ee 1. removed mosue_events 0 on swallows - as this now changes behavior. normalise
2. gustavo's patch.


SVN revision: 29352
2007-04-04 12:51:51 +00:00
tilman fd9cf44c7e remove an unused variable
SVN revision: 29278
2007-03-31 10:32:48 +00:00
rephorm a53b9b58ff if you set a file on an edje object that already has swallows, they will now be tracked and re-swallowed
SVN revision: 28774
2007-03-16 21:37:57 +00:00
ningerso 40f2626800 Use a hash for faster file global data lookup. If we hit a case where
per-object data lookup is slow, then this should be extended to include that.


SVN revision: 28591
2007-03-06 12:03:34 +00:00
Carsten Haitzler 18b973d1ac 1. fixed some inefficient edje loading - moved checks to the cache code where
it sould be
2. fixed edje handling of delete of objects so we don't lose clip info if we
move a swallowed object out
3. fix up norender stuff for evas a bit
4. pants.

5. coogee beach (sydney) in summer right now is beatiful - KICK ASS!


SVN revision: 28102
2007-01-22 12:44:57 +00:00
Carsten Haitzler 97b30a286e leaking spectrum colors man! :)
SVN revision: 26447
2006-10-09 15:00:45 +00:00
sebastid 7dd79ae17b Remove unused variable.
Return int, not pointer


SVN revision: 25519
2006-09-06 07:11:03 +00:00
rephorm d01355b139 convenience function for testing if groups are in an edje
SVN revision: 25327
2006-09-02 05:10:17 +00:00
Carsten Haitzler 29a186fb48 fix segv
SVN revision: 25158
2006-08-27 12:38:09 +00:00
sebastid ad4e90eafd If the list node is known, use evas_list_remove_list
SVN revision: 24467
2006-08-08 09:53:51 +00:00
rephorm 19ca0b0721 ... more whistling
SVN revision: 24386
2006-08-04 09:00:35 +00:00
rephorm 7def98b41e nothing to see here... *whistling*
SVN revision: 24384
2006-08-04 08:40:03 +00:00
rephorm 8cda88c2e6 Add initial support for edje gradients. See data/src/gradient.edc for an example.
SVN revision: 24361
2006-08-02 10:52:44 +00:00
Carsten Haitzler 2f82204b7b revert cedrics patch for font stuff - it breaks textblocks
SVN revision: 23681
2006-07-03 06:15:05 +00:00
Carsten Haitzler 334eb3a389 cedrics font hash lookup speedup :)
SVN revision: 23644
2006-07-02 06:18:18 +00:00
Stafford Mitchell Horne 39c1195176 Add ability for text blocks to use text classes
* Classes are defined at the tag level
 * Tags whithout classes inherit the parent class
 * text class defined by putting text_class=<class name> in tag style


SVN revision: 21518
2006-03-28 07:45:54 +00:00
stffrdhrn 46a61a67b7 Edje bug fixes:
* Add some comments
 * Fixup some const char */stringshare related compile warnings
 * Fix text classes


SVN revision: 21392
2006-03-19 04:22:35 +00:00
rephorm 702c78bb82 color class blocks in edje.
this allows you to specify the default color for any parts using color_classes in a given file.

this color will be overridden by edje_color_class_set()
which will in turn be overridden by edje_object_color_class_set()

note. if you specify a color (color: ...) in a part description that also has a color_class, the cc will be multiplied against the color -- generally not what you want.

also, as a tip, the gimp's 'multiply' blend mode is almost exactly the same as evas/edje's coloring.


example:

...
part {
  name: "colored";
  type: RECT;
  description {
    state: "default" 0.0;
    color_class: "bg_color";
    /* note: no color: set here */
  }
}
...
color_classes {
  color_class {
    name: "bg_color";
    color: 229 239 255 255;
  }
}


SVN revision: 19708
2006-01-11 03:19:46 +00:00
sebastid 002bc72042 Fix EAPI warnings.
SVN revision: 19595
2006-01-07 08:54:30 +00:00
Carsten Haitzler bd0c83af10 make more use of stringshare and eet alloc methods
SVN revision: 18732
2005-11-30 15:36:34 +00:00
Carsten Haitzler 430b2a1901 use stringshare! :)
SVN revision: 18728
2005-11-30 09:56:15 +00:00
Carsten Haitzler e5856869df no need to alloc path and part strings if its cached and thus shared
anyway... so detect and re-cycle :)


SVN revision: 18677
2005-11-28 09:54:06 +00:00
Carsten Haitzler 3a6be732b9 clean up some null string stuff
SVN revision: 18620
2005-11-23 14:00:39 +00:00
Carsten Haitzler bcab625b79 fix det leeek
SVN revision: 18209
2005-11-02 08:13:56 +00:00
Carsten Haitzler 3b20105112 minor leak--
SVN revision: 18142
2005-10-30 09:06:45 +00:00
Carsten Haitzler 83f010591d no more old textblock - gone. completely. tb2 renamed (as threatened) to
textblock. updated edje and e17.


SVN revision: 18054
2005-10-28 02:56:27 +00:00
stffrdhrn c45a3f58b5 - If its not really edj, or if its corrupt dont crash
- Collect the error message now. should we just check for NULL when setting?


SVN revision: 17777
2005-10-23 00:15:45 +00:00
rbdpngn ccc8f7236f Set load errors in more cases.
SVN revision: 17617
2005-10-16 20:36:20 +00:00
Carsten Haitzler 503de08b68 code3 clean - move code to special files and maybe fix a bug?
SVN revision: 17187
2005-10-05 08:38:04 +00:00
Carsten Haitzler 4cc2291251 god man that was a bad typo!
SVN revision: 16784
2005-09-20 09:20:57 +00:00
Carsten Haitzler 4f71e046bf printf--
SVN revision: 16742
2005-09-18 05:24:57 +00:00
Carsten Haitzler 9fd23d550d handle embedded fotns for textblocks
SVN revision: 16741
2005-09-18 04:56:06 +00:00
Carsten Haitzler 3ac48d63ae and edje started supporting.... TEXTBLOCK2!!!!!
see e_logo.edc for an example. :)


SVN revision: 16698
2005-09-12 09:43:49 +00:00
Carsten Haitzler 24e1406536 pavel's patch. :)
SVN revision: 15905
2005-07-26 13:59:03 +00:00
Carsten Haitzler 526a8099fa fix potential bugs in msg queu processing
SVN revision: 14933
2005-05-25 08:07:34 +00:00
tsauerbeck bae19f7bea the evas_hash_foreach callback is supposed to return a value ;)
SVN revision: 14930
2005-05-24 17:02:00 +00:00
Carsten Haitzler 43716e4698 let programmers know they are NORTY!
SVN revision: 14929
2005-05-24 05:42:36 +00:00
Carsten Haitzler 901dc350fd fix segv
SVN revision: 14927
2005-05-24 04:25:38 +00:00
tsauerbeck cfd247aac1 made edje_file_collection_list() check its argument before trying to do anything with it
SVN revision: 14923
2005-05-23 17:48:53 +00:00
tsauerbeck bd62aadc6e fix a silly bug that caused a memleak (i think)
SVN revision: 14922
2005-05-23 17:29:43 +00:00
Carsten Haitzler 396a16f47c commented out debug
SVN revision: 14921
2005-05-23 07:06:20 +00:00
tsauerbeck 2facd89808 removed unused function
SVN revision: 14407
2005-04-27 13:53:42 +00:00
Carsten Haitzler 1e8b4c5f34 fix some leaks
SVN revision: 14400
2005-04-27 08:11:58 +00:00
Carsten Haitzler c3d08acb8b file and collection cache - this should remove a lot of file io... :)
SVN revision: 14081
2005-04-03 11:43:00 +00:00
tsauerbeck ad5e015627 the default extension for Edje EET files is 'edj' now
SVN revision: 13855
2005-03-22 19:29:06 +00:00
tsauerbeck a4449501a3 fixed a memory leak that was introduced with the recent decompiler changes
SVN revision: 13827
2005-03-21 12:12:51 +00:00
Carsten Haitzler 878bd6d9f4 deferred message bug. fixeed.
SVN revision: 12335
2004-12-02 09:21:22 +00:00
Carsten Haitzler 9b2339df48 fix initial dragable values
SVN revision: 12229
2004-11-20 04:43:37 +00:00
tsauerbeck 53596e93c3 added basic support for custom state magic. only description.align can be changed at runtime so far.
SVN revision: 12065
2004-10-29 17:56:12 +00:00
Carsten Haitzler 3d49466146 and on file set - live in the RIGHT layer
SVN revision: 11921
2004-10-20 06:25:43 +00:00
Carsten Haitzler 44984e65a3 allow text source and text style sources to be specified.. this lets multiple
text parts "shadow" a controlling/parent text part. this allows multiple
window titles for example even tho the app only sets 1 title part. this
allows for interesting text effects with mutliepl text parts animating
differently... or you cna use invivlbe text parts ad "proxies" for
calculating sizes of stuff... :)


SVN revision: 11851
2004-10-13 03:43:42 +00:00
rephorm cbbc9f38fc Check if descriptors exist (i.e. if edje_init() was run) before trying to use them.
SVN revision: 11596
2004-09-09 21:55:32 +00:00
Carsten Haitzler f8aaef0cf7 oops - if the edje ONLy has a swallow part.. bad things (tm) happen :)
SVN revision: 11515
2004-09-04 09:45:59 +00:00
rephorm 0cccbd1d40 Add a Font_Directory to Edje_File
Check fonts against directory entries.


SVN revision: 11438
2004-08-30 05:39:24 +00:00
Carsten Haitzler 001bc61602 more comments
SVN revision: 10821
2004-07-14 09:59:29 +00:00
Carsten Haitzler 5b506efe2c 1. fix a leak. i was naughty. spank spank
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
2004-07-01 03:46:05 +00:00
Carsten Haitzler 9fb09cae7a edje arlo patches
SVN revision: 10443
2004-06-06 04:42:17 +00:00
Carsten Haitzler a778585887 clean up callbacks and smart stuff too
SVN revision: 10268
2004-05-18 06:06:57 +00:00
Carsten Haitzler 709fa0ba1f hmm - dont delete swallowed child objects... too much implicit stuff..
SVN revision: 10265
2004-05-18 04:21:22 +00:00
Carsten Haitzler 40f9fc4f31 faster lookups for programs & parts - saves a lot of list walking
SVN revision: 9552
2004-04-01 15:32:17 +00:00
Carsten Haitzler 7bd60e9cb0 busy adding some MEAT to edje's embryo script support. just added
"persistent" variables - ie tied to each instance of an edje object and you
can save/load via get_int() set_int() get_float() set_float(), get_str(),
get_strlen() and set_str(). the values are fetched/stored wherever you do
these calls. you need a public variable declaration to indicate you want to
use a global var, and use this variable handle as the variable index - edje
will init it for you.

e_logo.edc has some examples...
:)

this solves being able to keep state like if a check button is enabled or
disabled etc. etc. etc.
then i guess its onto the rest of the calls...


SVN revision: 9526
2004-03-30 10:30:35 +00:00
Carsten Haitzler 59a6f2c4b0 embryo support... started. :)
SVN revision: 9487
2004-03-26 09:10:05 +00:00
Carsten Haitzler e069710f42 init drag step on load
freeze/thaw imbalance! fix. :(


SVN revision: 9365
2004-03-16 08:38:51 +00:00
Carsten Haitzler 92b6f79c2e fixed a leak... patches from trill... need to go thru my mail....
SVN revision: 9281
2004-03-08 02:43:48 +00:00
Carsten Haitzler a9cfdc0688 support for inlining ttf's in edje's so you can ship your fonts along too! :)
SVN revision: 8624
2004-01-23 02:13:42 +00:00
Carsten Haitzler 19fdd7fbe7 thanks tillsan! :) leak found. leak fixed. happy pants!
SVN revision: 8351
2004-01-12 02:13:11 +00:00