efl/legacy/edje
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
..
data allow setting parameters from embryo! 2010-03-25 20:18:24 +00:00
debian fix debian rules files. 2009-05-26 17:34:53 +00:00
doc * Document mouse event callback system in LUA 2010-03-09 00:55:36 +00:00
m4 binaries can be disabled 2010-01-15 06:10:00 +00:00
src new program action PARAM_COPY, awesome crazy stuff! :-) 2010-03-27 01:26:10 +00:00
utils Fix indentation levels. 2008-09-16 21:11:38 +00:00
.cvsignore Added cvsignore entries: mainly for *.spec files, 2005-12-04 17:16:20 +00:00
AUTHORS * edje: Add filter_state to program. 2010-02-10 15:07:17 +00:00
COPYING fix the copying license to 2009-01-13 13:00:45 +00:00
COPYING-PLAIN in we go edje... no it doesnt do anything useful at the moment... 2003-06-02 23:49:56 +00:00
ChangeLog - Fix warnings 2004-01-15 00:12:19 +00:00
INSTALL remove old pc.in 2008-04-13 12:39:14 +00:00
Makefile.am README.in does not exist 2008-10-26 17:31:14 +00:00
NEWS - Fix warnings 2004-01-15 00:12:19 +00:00
README Fix Ticket #17 on Track ;) 2008-08-05 19:49:28 +00:00
autogen.sh autotools cleanups 2008-10-26 11:55:57 +00:00
configure.ac edje_player gets in. 2010-03-19 16:19:50 +00:00
edje.pc.in * use Requires.private field in edje.pc if pkg-config 0.22 or later is installed. We list in it the required packages needed to compile edje. 2009-10-02 17:21:36 +00:00
edje.spec.in Adjust for ver-pre-svn support 2010-02-21 18:40:56 +00:00
edje.supp added valgrind suppression file for Edje 2004-01-17 23:53:57 +00:00

README

Edje 0.5.0

Requirements:
-------------

Must:
  libc libm eet ecore ecore-evas ecore-job ecore-file embryo evas

A graphical layout and animation library for animated resizable, compressed and
scalable themes.

It's current under development and isn't complete. See src/lib/edje_private.h
for a list of FIXME's to do. Hopefully it will be complete in a few weeks.

Quick start-up guide:

1. You need eet from the HEAD cvs branch (must be up-to-date)

  cvs co e17/libs/eet
  cd e17/libs/eet
  ./autogen.sh
  make
  sudo make install
  cd

2. You need evas from the HEAD branch built with eet loader support.

  cvs co e17/libs/evas
  cd e17/libs/evas
  ./autogen.sh
  make
  sudo make install
  cd
  
3. You need ecore from the HEAD cvs branch

  cvs co e17/libs/ecore
  cd e17/libs/ecore
  ./autogen.sh
  make
  sudo make install
  cd

4. You need embryo from the HEAD cvs branch

  cvs co e17/libs/embryo
  cd e17/libs/embryo
  ./autogen.sh
  make
  sudo make install
  cd

5. You already have Edje. now build it:

   ./autogen.sh
   make
   sudo make install

You now want to go test it out. first you'll need to make an Edje EET file.
   
   cd data
   ./e_logo.sh
   
Now you can view the Edje you just built:
   
   edje ./e_logo.edj
   
You can view multiple files at once with the Edje test program:
   
   edje ./e_logo.edj ./e_logo.edj ./e_logo.edj
   
to view the same one 3 times.
   
You can read the source file that builds the Edje EET file by looking at:

   data/src/e_logo.edc

Another test file is also there:

   data/src/test.edc
   
The test file doesn't build anything useful at the moment.