123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277 |
- /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- #ifndef mozilla_a11y_ProxyAccessibleShared_h
- #define mozilla_a11y_ProxyAccessibleShared_h
- /**
- * These are function declarations shared between win/ProxyAccessible.h and
- * other/ProxyAccessible.h.
- */
- /*
- * Return the states for the proxied accessible.
- */
- uint64_t State() const;
- /*
- * Return the native states for the proxied accessible.
- */
- uint64_t NativeState() const;
- /*
- * Set aName to the name of the proxied accessible.
- */
- void Name(nsString& aName) const;
- /*
- * Set aValue to the value of the proxied accessible.
- */
- void Value(nsString& aValue) const;
- /*
- * Set aHelp to the help string of the proxied accessible.
- */
- void Help(nsString& aHelp) const;
- /**
- * Set aDesc to the description of the proxied accessible.
- */
- void Description(nsString& aDesc) const;
- /**
- * Get the set of attributes on the proxied accessible.
- */
- void Attributes(nsTArray<Attribute> *aAttrs) const;
- /**
- * Return set of targets of given relation type.
- */
- nsTArray<ProxyAccessible*> RelationByType(RelationType aType) const;
- /**
- * Get all relations for this accessible.
- */
- void Relations(nsTArray<RelationType>* aTypes,
- nsTArray<nsTArray<ProxyAccessible*>>* aTargetSets) const;
- bool IsSearchbox() const;
- nsIAtom* LandmarkRole() const;
- nsIAtom* ARIARoleAtom() const;
- int32_t GetLevelInternal();
- void ScrollTo(uint32_t aScrollType);
- void ScrollToPoint(uint32_t aScrollType, int32_t aX, int32_t aY);
- int32_t CaretLineNumber();
- int32_t CaretOffset();
- void SetCaretOffset(int32_t aOffset);
- int32_t CharacterCount();
- int32_t SelectionCount();
- /**
- * Get the text between the given offsets.
- */
- bool TextSubstring(int32_t aStartOffset, int32_t aEndOfset,
- nsString& aText) const;
- void GetTextAfterOffset(int32_t aOffset, AccessibleTextBoundary aBoundaryType,
- nsString& aText, int32_t* aStartOffset,
- int32_t* aEndOffset);
- void GetTextAtOffset(int32_t aOffset, AccessibleTextBoundary aBoundaryType,
- nsString& aText, int32_t* aStartOffset,
- int32_t* aEndOffset);
- void GetTextBeforeOffset(int32_t aOffset, AccessibleTextBoundary aBoundaryType,
- nsString& aText, int32_t* aStartOffset,
- int32_t* aEndOffset);
- char16_t CharAt(int32_t aOffset);
- void TextAttributes(bool aIncludeDefAttrs,
- const int32_t aOffset,
- nsTArray<Attribute>* aAttributes,
- int32_t* aStartOffset,
- int32_t* aEndOffset);
- void DefaultTextAttributes(nsTArray<Attribute>* aAttrs);
- nsIntRect TextBounds(int32_t aStartOffset, int32_t aEndOffset,
- uint32_t aCoordType = nsIAccessibleCoordinateType::COORDTYPE_SCREEN_RELATIVE);
- nsIntRect CharBounds(int32_t aOffset, uint32_t aCoordType);
- int32_t OffsetAtPoint(int32_t aX, int32_t aY, uint32_t aCoordType);
- bool SelectionBoundsAt(int32_t aSelectionNum,
- nsString& aData,
- int32_t* aStartOffset,
- int32_t* aEndOffset);
- bool SetSelectionBoundsAt(int32_t aSelectionNum,
- int32_t aStartOffset,
- int32_t aEndOffset);
- bool AddToSelection(int32_t aStartOffset,
- int32_t aEndOffset);
- bool RemoveFromSelection(int32_t aSelectionNum);
- void ScrollSubstringTo(int32_t aStartOffset, int32_t aEndOffset,
- uint32_t aScrollType);
- void ScrollSubstringToPoint(int32_t aStartOffset,
- int32_t aEndOffset,
- uint32_t aCoordinateType,
- int32_t aX, int32_t aY);
- void Text(nsString* aText);
- void ReplaceText(const nsString& aText);
- bool InsertText(const nsString& aText, int32_t aPosition);
- bool CopyText(int32_t aStartPos, int32_t aEndPos);
- bool CutText(int32_t aStartPos, int32_t aEndPos);
- bool DeleteText(int32_t aStartPos, int32_t aEndPos);
- bool PasteText(int32_t aPosition);
- nsIntPoint ImagePosition(uint32_t aCoordType);
- nsIntSize ImageSize();
- uint32_t StartOffset(bool* aOk);
- uint32_t EndOffset(bool* aOk);
- bool IsLinkValid();
- uint32_t AnchorCount(bool* aOk);
- void AnchorURIAt(uint32_t aIndex, nsCString& aURI, bool* aOk);
- ProxyAccessible* AnchorAt(uint32_t aIndex);
- uint32_t LinkCount();
- ProxyAccessible* LinkAt(const uint32_t& aIndex);
- int32_t LinkIndexOf(ProxyAccessible* aLink);
- int32_t LinkIndexAtOffset(uint32_t aOffset);
- ProxyAccessible* TableOfACell();
- uint32_t ColIdx();
- uint32_t RowIdx();
- void GetPosition(uint32_t* aColIdx, uint32_t* aRowIdx);
- uint32_t ColExtent();
- uint32_t RowExtent();
- void GetColRowExtents(uint32_t* aColIdx, uint32_t* aRowIdx,
- uint32_t* aColExtent, uint32_t* aRowExtent);
- void ColHeaderCells(nsTArray<ProxyAccessible*>* aCells);
- void RowHeaderCells(nsTArray<ProxyAccessible*>* aCells);
- bool IsCellSelected();
- ProxyAccessible* TableCaption();
- void TableSummary(nsString& aSummary);
- uint32_t TableColumnCount();
- uint32_t TableRowCount();
- ProxyAccessible* TableCellAt(uint32_t aRow, uint32_t aCol);
- int32_t TableCellIndexAt(uint32_t aRow, uint32_t aCol);
- int32_t TableColumnIndexAt(uint32_t aCellIndex);
- int32_t TableRowIndexAt(uint32_t aCellIndex);
- void TableRowAndColumnIndicesAt(uint32_t aCellIndex,
- int32_t* aRow, int32_t* aCol);
- uint32_t TableColumnExtentAt(uint32_t aRow, uint32_t aCol);
- uint32_t TableRowExtentAt(uint32_t aRow, uint32_t aCol);
- void TableColumnDescription(uint32_t aCol, nsString& aDescription);
- void TableRowDescription(uint32_t aRow, nsString& aDescription);
- bool TableColumnSelected(uint32_t aCol);
- bool TableRowSelected(uint32_t aRow);
- bool TableCellSelected(uint32_t aRow, uint32_t aCol);
- uint32_t TableSelectedCellCount();
- uint32_t TableSelectedColumnCount();
- uint32_t TableSelectedRowCount();
- void TableSelectedCells(nsTArray<ProxyAccessible*>* aCellIDs);
- void TableSelectedCellIndices(nsTArray<uint32_t>* aCellIndices);
- void TableSelectedColumnIndices(nsTArray<uint32_t>* aColumnIndices);
- void TableSelectedRowIndices(nsTArray<uint32_t>* aRowIndices);
- void TableSelectColumn(uint32_t aCol);
- void TableSelectRow(uint32_t aRow);
- void TableUnselectColumn(uint32_t aCol);
- void TableUnselectRow(uint32_t aRow);
- bool TableIsProbablyForLayout();
- ProxyAccessible* AtkTableColumnHeader(int32_t aCol);
- ProxyAccessible* AtkTableRowHeader(int32_t aRow);
- void SelectedItems(nsTArray<ProxyAccessible*>* aSelectedItems);
- uint32_t SelectedItemCount();
- ProxyAccessible* GetSelectedItem(uint32_t aIndex);
- bool IsItemSelected(uint32_t aIndex);
- bool AddItemToSelection(uint32_t aIndex);
- bool RemoveItemFromSelection(uint32_t aIndex);
- bool SelectAll();
- bool UnselectAll();
- void TakeSelection();
- void SetSelected(bool aSelect);
- bool DoAction(uint8_t aIndex);
- uint8_t ActionCount();
- void ActionDescriptionAt(uint8_t aIndex, nsString& aDescription);
- void ActionNameAt(uint8_t aIndex, nsString& aName);
- KeyBinding AccessKey();
- KeyBinding KeyboardShortcut();
- void AtkKeyBinding(nsString& aBinding);
- double CurValue();
- bool SetCurValue(double aValue);
- double MinValue();
- double MaxValue();
- double Step();
- void TakeFocus();
- ProxyAccessible* FocusedChild();
- ProxyAccessible* ChildAtPoint(int32_t aX, int32_t aY,
- Accessible::EWhichChildAtPoint aWhichChild);
- nsIntRect Bounds();
- void Language(nsString& aLocale);
- void DocType(nsString& aType);
- void Title(nsString& aTitle);
- void URL(nsString& aURL);
- void MimeType(nsString aMime);
- void URLDocTypeMimeType(nsString& aURL, nsString& aDocType,
- nsString& aMimeType);
- ProxyAccessible* AccessibleAtPoint(int32_t aX, int32_t aY,
- bool aNeedsScreenCoords);
- void Extents(bool aNeedsScreenCoords, int32_t* aX, int32_t* aY,
- int32_t* aWidth, int32_t* aHeight);
- /**
- * Return the id of the dom node this accessible represents. Note this
- * should probably only be used for testing.
- */
- void DOMNodeID(nsString& aID);
- #endif
|