Package org.gnome.gtk

Interface Accessible

All Superinterfaces:
Proxy
All Known Subinterfaces:
AccessibleRange, AccessibleText
All Known Implementing Classes:
AboutDialog, AboutDialog, AboutWindow, Accessible.AccessibleImpl, AccessibleRange.AccessibleRangeImpl, AccessibleText.AccessibleTextImpl, Actionable.ActionableImpl, ActionBar, ActionRow, AlertDialog, AppChooser.AppChooserImpl, AppChooserButton, AppChooserDialog, AppChooserWidget, ApplicationWindow, ApplicationWindow, AspectFrame, Assistant, Avatar, Banner, Bin, BottomSheet, Box, BreakpointBin, Button, ButtonContent, ButtonRow, Calendar, Carousel, CarouselIndicatorDots, CarouselIndicatorLines, CellEditable.CellEditableImpl, CellView, CenterBox, CheckButton, Clamp, ClampScrollable, ColorButton, ColorChooserDialog, ColorChooserWidget, ColorDialogButton, ColumnView, ComboBox, ComboBoxText, ComboRow, CompletionCell, Dialog, Dialog, DragIcon, DrawingArea, DropDown, Editable.EditableImpl, EditableLabel, EmojiChooser, Entry, EntryRow, Expander, ExpanderRow, FileChooserDialog, FileChooserWidget, Fixed, Flap, FlowBox, FlowBoxChild, FontButton, FontChooserDialog, FontChooserWidget, FontDialogButton, Frame, GLArea, GraphicsOffload, Grid, GridView, Gutter, GutterRenderer, GutterRenderer.GutterRendererImpl, GutterRendererPixbuf, GutterRendererText, HeaderBar, HeaderBar, HoverDisplay, IconView, Image, InfoBar, Inscription, Label, LayoutSlot, Leaflet, LevelBar, LinkButton, ListBase, ListBase.ListBaseImpl, ListBox, ListBoxRow, ListView, LockButton, Map, MediaControls, MenuButton, MessageDialog, MessageDialog, MultiLayoutView, Native.NativeImpl, NavigationPage, NavigationSplitView, NavigationView, Notebook, Overlay, OverlaySplitView, PageSetupUnixDialog, Paned, PasswordEntry, PasswordEntryRow, Picture, Popover, PopoverMenu, PopoverMenuBar, PreferencesDialog, PreferencesGroup, PreferencesPage, PreferencesRow, PreferencesWindow, PrintUnixDialog, ProgressBar, Range, Revealer, Root.RootImpl, Scale, ScaleButton, Scrollbar, ScrolledWindow, SearchBar, SearchEntry, Separator, ShortcutLabel, ShortcutsGroup, ShortcutsSection, ShortcutsShortcut, ShortcutsWindow, SpinButton, Spinner, Spinner, SpinRow, SplitButton, Squeezer, Stack, StackPage, StackSidebar, StackSwitcher, Statusbar, StatusPage, StyleSchemeChooserButton, StyleSchemeChooserWidget, StyleSchemePreview, Swipeable.SwipeableImpl, Switch, SwitchRow, TabBar, TabButton, TabOverview, TabPage, TabView, Text, TextView, ToastOverlay, ToggleButton, ToolbarView, TreeExpander, TreeView, Video, View, Viewport, ViewStack, ViewStackPage, ViewSwitcher, ViewSwitcherBar, ViewSwitcherTitle, VolumeButton, WebView, WebViewBase, Widget, Widget.WidgetImpl, Window, Window, WindowControls, WindowHandle, WindowTitle

@Generated("io.github.jwharm.JavaGI") public interface Accessible extends Proxy
GtkAccessible is an interface for describing UI elements for Assistive Technologies.

Every accessible implementation has:

  • a “role”, represented by a value of the Gtk.AccessibleRole enumeration
  • an “attribute”, represented by a set of Gtk.AccessibleState, Gtk.AccessibleProperty and Gtk.AccessibleRelation values

The role cannot be changed after instantiating a GtkAccessible implementation.

The attributes are updated every time a UI element's state changes in a way that should be reflected by assistive technologies. For instance, if a GtkWidget visibility changes, the AccessibleState.HIDDEN state will also change to reflect the Gtk.Widget:visible property.

Every accessible implementation is part of a tree of accessible objects. Normally, this tree corresponds to the widget tree, but can be customized by reimplementing the getAccessibleParent(), getFirstAccessibleChild() and getNextAccessibleSibling() virtual functions. Note that you can not create a top-level accessible object as of now, which means that you must always have a parent accessible object. Also note that when an accessible object does not correspond to a widget, and it has children, whose implementation you don't control, it is necessary to ensure the correct shape of the a11y tree by calling setAccessibleParent(org.gnome.gtk.Accessible, org.gnome.gtk.Accessible) and updating the sibling by updateNextAccessibleSibling(org.gnome.gtk.Accessible).