forked from enlightenment/efl
fix typos in edje docs patch from martin :)
SVN revision: 16821
This commit is contained in:
parent
dff4dba310
commit
a4fc9aa9ba
|
@ -48,29 +48,29 @@ Quick start-up guide:
|
|||
sudo make install
|
||||
cd
|
||||
|
||||
5. You need imlib2 installed. any reelease from 1.0.0 on will do.
|
||||
6. You already have edje. now build it:
|
||||
5. You need imlib2 installed. any release from 1.0.0 on will do.
|
||||
6. 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.
|
||||
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:
|
||||
Now you can view the Edje you just built:
|
||||
|
||||
edje ./e_logo.edj
|
||||
|
||||
You can view multilpe files at once with the edje test program:
|
||||
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 fuile that builds the edje EET file by looking at:
|
||||
You can read the source file that builds the Edje EET file by looking at:
|
||||
|
||||
data/src/e_logo.edc
|
||||
|
||||
|
|
|
@ -28,11 +28,11 @@ Edje is a complex graphical design & layout library.
|
|||
|
||||
It's purpose is to be a sequel to "Ebits" which to date has serviced the
|
||||
needs of Enlightenment development for version 0.17. The original design
|
||||
paramteres under which Ebits came about were a lot more restricted than the
|
||||
resulting use of them, thus Edje was born.
|
||||
parameters under which Ebits came about were a lot more restricted than
|
||||
the resulting use of them, thus Edje was born.
|
||||
|
||||
Edje is a more complex layout engine compared to Ebits. It doesn't pretend to
|
||||
do containering and regular layout like a widget set. It still inherits the
|
||||
do containing and regular layout like a widget set. It still inherits the
|
||||
more simplistic layout ideas behind Ebits, but it now does them a lot more
|
||||
cleanly, allowing for easy expansion, and the ability to cover much more
|
||||
ground than Ebits ever could. For the purposes of Enlightenment 0.17, Edje
|
||||
|
@ -41,26 +41,26 @@ windows, scrollbars, etc.) and allow the designer the ability to animate,
|
|||
layout and control the look and feel of any program using Edje as its basic
|
||||
GUI constructor. This library allows for multiple collections of Layouts in
|
||||
one file, sharing the same image database and thus allowing a whole theme to
|
||||
be conveneintly packaged into 1 file and shipped around.
|
||||
be conveniently packaged into 1 file and shipped around.
|
||||
|
||||
Edje, unlike Ebits, separates the layout and behavior logic. Edje files ship
|
||||
with an image database, used by all the parts in all the collections to
|
||||
source graphical data. It has a directory of logical part names pointing to
|
||||
the part collection entry ID in the file (thus allowing for multiple logical
|
||||
names to point to the same part collection, allowing for the sharing of data
|
||||
betwene display elements). Each part collection consists of a list of visual
|
||||
between display elements). Each part collection consists of a list of visual
|
||||
parts, as well as a list of programs. A program is a conditionally run
|
||||
program that if a particular event occurs (a button is pressed, a mouse enters
|
||||
or leaves a part) will trigger an action that may affect other parts. In this
|
||||
way a part collection can be "programmed" via its file as to hilight buttons
|
||||
when the mouse passes over them or show hidden parts when a button is clicked
|
||||
somewhere etc. The actions performed in changing from one state to another ar
|
||||
somewhere etc. The actions performed in changing from one state to another are
|
||||
also allowed to transition over a period of time, allowing animation.
|
||||
|
||||
This separation and simplistic event driven style of programming can produce
|
||||
almost any look and feel one could want for basic visual elements. Anything
|
||||
more complex is likely the domain of an application or widget set that may
|
||||
use Edje as a conveneient way of being able to configure parts of the display.
|
||||
use Edje as a convenient way of being able to configure parts of the display.
|
||||
|
||||
|
||||
|
||||
|
@ -73,18 +73,18 @@ use Edje as a conveneient way of being able to configure parts of the display.
|
|||
|
||||
@section requirements What does Edje require?
|
||||
|
||||
Edje requires fairly little on your system. to use the edje runtime library
|
||||
Edje requires fairly little on your system. to use the Edje runtime library
|
||||
you need:
|
||||
|
||||
- Evas (library)
|
||||
- Ecore (library)
|
||||
- Eet (library)
|
||||
|
||||
To fully build Edje and run the edje builder (edje_cc) you also need:
|
||||
To fully build Edje and run the Edje builder (edje_cc) you also need:
|
||||
|
||||
- Imlib2 (library)
|
||||
|
||||
Evas needs to be build with the PNG and EET image loades enabled at a
|
||||
Evas needs to be build with the PNG and EET image loaders enabled at a
|
||||
minimum. Edje uses X for the test program, so you will need the SOFTWARE_X11
|
||||
engine built into Evas as well. A suggested configure list is below in the
|
||||
"cheat sheet" for Evas.
|
||||
|
@ -97,13 +97,13 @@ Eet has no options so just build and install it.
|
|||
|
||||
Imlib2 has options, but it will probably select the right ones when you build
|
||||
and install it. You really want as many image loaders enabled as you can
|
||||
manage. It's suggested at a minumum to have the PNG and JPEG loaders, but
|
||||
manage. It's suggested at a minimum to have the PNG and JPEG loaders, but
|
||||
include whatever loaders correspond to the image formats you want supported
|
||||
for loading up and including into an Edje compiled file.
|
||||
|
||||
It is suggested right now that you get the latest CVS versions of the
|
||||
required libraries. You also need to build them in the right order and make
|
||||
sure the right options are enabled in the requiremed libraries. Here is a
|
||||
sure the right options are enabled in the required libraries. Here is a
|
||||
quick "cheat sheet" on how to get started.
|
||||
|
||||
@verbatim
|
||||
|
@ -148,7 +148,7 @@ quick "cheat sheet" on how to get started.
|
|||
cd
|
||||
|
||||
|
||||
5. You need Imlib2 installed. any release from 1.0.0 and up will do.
|
||||
5. You need Imlib2 installed. Any release from 1.0.0 and up will do.
|
||||
|
||||
@endverbatim
|
||||
|
||||
|
@ -162,7 +162,7 @@ quick "cheat sheet" on how to get started.
|
|||
|
||||
@section compiling How to compile and test Edje
|
||||
|
||||
Now you need to compile and install edje.
|
||||
Now you need to compile and install Edje.
|
||||
|
||||
@verbatim
|
||||
./configure
|
||||
|
@ -180,9 +180,9 @@ data/ there are data sets for you to look at as examples. To try one out do:
|
|||
edje ./e_logo.eet
|
||||
@endverbatim
|
||||
|
||||
The edje test program/viewer is able to view multiple edje data sets. The
|
||||
The Edje test program/viewer is able to view multiple Edje data sets. The
|
||||
following will view 3 of them at once in the one window (which you can resize
|
||||
to give you more space to move and resize the edje data sets around):
|
||||
to give you more space to move and resize the Edje data sets around):
|
||||
|
||||
@verbatim
|
||||
edje ./e_logo.eet ./e_logo.eet ./e_logo.eet
|
||||
|
@ -200,11 +200,11 @@ to give you more space to move and resize the edje data sets around):
|
|||
|
||||
@section details So how does this all work?
|
||||
|
||||
Edje inernally holds a geometry state machine and state graph of what is
|
||||
visible, not, where, at what size, with what colours etc. This is described
|
||||
Edje internally holds a geometry state machine and state graph of what is
|
||||
visible, not, where, at what size, with what colors etc. This is described
|
||||
to Edje from an Edje .eet file containing this information. These files can
|
||||
be produced by using edje_cc to take a text file (a .edc file) and "compile"
|
||||
an aoutput .eet file that contains this information, images and any other
|
||||
an output .eet file that contains this information, images and any other
|
||||
data needed.
|
||||
|
||||
|
||||
|
|
|
@ -257,7 +257,7 @@ edje_item_object_get(Edje_Item *ei)
|
|||
return ei->object;
|
||||
}
|
||||
|
||||
/* optionally you can manage each column's object yourself OR let edje do it */
|
||||
/* optionally you can manage each column's object yourself OR let Edje do it */
|
||||
void
|
||||
edje_item_object_column_set(Edje_Item *ei, int col, Evas_Object *obj)
|
||||
{
|
||||
|
|
|
@ -144,18 +144,18 @@ struct _Edje_Item_Cell
|
|||
* +-----------------------------+ +-------+ +----------------+
|
||||
*
|
||||
* spacer object:
|
||||
* 1 edje object goes inbetween each row as a spacer object (opt)
|
||||
* 1 edje object goes inbetween each column as a spacer object (opt)
|
||||
* 1 Edje object goes in-between each row as a spacer object (opt)
|
||||
* 1 Edje object goes in-between each column as a spacer object (opt)
|
||||
*
|
||||
* surround object:
|
||||
* 1 edje object goes around each item - item swallowed into "item" part (opt)
|
||||
* 1 Edje object goes around each item - item swallowed into "item" part (opt)
|
||||
* if no "item" part then just underlay it
|
||||
* on select send "select" "" signal
|
||||
* on unselect send "unselect" "" signal
|
||||
* on focus send "focus" "" signal
|
||||
* on unfocus send "unfocus" signal
|
||||
*
|
||||
* if any list item/cell is an edje object emit this to them too.
|
||||
* if any list item/cell is an Edje object emit this to them too.
|
||||
*
|
||||
* also call callbacks.
|
||||
* if a surround object emits such a signal itself then call callbacks too
|
||||
|
|
|
@ -50,19 +50,19 @@
|
|||
|
||||
/* FIXME:
|
||||
*
|
||||
* more example edje files
|
||||
* More example Edje files
|
||||
*
|
||||
* ? programs can do multiple actions from one signal
|
||||
* ? add containering (hbox, vbox, table, wrapping multi-line hbox & vbox)
|
||||
* ? text entry widget (single line only)
|
||||
* ? reduce linked list walking and list_nth calls
|
||||
*
|
||||
* ? recursions, unsafe callbacks outside edje etc. with freeze, ref/unref and block/unblock and break_programs needs to be redesigned & fixed
|
||||
* ? recursions, unsafe callbacks outside Edje etc. with freeze, ref/unref and block/unblock and break_programs needs to be redesigned & fixed
|
||||
* ? all unsafe calls that may result in callbacks must be marked and dealt with
|
||||
*/
|
||||
|
||||
|
||||
/* Cache result of program glob matches - this uses up extra ram withthe gain
|
||||
/* Cache result of program glob matches - this uses up extra ram with the gain
|
||||
* of faster program matching if a part has LOTS of programs.
|
||||
#define EDJE_PROGRAM_CACHE
|
||||
*/
|
||||
|
@ -355,7 +355,7 @@ struct _Edje_Part_Description
|
|||
} align;
|
||||
|
||||
struct {
|
||||
unsigned char w, h; /* width or height si fixed in side (cannot expand with edje object size) */
|
||||
unsigned char w, h; /* width or height is fixed in side (cannot expand with Edje object size) */
|
||||
} fixed;
|
||||
|
||||
struct {
|
||||
|
@ -411,7 +411,7 @@ struct _Edje_Part_Description
|
|||
struct {
|
||||
char *text; /* if "" or NULL, then leave text unchanged */
|
||||
char *text_class; /* how to apply/modify the font */
|
||||
char *style; /* the text style if a tectblock */
|
||||
char *style; /* the text style if a textblock */
|
||||
char *font; /* if a specific font is asked for */
|
||||
|
||||
int size; /* 0 = use user set size */
|
||||
|
@ -475,9 +475,9 @@ struct _Edje
|
|||
unsigned short block_break : 1;
|
||||
unsigned short delete_me : 1;
|
||||
double paused_at;
|
||||
Evas *evas; /* the evas this edje belongs to */
|
||||
Evas *evas; /* the Evas this Edje belongs to */
|
||||
Evas_Object *obj; /* the smart object */
|
||||
Evas_Object *clipper; /* a big rect to clip this edje to */
|
||||
Evas_Object *clipper; /* a big rect to clip this Edje to */
|
||||
Edje_File *file; /* the file the data comes form */
|
||||
Edje_Part_Collection *collection; /* the description being used */
|
||||
Evas_List *parts; /* private list of parts */
|
||||
|
@ -490,7 +490,7 @@ struct _Edje
|
|||
int block;
|
||||
int load_error;
|
||||
int freeze;
|
||||
/* variable pool for edje embryo scripts */
|
||||
/* variable pool for Edje Embryo scripts */
|
||||
Edje_Var_Pool *var_pool;
|
||||
/* for faster lookups to avoid nth list walks */
|
||||
int table_parts_size;
|
||||
|
|
|
@ -121,7 +121,8 @@ edje_object_signal_callback_del(Evas_Object *obj, const char *emission, const ch
|
|||
* @param emission The signal
|
||||
* @param source The signal source
|
||||
*
|
||||
* This sends a signal to the edje. These are defined in the programs section of an edc.
|
||||
* This sends a signal to the edje. These are defined in the programs
|
||||
* section of an edc.
|
||||
*/
|
||||
void
|
||||
edje_object_signal_emit(Evas_Object *obj, const char *emission, const char *source)
|
||||
|
@ -137,10 +138,11 @@ edje_object_signal_emit(Evas_Object *obj, const char *emission, const char *sour
|
|||
|
||||
/* FIXDOC: Verify/Expand */
|
||||
/** Set the Edje to play or pause
|
||||
* @param obj A vaild Evas_Object handle
|
||||
* @param obj A valid Evas_Object handle
|
||||
* @param play Play instruction (1 to play, 0 to pause)
|
||||
*
|
||||
* This sets the Edje to play or pause depending on the parameter. This has no effect if the Edje is already in that state.
|
||||
* This sets the Edje to play or pause depending on the parameter.
|
||||
* This has no effect if the Edje is already in that state.
|
||||
*/
|
||||
void
|
||||
edje_object_play_set(Evas_Object *obj, int play)
|
||||
|
|
|
@ -25,11 +25,11 @@ Evas_List *_edje_edjes = NULL;
|
|||
/************************** API Routines **************************/
|
||||
|
||||
/* FIXDOC: Verify/Expand */
|
||||
/** Contructs the edje object
|
||||
/** Constructs the Edje object
|
||||
* @param evas A valid Evas handle
|
||||
* @return The Evas_Object pointer.
|
||||
*
|
||||
* Creates the edje smart object, returning the Evas_Object handle.
|
||||
* Creates the Edje smart object, returning the Evas_Object handle.
|
||||
*/
|
||||
Evas_Object *
|
||||
edje_object_add(Evas *evas)
|
||||
|
|
|
@ -29,7 +29,7 @@ edje_freeze(void)
|
|||
}
|
||||
|
||||
/* FIXDOC: Expand */
|
||||
/** Thaw all objects in Edje
|
||||
/** Thaw all objects in Edje.
|
||||
*/
|
||||
void
|
||||
edje_thaw(void)
|
||||
|
@ -89,7 +89,8 @@ edje_object_data_get(Evas_Object *obj, const char *key)
|
|||
* @return The frozen state\n
|
||||
* 0 on Error
|
||||
*
|
||||
* This puts all changes on hold. Successive freezes will nest, requiring an equal number of thaws.
|
||||
* This puts all changes on hold. Successive freezes will nest,
|
||||
* requiring an equal number of thaws.
|
||||
*/
|
||||
int
|
||||
edje_object_freeze(Evas_Object *obj)
|
||||
|
@ -220,7 +221,8 @@ edje_color_class_set(const char *color_class, int r, int g, int b, int a, int r2
|
|||
* @param b3 Shadow Blue value
|
||||
* @param a3 Shadow Alpha value
|
||||
*
|
||||
* Applys the color class to the object, where the first color is the object, the second is the outline, and the third is the shadow.
|
||||
* Applies the color class to the object, where the first color is the
|
||||
* object, the second is the outline, and the third is the shadow.
|
||||
*/
|
||||
void
|
||||
edje_object_color_class_set(Evas_Object *obj, const char *color_class, int r, int g, int b, int a, int r2, int g2, int b2, int a2, int r3, int g3, int b3, int a3)
|
||||
|
@ -360,7 +362,7 @@ edje_text_class_set(const char *text_class, const char *font, Evas_Font_Size siz
|
|||
}
|
||||
|
||||
/** Sets Edje text class
|
||||
* @param obj A vaild Evas_Object handle
|
||||
* @param obj A valid Evas_Object handle
|
||||
* @param text_class The text class name
|
||||
* @param font Font name
|
||||
* @param size Font Size
|
||||
|
@ -541,7 +543,9 @@ edje_object_part_text_get(Evas_Object *obj, const char *part)
|
|||
* @param part The part name
|
||||
* @param obj_swallow The object to swallow
|
||||
*
|
||||
* Swallows the object into the edje part so that all geometry changes for the part affect the swallowed object. (e.g. resize, move, show, raise/lower, etc.)
|
||||
* Swallows the object into the edje part so that all geometry changes
|
||||
* for the part affect the swallowed object. (e.g. resize, move, show,
|
||||
* raise/lower, etc.).
|
||||
*/
|
||||
void
|
||||
edje_object_part_swallow(Evas_Object *obj, const char *part, Evas_Object *obj_swallow)
|
||||
|
@ -647,7 +651,7 @@ edje_extern_object_min_size_set(Evas_Object *obj, Evas_Coord minw, Evas_Coord mi
|
|||
}
|
||||
|
||||
/** Set the object maximum size
|
||||
* @param obj A vaild Evas_Object handle
|
||||
* @param obj A valid Evas_Object handle
|
||||
* @param maxw The maximum width
|
||||
* @param maxh The maximum height
|
||||
*
|
||||
|
@ -731,7 +735,8 @@ edje_object_part_swallow_get(Evas_Object *obj, const char *part)
|
|||
* @param minw Minimum width pointer
|
||||
* @param minh Minimum height pointer
|
||||
*
|
||||
* Gets the object's minimum size values from the Edje. These are set to zero if no Edje is connected to the Evas Object.
|
||||
* Gets the object's minimum size values from the Edje. These are set
|
||||
* to zero if no Edje is connected to the Evas Object.
|
||||
*/
|
||||
void
|
||||
edje_object_size_min_get(Evas_Object *obj, Evas_Coord *minw, Evas_Coord *minh)
|
||||
|
@ -754,7 +759,8 @@ edje_object_size_min_get(Evas_Object *obj, Evas_Coord *minw, Evas_Coord *minh)
|
|||
* @param maxw Maximum width pointer
|
||||
* @param maxh Maximum height pointer
|
||||
*
|
||||
* Gets the object's maximum size values from the Edje. These are set to zero if no Edje is connected to the Evas Object.
|
||||
* Gets the object's maximum size values from the Edje. These are set
|
||||
* to zero if no Edje is connected to the Evas Object.
|
||||
*/
|
||||
void
|
||||
edje_object_size_max_get(Evas_Object *obj, Evas_Coord *maxw, Evas_Coord *maxh)
|
||||
|
@ -786,10 +792,11 @@ edje_object_size_max_get(Evas_Object *obj, Evas_Coord *maxw, Evas_Coord *maxh)
|
|||
}
|
||||
}
|
||||
|
||||
/** Force a Size/Geometry Calc
|
||||
/** Force a Size/Geometry calculation
|
||||
* @param obj A valid Evas_Object handle
|
||||
*
|
||||
* Forces the object @p obj to recalc layout regardless of freeze/thaw
|
||||
* Forces the object @p obj to recalculation layout regardless of
|
||||
* freeze/thaw.
|
||||
*/
|
||||
void
|
||||
edje_object_calc_force(Evas_Object *obj)
|
||||
|
@ -904,7 +911,7 @@ edje_object_size_min_calc(Evas_Object *obj, Evas_Coord *minw, Evas_Coord *minh)
|
|||
"part not marked as fixed size in one dimension. This needs\n"
|
||||
"to be fixed in the source .edc by adding:\n"
|
||||
" fixed: 1 1;\n"
|
||||
"to the part that cannot expand in size if the edje object does.\n",
|
||||
"to the part that cannot expand in size if the Edje object does.\n",
|
||||
ed->path, ed->part);
|
||||
if (pep)
|
||||
printf("The part suspected causing this problem is:\n"
|
||||
|
@ -931,7 +938,7 @@ edje_object_size_min_calc(Evas_Object *obj, Evas_Coord *minw, Evas_Coord *minh)
|
|||
ed->calc_only = 0;
|
||||
}
|
||||
|
||||
/** Returns the state of the edje part
|
||||
/** Returns the state of the Edje part
|
||||
* @param obj A valid Evas_Objectart handle
|
||||
* @param part The part name
|
||||
* @param val_ret
|
||||
|
@ -1049,6 +1056,7 @@ edje_object_part_drag_value_set(Evas_Object *obj, const char *part, double dx, d
|
|||
_edje_dragable_pos_set(ed, rp, dx, dy);
|
||||
_edje_emit(ed, "drag,set", rp->part->name);
|
||||
}
|
||||
|
||||
/** Get the dragable object location
|
||||
* @param obj A valid Evas_Object handle
|
||||
* @param part The part name
|
||||
|
@ -1093,7 +1101,7 @@ edje_object_part_drag_value_get(Evas_Object *obj, const char *part, double *dx,
|
|||
* @param dw The drag width
|
||||
* @param dh The drag height
|
||||
*
|
||||
* Sets the size of the dragable object
|
||||
* Sets the size of the dragable object.
|
||||
*/
|
||||
void
|
||||
edje_object_part_drag_size_set(Evas_Object *obj, const char *part, double dw, double dh)
|
||||
|
@ -1290,7 +1298,8 @@ edje_object_part_drag_page_get(Evas_Object *obj, const char *part, double *dx, d
|
|||
* @param dx The x step
|
||||
* @param dy The y step
|
||||
*
|
||||
* Steps x,y where the step increment is the ammount set by edje_object_part_drag_step_set.
|
||||
* Steps x,y where the step increment is the amount set by
|
||||
* edje_object_part_drag_step_set.
|
||||
*/
|
||||
void
|
||||
edje_object_part_drag_step(Evas_Object *obj, const char *part, double dx, double dy)
|
||||
|
|
Loading…
Reference in New Issue