161 lines
5.5 KiB
Plaintext
Executable File
161 lines
5.5 KiB
Plaintext
Executable File
~~Title: Documentation~~
|
|
|
|
{{page>start-shortcuts}}
|
|
|
|
==== Enlightenment and EFL Developer Documentation ====
|
|
|
|
Enlightenment has developed from a window manager into a set of libraries
|
|
that support a large number of exciting applications.
|
|
Aimed primarily at slick graphical presentation and optimal runtime we
|
|
created the Enlightenment Foundation Libraries and have created the following
|
|
documentation to help everyone get involved - thanks for stopping by.
|
|
|
|
<columns 100% 33% - 33% ->
|
|
|
|
====Getting Started====
|
|
|
|
If you are going to use EFL, we encourage you to actually work with
|
|
EFL from [[https://git.enlightenment.org|git]] mostly because it allows
|
|
you to either track stable branches to get latest fixes long before a
|
|
release is out, or to track latest features and development
|
|
continually. This is also the case if you want to contribute. Of
|
|
course you can use stable packages for your distribution as well.
|
|
|
|
=== Getting EFL ===
|
|
|
|
* [[docs-efl-start|Get EFL installed from source]]
|
|
* [[distros/ubuntu-start|EFL on Ubuntu]]
|
|
* [[distros/archlinux-start|EFL on Arch Linux]]
|
|
* [[distros/debian-start|EFL on Debian]]
|
|
* [[distros/fedora-start|EFL on Fedora]]
|
|
* [[distros/freebsd-start|EFL on FreeBSD]]
|
|
* [[distros/opensuse-start|EFL on openSUSE]]
|
|
* [[distros/yocto-start|EFL on Yocto]]
|
|
* [[distros/osx-start|EFL on Mac OS X]]
|
|
|
|
Go check the current available version of EFL on each distro/platform:
|
|
[[https://phab.enlightenment.org/w/packaging_status/|Table of current version of EFL]]
|
|
|
|
=== Working with Code ===
|
|
|
|
* [[docs/c/start|A basic primer on C]]
|
|
|
|
|
|
<newcolumn>
|
|
|
|
====EFL Documentation====
|
|
|
|
The EFL is currently undergoing a significant redesign to give a better
|
|
developer experience when building apps using our platform.
|
|
For now we recommend using the stable API and it's Bindings.
|
|
|
|
=== Working with EFL ===
|
|
|
|
* [[docs/efl/start|Get started with EFL]]
|
|
* [[docs/efl/advanced/start|Advanced EFL Topics]]
|
|
|
|
=== Stable API ===
|
|
|
|
* [[https://docs.enlightenment.org/efl/current|C (our main language)]]
|
|
* [[https://docs.enlightenment.org/python-efl/current|Python Bindings]]
|
|
|
|
=== Beta API using EO ===
|
|
|
|
* [[docs/efl/auto/reference|EFL EO API documentation (C)]]
|
|
|
|
|
|
<newcolumn>
|
|
|
|
====Contributing====
|
|
|
|
We are really excited that you would like to get involved in EFL and
|
|
Enlightenment development! If you followed the instructions in
|
|
"Getting Started" then you are most of the way to being part of the team.
|
|
To start with it's easiest to see which area you would like to work on and
|
|
get involved in bug reporting or fixing. From there you can get to know the
|
|
team, how we work, and earn a place on the team as a core developer :)
|
|
|
|
=== Feedback ===
|
|
|
|
* [[debugging/report_bugs|Report bugs on Phabricator]]
|
|
* [[contact/arcanist|Submit patch on Phabricator]]
|
|
|
|
=== Debugging ===
|
|
|
|
* [[docs-efl-debug|Debugging (generic) - EFL and Enlightenment]]
|
|
* [[debugging/enlightenment_debugging|Enlightenment specific debugging]]
|
|
* [[debugging/apps_efl_debugging|EFL application debugging]]
|
|
* [[debugging/remote_debugging|Remote Debugging]]
|
|
|
|
=== Coding ===
|
|
|
|
* [[https://phab.enlightenment.org/w/ecoding/|EFL Coding Style]]
|
|
* [[https://phab.enlightenment.org/w/git_practices/|Git Practices]]
|
|
|
|
</columns>
|
|
|
|
----
|
|
|
|
That's it for the basics - hopefully you are now up and running with
|
|
the EFL (and perhaps Enlightenment too!) and looking to learn more.
|
|
Here is a collection of guides and tutorials to help you get deeper into
|
|
working with our libraries and building great apps.
|
|
|
|
Be sure to [[contact]] to show what youve built!
|
|
|
|
<columns 100% 33% - 33% ->
|
|
|
|
==== Programming Guide ====
|
|
|
|
* [[program_guide/basic_application_structure_pg|Basic Application structure]]
|
|
* [[program_guide/eina_pg|Eina]]
|
|
* [[program_guide/connectivity_pg|Connectivity]]
|
|
* [[program_guide/main_loop_pg|Main Loop]]
|
|
* [[program_guide/threading_pg|Threading]]
|
|
* [[program_guide/evas_pg|Evas]]
|
|
* [[program_guide/edje_pg|Edje]]
|
|
* [[program_guide/event_effect_pg|Event and Effect]]
|
|
* [[program_guide/containers_pg|Containers]]
|
|
* [[program_guide/widgets_pg|Widgets]]
|
|
* [[program_guide/focus_ui_pg|Managing UI Component Focus]]
|
|
* [[program_guide/customizing_ui_pg|Customizing UI Components]]
|
|
* [[program_guide/scalability_pg|Scalability]]
|
|
* [[program_guide/multilingual_pg|Multilingual]]
|
|
* [[program_guide/evasgl_pg|Evas GL]]
|
|
|
|
<newcolumn>
|
|
|
|
==== Tutorials ====
|
|
|
|
* [[tutorial/basic_tutorial|Basic Tutorial]]
|
|
* [[tutorial/genlist_tutorial|Genlist Tutorial]]
|
|
* [[tutorial/panes_tutorial|Panes Tutorial]]
|
|
* [[tutorial/form_tutorial|Form Tutorial]]
|
|
* [[tutorial/menu_tutorial|Menu Tutorial]]
|
|
* [[tutorial/naviframe_tutorial|Naviframe Tutorial]]
|
|
* [[tutorial/popup_tutorial|Popup Tutorial]]
|
|
* [[tutorial/gl_2d_tutorial|GL 2D Tutorial]]
|
|
* [[tutorial/preference_tutorial|Preference Tutorial]]
|
|
* [[tutorial/effects_tutorial|Effects Tutorial]]
|
|
* [[tutorial/multimedia_tutorial|Multimedia Tutorial]]
|
|
* [[tutorial/javascript_tutorial|JavaScript Tutorial]]
|
|
|
|
=== Samples ===
|
|
|
|
* [[samples/elm_min_size_control|Controlling Minimum Size of Widgets]]
|
|
|
|
|
|
<newcolumn>
|
|
|
|
==== Themes / Edje / EDC ====
|
|
|
|
A core part of Enlightenment and EFL is the design/theme abstraction layer. This is handled by the Edje library and a series of tools that can compile/package up theme files and compress them, decompile them, and even provide some GUI editors too.
|
|
|
|
* [[about-eflete|Eflete]] - GUI Theme design tool
|
|
* [[about-enventor|Enventor]] GUI Edje file design tool
|
|
* [[themes/start|Getting started]] with Edje and themes at the EDC file level
|
|
* [[themes/knob_example|Edje theme example]] A knob theme for the Elementary slider widget
|
|
|
|
</columns>
|
|
|