# 4DPop |

4DPop installe une palette dans le mode développement. Cette palette s'enrichit d'outils au fur et à mesure de l'installation de composants compatibles.

## Installation

1. | Créez un dossier "Components" à côté du fichier de structure de votre base (".4db")
2. | Placer le dossier "4DPop.4dbase"* ou un alias de ce dernier dans le dossier "Components"
3. | Ouvrez votre base.
4. | Dans la méthode base "Sur ouverture", tapez "Install 4DPop" puis la touche tabulation. Le code ci-essous est inséré dans la méthode. `Run 4DPop `This code is available even if the component is not present like in the final application. Si (Non(Mode compile)) TABLEAU TEXTE($tTxt_Components;0) LISTE COMPOSANTS($tTxt_Components) Si (Chercher dans tableau($tTxt_Components;"4DPop")>0) EXECUTER METHODE("4DPop_Palette") Fin de si Fin de si
5. | Redémarrez votre base, la palette s'affiche lorsque vous êtes en mode développement en bas à gauche de l'écran.

*Sur Macintosh le composant est un package dont l'extension ".4dbase" n'est pas obligatoirement visible en fonction des réglages de vos préférences d'affichage.

## Utilisation

L'aide de 4DPop est disponible dans le menu "Aide" ou en cliquant sur l'icône "i" de la palette.

Si la palette est présentée fermée, vous pouvez l'ouvrir en tirant sur la poignée.

Si vous double-cliquez sur la poignée de la palette fermée, celle-ci se déploie en ajustant sa taille au nombres d'outils présent. Un double clic sur la poignée de la palette ouverte la referme. La position de la palette et son état contracté ou déployé sont mémorisés entre chaque cession.

Si aucun composant compatible n’est installé, la palette déployée affiche une image

Si un ou plusieurs composants compatibles sont installés, ils apparaissent sous la forme de boutons.

- Un clic sur l'un de ces bouton peut soit lancer l’outil soit déployer un menu permettant de sélectionner un outil dans une collection.
- Un clic associé à la touche option sur Macintosh ou Alt sur PC ouvre le fichier d'aide associé au composant (fichier "MonComposant.htm" placé à côté de la structure du composant)

Vous pouvez déplacer la palette par sa barre de titre, la placer à droite ou à gauche de l'écran. La position de la palette est mémorisée.

Un menu contextuel est accessible sur la barre de titre de la palette. Il reprend l'ensemble des outils chargés et des options d'affichage de la palette.

Vous pouvez installer un nouveau composant compatible dans la palette en le déposant sur cette dernière. Après confirmation un alias de la base est créé dans le dossier "Components" et la base redémarrée.

Si un ou plusieurs composants compatibles sont déposé sur la palette de 4DPop, cela provoque l'affichage d'un assistant d'installation qui permet de choisir entre une copie du composant dans le dossier "Components" ou la simple création d'un alias.

L'assistant permet en outre de redémarrer automatiquement la base lorsque l'installation est terminée afin que les nouveaux composants soient chargés.

Note : Les composants sont chargés par ordre alphabétique : Pour forcer un composant à être chargé en premier (le plus à gauche) vous pouvez préfixer le nom du dossier avec "01" par exemple.

Un clic contextuel sur la barre de titre de la palette déploie un menu reprenant :

- La liste des composants installés avec un éventuel sous-menu reprenant les fonctions associées au composant. La sélection d'une ligne est équivalente au clic sur un bouton de la palette.
- Les items "Contracter" et "Déployer" qui permettent de replier ou de dﾎplier la palette. (Équivalent au double-clic sur la poignée de la palette)
- Un menu "Apparence" associé à un sous menu reprenant les différentes apparences disponibles pour 4DPop. La sélection d'une apparence charge cette dernière et modifie l'aspect de la palette 4DPop. L'apparence courante est mémorisée et sera restituée lors de la prochaine cession. Les apparences sont paramétrées, chacune dans un dossier situé dans le dossier "Skins" lui même placé dans le dossier "Resources" du composant. Le paramétrage repose sur un fichier "skin.xml" et des éventuels fichier images. Une documentation de se fonctionnement est à venir.

- Un menu "Position" qui par ses items permet de re positionner rapidement la palette de 4DPop à l'un des 4 coins de l'écran principal.
- Un item à propos qui doit ouvrir cette page.

## Composants compatibles

Les outils que vous pouvez intégrer à 4DPop sont des composants interprétés ou compilés, ils répondent donc aux règles de développement des composants (cf. documentation).

L'intégration d'un composant dans la palette 4DPop est basée sur la présence d'un fichier « 4DPop.xml » dans le dossier « Resources » de la base du composant. Ce fichier décrit les éléments du composant qui seront disponibles à l'aide de clefs et de leurs attributs.

`<?xml version="1.0" encoding="UTF-8" standalone="no" ?>` `<tools name=":xliff:Ruler" picture="Ruler.png" helptip=":xliff:ToolHelpTip" initProc="Init">` `<tool name="Rulers" method="4DPop_ScreenRuler"/>` `</tools>`

Balise | Description
<tools></tools> | Début et fin du fichier (balises obligatoires) Attributs : • name : Nom* tel qu’il sera affiché sous le bouton (obligatoire) • picture : Nom du fichier image du bouton. Ce fichier doit se trouver à la racine du dossier « Resources » du composant. (facultatif, si omis une image par défaut est • helptip : Texte* de la bulle d’aide associée au bouton. • initproc : Nom de la méthode** du composant à exécuter au chargement. • ondrop : Nom de la méthode** du composant à exécuter lors d'un déposer sur le bouton. • default : Nom de la méthode** du composant à exécuter lors d'un clic simple sur le bouton lorsque plusieurs outils sont définis. • popup : Flag d’affichage de la flèche de popup lié au bouton. Valeurs : "true" (pour un affichage de la flèche même si il n'y a qu'une seule balise <tool> cf. infra)
<tool></tool> | Début et fin d’une définition d’un outil et de ses attributs. Cette balise peut être répétée : s’il n’y a qu’une balise <tool> la méthode est exécutée dès le clic sur le bouton, s’il y a plusieurs balises <tool> une flèche de menu liée au bouton est affichée et un menu listant les outils est proposé à l’utilisateur. Dans le cas où la balise default ci-dessus est définie, un clic simple lance la méthode définie par défaut et un clic long ou sur la flèche affiche le menu des outils. Attributs : • name : Nom* de l’outil telle qu’elle apparaîtra dans le menu associé au bouton. (obligatoire si plusieurs balises <tool>) • method : Nom de la méthode** du composant correspondant à l’outil à exécuter. (obligatoire) • picture : Nom du fichier image associé à la ligne de menu. Ce fichier doit se trouver à la racine du dossier « Resources » du composant. Note : La méthode du composant peut se charger de construire et d'afficher le menu. Dans ce cas une seule balise <tool> appelle la méthode du composant dont le code affiche le menu et traite le choix de l'utilisateur. Pour que la flèche du menu lié soit affichée sur le bouton de votre outil, vous devez passer "true" dans l'attribut popup de la balise <tools>

* Accepte la syntaxe « :xliff :resname » les chaînes doivent alors se trouver dans les fichiers xliff du composant. Cette syntaxe permet d'afficher une chaîne localisée.

** Les méthodes doivent avoir été déclarées comme partagées dans la base du composant.

Note : Toutes ces méthodes reçoivent en paramètre un pointeur (sur le bouton de la palette qui peut servir à tester l'état du bouton ou à positionner correctement un popup). Pour pouvoir faire fonctionner le composant en compilé, ce paramètre doit être déclaré explicitement [C_POINTEUR($1)] dans toutes les méthodes du composant appelées par 4DPop (initproc, ondrop, default, et method) sinon une erreur (-20008 - Paramètres incorrects dans une commande EXECUTER) sera générée à chaque fois que la méthode est appelée.

## Quoi de neuf

> #### version 1.2 :

> - La version du composant est affichée dans le coin supérieur gauche de la palette.
> - La palette de 4DPop se souvient de son état déployé/contracté entre deux sessions.
> - Implémentation d'un assistant d'installation.
> - Possibilité d'installer plusieurs composants simultanément.
> - Il est maintenant possible de changer l'aspect de la palette.
> - Ajout de la balise ondrop.

## Code source fourni

Ce composant est fourni en version compilée, mais vous trouverez le code source dans le dossier "Sources" à l'intérieur du dossier du composant.

## Forum

Un forum pour 4DPop est disponible à cette adresse : Forum 4DPop