Brevet FR2559597A1 — publié le 19850816

La présente invention se rapporte à des systèmes informatiquesutilisés pour définir un programme-cible ou objet en réponse au toucher d'un écran du système par un utilisateur, et elle a trait plus particulière- ment à des moyens permettant d'exploiter intégralement l'intelligence d'un système à écran sensible au toucher. Un écran sensible au toucher est décrit dans une demande de brevet déposée aux Etats-Unis d'Amérique sous le No. 533 384 par Thomas Earl Kilbourn et Scott Robert McCleiland. Comme mentionné dans cette demande de brevet, l'écran sensible fournit une source efficace d'informa- tions concernant le mouvement de la zone de toucher entre un opérateur et une surface de visualisation telle qu'un tube cathodique. On a mis au point d'autres dispositifs qui permettent à l'utilisateur de sélectionner sur l'écran une position qui, une fois choisie, enclenche une operation associée à cette position. Ces dispositifs cormprennent des composants tels que des "marqueurs", des trLpons/styles graphiques et des crayons lumineux. Ces dispositifs se composent en réalité de deux méca- nismes, dont l'un fournit une information de position et l'autre une information d'activation au programme- cible. Dans ces systèmes, il faut remonter jusqu'au programme-cible pour traduire l'information de position en une directive opérationnelle correspondante et pour faire en sorte que cette operation soit exécutée lors- qu'une activation est demandée par l'utilisateur. Le pregr n e-ciie intervient par conséquent dans le processus de sêlection/activation même si l'opération 9 d xécut-er est extérieure au programme-cible. Ces sys- zemes necessi'-nt habituellement l'utilisation d'un curtseur pour ur retour de position a l'utilisateur de nDiere aue celui-ci puisse voir quelle position est prssentement sl!ectionnee. En conséquence, ces systèmes ne possèdent aucune intelligence intrinsèque. Ils four- nissent sir.mplement une information de position et une information d'activation au programme-cible. Dans d'autres systèmes, des touches de fonctions mécaniques sont prévues sur le clavier physique agencé d'une manière telle qu'elles correspondent en positions relatives à des étiquettes qui sont affichées le long de la lisière inférieure de l'écran d'affichage. En effectuant une corrélation visuelle entre la position d'une étiquette sur l'écran et la position d'une touche de fonction sur le clavier, l'utilisateur est capable de sélectionner la touche de fonction appropriée à enfoncer de manière à exécuter l'opération désirée. Du fait que les étiquettes de fonctions sont séparées des touches de fonctions, il est possible d'effectuer une sélection erronée. Conformément à un mode préféré de réalisation de la présente invention, il est prévu un système à écran sensible au toucher qui soit programmable et intelligent. L'effet principal d'établissement de cet environnement consiste en ce que le programme-cible peut définir sur l'écran un "clavier à touches logiciel" qui est totalement indépendant d'un clavier à touches physique ou matériel et qui n'est par conséquent pas affecté par les limitations du clavier à touches phy- sique traditionnel. Les "touches" sont créées, dans le présent environnement, en utilisant des zones de contact ou de toucher. Les touches peuvent avoir sur l'écran toutes dimensions, formes et positions ren- trant dans les limites physiques de dimensions et de résolution de caractères de l'écran de visualisation. En outre, le programme-cible peut définir des touches qui ont des formes différentes, qui utilisent des modes différents de retour à l'utilisateur et qui ont des types d'opérations différents. Le type d'opération d'un groupe particulier de touches peut changer dynamiquement avec l'état du programme-cible. En outre, l'ensemble du clavier peut changer d'une forme à une autre dynamiquement avec l'état du programme-cible. En conséquence, les contraintes de fonctionnalité d'entrée/ sortie qui sont imposées au programme-cible par l'envi- ronnement visualiseur/clavier traditionnel peuvent être grandement réduites par l'utilisation de l'environnement microprogrammé d'écran sensible au toucher conforme à la présente invention. Cela permet au programme-cible de constituer pour l'utilisateur un instrument beaucoup plus efficace que ce qui serait possible d'obtenir au- trement. En conséquence, la présente invention met à notre disposition un système à écran sensible qui soit programmable et intelligent. D'autres caractéristiques et avantages de l'in- vention seront mis en évidence, dans la suite de la des- cription, donnée à titre d'exemple non limitatif, en référence aux dessins annexes dans lesquels: la Figure 1 est un schéma à blocs d'un mode préféré de réalisation de la présente invention, défi- nissant la commande de l'écran sensible et les voies de tranismission de données du système; la Figure 2 est un schéma à blocs montrant le processus topographique d'établissement de relation entre une position de toucher et des opérations de com- mande et de traitement de données du système; la Figure 3 est un schéma à blocs du système à écran sensible utilisé pour définir, sélectionner et enclencher une operation de système; la Figure 4 est un schéma à blocs illustrant une utiii3tion no-rale du clavier à touches classique tiour émettre des ordres; la Figure 5 est un schéma à blocs illustrant une utilisation d'un écran sensible au toucher pour émettre des ordres. On va riaintenant décrire un mode préféré de réalisation de l'invention. Sur la Figure 1, un système à écran sensible au toucher, progranmmable et intelli- gent, est représenté sous forme d'un agencement d'un ensemble logiciel, d'un ensemble microprogrammé et d'un ensemble matériel. Dans le mode de réalisation de l'invention, le système à écran sensible au toucher comprend une partie matérielle d'écran 101, une partie matérielle vidéo 102, une partie matérielle de clavier 103 et une partie matérielle de communication de données 104. Le système à écran sensible au toucher comporte également une partie microprogrammée d'écran 111, une partie microprogrammée vidéo 112, une partie micropro- grammée de clavier 113, une partie microprogrammée de traitement de code de touche 114, une partie micropro- grammée de communication de données 115, une partie microprogrammée d'analyse de séquence de commande 116 et une autre partie microprogrammée 117. Le système comprend en outre un système d'exploitation 123 tel qu'un système MS/DOS disponible auprès de Microsof Inc., Bellevue, Washington, opérant sous la commande AIOS (système d'entrée/sortie alphanumérique) 121 et de BIOS (système d'entrée/sortie de base) 122 pour la commande de programmes logiciels 124 d'application locale, d'utilisateur ou de système. Dans la suite, le système à écran sensible au toucher, intelligent et programmable, de cette invention va être expliqué d'une manière plus précise en relation avec la partie microprogrammée d'écran 111, l'interface écran/AIOS 121, des séquences de commande d'écran et des séquences d'éditions d'écran. Le module de microprogrammation d'écran 111 se compose d'une série de routines de microprogrammation qui définissent une machine virtuelle simple à utiliser mais cependant efficace pour l'exécution d'opérations concernant l'écran sensible au toucher. La machine virtuelle reçoit des données d'entrée provenant de la partie matérielle d'écran 101 et elle commande des entrées de données provenant du programme-cible 105, 117, 124, etdes sorties de données vers le programme- cible 105, 117 et 3.24, et en outre elle assure la commandé d'opérations concernant d'autres éléments de la partie microprogrammée de système 112, 113, 114. Le programme-cible est usuellement un programme d'ap- plication de logiciel 124 se déroulant sous la commande du système d'exploitation MS/DOS 123. Cependant, le prcgrammte-cible peut aussi être un autre module de micLoprogrammation 117 (par exemple, une microprogram- mation de configuration), un logiciel de système 124 [par exemple, "Personal Application Manager PANM" (Progranmme de gestion pour application personnelle PAM)], un logiciel 124 écrit par l5utilisateur, ou bien un programme 105 se déroulant dans un ordinateur éloigné, et communiquant au moyen d'un accès de communication de dornées 115f 104. On va donner dans la suite une description dfieSb'le de la fonctionnalité de la partie micropro- grariumne d'écran 11i. Une description détaillée des for- mats.Vientrée de commande et de sortie de données con- ce.nant la partie microprogrammée d'écran 111 ainsi que des opérations de commande amorcées par la partie micro- progrc.mmée d'ecran sera donnée dans la description d'intLerface ecran/AIQS et dans la description des s-quence3 de coamande et d' édition concernant l'écran. I. Partie orrame dcran sensible au toucher i) Entree d données dans la partie micropro rammée d éicran. La partie matérielle d'écran 101 détecte un touecher initial sur la surface d'écran, un changement de position de toucher sur la surface d'écran et la suppression du toucher avec la surface d'écran, appelée "libération", et elle envoie cette information à la partie microprogrammée d'écran 111. Dans les deux premiers cas, une information de position est envoyée à la partie microprogrammée d'écran 111. Dans le troi- sième cas, une information est transmise pour indiquer qu'une libération s'est produite. Dans tous les cas, la partie microprogrammée d'écran 111 contrôle une représentation interne en coordonnées pour déterminer quelle opération devrait être effectuée pour la posi- tion particulière sur l'écran, comme indiqué sur la Figure 2. En fonction de l'état présent de la partie microprogrammée d'écran 111 et de l'opération de repé- rage de la position indiquée par la partie matérielle d'écran 101, une certaine opération peut être amorcée. B) Entrée de commande dans la partie microprogrammée d'écran. La partie microprogrammée d'écran 111 est ap- pelée par le programme-cible de manière à établir cer- tains paramètres d'environnement comme indiqué sur la Figure 1. Le résultat global consiste dans la définition de la fonction qui doit être exécutée lorsqu'une position particulière de l'écran est touchée par l'utilisateur. 1. Validation/invalidation de mode d'édition de donnéespar toucher de colonne et de rangée. Ce mode fait en sorte que la donnée éditée par toucher et/ou libération par la partie matérielle d'écran soit traduite en une paire de valeurs de coordonnées se rapportant à l'écran et correspondant au numéro de rangée et au numéro de colonne de la position touchée par l'u- tilisateur. L'édition de donnée concernant une rangée et une colonne est transmise au programme-cible seulement s'il n'existe aucune zone définie par la position touchée (cf. le paragraphe 6 ci-dessous) ou bien si le mode d'édition de zone est invalidé (cf. le paragraphe 2 ci-dessous). Une édition de zone a toujours la préséance sur une - édition de rangée et de colonne pour une position donnée sur l'écran (Figure 2). 2. Validation/invalidation de mode d'édition de zone de toucher. Ce mode fait en sorte que la donnée éditée par toucher et/cu libération par la partie matérielle d'écran 101 soit traduite en une opération particulière définie pour la zone de toucher qui occupe sur l'écran la posi- tion qui a été touchée par l'utilisateur. Se reporter à l'analyse des zones de toucher dans le paragraphe 6 ci-dessous. 3. Validation/invalidation dela sensibilité au toucher des étiquettes de touche logicielle. Cela est comm.ande sur une étiquette individuelle par une b as8e dtiquette. Lors d'une validation, le tou- cher d'une étiquette de touche logicielle particulière p7oqcue l'exécution de la mêxme opération que ce qui se pro1uirai.t si l'utilisateur actionnait une touche de fonction correspondante (c'est-à-dire une touche fonc- ticnnelle) bur le clavier à touches physique ou matériel. C..ommutation de. l'état MARCHE/ARRET de la partie microprogrammée d'écran. 253 aDr-s l'état "marche", toutes les fonctions dcfinies -par ie s premetres de modes décrits ci-dessus ssert: o.pratione!les. Dans l'état "arrêt", toutes les operations3 ffectu6es par la partie microprogrammrée d'Écran 1!1 seront arrt'ers. La partie matérielle 3(t d'écran! (a erra encore des données de toucher à la partie. .. i-i.rar.tée 111 mais les données seront 5. Retour de la partie micro2pogramme d'écran 111 à l'état "initial". Les détails particuliers de l'état initial dépendent des paramètres de modes qui ont été définis dans l'analyse précitée. Cependant, l'état initial peut être défini comme l'état qui existe après que tous les modes opérationnels ont été définis mais avant qu'une donnée de toucher ait été reçue en provenance de la partie matérielle d'écran 101. 6. Définition de zones de toucher. Cette-fonction permet au programme-cible 120 de définir sur l'écran des emplacements rectangulaires de telle sorte que les emplacements se comportent d'une manière particulière lorsqu'ils sont touchés et/ou libérés. Il existe plusieurs types différents de zones de toucher qui peuvent être définis. Les types différents de zones qui vont être décrits dans la suite ont des modes fondamentaux de comportement qui diffèrent légère- ment d'un type à un autre, mais il existe une fonction- nalité de principe qui est commune à tous. a) L'emplacement rectangulaire de l'écran qui est entouré par les lisières d'une zone parti- culière répond à un toucher comme une entité inté- grale. Un toucher d'un point à l'intérieur de la zone produit exactement le même effet qu'un toucher d'un point différent à l'intérieur de la zone. Si la zone a été définie de telle sorte que l'amé- lioration d'affichage change lorsqu'elle est tou- chée et/ou libérée, alors toute la zone change en ce qui concerne l'amélioration d'affichage indépendamment du point o cette zone a été touchée. b) La zone est protégée contre une répétition de contact. Après que le toucher initial a été effectué dans la zone, un autre mouvement à l'intérieur de la zone est ignoré jusqu'à ce aue, soit un mouvement soit effectué dans une position située à l'extérieur des lisières de la zone, soit l'écran soit libéré. c) La zone provoque l'amorçage d'une opération particulière lorsqu'elle est touchée et/ou libérée par l'utilisateur. Il s'effectue une corrélation topographique particulière entre une zone individuelle et l'opération qu'elle amorce. d) Des processus de retour visuel et acoustique à l'utilisateur (par exemple, une amé- lioration de brillance d'affichage ou bien un déclic audible) sont utilisés pour aider l'utilisateur à déterminer si son action de toucher et/ou de libé- ration d'une zone a été satisfaisante. 7. Suppression de zones de toucher. Cette fonction permet de supprimer de l'envi- ronnement de l'écran une zone de toucher individuelle do ou bien toutes les zones de toucher existantes. C) Sortie de données de la partie microprogrammme d'écran. Une donnée de l'écran peut être envoyée au programme-cible par la partie microprogrammée d'écran 111 en résultat d'une action effectuée sur l'écran par l'utilisateur, comme indiqué sur la Figure 1. A l'excep- tion de zones ASCII, la donnée engendrée est mise au format d'une manière telle que le programme-cible puisse la distinguer parmi d'autres types de données (par exemple une donnée de clavier à touches). La partie microprogrammée d'écran 111 est capable de produire une donnée d'écran à la fois sous une forme binaire interne en vue d'une communication avec des programmes-cibles se d6roulant à l'intérieur du système et également sous une forme de séquence de commande en vue d'une communica- tion à un programme-cible éloigné. La donnée engendrée par les zones ASCII ne peut pas être distinguée d'une donnée engendrée par actionnement du clavier à touches physique concernant des programmes-cibles soit locaux soit éloignés. D) Sortie de commande de la partie microprogrammée d'écran. Il existe plusieurs types de commandes pouvant être fournis par la partie programmée d'écran 111, comme indiqué sur la Figure 1. 1. Activation de touche logicielle. Le toucher d'une étiquette de touche logicielle provoque l'exécution de la fonction de touche logicielle correspondante. Celle-ci est considérée comme étant une fonction de commande du fait qu'elle simule un actionne- ment de la touche de fonction équivalente du clavier physique. L'actionnement de la touche logicielle parti- culière peut être tel que celle-ci envoie une donnée au programme-cible 120. 2. Zones de code detouche. Des zones de toucher peuvent être définies de manière à se comporter exactement de la même manière qu'une touche particulière de commande du clavier physique (par exemple, montée de curseur, espacement arrière et retour de chariot). 3. Retour à l'utilisateur. Toutes les opérations amorcées par la partie microprogrammée d'écran 111 à la suite d'un toucher et/ou d'une libération par l'utilisateur produisent un déclic audible simulant celui d'un clavier à touches. En outre, des zones de toucher peuvent être définies de manière à produire un son audible lorsqu'elles sont touchées et de manière que l'amélioration d'affichage de la zone de toucher change lorsqu'elle est touchée et/ou libérée. 4. Position de curseur. Des zones de toucher peuvent également être définies de telle sorte que le curseur soit placé dans le coin supérieur gauche de la zone lorsqu'elle est touchée et/ou libérée. II. Description d'interface AIOS/écran sensible au toucher On va décrire l'environnement AIOS par rapport à un écran sensible au toucher et à des définitions de fonctions d'écran. Cette description d'interface s'ap- plique seulement à des programmes-cibles locaux. ]5 A) Particularités des zones de toucher. Quatre types de zones de toucher sont dispo- nibles comme suit: 1. Zone ASCII: Dans ce mode, une chaîne de réponse de carac- tères ASCII est obtenue par des opérations consécutives d'entrée. La première entrée obtient le premier octet ASCII, la seconde entrée obtient le second octet ASCII, etc. La chaîne de réponse est engendrée quand la zone est activée (touchée et/ou libérée) et elle ne peut pas être distinguée de l'introduction de la même chaîne à partir du clavier à touches Une répétition automatique, équivalent à!'enfoncement et au maintien d'une touche du clavi:er physique, est également effectuée. 52. Zone de code de touche: Lee deux mots de données de la chaîne de réponse sont consid'ris comme un code de touche et comme un qua- 1ificateur et ils sont traités par des routines de clavier à touchez rguliëres. Le résultat final du toucher dépend de l'état et du mode de traitement de clavier. Le tou- cher simule l'enfoncement d'une touche sur le clavier physique et la libération simule un reléchement de touche. Une répétition automatique est également ef- fectuée. 3. Commutation de zone: La zone de toucher est définie comme un inter- rupteur commutable. Chaque toucher de la zone fait com- muter cette zone entre une condition d'activation ou de désactivation. A chaque fois que la zone est touchée, une édition est produite pour le programme d'application. L'édition se compose de trois octets de données. Les données peuvent &tre obtenues par trois opérations con- sécutives d'entrée par clavier. Le mot qualificateur de chaque octet de données renvoyé au programme d'applica- tion contient l'identification d'écran. Les trois octets de données en notation hexadécimale de chaque édition sont les suivants: 01 = code d'opération d'édition de zone activée dl = premier octet de chaîne de réponse d2 = second octet de chaine de réponse 02 = code d'opération d'édition de zone désactivée dl = premier octet de chaîne de réponse d2 = second octet de chaîne de réponse 4. Zone normale: La zone de toucher est définie comme produisant une édition lors d'un toucher et/ou d'une libération. Chaque édition se compose de trois octets de données. Les données sont à nouveau obtenues par trois opérations consécutives d'entrée par clavier. Le mot qualificateur de chaque octet de données renvoyé au programme d'appli- cation contient l'identification d'écran et une répétition automatique est également effectuée. Les trois octets de chaque édition sont les suivants: = code d'opération d'édition de zone activée dl = premier octet de chaîne de réponse d2 = second octet de chaîne de réponse 06 = code d'opération d'édition de zone désactivée dli = premier octet de chaine de réponse d2 = second octet de chaîne de réponse Des zones de toucher peuvent se chevaucher. Dans l'affirmative, la définition la plus récente d'une position d'écran a alors la préséance. B) Edition de rangée et de colonne. Les octets de réponse pour édition de rangée et de colonne, engendrés lorsqu'un toucher se produit, sont obtenus octet par octet en utilisant la fonction d'entrée par clavier du système d'exploitation. Trois octets de données sont renvoyés pour chaque édition. Le mot qualificateur renvoyé avec chaque octet de données contient l'identification d'écran. Les octets de données pour une édition de rangée et de colonne lors d'un toucher sont les suivants: 03 = code d'opération d'édition pour toucher de rangée ou de colonne dl = numéro binaire de rangée touchée d2 = numéro binaire de colonne touchée Les octets de données pour une édition de rangée et de colonne en cas de libération sont les suivants: 04 = code d'opération d'édition de rangée ou de colonne en cas de libération dl = numéro binaire de rangée touchée d2 = numéro binaire de colonne touchée. C) Fonctions de commande d'un écran sensible au toucher. L'ensemble suivant de fonctions permet la com- mande d'un écran par un programme-cible local. 1. Définition de zonede toucher. Entrées: (0,32) Le code de fonction. ((STRING)) Pointeur sur chaîne de réponse. Chaine Pointage sur 2 mots d'une zone de code de touche, le premier mot étant le qualificateur et le second mot étant le code de touche. Pointage sur 2 octets pour une zone commutable ou normale, 0-80 octets pour une zone ASCII. (LENGTH) Longueur de chaîne de réponse comme Longueur défini ci-dessus. (ATTRIBUTE, MODE) Mode définition. Type, Mode 1 = édition seulement lors d'un toucher. 2 = édition seulement lors d'une libération. 3 = édition à la fois lors d'un toucher et d'une libération. Types de toucher. 1 = zone ASCII 2 = zone de code de touche 3 = zone commutable 4 = zone normale. (ON_ENH, OFF_ENH) Des améliorations de la zone pour un état d'activation et un état de désac- tivation d'une zone commutable ou bien un état d'activation et un état de désactivation de zones ASCII, de code de touche et normales. (CURSOR, BEEP) BEEP 0 = ne produit pas de bip quand fCurseur, bipj elle est touchée 1 = produit un bip quand elle est touchée CURSEUR 0 = ne positionne pas de curseur quand elle est commutée ou activée 1 = positionne un curseur quand elle est commutée ou activée. (LRROW, LRCOL) Rangée et colonne du coin inférieur droit de la zone de toucher. (ULROW, UL_COL) Rangée et colonne du coin supérieur gauche de la zone de toucher. Sorties: 1- MX. état de retour. 2. Définition de zone de touche logicielle. Cette fonction valide ou invalide une des huit 2 zones de toucher d'étiquette de touche logicielle. Lorsqu'elle est touchée, la zone produit la même réponse que si la touche de fonction correspondante était en- foncée. La condition de défaut est que toutes les zones de toucher de touche logicielle sont validées. Entrées: (0,33) Code de fonction. (MODE, KEY NUMBER) Numéros de touches logicielles = 1 à 8 MN0 adetouche) Mode: 1 = validation 0 = invalidation. 3d Sosrties: AX:;tat de retour. 3. SuEpression de zone de toucher. Supprime la zone de toucher dans la position de rangée et de colonne. Rien ne se produit s'il n'existe pas de zone de toucher. La rangée et la colonne sont des coordonnées relatives à l'écran. Entrées: (0,34) Code de fonction. (ULROW, ULCOL) Position de zone à supprimer *(-1, -1) supprime toutes les zones. Sorties: AX: état de retour. 4. Retour à l'état initial de l'écran. Fait passer toutes les zones dans l'état d'ar- rêt ou de désactivation. Entrées: (0,35) Code de fonction. Sorties: AX: état de retour. 5. Enclenchement des modes d'édition. Cette fonction commande les types d'éditions d'écran et le mode d'édition (toucher/libération) pour des éditions de rangée et de colonne. Entrées: (0,35) Code de fonction. (,SCREENMODE) Edition de zone ou de rangée et de colonne. 0 = Invalidation de toutes les éditions. Des zones de touche logicielle sont encore validées. 1 = Validation seulement d'une édition de rangée et colonne. Tous les touchers produisent une édition de rangée et de colonne. Des zones de toucher sont invalidées. 2 = Validation seulement d'une édition de zone de toucher. Une édition de rangée et de colonne est invalidée. 3 = Validation à la fois d'une édition de rangée et de colonne et d'une édition de zone. Une édition de rangée et de colonne se produit pour des emplacements non définis comme des zones de toucher. 4 = Commutation marche/arrêt de l'écran. Lors de l'arrêt, toute l'activité de l'écran est invalidée, notamment les zones de touche logicielle. Lors de la marche, toute l'activité de l'écran est validée comme défini précédemment. 10..14 = Identique à 0..4 mais provoque la génération d'éditions de séquence d'échappement. Ces codes doivent être utilisés seulement par le pro- gramme d'analyse de système. (,ROWCOL_MODE) Edition de rangée et de colonne lors d'un toucher ou d'une libération. = Edition lors d'un toucher. 2 = Edition lors d'une libération. = Edition lors à la fois d'un toucher et d'une libération. Sortiese AX: état de retour. il. Description de séquence d'échappement d'écran - Séquences de commande L'ensemble suivant de séquences d'échappement permet une cojwmande de l'écran sensible à partir d'un programme-cible éloigné se déroulant dans un ordinateur éloigné. Toutes les séquences décrites sont en corres- 35.ondance exacte avec des opérations supportées par l'interface AIOS/écran 121. Une description de la fonctionnalité desdites opérations est faite dans la section suivante IV. La condition de défaut de l'écran est que toutes les éditions sont invalidées. En conséquence, il est possible de définir des zones et de faire en sorte qu'elles ne répondent pas à un toucher. La séquence "établissement de modes" qui est expliquée dans la section E doit être utilisée pour valider l'écran avant qu'une édition puisse se faire. A. Définitionde zone de toucher. ESC-zg r Deux numéros séparés par une virgule qui définissent les lisières de rangée supérieure et inférieure de la zone. c Deux numéros séparés par une virgule qui définissent les lisières de colonne de gauche et de droite de la zone. p Invalidation/validation du mode de positionnement de curseur. b Invalidation/validation de bip pour un mode de toucher. e Définit l'amélioration pour l'état de désactivation de la zone (cf. Tableau 1). f Définit l'amélioration pour l'état d'activation de la zone (cf. Tableau 1). a- Définit le type de la zone. 1 = zone ASCII 3 = zone commutable 4 = zone normale m Définit le mode de toucher pour la zone. 1 = Edition seulement lors d'un toucher. 2 = Edition seulement lors d'une libération. 3 = Edition lors d'un tou- cher et d'une libération. L Définit la longueur de chaîne d'édition. Peut avoir les va- leurs 0 à 80 pour des zones ASCII et exactement la valeur 2 pour des zones commutable et normale. La chaîne d'édition. Peut contenir jusqu'à 80 caractères ASCII pour toute variété de zones ASCII. Doit correspondre à deux caractères ASCII en minuscules pour des zones commutable et normale. TABLEAU 1 Scurité etaLtie 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Sécurité non établie 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Demi-brillance X X X X X X X X Soulignement X X X X X X X X Vidéo inverse X X X X X X X X CLignijtement X X X X X X X X B. Définition zone de touche logicielle. ESC-z s Le numéro de la touche logicielle à redéfinir. k Validation/Invalidation réponse de toucher. C. Suppression dezone de toucher. ESC-z s Coordonnée de rangée du coin supérieur gauche de la zone à supprimer. c Coordonnée de colonne du coin supérieur gauche de la zone à supprimer. Si les paramètres r et c sont omis, toutes les zones sont alors supprimées. D. Retour à l'état initial de l'écran sensible au toucher ESC-zJ Ramène toutes les zones dans l'état de désactivation. E. Etablissement de modes. ESC-z n Mode d'écran. 0 = Invalidation de toutes les éditions. Les touches logi- cielles sont encore actives à moins qu'elles ne soient invalidées explicitement par la séquence "Définition de zone de touche logicielle". 1 = Validation seulement édition rangée, colonne. 2 = Validation seulement édition zone de toucher. 3 = Validation à la fois édition rangée, colonne et édition zone de toucher. zone de toucher. Z559597 4 = Commutation marche/arrêt écran. En cas d'arrêt, toutes les opérations de l'écran sont désactivées, y compris une réponse de touche logicielle. m Mode de toucher pour édition rangée, colonne. 1 = Edition seulement lors d'un toucher. 2 = Edition seulement lors d'une libération. 3 = Edition lors d'un toucher et d'une libération. IV. Description de séquence d'échappement d'écran - S_éuences d'édition Les séquences suivantes sont renvoyées au programme d'application éloigné en résultat du toucher et/ou de la libération de l'écran par l'utilisateur. Pour des zones ASCII,.la chaîne d'édition est retournée comme si elle avait été introduite à partir du clavier à touches. Pour des zones NORMALE et COMMUTABLE, les séquences suivantes sont retournées: ESC-z L'identification de zone. Celle-ci se compose des deux caractères ASCII en minuscules qui ont été définis comme la chaîne d'édition quand la zone a été définie. e Q Le type d'édition. I = Edition lors d'une activation de touche COMMUTABLE. 2 = Edition lors d'une désacti- 3zS vation de touche COMMUTABLE. = Edition lors du toucher d'une zone NORMALE. 6 = Edition lors d'une libé- ration d'une zone NORMALE. C. Pour une édition de rangée et colonne, la séquence suivante est retournée. ESC-z x Position de rangée par rapport à l'écran. y Position de colonne par rapport à l'écran. Q Type d'édition. 3 = Edition pour toucher de rangée et de colonne. 4 = Edition pour libération de rangée et de colonne. Comme expliqué ci-dessus, la partie microprogrammée d'écran, crée, en combinaison avec la partie matérielle d'écran, un dispositif programmable et intelligent. Il existe deux modes fondamentaux dans lesquels le système à écran sensible au toucher est utilisé par des programmes-cibles. En premier lieu, le programme- cible peut définir une zone de toucher qui est telle que, lorsqu'elle est touchée par l'utilisateur, elle enclenche une certaine opération de commande de système (par exemple une tabulation), l'introduction d'un mode d'opération à distance, un effacement de visualiseur, etc.). Lorsqu'elle est sélectionnée par l'utilisateur, l'opération de commande se déroule sans intervention du programme-cible ou bien sans avoir à l'informer de ce processus, comme indiqué sur la Figure 3. En second lieu, le programme-cible peut définir des zones de toucher qui opèrent d'une manière semblable à des touches fonc- tionnelles programmables traditionnelles. Lorsqu'elle est touchée, la zone retourne une chaîne de caractères au programme-cible. Cette chaîne, qui est définie par le programme-cible, peut être un ordre destiné au pro- gramme-cible. La chaine est identique à l'ordre équiva- lente introduite par l'intermédiaire du clavier à touches comme indiqué sur les Figures 4 et 5. Sur la Figure 4, l'utilisateur doit effectuer plusieurs actions succes- sives de façon satisfaisante de manière à émettre l'ordre par l'intermédiaire du clavier à touches. Sur la Figure 5, l'utilisateur doit effectuer seule- ment une action de façon satisfaisante pour que le dispositif à écran sensible au toucher émette l'ordre. En outre, la chaîne peut contenir plusieurs ordres liés ensemble ou bien elle peut être constituée par des données pour le programme. En variante, la chaîne d'édition peut être utilisée comme un code d'identifi- cation de zone. Dans ce dernier cas, le programme-cible doit conserver un enregistrement de la "signification" de chaque zone qui est définie et, lorsque le programme- cible reçoit un code d'identification de zone particu- lière, l'opération correspondante est enclenchée par 1l programme-cible. Ce procédé nécessite plus d'intel- ligence de la part du programme-cible que des procédés connus, mais il nécessite encore moins d'intelligence que des systèmes connus de sélection à la carte. La relation topographique entre une position d'écran et une sélection de zone ainsi que les fonctions associées de retour à l'utilisateur sont encore exé- cutées automatiquement par le programme-cible. Ces méthodes operatoiLres sont diffarentes des touches fonctiornelles programmables de l'art antérieur par ie fait vue les dimensions, les formes et les positions des zones (étiquettes de touches) de l'écran sont défi- nires par le programme-cible. Egalement une sélection et une activation sont faites en touchant l'écran, au !.eu d'actionner une touche sur le clavier physique. Dans le second cas de touches logicielles activées par un toucher, l'utilisateur est capable de sélection- ner l'opération désirée en touchant l'étiquette de fonction sur l'écran. Du fait que l'étiquette de fonc- tion et la touche de fonction ne sont pas séparées, le risque de sélection erroné est très faible. REVENDICATIONS 1. Dans un système informatique, un appareillage caractérisé en ce qu'il comprend: - un premier moyen de détection (101) pour dé- tecter un toucher initial sur une surface d'affichage; - un second moyen de détection pour détecter un changement de position de toucher sur ladite sur- face d'affichage; et - des moyens de coordination interne (111) pour déterminer quelle opération devrait être effectuée pour chaque position de toucher détectée par lesdits premier et second moyens de détection. 2. Appareillage selon la revendication 1, carac- térisé en ce que ledit changement de position de toucher est effectué le long d'une zone de ladite surface d'af- fichage. 3. Appareillage selon la revendication 1, carac- térisé en ce que ledit changement de position de toucher est effectue en éloignement d'une zone de ladite surface d'affichage. 4. Dans un système informatique, un appareillage caractérisé en ce qu'il comprend: - un premier moyen de détection (101) pour détec- ter un toucher initial sur une surface d'affichage; - un second moyen de détection pour détecter un changement de position de toucher sur ladite surface d'affichage; - un troisième moyen de détection pour détecter une suppression de toucher avec ladite surface d'af- fichage et pour émettre une information indiquant qu'une libération s'est produite; et des moyens de coordination interne (111) pour déterminer quelle opération devrait être effectuée pour chaque position de toucher détectée par lesdits 3à5 premier et second moyens de détection, et pour déterminer quelle opération devrait être effectuée par ledit troi- sième moyen de détection. 5. Dans un système informatique, un appareillage caractérisé en ce qu'il comprend: - un premier moyen de détection (101) pour détec- ter un toucher initial sur une surface d'affichage; - un second moyen de détection pour détecter un changement de position de toucher sur ladite surface d'affichage, ledit changement de position de toucher s'effectuant le long d'une zone de ladite surface d'affichage; - un troisième moyen de détection pour détecter une suppression de toucher avec ladite surface d'af- fichage, et pour émettre une information indiquant qu'une libération s'est produite; - des moyens de coordination interne (111) pour déterminer quelle opération devrait être effectuée pour l'information de position de toucher détectée par lesdits premier et second moyens de détection, et pour déterminer quelle opération devrait être effectuée par ledit troisième moyen de détection. 6. Dans un système informatique, un appareillage caractérisé en ce qu'il comprend: - un moyen d'enclenchement d'écran sensible au toucher (111) pour déterminer des opérations en réponse à une information provenant de l'écran indépendamment d'une fonction-cible; - un système d'exploitation (121) pour exécuter ladite fonction-cible en réponse à ladite information provenant de l'écran. 7. Dans un système informatique, un appareillage caractérisé en ce qu'il comprend: - un premier moyen de détection (101) pour détec- ter un toucher initial sur une surface d'affichage; - un second moyen de détection pour détecter un changement de position de toucher sur ladite surface d'affichage; - des moyens de coordination interne (111) pour déterminer quelle opération devrait être effectuée pour chaque position de toucher détectée par lesdits premier et second moyens de détection; - un moyen d'enclenchement d'écran sensible au toucher (111) pour déterminer des opérations en réponse à ladite information provenant dudit écran et indépen- damment d'une fonction-cible; - un système d'exploitation (121) pour exécuter ladite fonction-cible en réponse à ladite information provenant dudit écran. 8. Dans un système informatique, un appareillage caractérisé en ce qu'il comprend: - un premier moyen pour définir une position d'écran de manière qu'elle ait une signification fonc- tionnelle désirée; et - un second moyen pour recevoir ladite défini- tion de position d'écran et pour communiquer ladite signification fonctionnelle audit premier moyen en réponse à une sélection de ladite position d'écran par un utilisateur. 9. Dans un système informatique, un appareillage caractérisé en ce qu'il comprend: - un dispositif avec écran sensible au toucher pour déterminer des opérations en réponse à une infor- mation provenant de l'écran indépendamment d'une fonc- tion-cible; et - un moyen de renvoi d'information relié audit dispositif avec écran pour fournir à un utilisateur une indication d'un état dudit écran sensible au toucher. U.0. Appareillage selon la revendication 9, caracté- risé en ce que l'indication fournie par ledit moyen de retour d'information est définie par ladite fonction- cible. 11. Appareillage selon la revendication 9, carac- térisé en ce que ledit moyen de retour d'information est une indication audible. 12. Appareillage selon la revendication 9, carac- térisé en ce que ledit moyen de retour d'information est une indication vidéo. 13. Appareillage selon la revendication 9, carac- térisé en ce que ledit moyen de retour d'information est une indication acoustique et videéo. 14. Dans un système informatique, un appareillage caractérisé en ce qu'il comprend: - un moyen d'entrée de données comportant: * un premier moyen de détection pour détecter un toucher initial d'une surface d'affichage, et un second moyen de détection pour détecter un changement de position de toucher sur ladite sur- face d'affichage; - un moyen de coordination interne relié audit moyen d'entrée de données, ledit moyen de coordination interne comportant une entrée de commande à partir d'une fonction-cible et une sortie de données vers la fonction-cible, ledit moyen de coordination interne servant à déterminer quelle opération devrait être effectuée pour chaque position de toucher détectée par lesdits premier et second moyens de détection; - un moyen d'entrée de commande relié au moyen de coordination interne pour établir un paramètre d'en- vironnement servant à définir quelle fonction doit être exécutée par l'entrée de commande provenant de la fonction-cible; - un moyen de sortie de donnée relié au moyen de coordination interne pour permettre à la fonction- cible de détecter la donnée sortant du moyen de coor- dination interne parmi d'autres types de données; et - un moyen de sortie de commande relié au moyen de coordination interne pour produire à sa sortie une commande définissant une fonction de commande particu- lière. 15. Appareillage selon la revendication 14, carac- térisé en ce que ledit paramètre d'environnement définit une validation/invalidation de mode d'édition de donnée se rapportant à un toucher de rangée et colonne, en faisant en sorte qu'une donnée d'édition correspondant à un toucher et/ou une libération et provenant du moyen d'entrée de données soit traduite en une paire de chiffres de coordonnées relatives de la surface d'affichage, correspondant à un numéro de rangée et à un numéro de colonne d'une position touchée par un utilisateur. 16. Appareillage selon la revendication 14, carac- térisé en ce que ledit paramètre d'environnement définit une 7alidation/invalidation d'un mode d'édition corres- pondant à une zone de toucher, en faisant en sorte qu'une donnée d'édition lors d'un toucher et/ou d'une liberation et provenant du moyen d'entrée de données soit traduite en une opération particulière définie pour une zone de toucher qui occupe sur la surface d'affichage une position qui est touchée par un utili- sateur, 17. ApDareillage selon la revendication 14, carac- térisé en ce que ledit paramètre d'environnement définit un mode de validation/invalidation de sensibilité au toucher d'étiquettes de touches logicielles, en provo- quant l'ex-cution de la même action que si un utilisa- teur actionn&it une touche de fonction correspondante su: un ciavier à touches physique. 18. Appareillage selon la revendication 14, carac- térisé en ce que ledit paramètre d'environnement définit un irode de cormlutation de l'état marche/arrêt du moyen de coordination interne en faisant en sorte que toutes les opérations effectuées par le moyen de coordination interne soient désactivées. 19. Appareillage selon la revendication 14, carac- térisé en ce que ledit paramètre d'environnement définit un mode de rappel du moyen de coordination interne à un état initial. 20. Appareillage selon la revendication 14, carac- térisé en ce que ledit paramètre d'environnement définit un mode de définition d'une zone de toucher, en faisant en sorte que la fonctioncible définisse un emplacement rectangulaire de la surface d'affichage, de telle sorte que l'emplacement se comporte d'une manière particulière lorsqu'il est touché et/ou libéré. 21. Appareillage selon la revendication 20, carac- térisé en ce que ledit emplacement rectangulaire de la surface d'affichage est entouré par des lisières d'une zone particulière pour répondre à un toucher comme une entité intégrale. 22. Appareillage selon la revendication 20, carac- térisé en ce que ladite zone de toucher est empêchée de réagir une nouvelle fois après que le toucher initial a été établi dans la zone de toucher. 23. Appareillage selon la revendication 20, carac- térisé en ce que la zone de toucher provoque l'amorçage d'une opération particulière lorsqu'elle est touchée et/ou libérée par un utilisateur. 24. Appareillage selon la revendication 20, carac- térisé en ce qu'un mécanisme de retour visuel d'infor- mation à l'utilisateur est utilisé pour aider un utili- sateur à déterminer lorsque l'action faite par l'utili- sateur pour toucher et/ou libérer ladite zone de toucher a été satisfaisante. 2r559597 25. Appareillage selon la revendication 21, carac- térisé en ce qu'un mécanisme de retour acoustique d'in- formation à l'utilisateur est utilisé pour aider l'uti- lisateur à déterminer lorsque l'action faite par l'uti- lisateur pour toucher et/ou libérer ladite zone de toucher a été satisfaisante. 26. Appareillage selon la revendication 14, carac- térisé en ce que ledit paramètre d'environnement définit un mode de suppression de la zone de toucher, faisant en sorte que la zone de toucher soit supprimée de la surface d'affichage de l'écran sensible au toucher. 27. Appareillage selon la revendication 14, carac- térisé en ce que ledit toucher initial de la surface d'affichage consiste a toucher une étiquette de touche logicielle qui provoque l'exécution d'une fonction de touche logicielle correspondante par la commande produite à la sortie. 28. Appareillage selon la revendication 14, carac- térisé en ce que ledit toucher initial de la surface d'affichage s'effectue dans une zone de toucher qui est définie de telle sorte que la zone de toucher se comporte d'une manière analogue à une touche de commande particulière d'un clavier à touches physique sous l'effet de la commande produite à la sortie. 29. Appareillage selon la revendication 14, carac- térisé en ce que ledit toucher initial et/ou ledit changement de position de toucher sur ladite surface d'affichage fait en sorte qu'un déclic audible, simulant le d.clic d'un clavier à touches, soit produit par la ) commande produite à la sortie. *). Appareillage selon la revendication 14, carac- trrise en ce que ledit toucher initial de la surface d'affichage s'effectue dans une zone de toucher qui est définie de telle sorte qu'un curseur soit positionné 33 par la comnande produite à la sortie.