그놈의 접근성 동작 방식
접근성 도구 모음(ATK)은 GUI 구성 요소에 접근할 수 있도록 필요한 모든 인터페이스 구현체 모음을 기술했습니다. 인터페이스는 도구 모음과 무관합니다. 구현체는 GTK, Motif, Qt 등 다양한 위젯으로 작성할 수 있습니다.
The implementation for the GTK widgets is done via the GtkAccessible class. It is the base class for accessible implementations for GtkWidget subclasses. It is a thin wrapper around AtkObject, which adds facilities for associating a widget with its accessible object. Those parts of your application that use standard GTK widgets will have a basic level of accessibility, without you having to modify your application at all.
다른 데스크톱에서 동작하는 대부분의 보조 기술은 역사적으로 데스크톱의 OS 이벤트 스누핑을 기반으로 동작하는 복잡한 오프스크린 모델, 비 지원 OS의 사용, 프로그램 기능 및 API, 기타 이식하기 난해한 기술의 관리가 필요함을 발견했습니다. 이 때문에 OS 및 프로그램별, 프로그램의 버전별로 각자 따로따로 놀아나는 "허접한" 보조기술 지원을 만들어냈습니다. 반면에 그놈 데스크톱에서는 AT에서 필요한 모든 정보를 프로그램이 실행할 때 그놈 접근성 프레임워크에서, 도구 모음과는 별개의 서비스 제공 인터페이스로 제공했습니다. SPI는 유닉스 기반 AT에 화면 리더, 화면 돋보기같은 수단을 제공하여 일관되고 안정적인 API로 실행중인 프로그램에 접근성 정보를 얻어냈고, 대부분에 경우에 있어 오프스크린 모델의 필요성을 불식시킬 수 있었습니다. 프로그램에 대한 접근성 지원은 도구 모음에 적절한 API에서 프로그램 도구 모음에 "내장"했고(대부분의 네이티브 C 프로그램에는 ATK를, 자바 프로그램에는 Java 접근성 API를 활용), 관련 "브릿지"(다이어그램 참고)로 "AT-SPI" 일반 인터페이스를 내놓았습니다.
그놈의 내장 접근성 지원이란, 내장 지원 방식과 혼동되는 일반적이지 않은 수단은 활용하지 않도록 "자유로운" 보조 기술을 지원하는 보유 그놈 위젯을 활용하여 프로그램을 만듦을 의미합니다.
gtk+/GNOME 위젯은 이 문서 어디든 일반 접근성 지침을 따랐을 경우 접근할 수 있으며, 사용자 인터페이스의 역할에 맞는 ATK 인터페이스를 구현합니다. ATK 구현체는 그놈 도구 모음 위젯 "보유물"(오래되지 않은 gtk+ 및 그놈 위젯)로 제공하며, 대부분 기존 gtk+ 또는 그놈 위젯에서 오는 새 위젯도 적절한 접근성 지원을 물려받습니다.
그놈 내장 접근성 지원에서는 프로그램의 일부를 바꾸는 접근성 관련 코드 없이도 중요한 기능을 제공하지만, 보통 프로그램에서는 일부 위젯에 제공하는 기본 설명을 종종 개선할 수 있으며 프로그램에서 간단한 ATK 메서드 호출로 위젯의 개별 목적에 따라 다듬을 수 있습니다. 예를 들면, 대부분의 경우 프로그램에 적당한 ATK 함수 호출로 위젯의 글자 설명을 추가하거나 바꿔서 보조 기술의 결과물이 사용자에게 기능의 목적이나 상태를 설명할 수 있어야합니다. 자세한 내용은 접근성 지원 코드 작성 지침서 를 참고하십시오.
프로그램에 개별 제작 위젯을 사용한다면, 해당 위젯의 속성을 보조 기술에 알려주어야 합니다. 추가 정보는 개별 구성요소 접근성 처리 및 접근성 API 활용 예제를 참고하십시오.
For additional, in-depth information regarding GTK/GTK+, see the GTK+ Reference Manual, the outdated GTK+ 2.0 Tutorial and the official GTK+ FAQ.