Guidance on using ATK

Lawrence Warren via gnome-accessibility-list <[email protected]> Tue, 6 Apr 2021 21:13:17 +0100
Newsgroups gmane.comp.gnome.accessibility.general
Message-ID <CAN7zknBphZ=VdvQK+c4Pmsc1FV9tgsMCuGMEhqH3bDeaB-B0pQ@mail.gmail.com>
--===============1180864276233866450==
Content-Type: multipart/alternative; boundary="000000000000c8ce9605bf53729f"

--000000000000c8ce9605bf53729f
Content-Type: text/plain; charset="UTF-8"

Hello all,

I have been developing a program over the past couple of months which I
intend to be used with a screenreader, if the user requires it. However I
have become a little stuck in implementing the ATK API in my program and
require some guidance, and this seems the correct place to seek some (but
please correct me if I'm wrong!)

My program is an emulated ARM computer system. Specifically, it allows for
the loading of ARM assembly source files, the running of these files, and
the control and viewing of the internal state of the system (it's register
values, it's memory values, whether to commence or pause execution, etc.)
via a GUI.

I have managed to implement ATK very easily with many of the GUI components
as they are focusable.

However the internal register values of the emulated system are displayed
in a table that is not focusable - as a sighted user, you can simply look
at the table to find out the information you need, with no requirement to
be able to move program focus to the table elements.

My intention for ATK compatibility was for the information from the table
to be read by the screenreader upon a key press - Alt+0 for register 0,
Alt+1 for register 1, and so on.

However, I cannot find a way to implement this. I have the keyboard
recognition and the information to be read implemented within my program,
but I cannot find an easy way to just "send" some string of text to the
screen reader upon a key press without causing some change in GUI focus.

Do you have a solution or advice on how this can be implemented? I am
specifically using GTKMM and ATKMM for the GUI and screenreader support.

Thankyou for any help (and sorry if this is the wrong place to seek it, I
couldn't find any other solutions)

Regards,
Lawrence Warren

--000000000000c8ce9605bf53729f
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:arial,he=
lvetica,sans-serif">Hello all,</div><div class=3D"gmail_default" style=3D"f=
ont-family:arial,helvetica,sans-serif"><br></div><div class=3D"gmail_defaul=
t" style=3D"font-family:arial,helvetica,sans-serif">I have been developing =
a program over the past couple of months which I intend to be used with a s=
creenreader, if the user requires it. However I have become a little stuck =
in implementing the ATK API in my program and require some guidance, and th=
is seems the correct place to seek some (but please correct me if I&#39;m w=
rong!)</div><div class=3D"gmail_default" style=3D"font-family:arial,helveti=
ca,sans-serif"><br></div><div class=3D"gmail_default" style=3D"font-family:=
arial,helvetica,sans-serif">My program is an emulated ARM computer system. =
Specifically, it allows for the loading of ARM assembly source files, the r=
unning of these files, and the control and viewing of the internal state of=
 the system (it&#39;s register values, it&#39;s memory values, whether to c=
ommence or pause execution, etc.) via a GUI.</div><div class=3D"gmail_defau=
lt" style=3D"font-family:arial,helvetica,sans-serif"><br></div><div class=
=3D"gmail_default" style=3D"font-family:arial,helvetica,sans-serif">I have =
managed to implement ATK very easily with many of the GUI components as the=
y are focusable.</div><div class=3D"gmail_default" style=3D"font-family:ari=
al,helvetica,sans-serif"><br></div><div class=3D"gmail_default" style=3D"fo=
nt-family:arial,helvetica,sans-serif">However the internal register values =
of the emulated system are displayed in a table that is not focusable - as =
a sighted user, you can simply look at the table to find out the informatio=
n you need, with no requirement to be able to move program focus to the tab=
le elements.</div><div class=3D"gmail_default" style=3D"font-family:arial,h=
elvetica,sans-serif"><br></div><div class=3D"gmail_default" style=3D"font-f=
amily:arial,helvetica,sans-serif">My intention for ATK compatibility was fo=
r the information from the table to be read by the screenreader upon a key =
press - Alt+0 for register 0, Alt+1 for register 1, and so on.</div><div cl=
ass=3D"gmail_default" style=3D"font-family:arial,helvetica,sans-serif"><br>=
</div><div class=3D"gmail_default" style=3D"font-family:arial,helvetica,san=
s-serif">However, I cannot find a way to implement this. I have the keyboar=
d recognition and the information to be read implemented within my program,=
 but I cannot find an easy way to just &quot;send&quot; some string of text=
 to the screen reader upon a key press without causing some change in GUI f=
ocus.</div><div class=3D"gmail_default" style=3D"font-family:arial,helvetic=
a,sans-serif"><br></div><div class=3D"gmail_default" style=3D"font-family:a=
rial,helvetica,sans-serif">Do you have a solution or advice on how this can=
 be implemented? I am specifically using GTKMM and ATKMM for the GUI and sc=
reenreader support.</div><div class=3D"gmail_default" style=3D"font-family:=
arial,helvetica,sans-serif"><br></div><div class=3D"gmail_default" style=3D=
"font-family:arial,helvetica,sans-serif">Thankyou for any help (and sorry i=
f this is the wrong place to seek it, I couldn&#39;t find any other solutio=
ns)</div><div class=3D"gmail_default" style=3D"font-family:arial,helvetica,=
sans-serif"><br></div><div class=3D"gmail_default" style=3D"font-family:ari=
al,helvetica,sans-serif">Regards,</div><div class=3D"gmail_default" style=
=3D"font-family:arial,helvetica,sans-serif">Lawrence Warren</div></div>

--000000000000c8ce9605bf53729f--

--===============1180864276233866450==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
gnome-accessibility-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/gnome-accessibility-list

--===============1180864276233866450==--