Commit Graph

116 Commits

Author SHA1 Message Date
Cedric BAIL c712e0fc29 edje: fix leak introduced by VIRTUAL.
SVN revision: 71898
2012-06-10 12:15:02 +00:00
Cedric BAIL b0e087b6bf edje: morning speed of edje. Theme can now be a little bit lighter and faster.
NOTE: VIRTUAL part are almost like rectangle except they don't create any object
on the canvas. This part can't be visible, nor have any color, nor be used as a
clip, nor receive any event.


SVN revision: 71674
2012-06-04 02:57:15 +00:00
Cedric BAIL 6b3d9da609 edje: add automatic hints update to edje object and min: SOURCE to GROUP part.
NOTE: turning this feature on is costly. Do that only when you require it, really !


SVN revision: 69254
2012-03-12 15:28:58 +00:00
Cedric BAIL 21c957e601 edje: forgot to save the information in the file.
SVN revision: 67984
2012-02-15 13:45:56 +00:00
Iván Briano 840d9727e9 Tell the descriptors about our new properties
SVN revision: 67559
2012-01-26 21:26:08 +00:00
Carsten Haitzler 2264bfe0b7 wo... this turned out to be much more of a pain. minmul now works -
allows us to multiple a minimim size explicitly for min size calc so
we can do things like have content slide open/closed properly.



SVN revision: 67197
2012-01-14 02:29:13 +00:00
Prince Kumar Dubey 3cc8139906 From: Prince Kumar Dubey <prince.dubey@samsung.com>
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
2011-11-04 12:18:13 +00:00
Carsten Haitzler f18d4de8d5 add border_scale_by that adds another scaling factor for border
scaling. use it as a way of super-sampling borders (eg use 0.5 to use
2x over-sampling, 0.25 for 4x oversapling etc.)



SVN revision: 63938
2011-10-10 05:53:02 +00:00
Cedric BAIL 686d473591 edje: add collection.group.limits.vertical and collection.group.limits.horizontal.
The goal is to provide an easy way to do the kind of effect you see in that video
around 00:36 : http://www.youtube.com/watch?v=KVoVLHh8CHc.
  At that time it was really difficult to do such thing and required a lot of
embryo code, we designed limit with Billiob to be able to do such kind of things
much more easily.

NOTE: so Billiob, now nothing stop you from releasing amsn2 ! ;-)


SVN revision: 62701
2011-08-22 21:44:49 +00:00
Carsten Haitzler d02f25e1ff whover did table and box support forgot:
1. table to have min.h/v ability like box
2. to ACTUALLY implement box h/v (and well of course implement
tableh/v too)

this basically fixes this working at all and completes the feature to
table too.



SVN revision: 59960
2011-06-04 15:58:02 +00:00
Carsten Haitzler 87ec659bc6 use the ecore pos map call for edje as opposed to do it yourself. this
also opens up new position mappings like factored accel/decel/sin,
divis, bounce and spring! :) documentation provided.



SVN revision: 59449
2011-05-16 13:16:34 +00:00
Cedric BAIL d0810de637 edje: add PROXY part.
example:

collections {
   group {
      name: "main";
      parts {
         part {
            name: "sub1";
            type: GROUP;
            source: "sub1";

            description {
               rel1.relative: 0.5 0.5;
               rel2.relative: 1.0 1.0;
            }
         }

         part {
            name: "pro2";
            type: PROXY;

            description {
               rel1.relative: 0.0 0.5;
               rel2.relative: 0.5 1.0;
               source: "sub1";
               color: 255 0 0 128;

               map {
                  on: 1;
                  smooth: 1;
                  rotation {
                     z: 30;
                  }
               }
            }
         }
      }
   }

   group {
      name: "sub1";
      parts {
         part {
            name: "rect";
            type: RECT;

            description {
               rel1.relative: 0.0 0.0;
               rel2.relative: 0.5 0.5;
               color: 255 0 0 255;

               map {
                  on: 1;
                  smooth: 1;
                  rotation {
                     z: -30;
                  }
               }
            }
         }

         part {
            name: "pro1";
            type: PROXY;

            description {
               rel1.relative: 0.5 0.0;
               rel2.relative: 1.0 0.7;
               color: 128 128 0 128;
               source: rect;
            }
         }
      }
   }
}




SVN revision: 57694
2011-03-11 17:46:29 +00:00
Tom Hacohen 7bf5ba8a7b Edje text: Added size_range to limit the font size range.
This lets you limit the allowed sizes of the TEXT part (font sizes) to
a specific range. This is especially useful in combination with the
"fit" property.

SVN revision: 57395
2011-02-27 18:09:03 +00:00
Tom Hacohen 5e33a75553 Edje: Added mirrored mode. Mirrored mode is used for UI-mirroring. It lets you mirror edje objects automatically (it also sends signals to the .edc code so you can do tweaks if you want), no need to create a special theme just for rtl layouts.
This is controlled by the two added API functions.
The changes in Elementary that utilize these functions will be committed soon.

SVN revision: 56635
2011-02-01 13:26:49 +00:00
Tom Hacohen b34172c91e Edje entry: Added cursor_mode to edje to toggle between UNDER (efl/terminal) and BEFORE (gtk/rest of the world) cursor modes.
SVN revision: 56547
2011-01-30 10:46:33 +00:00
Carsten Haitzler 7c835c0efb aaaah more bad cedric ... eh? :)
SVN revision: 53794
2010-10-23 03:51:12 +00:00
Cedric BAIL 26ba1c03e3 * edje: fix signal comming from aliased part.
I needed to bump minor file format version, but it will only
	change behaviour for people using alias for part and they
	couldn't use the signal emitted by them.


SVN revision: 53305
2010-10-12 13:26:18 +00:00
Lucas De Marchi 3bec660090 Fix common misspellings
Following misspellings were fixed:

ammount->amount
arbitary->arbitrary
begining->beginning
carefull->careful
choosen->chosen
commited->committed
endig->ending
existance->existence
existant->existent
isnt->isn't
occured->occurred
postion->position
rougly->roughly
runing->running
shouldnt->shouldn't
soem->some
succesfully->successfully
succesful->successful
sucessful->successful
tranformed->transformed
usefull->useful
wehn->when
wich->which



SVN revision: 51988
2010-09-08 11:50:05 +00:00
Carsten Haitzler 195960ebac compile in windows again - i think. eapi hackery.
SVN revision: 51638
2010-08-25 10:37:08 +00:00
Cedric BAIL 800b1af09e * edje: add file minor version field.
It will show a warning when loading file that may use feature from
	newer edje (show up with EINA_LOG_LEVEL=2 in the env).

	Please don't forget to increase it when you add feature to edje
	file format without breaking backward compatibility.


SVN revision: 51636
2010-08-25 09:56:20 +00:00
Cedric BAIL 9d4ff894f1 * edje: fix eet change.
SVN revision: 51085
2010-08-13 16:06:50 +00:00
Cedric BAIL 74fe3f6247 * edje: only link edje_convert with eina and eet.
SVN revision: 51051
2010-08-12 16:32:12 +00:00
Cedric BAIL c1436aac91 * edje: fix memory leak.
SVN revision: 51046
2010-08-12 15:05:56 +00:00
Cedric BAIL 2623367732 * edje: fix some memleak issue.
SVN revision: 51033
2010-08-12 12:58:54 +00:00
Carsten Haitzler f0c303a5d7 bork cedric.. bork. accessing internal symbols/apis without exposing
them! you should check over this and probably provide a correct/formal
way to access them. for now EAPI quickly in.



SVN revision: 50945
2010-08-09 22:01:08 +00:00
Cedric BAIL 7d69e96bfe * edje: use mempool for Edje_Part and Edje_Part_Description_*.
SVN revision: 50944
2010-08-09 21:08:08 +00:00
Cedric BAIL 9ecc1354c6 * edje: new file format.
WARNING ! WARNING ! WARNING ! WARNING !
	Old file format is not readable by edje directly. If you have old edje
	file that you want to convert, use edje_convert. Their is no way back.

	Recompile your file as soon as possible. Please report any issue you
	spot as this is a huge and needed change.



SVN revision: 50936
2010-08-09 17:34:03 +00:00
Lucas De Marchi 0a4617ae38 FORMATTING
* Remove vim modelines:
 find . -name '*.[chx]' -exec sed -i '/\/\*$/ {N;N;/ \* vim:ts/d}' \{\} \;
 find . -name '*.[chx]' -exec sed -i '/\/[\*\/] *vim:/d' \{\} \;

* Remove leading blank lines:
 find . -name '*.[cxh]' -exec sed -i '/./,$!d'

If you use vim, use this in your .vimrc:
set ts=8 sw=3 sts=8 expandtab cino=>5n-3f0^-2{2(0W1st0



SVN revision: 50816
2010-08-04 16:57:32 +00:00
Cedric BAIL e773bc9246 * edje: change memory layout that will become the new file format.
NOTE: I tried this change with all the apps and theme I had, but maybe
	i missed some bug. Please report any strange behaviour.


SVN revision: 50641
2010-07-29 12:02:36 +00:00
Cedric BAIL 793c66b5dc * edje: last move of properties in the right structure.
SVN revision: 50284
2010-07-16 16:00:26 +00:00
Cedric BAIL 04ffefa9e5 * edje: move image specific properties to their own structure.
SVN revision: 50282
2010-07-16 14:13:38 +00:00
Cedric BAIL 83bb52f7c9 * edje: attempt to reduce code size by using more macro.
SVN revision: 50281
2010-07-16 13:58:35 +00:00
Cedric BAIL 30d35eb1ba * edje: start to split structure content.
SVN revision: 50279
2010-07-16 11:37:58 +00:00
Cedric BAIL b49c2411bd * edje: when gradient meet dodo. Yes, they are gone !
SVN revision: 50223
2010-07-13 15:47:19 +00:00
Cedric BAIL 9560d51241 * edje: Add alias for part too. This should help designer to
provide the right part name and still use GROUP and BOX.


SVN revision: 50001
2010-07-02 16:56:42 +00:00
Cedric BAIL 4e30cb2411 * edje: move structure from Eina_List to array now that Eet support
them.


SVN revision: 49936
2010-06-29 13:48:03 +00:00
Cedric BAIL e17a4089df * edje: This is the first commit of a rewrite of edje file
internal representation.

	The objectiv is to simplify code, consume less CPU and memory
	without loosing feature. Please report any breakage when you
	see them. It will take a few weeks before we change the file
	layout, during that time the load time may increase.


SVN revision: 49922
2010-06-28 13:56:30 +00:00
Cedric BAIL 83e505b5c6 * edje: Add image set support.
Ease support of Freedesktop multiple size image.

	Sample:
	-------

	images {
		..
	       	set {
			name: "image_name_used";
  			image {
				image: "500x500.png" LOSSY 90;
     				size: 201 201 500 500;
  			}
  			image {
				image: "200x200.png" COMP;
     				size: 51 51 200 200;
  			}
  			image {
				image: "50x50.png" COMP;
     				size: 11 11 50 50;
  			}
  			image {
				image: "10x10.png" COMP;
     				size: 0 0 10 10;
  			}
		}
		..
	}



SVN revision: 49369
2010-06-01 13:31:07 +00:00
Gustavo Sverzut Barbieri 71d603c360 new program action PARAM_COPY, awesome crazy stuff! :-)
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
2010-03-27 01:26:10 +00:00
Cedric BAIL fc20b4541e * edje: Use fixed point for tween too.
SVN revision: 46429
2010-02-24 15:37:16 +00:00
Carsten Haitzler a952803f13 aaaah missing map smooth and alpha flags.
SVN revision: 46383
2010-02-23 05:45:24 +00:00
Carsten Haitzler e89c590b0d add border_scale option for images - image border will scale based on edje
scale factors. this is independant of scale: per part.



SVN revision: 46341
2010-02-21 06:53:44 +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
Carsten Haitzler e2bc27fb44 interp properly and make perspective api work.. untested yet...
SVN revision: 46302
2010-02-19 06:28:03 +00:00
Carsten Haitzler 3c71b10522 add back face cull option.
SVN revision: 46217
2010-02-16 16:36:16 +00:00
Carsten Haitzler bf293931a1 map support in edje - first cut, missing features like back-face culling.
also no dependency tracking etc. etc.



SVN revision: 46216
2010-02-16 16:20:15 +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
Tiago Rezende Campos Falcao 2ab186175e Save font filename in eet. By Masaki
Author:    Thiago Ribeiro Masaki <masaki at profusion.mobi>

SVN revision: 45869
2010-02-04 14:34:06 +00:00
Iván Briano 953835bad8 Add 'api' keyword to parts and programs.
Not used yet, stay tuned.

Patch by Thiago Masaki


SVN revision: 44912
2010-01-05 19:26:18 +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