Salut
Oui, les commande Windows et Scintilla sont différentes.
Par exemple,
#WM_COPY = 768
#SCI_COPY = 2178 

Donc, si JAWS utilise un sendMessage vers un editeur Scintilla il sera
ignoré et donc non lut !
Il est alors envisageable de faire un translateur de commande Windows vers
SCI car beaucoup sont similaire...
Le pure basic ne permet pas d'accéder à des événements de si bas niveaux,
 si toi tu peux faire ce test cela serait une bonne indication, voire
solution, à indiquer   aux auteurs de CodeBlock !


Pour AxTK, cela utilise des synthèse vocale par SAPI et autres...
Lien direct pour une démo :
http://www.anthemion.co.uk/axtk/axtk-basic-sample-win32.zip

-----Message d'origine-----
De : [email protected] [mailto:[email protected]] De la
part de QuentinC
Envoyé : mardi 19 janvier 2010 15:43
À : [email protected]
Objet : [progliste] Re: CodeBlock



> Donc pour que cela soit bien clair pour moi,
 lorsque l'on accède au objet de Word, Excel, IE, ... C'est que cela a été
prévu, autorisé et compatible avec les méthode du COM ?

Je ne sais pas si les objets COM ont quelque chose à voir là-dedans (je les
connais trop mal). Par contre pour les composants standards de windows, ça a
dû être effectivement prévu un moment donné. Il y a les messages standards
de windows, mais il y a aussi d'autres standards plus évolués comme MSAA, et
d'autres dont je n'ai même pas entendu parler (notamment, comment jaws peut
récupérer le DOM des pages web et la structure des documents riches).
IL ne faut pas oublier non plus que jaws possède un intercepteur vidéo,
c'est un autre moyen d'accèder aux informations. Là par contre, je ne sais
absolument pas en quoi ça consiste.

> Lorsque l'on envoie un SendMessage, on ne donne que le handle de 
> l'objet,
Mais est-ce que le sendmessage fait un saut ou call sur un pointeur des
méthodes de l'objet, ou windows crée un événement dans l'application.
Car si le sendmessage crée un événement, l'application pourrait le détourner
pour répondre correctement.
Par exemple pour une application qui utilise SCINTILLA :
1)J'envoie un sendmessage avec #WM_Copy pour le handle Scintilla
2) L'application convertie le #WM_Copy en #SCI_Copy et l'envoie à l'objet
Scintilla Ainsi, Jaws n'y verrais que du feu... Si il utilise bien les
commande conventionnelle de Windows !

En principe, un SendMessage donne lieu à un évènement qui doit être traité
par la procédure de fenêtre. Donc théoriquement, oui, on peut le détourner. 
Il faudrait que je fasse un test bidon pour le prouver.

Pour le cas que tu cites, le truc c'est que justement, je pense que certains
contrôles ne répondent pas correctement aux messages définis par windows. Si
l'objet scintilla ne répond pas à WM_COPY, jaws pourra envoyer tous les
messages qu'il veut, il ne se passera rien. Pire, il pourrait s'agir d'un
autre message dans le vocabulaire de scintilla... et là les réponses
seraient inprévisibles.
Certaines bibliothèques n'utilisent même pas du tout des handles de windows
pour leurs contrôles. Dans ce cas, jaws ne voit rien, ou ne voit pas les
choses correctement. Je ne saurais en être certain mais je pense que c'est
pour ce genre de raison que QT et les autres ne fonctionnent pas bien.
Remarque, c'est exactement ce que font les composants swing de java, et
c'est pour cette raison qu'il y a besoin d'un adaptateur en plus (le java
access bridge)

A ce propos, j'ai testé les applications WXWidget que tu avais envoyé. C'est
globalement accessible, il y a juste quelques dysfonctionnenents mineurs
dans les listes et combobox, et il y a un des onglets de la démo composant
qui ne marche pas du tout, l'onglet notebook, je ne sais pas ce qu'il y a
dedans mais ça fait vraiment n'importe quoi.

> Je ne sais pas si tu as lut le post, mais le gars m'a indiqué une 
> librairie
intéressante :
http://code.google.com/p/axtk/
C'est un toolKit qui permet de sonoriser automatiquement une application
utilisant WxWidget.
J'ai testé l'example est c'est bluffant !
Tu lance l'appli, puis tu eteinds jaws, et hop l'application parle toute
seule !
Dire que j'ai passé des jours et des jours pour faire un procéder similaire
en PureBasic...


Non, je n'ai pas lu la discussion. Je suis au boulot là.
AVant que je n'ouvre le lien : comment ça l'application parle toute seule ? 
en utilisant quel moyen ? SAPI5? des fichiers son ? autre chose de plus
bluffant ?



Progliste :
Pour se désinscrire de la liste :
mailto:[email protected]?subject=unsubscribe

Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/       

Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé, je
vous répondrez en privé.


Progliste :
Pour se désinscrire de la liste : 
mailto:[email protected]?subject=unsubscribe

Pour voir les archives de la liste :
http://www.mail-archive.com/[email protected]/       

Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé, je 
vous répondrez en privé.

Répondre à