DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Champs, pages et fenêtres / Fonctions Action
  • Présentation
  • Comment le faire ?
  • Exemple
  • Fonctions WLangage
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Gestion des actions avec Undo/Redo
Présentation
WINDEV permet de gérer facilement le Undo/Redo dans vos applications grâce aux fonctions ActionXXX. L'utilisateur peut alors simplement utiliser les raccourcis Ctrl + Z et Ctrl + Y pour annuler ou refaire une action.
Comment le faire ?
Pour gérer le Undo/Redo dans vos applications WINDEV :
  1. Déclarez les actions à enregistrer dans la pile des actions effectuées grâce à la fonction ActionDo. Cette fonction attend en paramètre le nom de la procédure correspondant à l'action. Cette procédure peut être une procédure locale, globale ou interne.
  2. Dans le code de la procédure correspondant à l'action à faire, utilisez la fonction ActionDéclareUndo pour définir le code à exécuter pour annuler l'action. Cette fonction attend en paramètre le nom de la procédure à exécuter. Cette procédure peut être une procédure locale, globale ou interne.
  3. Utilisez si nécessaire les fonctions suivantes :
    • ActionRedo pour exécuter la dernière action annulée.
    • ActionUndo pour annuler la dernière action effectuée.
Remarques :
  • Il n'est pas possible d'empiler plusieurs fois les MEMES actions définies par la fonction ActionDo. Chaque action demandée par la fonction ActionDo supprime la précédente action identique. Donc, seule la dernière MEME action peut être annulée.
  • Dans le menu contextuel d'un champ, l'option "Annuler" proposée par défaut n'a pas le même effet que la fonction ActionUndo ou que le raccourci Ctrl + Z.

Exemple

L'exemple suivant permet de modifier la couleur de fond de deux champs de saisie. Cette action est annulable par la combinaison de touches Ctrl + Z :
ActionDo(FEN_ACTION, Colorie)
 
PROCÉDURE INTERNE Colorie
SAI_Nom.CouleurFond = VertPastel
SAI_Prénom.CouleurFond = RougePastel
 
ActionDéclareUndo(RetourArriere)
PROCÉDURE INTERNE RetourArriere
SAI_Nom.CouleurFond = CouleurDéfaut
SAI_Prénom.CouleurFond = CouleurDéfaut
FIN
FIN
Pour permettre à l'utilisateur d'annuler plusieurs actions, il suffit d'utiliser plusieurs fois la fonction ActionDo avec des procédures différentes. Par exemple :
ActionDo(FEN_ACTION, Colorie)
ActionDo(FEN_ACTION, MemoriseValeur)
 
PROCÉDURE INTERNE Colorie
SAI_Nom.CouleurFond = VertPastel
SAI_Prénom.CouleurFond = RougePastel
 
ActionDéclareUndo(RetourArriere)
PROCÉDURE INTERNE RetourArriere
SAI_Nom.CouleurFond = CouleurDéfaut
SAI_Prénom.CouleurFond = CouleurDéfaut
FIN
FIN
 
PROCÉDURE INTERNE MemoriseValeur()
SAI_Nom.Note = SAI_Nom
SAI_Prénom.Note = SAI_Prénom
 
ActionDéclareUndo(RetourArriere)
PROCÉDURE INTERNE RetourArriere
SAI_Nom = SAI_Nom.Note
SAI_Prénom = SAI_Prénom.Note
FIN
FIN
Dans cet exemple, le premier Ctrl + Z annulera la mémorisation des valeurs et le second annulera la coloration des champs.
Fonctions WLangage
Les fonctions WLangage de gestion des actions sont les suivantes :
ActionDéclareUndoDéclare comment annuler une action ajoutée avec la fonction ActionDo. Cette fonction DOIT être appelée durant l'exécution de la procédure fournie à la fonction ActionDo.
ActionDoCrée et exécute une action personnalisée (définie par programmation) avec support du "Undo/Redo".
ActionRedoExécute la dernière action annulée.
ActionUndoAnnule la dernière action effectuée par l'utilisateur final.
Voir Aussi
Version minimum requise
  • Version 22
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale