summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pages/docs-non-api-wip.txt60
1 files changed, 20 insertions, 40 deletions
diff --git a/pages/docs-non-api-wip.txt b/pages/docs-non-api-wip.txt
index 27308a2..9b87a01 100644
--- a/pages/docs-non-api-wip.txt
+++ b/pages/docs-non-api-wip.txt
@@ -1,44 +1,23 @@
1EFL 1====== EFL Basics ======
2 2
3The UI API provides the functionality to create and manage your application user interface. The heart of the Tizen application UI is the native UI framework, which consists of the Enlightenment Foundation Libraries (EFL). 3The UI API provides the functionality to create and manage your application user interface. The heart of the Tizen application UI is the native UI framework, which consists of the Enlightenment Foundation Libraries (EFL).
4 4
5Figure: EFL 5===== EFL =====
6
7EFL
8 6
9UI design with EFL consists of the following main parts: 7UI design with EFL consists of the following main parts:
10 8
11 EFL 9 * EFL: EFL basics contain a set of layered libraries, and EFL functions as the window manager for your application:
12 10 * Edje: The Edje library is part of EFL, and provides APIs for theming a Tizen application, by writing EDC file. EDC programming supports part positioning, resizing, and animations.
13 EFL basics contain a set of layered libraries, and EFL functions as the window manager for your application: 11 * The Elementary library is part of EFL, and provides the basic toolkit for window and layout management, along with the UI and container widgets for the user interface. You can manage the widgets and their focus on the screen, as well as create customizations.
14 EFL Extension
15
16 The EFL Extension is an extension package for EFL. It provides functions to work with the Menu and Back hardware keys on devices.
17 Edje
18
19 The Edje library is part of EFL, and provides APIs for theming a Tizen application, by writing EDC file. EDC programming supports part positioning, resizing, and animations.
20 Elementary
21
22 The Elementary library is part of EFL, and provides the basic toolkit for window and layout management, along with the UI and container widgets for the user interface. You can manage the widgets and their focus on the screen, as well as create customizations.
23 12
24Some general UI design features include: 13Some general UI design features include:
25 14
26 Animations and effects 15 * Animations and effects
27 16 * Event handling and main-loop\\ The user interface relies on callbacks, designed to react to EFL events generated by the system or the user. You can handle various events, from low-level Ecore system events to Evas smart object events that happen on object collections.\\ The Ecore library provides main loop abstraction that gets you data when it is available and sends you events. You can manage the main loop and use threads with the Ecore main loop.
28 Tizen supports various methods to create animations and effects in your application. 17 * Font settings
29 Event handling and main loop 18 * Scalability: Elementary provides a way to scale widgets in order to be comfortably used with a finger make text more readable.
30 19
31 The user interface relies on callbacks, designed to react to EFL events generated by the system or the user. You can handle various events, from low-level Ecore system events to Evas smart object events that happen on object collections. 20===== Making EFL Applications =====
32
33 The Ecore library provides main loop abstraction that gets you data when it is available and sends you events. You can manage the main loop and use threads with the Ecore main loop.
34 Font settings
35
36 Tizen supports various methods to change the font of your application to another system default font or your own font.
37 Scalability
38
39 Elementary provides a way to scale widgets in order to be comfortably used with a finger make text more readable.
40
41Making EFL Applications
42 21
43The Enlightenment Foundation Libraries (EFL) provide all the libraries you need to create powerful applications. This section presents an overview of the libraries and when to use them in developing applications. 22The Enlightenment Foundation Libraries (EFL) provide all the libraries you need to create powerful applications. This section presents an overview of the libraries and when to use them in developing applications.
44 23
@@ -52,16 +31,17 @@ EFL layers
52 31
53When you create a basic EFL application, you use the following main libraries as a basis: 32When you create a basic EFL application, you use the following main libraries as a basis:
54 33
55 Elementary is the top-most library with which you create your EFL application. It provides all the functions you need to create a window, create simple and complex layouts, manage the life cycle of a view, and add widgets. The full list of widgets that can be used in Tizen can be found in Using Widgets. 34 * Elementary is the top-most library with which you create your EFL application. It provides all the functions you need to create a window, create simple and complex layouts, manage the life cycle of a view, and add widgets. The full list of widgets that can be used in Tizen can be found in Using Widgets.
56 Edje is the library used by Elementary to provide a powerful theme. You can also use Edje to create your own objects and use them in your application. You may also want to extend the default theme. You will find more information about Edje and the EDC format in Edje and Customizing Widgets. 35 * Edje is the library used by Elementary to provide a powerful theme. You can also use Edje to create your own objects and use them in your application. You may also want to extend the default theme. You will find more information about Edje and the EDC format in Edje and Customizing Widgets.
57 Ecore is the library which manages the main loop of your application. The main loop is one of the most important concepts you need to know about to develop an application. The main loop is where events are handled, and where you interact with the user through the callback mechanism. The main loop mechanisms are explained in the Main Loop guide. 36 * Ecore is the library which manages the main loop of your application. The main loop is one of the most important concepts you need to know about to develop an application. The main loop is where events are handled, and where you interact with the user through the callback mechanism. The main loop mechanisms are explained in the Main Loop guide.
58 Evas is the canvas engine. Evas is responsible for managing the drawing of your content. All graphical objects that you create are Evas objects. Evas handles the entire state of the window by filling the canvas with objects and manipulating their states. In contrast to other canvas libraries, such as Cairo, OpenGL, and XRender, Evas is not a drawing library but a scene graph library that retains the state of all objects. The Evas concept is explained in Rendering Concept and Method in Evas. Evas objects are created and then manipulated until they are no longer needed, at which point they are deleted. This allows the developer to work in the same terms that a designer thinks in: it is a direct mapping, as opposed to having to convert the concepts into drawing commands in the right order, calculate minimum drawing calls needed to get the job done, and so on. 37 * Evas is the canvas engine. Evas is responsible for managing the drawing of your content. All graphical objects that you create are Evas objects. Evas handles the entire state of the window by filling the canvas with objects and manipulating their states. In contrast to other canvas libraries, such as Cairo, OpenGL, and XRender, Evas is not a drawing library but a scene graph library that retains the state of all objects. The Evas concept is explained in Rendering Concept and Method in Evas. Evas objects are created and then manipulated until they are no longer needed, at which point they are deleted. This allows the developer to work in the same terms that a designer thinks in: it is a direct mapping, as opposed to having to convert the concepts into drawing commands in the right order, calculate minimum drawing calls needed to get the job done, and so on.
59 Eina is the basis of all the EFL libraries. Eina is a toolbox that implements an API for data types in an efficient way. It contains all the functions needed to create lists and hashes, manage shared strings, open shared libraries, and manage errors and memory pools. Eina concepts are explained in Using Data Types. 38 * Eina is the basis of all the EFL libraries. Eina is a toolbox that implements an API for data types in an efficient way. It contains all the functions needed to create lists and hashes, manage shared strings, open shared libraries, and manage errors and memory pools. Eina concepts are explained in Using Data Types.
60 39
61The EFL include more than just the above libraries, but the above are the most important libraries to get started with. The other libraries, such as Eet, Embryo, and Emotion, will be explored later in the programming guides and the API Reference. 40The EFL include more than just the above libraries, but the above are the most important libraries to get started with. The other libraries, such as Eet, Embryo, and Emotion, will be explored later in the programming guides and the API Reference.
62 41
63When designing EFL applications, you can use the EFL Extension package to work with device hardware keys and the EFL UTIL package to provide additional notifications. 42When designing EFL applications, you can use the EFL Extension package to work with device hardware keys and the EFL UTIL package to provide additional notifications.
64Concept of Elementary 43
44==== Concept of Elementary ====
65 45
66Before writing an application, you should already have an answer to the following question: What is an application? An application is a process launched by the user. Every application has at least one window for presenting its content. Users can interact with the content through events. Different sources of events can modify the life cycle of the application. The application may receive data from a network connection, and it may also receive touch and key events. From the computer's point of view, an application is a collection of code that reacts to events and displays content on the screen. Elementary bridges this divide between the user and the code. 46Before writing an application, you should already have an answer to the following question: What is an application? An application is a process launched by the user. Every application has at least one window for presenting its content. Users can interact with the content through events. Different sources of events can modify the life cycle of the application. The application may receive data from a network connection, and it may also receive touch and key events. From the computer's point of view, an application is a collection of code that reacts to events and displays content on the screen. Elementary bridges this divide between the user and the code.
67 47
@@ -69,8 +49,8 @@ Elementary provides a variety of pre-built UI components, such as layout objects
69 49
70There are three main groups of objects provided by Elementary: 50There are three main groups of objects provided by Elementary:
71 51
72 Widgets: These are the widgets with which you build your application UI. 52 * Widgets: These are the widgets with which you build your application UI.
73 Containers: These are the containers that hold the widgets. 53 * Containers: These are the containers that hold the widgets.
74 Infrastructure: These are the modules that deal with Elementary as a whole. 54 * Infrastructure: These are the modules that deal with Elementary as a whole.
75 55
76EFL Hello World Tutorial shows you how to develop your first application with Elementary and the EFL. \ No newline at end of file 56EFL Hello World Tutorial shows you how to develop your first application with Elementary and the EFL. \ No newline at end of file