IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Débuter avec les Enlightenment Foundation Libraries (EFL) [Tutoriel]


Sujet :

C

  1. #1
    Rédacteur
    Avatar de Amnell
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    1 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 840
    Points : 5 545
    Points
    5 545
    Par défaut Débuter avec les Enlightenment Foundation Libraries (EFL)
    Bonjour,

    Les EFL (Enlightenment Foundation Libraries) sont des bibliothèques graphiques C (des bindings sont également disponibles pour C++, Python, Perl, JavaScript et Ruby) formant un framework en concurrence avec Qt et GTK. Toutefois, le fait qu'elles soient en concurrence avec ces deux géants ne signifie pas qu'elles tentent de mettre à disposition ce qu'ils fournissent. Elles vont plutôt se placer dans le marché pour leur capacité à gérer efficacement le tactile et les animations.

    Les EFL sont extrêmement pratiques pour le développement d'applications fluides et esthétiques. Avez-vous déjà vu les petites animations présentes dans un iPhone ? Lors d'un déplacement des icônes, lors d'une transition ? Les EFL permettent de refaire tout cela en quelques lignes. En effet, l'esthétisme est, tout comme l'optimisation, un point très privilégié. C'est d'ailleurs pour cette raison que des entreprises comme Samsung et Free les utilisent à souhait.

    L'avantage des EFL est de permettre aux développeurs d'écrire leurs interfaces utilisateur sans une ligne de C, grâce à Edje. Les fichiers de description Edje ressemblent assez à du code CSS :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    collections {
        group {
            name: "interface";
            parts {
                part {
                    name: "text";
                    type: TEXT;
                    description {
                        state: "default" 0.0;
                        color: 255 255 255 255;
                        text {
                            font: "Sans-serif";
                            text: "Hello world !";
                            size: 18;
                        }
                    }
                }
            }
        }
    }
    Grâce à Edje, la partie logique de l'application, écrite en C "classique" et avec les autre bibliothèques des EFL, est différenciée de la partie graphique, écrite avec Edje. Si vous vous êtes déjà intéressé à Qt, et plus particulièrement à QML, vous avez dû constater la similitude avec Edje, des EFL. Il reste bon de noter qu'Edje était paru bien avant QML.

    Ainsi, on peut conclure de cette courte introduction que les EFL constituent un framework fortement intéressant.

    Lire l'article : Débuter avec les Enlightenment Foundation Libraries (EFL), par Louis du Verdier.

    N'hésitez pas à commenter ce tutoriel ou à poser des questions à la suite !
    N'oubliez pas de consulter la FAQ Qt ainsi que les cours et tutoriels C++/Qt !

    Dernier article : Débuter avec les Enlightenment Foundation Libraries (EFL)
    Dernières traductions : Introduction à Qt Quick - Applications modernes avec Qt et QML
    Vous cherchez un livre sur Qt 5, Qt Quick et QML ? Créer des applications avec Qt 5 - Les essentiels

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 27
    Points : 18
    Points
    18
    Par défaut
    Bonjour,

    Je dois faire une calculette avec les efl et j'ai essayer de m'aider de ton tuto mais je rencontre quelques problemes...

    Premierement, rien que sur les exemples se trouvant dans /DOCS/tutorial/fr/edge/tut*, il y a plein de fichier d'exemple sur lequel s'appuye le tutorial officiel sur les efl. Les exemples tres simple fonctionnent tres bien, a savoir ceux qui se lance directement avec edje_player. Cependant tout ceux qui se lance via du code c, impossible d'en executer un seul correctement. Pourtant il y a un script build.sh permettant de generer tous les binaires donc je me dis que cela ne vient pas de ma facon de compiler.

    En gros quand je run un exemple je me retrouve la plupart du temps avec une fenetre minuscule qui pop sans rien dedans que je ne oeux agrandir ou au mieux une fenetre redimenssionnable mais toute noire.

    Est ce qu'il est possible que j'ai mal installe efl ?

    Une autre question il existe un ide ? un plugin emacs ou quelquonquonque outil pour dev avec cette bibliotheque ? parceque l'indentation a la mano sur emacs c'est juste horrible la hehe.

    Merci d'avance,
    Evanok.

  3. #3
    Rédacteur
    Avatar de Amnell
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    1 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 840
    Points : 5 545
    Points
    5 545
    Par défaut
    Citation Envoyé par Evanok Voir le message
    Premierement, rien que sur les exemples se trouvant dans /DOCS/tutorial/fr/edge/tut*, il y a plein de fichier d'exemple sur lequel s'appuye le tutorial officiel sur les efl. Les exemples tres simple fonctionnent tres bien, a savoir ceux qui se lance directement avec edje_player. Cependant tout ceux qui se lance via du code c, impossible d'en executer un seul correctement. Pourtant il y a un script build.sh permettant de generer tous les binaires donc je me dis que cela ne vient pas de ma facon de compiler.
    Bonjour,

    Qu'entendez-vous par "impossible d'en exécuter un seul correctement" ? S'agit-il d'un problème de compilation, d'un non-fonctionnement à l'exécution (absence d'images, etc.) ? La taille de la fenêtre est aisément réglable via le code.

    Au moment où j'ai écrit l'article, ces exemples étaient tout à fait fonctionnels, ce qui signifie que le problème peut provenir de votre configuration. Dans un premier temps, avez-vous tenté d'intégrer un de ces exemples Edje fonctionnels avec l'edje_player dans une application C avec elm_layout_file_set() ?

    Citation Envoyé par Evanok Voir le message
    Une autre question il existe un ide ? un plugin emacs ou quelquonquonque outil pour dev avec cette bibliotheque ? parceque l'indentation a la mano sur emacs c'est juste horrible la hehe.
    Concernant les outils de développement, je m'étais heurté à un problème similaire : au jour de la publication de l'article, selon les gens présents sur l'IRC d'Enlightenment France (#e.fr sur freenode), aucun n'outil n'avait vu le jour. Après, si votre outil de travail est Emacs, une configuration peut toujours être effectuée en quelques heures.

    Bonne continuation,
    Amnell.
    N'oubliez pas de consulter la FAQ Qt ainsi que les cours et tutoriels C++/Qt !

    Dernier article : Débuter avec les Enlightenment Foundation Libraries (EFL)
    Dernières traductions : Introduction à Qt Quick - Applications modernes avec Qt et QML
    Vous cherchez un livre sur Qt 5, Qt Quick et QML ? Créer des applications avec Qt 5 - Les essentiels

Discussions similaires

  1. [VB .Net][MDI]Débuter avec les MDI
    Par toto4650 dans le forum Windows Forms
    Réponses: 15
    Dernier message: 19/01/2006, 12h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo