Manuel développeur 0.9
Un article de Eyeosfr.
[modifier] Introduction
Bienvenue sur la documentation de l'API d'eyeOS. Ces documents ont été pensés pour vous fournir des informations et des exemples dans le but de créer de nouvelles applications pour eyeOS.
Il y a cinq fichiers nécessaires au fonctionnement d'une application eyeOS: trois icônes, un fichier nommé "propietats.xml" qui contient les paramètres permettant de créer une fenêtre pour l'application et un fichier nommé "aplic.php" qui contient le code de l'application. Toutefois l'application peut contenir tous les fichiers que vous voulez, mais nécessite ces cinq fichiers pour être une application eyeOs valide.
[modifier] Les icônes pour l'application
Pour faire un application qui fonctionne, il vous faut inclure trois icônes au format PNG: ico_a.png, ico_b.png et ico_c.png.
ico_a.png
Cette image est l'icône à l'état minimisé. Elle apparaitra dans la barre des applications minimisées quand un utilisateur minimise l'application. Ce fichier doit être d'une taille de 45 pixels de hauteur sur 45 pixels de largeur. Si vous souhaitez suivre le style par défaut des icônes pour eyeOS, vous pouvez télécharger le fichier .xcf qui contient tous les calques nécessaires à la création d'une icône dans the Gimp.
ico_b.png
C'est l'icône affichée dans la barre des icônes quand l'application est active. Nous vous conseillons de faire une icône avec moins d'alpha que ico_c.png, l'icône des applications inactives. Si vous souhaitez suivre le style par défaut des icônes pour eyeOS, vous pouvez télécharger le fichier .xcf qui contient tous les calques nécessaires à la création d'une icône dans the Gimp.
ico_c.png
C'est l'icône affichée dans la barre des applications quand l'aplication n'est pas active. Nous vous conseillons d'utiliser 50% d'alpha pour cette icône, étant donné qu'elle est affichée quand l'application est inactive. De même, si vous souhaitez suivre le style par défaut des icônes pour eyeOS, vous pouvez télécharger le fichier .xcf qui contient tous les calques nécessaires à la création d'une icône dans the Gimp.
[modifier] Fichiers nécessaires au fonctionnement de l'application
D'autre part, votre application requiert 2 autres fichiers : aplic.php avec le code de votre application et propietats.xml qui contient les paramètres de la fenêtre.
1. aplic.php
Ce fichier contient toute la structure de l'application. Ce fichier doit commencer par ces lignes :
<?php
if (!defined ('USR')) return;
Et ce finir par :
?>
Pour introduire tout les autres fichiers de code contenus dans le dossier de votre application ajoutez cette ligne :
include $appinfo['appdir'].'FICHIER';
Remplacez FICHIER par le nom du fichier en question. Lorsque vous faîtes référence à un fichier associé à votre application, vous devez utiliser $appinfo['appdir'] pour pointer vers le dossier où se trouve le fichier.
D'ailleurs si la page contient des en-têtes HTML (N.B. 'html headers') ou si la page requiert l'accès à des feuilles de style CSS, vous devrez l'inclure dans une iframe, sinon le système de gestion des fenêtres eyeOS ne peut pas fonctionner. Si vous souhaitez intégrer ces fichiers, procédez comme suit :
echo " <iframe src='".$appinfo['appdir']."NOMDELAPAGE.htm'" style='width: XXXpx; height: YYYpx' frameborder='0'> </iframe>";
Remplacez NOMDELAPAGE par le nom de la page web à inclure (se termiant par html, htm ...), XXX par la largeur de votre iframe (toujours un peu moins large que la fenêtre) et YYY par la hauteur de votre iframe (de même, un peu moins haute que votre fenêtre) .
Pensez à ajouter include() ou echo ""; ou avant la balise ?> .
2. propietats.xml
La fenêtre qui est créée par eyeOS pour chaque application peut être définie par le fichier propietats.xml. Voyons ensemble ce qu'il contient :
<?xml version="1.0"?> <eyeOSapp>
<title> Titre de l'application </title> <author> Nom de l'auteur </author> <window> <height> Hauteur en pixels </height> <width> Largeur en pixels </width> <x_pos> Charge la fenêtre avec x pixels de marge à droite </x_pos> <y_pos> Charge la fenêtre avec y pixels de marge à gauche </y_pos> <fullscreen>yes/no</fullscreen> <resize>yes/no</resize> </window>
</eyeOSapp>
'Fullscreen' fait référence à l'affichage ou non en plein écran de votre fenêtre; yes affichera en plein écran, no affichera en écran normal.
'Resize' fait référence à la possibilité ou non de redimensionner la fenêtre; yes vous autorise à redimensionner la fenêtre, no produira une fenêtre dont la taille définie par vous ne sera pas modifiable par l'utilisateur.
Exemple d'un fichier propietats.xml :
<?xml version="1.0"?> <eyeOSapp>
<author> Mon nom </author> <title>Mon application</title> <window> <height>480</height> <width>620</width> <x_pos>100</x_pos> <y_pos>20</y_pos> <fullscreen>no</fullscreen> <resize>no</resize> </window>
</eyeOSapp>
[modifier] Variables globales du système
Il existe un certain nombre de variable que les applications eyeOS peuvent utiliser. La liste complète de ces variables se trouve dans le fichier sysdefs.php . Voici une liste des fonctions principales et de leurs utilisations. N'oubliez pas que certains de ces variables doivent être tapées en MAJUSCULES. Il n'y a pas besoin de taper le symbole "$" avant ces fonctions.
- HOMEDIR - Dossier principal de tous les utilisateirs. Normalement "home/".
- USRDIR - Dossier pour les données de l'utilisateur. Contient les données écrites par les applications. Normalement "usr/".
- ROOTUSR - Nom de l'administrateur système. Normalement "root".
- USR - Nom de l'utilisteur.
- $appinfo['appdir'] - contient l'URL des fichiers pour les applications. Si vous souhaitez y ajouter des images, des fichiers etc..., utilisez cette variable avant le nom du fichier.
Différentes variables peuvent être utilisées pour la même action. Exemple,
$user_home = HOMEDIR . USR;
Et vous pouvez utiliser les variables eyeOS avc du texte, ou des variables de votre application. Exemple,
$dossier_principal_contenant_mes_données = HOMEDIR. USR . "/monapplication/essai.xml";
Attention quant à l'utilisation du 'slash' ( / ) après la variable USR. La variable HOMEDIR se termine par "/", ce qui n'est pas le cas avec la variable USR, étant donnée que la variable HOMEDIR est censée être un dossier et que la variable USR représente un nom.
[modifier] Enregistrer, lire et éditer des données avec les fonctions eyeOS
Il existe 3 fonctions principales dans eyeOS que chaque application peut utiliser pour enregistrer et lire des données. Ces fonction sont createXML(), parse_info() et parse_update().
- createXML() - Est utilisée pour sauvergarder des données. La structure utilisée avec cette fonction est la suivante:
createXML ($fichier_à_sauvegarder, $nom_de_l'étiquette_de_données_principale, array (
'tag_1' => $contenu_de_l'étiquette_1,
'tag_2' => $contenu_de_l'étiquette_2,
'tag_3' => $contenu_de_l'étiquette_3,
'tag_4' => $contenu_de_l'étiquette_4,
'tag_5' => $contenu_de_l'étiquette_5,
));
Nous vous conseillons d'utiliser les variables eyeOS pour la fonction $fichier_à_sauvegarder . D'autre part, si le fichier à créer éxiste dejà, il sera remplacé par le nouveau.
- parse_info() - Utilisé pour lire des données. La structure utilisée avec cette fonction est la suivante:
$data_obtained = parse_info ($fichier_à_lire);
Toutes les étiquettes seront placées dans un base de données dans $data_obtained. Pour l'utiliser:
$fonction = $data_obtained['étiquette_à_lire'];
- parse_update() - Utiliser pour mettre à jour les données d'une étiquette. La structure utilisée avec cette fonction est la suivante:
parse_update ($fichier_à_actualiser, 'étiquette_à_actualiser', '$nouveles_données');
[modifier] Dossiers à utiliser
Votre application peut intéragir avec certains dossiers sytème. Si vous souhaitez sauvegarder des données individuellement pour chaque utilisateur, nous vous conseillons de crée un dossier dans chaque dossier utilisateur. Vous pouvez pour ce faire utiliser les variables globales eyeOS, exemple:
<?PHP $dossierdelapplication = USRDIR . USR . "/nomdelapplication/"; if (!is_dir($dossierdelutilisateur)) mkdir ($dossierdelapplication, 0777); ?>
Si vous souhaitez que tous les utilisateurs puissent lire et éditer des données, vous pouvez utiliser le dossier public ("etc/"), également avec des variables système. Voici un exemple :
<?PHP $dossierdelapplication = "etc/nomdelapplication/"; if (!is_dir($dossierdelapplication)) mkdir ($dossierdelapplication, 0777); ?>
[modifier] Charger automatiquement des fichiers Javascript et des feuilles de style CSS
eyeOS se charge de lire le dossier de l'application et ajoute automatiquement tous les fichiers Javascript (*.js) et les feuilles de style (*.css) qui s'y trouvent. Pour ajouter un fichier Javascript ou une feuille de style CSS, il suffit de les placer dans le dossier de l'application et ils seront autimatiquement chargés au démarrage de l'application. F
[modifier] La documentation de l'application: Le fichier d'aide automatique
Ajouter un fichier d'aide à votre application (et afficher le bouton d'accès à l'aide en haut de otre application) est très simple; il suffit de placer un fichier "index.htm" dans le dossier principal de l'application. Si ce fichier éxiste, le bouton d'aide s'affichera et en cliquant dessus, le contenu du fichier index.htm s'affichera dans eyeHelp (une version modifiée de eyeNav). Les fichiers d'aide peuvent être très utiles pour écrire des notes sur l'application tel que les bugs connus, la liste des fonctions encore à l'étude (N.B. 'todo'), l'auteur, etc...
[modifier] Créer le paquet de l'application et l'envoyer à eyeapps.org
Le paquet de l'application est un fichier .tar.gz qui contient un dossier nommé NOMDELAPPICATION.eyeApp et les cinq fichiers obligatoires (aplic.php, propietats.xml et les trois icônes au format PNG). Si vous utilisez Windows, utilisez le logiciel 7zip lien vers ce site pour créer le fichier .tar.gz (non supporté nativement par Windows).
Vous pouvez ensuite envoyer votre paquet à eyeos.org@gmail.com et il sera publié sur le site eyeApps.
Merci de votre contribution !
[modifier] Notes de bas de page
Ce fichier a été traduit le 28/08/2006 par nicolasbureau1@gmail.com

