|
|
|
|
|
- Attributs d'extension divers
- Attributs d'extension spécifiques à la POO et au MVP
- Attributs d'extension spécifiques aux variables
- Attributs d'extension spécifiques aux procédures locales/globales ou internes
- Attributs d'extension de gestion des timers
- Attributs d'extension de gestion des threads
- Remarque
Liste des attributs d'extension
Les attributs d'extension sont des instructions WLangage particulières qui permettent d'ajouter des propriétés ou des fonctionnalités spécifiques à des variables ou à des procédures. Ces attributs d'extension permettent de simplifier le code et de faciliter la maintenance de vos applications. WINDEV, WEBDEV et WINDEV Mobile proposent de nombreux attributs d'extension. Cette page présente les différents attributs d'extension disponibles regroupés par thème. Les catégories des attributs d'extension sont les suivantes : Pour simplifier la saisie des attributs d'extension, l'éditeur de code propose automatiquement la liste des attributs d'extension disponibles lors de la frappe de la touche "<". Pour plus de détails, consultez Complétion automatique. Attributs d'extension divers Les attributs d'extension divers sont les suivants : | | C# | Permet de définir une procédure WLangage appelable via un code C#. | IHM / UI | Permet dans un code ou un traitement contenant à la fois du code UI et du code Métier d'indiquer l'utilisation de la variable ou de la procédure. | Java | Permet de définir une procédure WLangage appelable via un code Java. | Métier | Permet dans un code ou un traitement contenant à la fois du code UI et du code Métier d'indiquer l'utilisation de la variable ou de la procédure. | ObjC | Permet de définir une procédure WLangage appelable via un code Objective C. | synchronisé navigateur | Permet de rendre disponible une variable globale serveur côté navigateur. Le contenu est synchronisé. La valeur affectée à une variable globale "synchronisée navigateur" dans un code serveur est récupérée dans un code navigateur exécuté par la suite. La valeur affectée à une variable globale dans un code navigateur est récupérée à la prochaine exécution d'un code serveur. Limite : Afin d'éviter des écrasements, les modifications sont synchronisées uniquement : Attention : La synchronisation des modifications n'est donc pas effectuée pour le code serveur d'un champ Upload ou d'un champ Image cliquable car ces traitements n'envoient pas la valeur des champs au serveur.L'utilisation de cet attribut d'extension nécessite d'utiliser le framework V2 du code navigateur. | xmlAttribut | Permet d'indiquer que le membre est créé en tant qu'attribut (et non balise). |
Attributs d'extension spécifiques à la POO et au MVP Les attributs d'extension spécifiques à la POO et au MVP sont les suivants : | | Sérialise | Permet de gérer la sérialisation de chaque membre d'une classe ou d'une structure. Pour plus de détails, consultez : | sans pas à pas | Permet d'indiquer qu'une méthode sera ignorée par le débogueur lors d'un débogage en mode "Pas à pas". | immuable | Permet d'indiquer qu'une méthode (ou toutes les méthodes d'une classe) est immuable : lorsque sa valeur est définie, elle ne pourra pas changer. | présentation | Permet d'associer une classe de la couche présentation à une vue (fenêtre ou état). Pour plus de détails, consultez RAD MVP. | mapping | Permet de spécifier le nom du membre à "mapper" au membre de la structure ou de la classe. Pour plus de détails, consultez : | associé | Permet d'accéder aux membres, aux méthodes et aux propriétés d'une classe Modèle depuis sa classe Présentation sans avoir à effectuer de "rebonds".Pour plus de détails, consultez RAD MVP. | copie | Permet d'indiquer l'opération à effectuer lors d'une copie d'une instance d'un objet. - <Copie=Clone> : utilisé sur un objet dynamique, cet attribut d'extension permet de forcer le clonage de l'objet.
- <Copie=Faux> : utilisé sur un membre, cet attribut d'extension permet d'empêcher la copie de la valeur du membre lors de la copie d'un objet dans un autre.
| force destructeur | Permet de forcer l'appel du destructeur (libérer l'objet) même si une référence forte a été prise sur cet objet. | faible | Permet d'indiquer une prise de référence faible. Dans ce cas, les objets seront libérés automatiquement selon leur portée (même si une référence globale a été prise sur ces objets). La référence faible doit être indiquée lors de l'instanciation dynamique de l'objet prenant référence. | note | Permet d'indiquer un commentaire sur un membre de classe (<note=Commentaire sur le membre>). Le contenu de cette note pourra être connu par la propriété AttributNote d'une Description de variable. Rappel : Le type Description de Variable permet d'obtenir des informations sur un membre de classe ou de structure. |
Attributs d'extension spécifiques aux variables Les attributs d'extension spécifiques aux variables sont les suivants : | | couleur | Permet de définir une couleur personnalisée pour colorer une variable sous l'éditeur de code. | Contrôleur | Permet dans le code d'un script de test d'indiquer qu'une variable est de type contrôleur. Cette variable de type contrôleur peut alors être utilisée dans le code du test par exemple pour vérifier le résultat d'une procédure. | indétectable | Permet d'obfusquer automatiquement le contenu de la chaîne en mémoire. | immuable | Permet d'indiquer que la variable est immuable, c'est-à -dire qu'une fois définie, sa valeur ne changera pas. | section critique | Permet d'associer une section critique à une variable. | synchronisé navigateur | Permet de synchroniser une variable globale au projet afin de la rendre disponible coté navigateur. Dans ce cas la valeur affectée à une variable globale dans un code navigateur, peut être récupérée par la suite dans un code serveur. | serveur uniquement | Permet de protéger une variable globale au projet afin de ne pas la rendre disponible coté navigateur. | type champ | Permet d'indiquer le type du champ correspondant à une variable de type Champ. | utile | Permet d'éviter un warning lorsqu'une variable locale est inutilisée. | zombie | Permet d'indiquer qu'une variable ou une procédure est obsolète et ne doit plus être utilisée. |
Attributs d'extension spécifiques aux procédures locales/globales ou internes Les attributs d'extension spécifiques aux procédures locales, globales ou internes sont les suivants : | | nom d'état | Permet d'utiliser le nom d'un état du projet directement dans les paramètres d'une procédure. | nom de fenêtre | Permet d'utiliser le nom d'une fenêtre du projet directement dans les paramètres d'une procédure. | nom de page | Permet d'utiliser le nom d'une page du projet directement dans les paramètres d'une procédure. | automatique | Permet d'indiquer que cette procédure sera exécutée automatiquement après le code d'initialisation (de la fenêtre, de la page ou du projet). | fin traitement | Permet d'indiquer que cette procédure sera exécutée lorsque le traitement contenant l'appel de la procédure sera fini. | fin évènement | Permet d'indiquer que cette procédure sera exécutée lorsque l'événement contenant l'appel de la procédure sera fini. | zombie | Permet d'indiquer qu'une variable ou une procédure est obsolète et ne doit plus être utilisée. | utile | Permet d'éviter un warning lorsqu'une procédure déclare certains paramètres qui ne sont pas immédiatement utilisés. | sans pas à pas | Permet d'indiquer qu'une procédure sera ignorée par le débogueur lors d'un débogage en mode "Pas à pas". | extension | Permet d'indiquer qu'une procédure globale manipulant un type WLangage peut être utilisée en tant que fonction native. |
Attributs d'extension de gestion des timers Les attributs d'extension spécifiques à la gestion des timers sont les suivants : | | timer | Permet d'indiquer que la procédure sera exécutée dans un Timer. | timer | Permet d'indiquer que la procédure sera exécutée dans un Timer. | répétition | Permet d'indiquer que la procédure est appelée plusieurs fois d'affilée (répétitions). | intervalle | Permet d'indiquer la durée (intervalle de temps) entre 2 appels de la procédure. | appels suivants | Permet d'indiquer, dans une procédure appelée dans un Timer, le mode de fonctionnement des appels ultérieurs. | délai | Permet d'indiquer dans un Timer (lors du premier appel) le délai d'attente avant le démarrage de la procédure. |
Attributs d'extension de gestion des threads Les attributs d'extension spécifiques à la gestion des threads sont les suivants : | | thread | Permet d'indiquer que la procédure sera exécutée dans un thread secondaire. | thread principal | Permet d'indiquer que la procédure sera exécutée dans le thread principal. | thread principal asynchrone | Permet d'indiquer que la procédure sera exécutée dans le thread principal sans attendre la fin de l'exécution de la procédure. | thread sécurisé | Permet d'indiquer que la procédure sera exécutée dans le thread secondaire sécurisé. | contexte HFSQL léger | Provoque la copie immédiate d'une partie du contexte HFSQL courant. | contexte HFSQL complet | Provoque la copie immédiate du contexte HFSQL courant. |
Selon le type de déclaration et d'objet utilisé, il est possible de combiner plusieurs attributs d'extension à l'aide de la syntaxe: Déclaration de mon objet <Nom Attribut 1=valeur1, Nom Attribut 2=valeur2, ...> Par exemple, dans le cas d'une déclaration d'une variable de type buffer: Classe m_buffer est un Buffer <sérialise=faux,mapping="MémoImage"> FIN
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|