Présentation
Documentation
L'équipe
Sérialisation
 
Programmes
Objets
Libs Utilitaires
Libs Internes
   
 
Editeur
Syntaxes
Windows
Versions
   

SCR/AL1 - Evolutions récentes

24. Modifications apportées dans la version 4.26 (février 96)

Cette version demande une recompilation complète de vos sources (.f et .c)

Fonctions Ansi vs Oem

Quatre nouvelles fonctions ont été ajoutées à la librairie scr4o pour permettre de gérer simplement les différences de codification entre le standard ASCII du DOS et le standard ANSI de Windows.

    SCR_AnsiToOem()
SCR_OemToAnsi()
SCR_AnsiToOemChar()
SCR_OemToAnsiChar()

SCR_AnsiToOemChar()

Transforme un caractère ASCII-PC en caractère ANSI (Latin 1). Seuls les caractères supérieurs à 127 sont modifiés.

Une bijection est définie entre les deux ensembles de caractères (ces ensembles sont largement distincts) de telle sorte que les fonctions SCR_OemToAnsiChar() et SCR_AnsiToOemChar() sont réciproques.

Valeur de retour : le caractère traduit

SCR_OemToAnsiChar()

Transforme un caractère ANSI (Latin-1) en caractère ASCII PC. Seuls les caractères supérieurs à 127 sont modifiés.

Une bijection est définie entre les deux ensembles de caractères (ces ensembles sont largement distincts) de telle sorte que les fonctions SCR_OemToAnsiChar() et SCR_AnsiToOemChar() sont réciproques.

Valeur de retour : le caractère traduit

SCR_AnsiToOem()

Transforme une chaîne de caractères ANSI (Latin-1) en ASCII-PC. Seuls les caractères supérieurs à 127 sont modifiés.

Une bijection est définie entre les deux ensembles de caractères (ces ensembles sont largement distincts) de telle sorte que les fonctions SCR_OemToAnsi() et SCR_AnsiToOem() sont réciproques.

Les deux paramètres (ansi et oem) peuvent être identiques pour effectuer une transformation "sur place".

Valeur de retour : un pointeur vers la chaîne oem résultat

SCR_OemToAnsi()

Transforme une chaîne de caractères ASCII-PC en ANSI (Latin-1). Seuls les caractères supérieurs à 127 sont modifiés.

Une bijection est définie entre les deux ensembles de caractères (ces ensembles sont largement distincts) de telle sorte que les fonctions SCR_OemToAnsi() et SCR_AnsiToOem() sont réciproques.

Les deux paramètres (ansi et oem) peuvent être identiques pour effectuer une transformation "sur place".

Valeur de retour : un pointeur vers la chaîne ansi résultat

Corrections

SCR_change_ext() et SCR_cat_ext() se comportaient de façon erronée dans le cas de fichiers contenant ../ ou ./.

Exécutables

        Syntaxe : scr4_o2a filename ...
scr4_a2o filename ...
        Syntaxe : scr4_vlf filename

MT v3.8

Le programme mt s'est enrichi de nouveaux paramètres, notamment pour permettre de l'utisation dans Windows.

WscrDOSUserInit(argc, argv)

La fonction WscrDOSUserInit() offre une chance à l'utilisateur d'agir sur le comportement du programme avant le lancement de la boucle principale du programme Windows et la création de la fenêtre DOSWIN.

On peut ainsi par exemple vérifier certaines conditions d'exécution ou fixer la taille de la fenêtre en changeant SCR_PAGE_SIZE. Cette modification (SCR_PAGE_SIZE) ne peut en effet plus avoir lieu dans le main(), la fenêtre étant déjà créée.

Module s_winbat.obj

Ce module permet de linker une application SCR/AL1 DOSWIN (ou DOSW32) qui n'a pas d'interface écran, comme une fonction d'impression en background.

Uniformisation 16/32 bits

Uniformisation des fichiers de profile (.prf). Ces fichiers sont dorénavant identiques en DOS, DOS32, DOSWIN ou DOSW32. Par contre, ils restent différents pour chaque architecture (INTEL, MOTOROLA, RISC, ...).

Il en va de même pour les fichier .scr et .cmt. Par conséquent, la génération de ces fichiers peut se faire indifféremment par scr4_e, s4wc_e, s4w_e ou s32w_e.

Il est à noter que le fichier .c généré contient différents #ifdef DOSWIN pour distinguer la gestion des drivers entre les versions Dos et Windows. Il faut donc que le paramètre -DDOSWIN soit inclus dans la ligne de compilation.

Search_fn ISAM

Action exécutée avant de lancer la recherche dans un ISAM. Si elle retourne une valeur non nulle, la recherche n'a pas lieu. Cette action permet par exemple de formatter un champ faisant partie d'un index avant de lancer la recherche.

Syntaxe :

        SEARCH_FN {act_defn}

Correction SCR_search_file()

Correction de cette fonction lorque // se trouve en début de nom.

Impression via popen()

Les appels à

        popen(pgm, "w+")

sont remplacés par

        popen(pgm, "w")

L'ancienne version ne fonctionnant pas dans toutes les versions de Unix.

Fonctions de gestion des dates DT_*

Correction du passage de dates le 29/2 dans les années bisextiles.

Edition des MPAGES

Les champs HIDDEN ne sont plus repris lors du passage d'index à index dans la APG.

SCAN : fonction SC_hit_key()

Lorsqu'un programme n'est pas lancé avec un interface écran (SCR_mini_init() au lieu de SCR_init(), le SCAN (qui utilise la fonction SC_hit_key()) ne peut être arrêté en pressant un touche.

Copyright © 1998-2015 Jean-Marc Paul and Bernard PAUL - Envoyez vos remarques ou commentaires à bernard@xon.be