fix typos in edje docs patch from martin :)

SVN revision: 16821
This commit is contained in:
Carsten Haitzler 2005-09-21 03:11:31 +00:00
parent dff4dba310
commit a4fc9aa9ba
8 changed files with 68 additions and 57 deletions

View File

@ -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

View File

@ -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.

View File

@ -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)
{

View File

@ -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

View File

@ -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;

View File

@ -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)

View File

@ -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)

View File

@ -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)