* Copyright (C) 2022-2025 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ACCESSIBILITY_ELEMENT_INFO_H
#define ACCESSIBILITY_ELEMENT_INFO_H
#include <map>
#include <set>
#include <vector>
#include "accessibility_def.h"
namespace OHOS {
namespace Accessibility {
* class define the action on Accessibility info
*/
class AccessibleAction {
public:
* @brief Construct
*/
AccessibleAction() {}
* @brief Construct
* @param actionType The type of action, refer to [ActionType]
* @param description The description message of action.
*/
AccessibleAction(ActionType actionType, const std::string &description);
* @brief Gets the action type.
* @return The type of action, refer to [ActionType]
*/
ActionType GetActionType() const;
* @brief Gets the action description.
* @return The description message of action.
*/
const std::string &GetDescriptionInfo() const;
protected:
ActionType actionType_ = ACCESSIBILITY_ACTION_INVALID;
std::string description_ = "";
};
* @brief Define the RangInfo for progress bar
* @note
* @retval None
*/
class RangeInfo {
public:
* @brief Construct
*/
RangeInfo() {}
* @brief Construct
* @param min The min value
* @param max The max value
* @param current current value
*/
RangeInfo(double min, double max, double current);
* @brief Gets the min value.
* @return min value
*/
double GetMin() const;
* @brief Gets the max value.
* @return max value.
*/
double GetMax() const;
* @brief Gets the current value.
* @return current value.
*/
double GetCurrent() const;
* @brief Sets the min value.
* @param min min value
*/
void SetMin(double min);
* @brief Sets the max value.
* @param max max value.
*/
void SetMax(double max);
* @brief Sets the current value.
* @param current current value
*/
void SetCurrent(double current);
protected:
double min_ = 0;
double max_ = 0;
double current_ = 0;
};
* @brief Define the list/grid component
* @note
* @retval None
*/
class GridInfo {
public:
* @brief Construct
* @since 3
* @sysCap Accessibility
*/
GridInfo() {}
* @brief Construct
* @param rowCount The number of row
* @param columnCount The number of column
* @param mode 0: select one line only, otherwise select multilines.
* @since 3
* @sysCap Accessibility
*/
GridInfo(int32_t rowCount, int32_t columnCount, int32_t mode);
* @brief Set the grid object
* @param rowCount The number of row
* @param columnCount The number of column
* @param mode 0: select one line only, otherwise select multilines.
* @since 3
* @sysCap Accessibility
*/
void SetGrid(int32_t rowCount, int32_t columnCount, int32_t mode);
* @brief Copy grid object.
* @param other The copied grid
* @since 3
* @sysCap Accessibility
*/
void SetGrid(GridInfo other);
* @brief Gets the number of rows.
* @return number of rows.
* @since 3
* @sysCap Accessibility
*/
int32_t GetRowCount() const;
* @brief Gets the number of columns.
* @return number of columns.
* @since 3
* @sysCap Accessibility
*/
int32_t GetColumnCount() const;
* @brief Get the mode of grid
* @return 0: Selected by one line, otherwise is multilines.
* @since 3
* @sysCap Accessibility
*/
int32_t GetSelectionMode() const;
protected:
int32_t rowCount_ = 0;
int32_t columnCount_ = 0;
int32_t selectionMode_ = 0;
};
class GridItemInfo {
public:
* @brief Construct
* @since 3
* @sysCap Accessibility
*/
GridItemInfo() {}
* @brief Construct
* @param rowIndex The index of row.
* @param rowSpan The row spanned.
* @param columnIndex The index of column
* @param columnSpan THe column spanned
* @param heading true:The item isHeading, otherwise is not
* @param selected true:The item is selected,otherwise is not
* @since 3
* @sysCap Accessibility
*/
GridItemInfo(int32_t rowIndex, int32_t rowSpan, int32_t columnIndex, int32_t columnSpan,
bool heading, bool selected);
* @brief Copy the GridItemInfo
* @param other The object of GridItemInfo copied.
* @since 3
* @sysCap Accessibility
*/
void SetGridItemInfo(GridItemInfo other);
* @brief Set grid object
* @param rowIndex The index of row.
* @param rowSpan The row spanned.
* @param columnIndex The index of column
* @param columnSpan THe column spanned
* @param heading true:The item isHeading, otherwise is not
* @param selected true:The item is selected,otherwise is not
* @since 3
* @sysCap Accessibility
*/
void SetGridItemInfo(int32_t rowIndex, int32_t rowSpan, int32_t columnIndex, int32_t columnSpan,
bool heading, bool selected);
* @brief Gets the column index at which the item is located.
* @return The column index.
* @since 3
* @sysCap Accessibility
*/
int32_t GetColumnIndex() const;
* @brief Gets the row index at which the item is located.
* @return The row index.
* @since 3
* @sysCap Accessibility
*/
int32_t GetRowIndex() const;
* @brief Gets the number of columns the item spans.
* @return The column span.
* @since 3
* @sysCap Accessibility
*/
int32_t GetColumnSpan() const;
* @brief Gets the number of rows the item spans.
* @return The row span.
* @since 3
* @sysCap Accessibility
*/
int32_t GetRowSpan() const;
* @brief Checks if the grid item is a heading.
* @return true:If the item is a heading, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsHeading() const;
* @brief Checks if the grid item is a selected.
* @return true:If the item is a selected, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsSelected() const;
protected:
bool heading_ = false;
int32_t columnIndex_ = 0;
int32_t rowIndex_ = 0;
int32_t columnSpan_ = 0;
int32_t rowSpan_ = 0;
bool selected_ = false;
};
* class define the extra elementinfo
*/
class ExtraElementInfo {
public:
* @brief Construct
*/
ExtraElementInfo() {}
* @brief Construct
* @param extraElementValueStr The map of extraElement.
* @param extraElementValueInt The map of extraElement.
* @sysCap Accessibility
*/
ExtraElementInfo(const std::map<std::string, std::string> extraElementValueStr,
const std::map<std::string, int32_t> extraElementValueInt);
* @brief Copy the ExtraElementInfo
* @param keyStr The key of extraElementValueStr.
* @param valueStr The val of extraElementValueStr.
* @sysCap Accessibility
*/
RetError SetExtraElementInfo(const std::string keyStr, const std::string valueStr);
* @brief Copy the ExtraElementInfo
* @param keyStr The key of extraElementValueInt.
* @param valueInt The val of extraElementValueInt.
* @sysCap Accessibility
*/
RetError SetExtraElementInfo(const std::string keyStr, const int32_t valueInt);
* @brief Gets the map of extraElementValueStr.
* @return The extraElementValueStr map.
* @sysCap Accessibility
*/
const std::map<std::string, std::string> &GetExtraElementInfoValueStr() const;
* @brief Gets the map of extraElementValueInt.
* @return The extraElementValueInt map.
* @sysCap Accessibility
*/
const std::map<std::string, int32_t> &GetExtraElementInfoValueInt() const;
protected:
std::map<std::string, std::string> extraElementValueStr_ = {};
std::map<std::string, int32_t> extraElementValueInt_ = {};
};
struct AccessibilityVirtualPoint {
int32_t x_ = 0;
int32_t y_ = 0;
AccessibilityVirtualPoint() = default;
AccessibilityVirtualPoint(int32_t x, int32_t y)
{
SetX(x);
SetY(y);
}
* @brief Gets the x coordinate.
* @return The x coordinate.
*/
int32_t GetX() const
{
return x_;
}
* @brief Sets the x coordinate.
* @param x The x coordinate.
*/
void SetX(int32_t x)
{
x_ = x;
}
* @brief Gets the y coordinate.
* @return The y coordinate.
*/
int32_t GetY() const
{
return y_;
}
* @brief Sets the y coordinate.
* @param y The y coordinate.
*/
void SetY(int32_t y)
{
y_ = y;
}
};
class Rect {
public:
* @brief Construct
* @since 3
* @sysCap Accessibility
*/
Rect() {}
* @brief Destruct
* @since 3
* @sysCap Accessibility
*/
virtual ~Rect() = default;
* @brief Construct
* @param leftTopX : The left top x pixel coordinates
* @param leftTopY : The left top y pixel coordinates
* @param rightBottomY : The right bottom y pixel coordinates
* @param rightBottomX : The right bottom x pixel coordinates
* @since 3
* @sysCap Accessibility
*/
Rect(int32_t leftTopX, int32_t leftTopY, int32_t rightBottomX, int32_t rightBottomY)
{
leftTopX_ = leftTopX;
leftTopY_ = leftTopY;
rightBottomX_ = rightBottomX;
rightBottomY_ = rightBottomY;
}
* @brief Get the left top point's pixel coordinates
* @return The left top x pixel coordinates
* @since 3
* @sysCap Accessibility
*/
int32_t GetLeftTopXScreenPostion() const
{
return leftTopX_;
}
* @brief Get the left top point's pixel coordinates
* @return The left top y pixel coordinates
* @since 3
* @sysCap Accessibility
*/
int32_t GetLeftTopYScreenPostion() const
{
return leftTopY_;
}
* @brief Get the right bottom point's pixel coordinates
* @return The bottom x pixel coordinates
* @since 3
* @sysCap Accessibility
*/
int32_t GetRightBottomXScreenPostion() const
{
return rightBottomX_;
}
* @brief Get the right bottom point's pixel coordinates
* @return The bottom y pixel coordinates
* @since 3
* @sysCap Accessibility
*/
int32_t GetRightBottomYScreenPostion() const
{
return rightBottomY_;
}
* @brief Set the left top point's pixel coordinates
* @param leftTopX The left top x pixel coordinates
* @param leftTopY The left top y pixel coordinates
* @since 3
* @sysCap Accessibility
*/
void SetLeftTopScreenPostion(int32_t leftTopX, int32_t leftTopY)
{
leftTopY_ = leftTopY;
leftTopX_ = leftTopX;
}
* @brief Set the right bottom point's pixel coordinates
* @param rightBottomX The right bottom x pixel coordinates
* @param rightBottomY The right bottom y pixel coordinates
* @since 3
* @sysCap Accessibility
*/
void SetRightBottomScreenPostion(int32_t rightBottomX, int32_t rightBottomY)
{
rightBottomY_ = rightBottomY;
rightBottomX_ = rightBottomX;
}
protected:
int32_t leftTopX_ = 0;
int32_t leftTopY_ = 0;
int32_t rightBottomX_ = 0;
int32_t rightBottomY_ = 0;
};
* class define the span info
*/
class SpanInfo {
public:
* @brief Construct
*/
SpanInfo() {}
* @brief Construct
* @param spanId The span Id.
* @param spanText The text of span.
* @param accessibilityText The accessibility text of span.
* @param accessibilityDescription The accessibility description of span.
* @param accessibilityLevel The accessibility level of span.
*/
SpanInfo(const int32_t &spanId, const std::string &spanText, const std::string &accessibilityText,
const std::string &accessibilityDescription, const std::string &accessibilityLevel);
* @brief Sets the span Id of spanInfo.
* @param spanId The span Id.
*/
void SetSpanId(const int32_t spanId);
* @brief Sets the Text of spanInfo.
* @param spanText The span text.
*/
void SetSpanText(const std::string spanText);
* @brief Sets the accessibility text of spanInfo.
* @param accessibilityText The accessibility text.
*/
void SetAccessibilityText(const std::string accessibilityText);
* @brief Sets the accessibilityDescription of spanInfo.
* @param accessibilityDescription The accessibility description.
*/
void SetAccessibilityDescription(const std::string accessibilityDescription);
* @brief Sets the accessibilityLevel of spanInfo.
* @param accessibilityLevel The accessibility level.
*/
void SetAccessibilityLevel(const std::string accessibilityLevel);
* @brief Gets the span id.
* @return The id of span.
*/
int32_t GetSpanId() const;
* @brief Gets the span Text.
* @return The Text of span.
*/
const std::string &GetSpanText() const;
* @brief Gets the accessibility text.
* @return The accessibility text of span.
*/
const std::string &GetAccessibilityText() const;
* @brief Gets the accessibility description.
* @return The accessibility description of span.
*/
const std::string &GetAccessibilityDescription() const;
* @brief Gets the accessibility level.
* @return The accessibility level of span.
*/
const std::string &GetAccessibilityLevel() const;
protected:
int32_t spanId_ = -1;
std::string spanText_ = "";
std::string accessibilityText_ = "";
std::string accessibilityDescription_ = "";
std::string accessibilityLevel_ = "";
};
* The class supply the api to set/get ui component property
*/
class AccessibilityElementInfo {
public:
static constexpr int64_t UNDEFINED_ACCESSIBILITY_ID = -1;
static constexpr int32_t UNDEFINED_TREE_ID = -1;
static constexpr int32_t UNDEFINED_WINID_ID = -1;
static constexpr int32_t MAX_SIZE = 50;
static constexpr int64_t ROOT_PARENT_ID = -2100000;
* @brief Construct
* @since 3
* @sysCap Accessibility
*/
AccessibilityElementInfo();
* @brief Set the id of AccessibilityElementInfo
* @param componentId The id of component.
* @since 3
* @sysCap Accessibility
*/
void SetComponentId(const int64_t componentId);
* @brief Get the child's accessibility Id by index.
* @param index The index of child
* @return The child's accessibility Id
* @since 3
* @sysCap Accessibility
*/
int64_t GetChildId(const int32_t index) const;
* @brief Gets the number of children
* @return The number of children
* @since 3
* @sysCap Accessibility
*/
int32_t GetChildCount() const;
* @brief Gets the id of children
* @return The list of children id
* @since 3
* @sysCap Accessibility
*/
const std::vector<int64_t> &GetChildIds() const;
* @brief Add child node information
* @param childId The id of child node
* @since 3
* @sysCap Accessibility
*/
void AddChild(const int64_t childId);
* @brief Remove child specified.
* @param childId The child to removed.
* @return true:Removed succeed, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool RemoveChild(const int64_t childId);
* @brief Gets an action list.
* @return action list. Refer to AccessibleAction
* @since 3
* @sysCap Accessibility
*/
const std::vector<AccessibleAction> &GetActionList() const;
* @brief Add action on the component
* @param action The action on the component.
* @since 3
* @sysCap Accessibility
*/
void AddAction(AccessibleAction &action);
* @brief Remove action on the component
* @param action The action object.
* @since 3
* @sysCap Accessibility
*/
void DeleteAction(AccessibleAction &action);
* @brief Remove the action on the component.
* @param actionType The action type.
* @return true:successfully deleted, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool DeleteAction(ActionType &actionType);
* @brief Remove all the action on the component.
* @since 3
* @sysCap Accessibility
*/
void DeleteAllActions();
* @brief Sets the maximum length of text allowed for this node.
* @param max The maximum length of text
* @since 3
* @sysCap Accessibility
*/
void SetTextLengthLimit(const int32_t max);
* @brief Gets the maximum length of text allowed for this node.
* @return The maximum length of text
* @since 3
* @sysCap Accessibility
*/
int32_t GetTextLengthLimit() const;
* @brief Get the window Id of the component that belongs to the window.
* @return window id
* @since 3
* @sysCap Accessibility
*/
int32_t GetWindowId() const;
* @brief Set the window Id of the component that belongs to the window.
* @param windowId The window Id
* @since 3
* @sysCap Accessibility
*/
void SetWindowId(const int32_t windowId);
* @brief Get parent accessibility Id.
* @return The accessibility Id of parent.
* @since 3
* @sysCap Accessibility
*/
int64_t GetParentNodeId() const;
* @brief Set parent node information
* @param parentId Parent node id
* @since 3
* @sysCap Accessibility
*/
void SetParent(const int64_t parentId);
* @brief Gets the rectangular area of this accessibility node control in the screen.
* @return The rectangular area of this accessibility node
* @since 3
* @sysCap Accessibility
*/
const Rect &GetRectInScreen() const;
* @brief Set the rectangular area of this accessibility node control in the screen.
* @param bounds The rectangular area of this accessibility node
* @since 3
* @sysCap Accessibility
*/
void SetRectInScreen(Rect &bounds);
* @brief Checks whether this node (a check box as an example) is checkable.
* @return true:the node is checkable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsCheckable() const;
* @brief Set whether this node (a check box as an example) is checkable.
* @param checkable true:the node is checkable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetCheckable(const bool checkable);
* @brief Checks whether this node is checked.
* @return true : Is checked, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsChecked() const;
* @brief Set whether this node is checked.
* @param checked true:Is checked, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetChecked(const bool checked);
* @brief Checks whether this node can be focused.
* @return true : Can be focused, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsFocusable() const;
* @brief Set whether this node can be focused.
* @param focusable true : Can be focused, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetFocusable(const bool focusable);
* @brief Checks whether this node has gained focus.
* @return true:Focused, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsFocused() const;
* @brief Set whether this node has gained focus.
* @param focused true : Focused, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetFocused(const bool focused);
* @brief Checks whether this node is visible to users.
* @return true : visible, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsVisible() const;
* @brief Set whether this node is visible to users.
* @param visible true:visible, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetVisible(const bool visible);
* @brief Checks whether this node has gained accessibility focus.
* @return true:Gained accessibility focus, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool HasAccessibilityFocus() const;
* @brief Set whether this node has gained accessibility focus.
* @param focused true:Gained accessibility focus, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetAccessibilityFocus(const bool focused);
* @brief Checks whether this node is selected.
* @return true:selected, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsSelected() const;
* @brief Set whether this node is selected.
* @param selected true: selected, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetSelected(const bool selected);
* @brief Checks whether this node is clickable.
* @return true: clickable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsClickable() const;
* @brief Set whether this node is clickable.
* @param clickable true:clickable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetClickable(const bool clickable);
* @brief Checks whether this node is long clickable.
* @return true: long clickable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsLongClickable() const;
* @brief Set whether this node is long clickable.
* @param longClickable true: long clickable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetLongClickable(const bool longClickable);
* @brief Checks whether this node is enabled.
* @return true:enabled, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsEnabled() const;
* @brief Set whether this node is enabled.
* @param enabled true: enabled, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetEnabled(const bool enabled);
* @brief Checks whether the content in this node is a password.
* @return true: password, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsPassword() const;
* @brief Set whether the content in this node is a password
* @param type true:password, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetPassword(const bool type);
* @brief Checks whether this node is scrollable.
* @return true: scrollable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsScrollable() const;
* @brief Set whether this node is scrollable.
* @param scrollable true: scrollable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetScrollable(const bool scrollable);
* @brief Checks whether this node is editable.
* @return true:editable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsEditable() const;
* @brief Set whether this node is editable.
* @param editable true: editable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetEditable(const bool editable);
* @brief Checks whether this node can display text in multiple lines.
* @return true: multilines, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsPluraLineSupported() const;
* @brief Set whether this node can display text in multiple lines.
* @param multiLine true:multilines, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetPluraLineSupported(const bool multiLine);
* @brief Checks whether pop-up windows are supported.
* @return true: Support popup, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsPopupSupported() const;
* @brief Set whether pop-up windows are supported.
* @param supportPopup true: Support popup, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetPopupSupported(const bool supportPopup);
* @brief Checks whether this node is deletable.
* @return true:deletable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsDeletable() const;
* @brief Set whether this node is deletable.
* @param deletable true:deletable, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetDeletable(const bool deletable);
* @brief Checks whether this node is essential to users.
* @return true: essential to user, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsEssential() const;
* @brief Set whether this node is essential to users.
* @param essential true:essential to user, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetEssential(const bool essential);
* @brief Checks whether this node is displaying a hint.
* @return true:displaying a hint, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsGivingHint() const;
* @brief Set whether this node is displaying a hint.
* @param hinting true:displaying a hint, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetHinting(const bool hinting);
* @brief Gets the bundle name of application target.
* @return bundle name
* @since 3
* @sysCap Accessibility
*/
const std::string &GetBundleName() const;
* @brief Set the bundle name of application target.
* @param bundleName The bundle name of application target.
* @since 3
* @sysCap Accessibility
*/
void SetBundleName(const std::string &bundleName);
* @brief Get component type.
* @return The component type.
* @since 3
* @sysCap Accessibility
*/
const std::string &GetComponentType() const;
* @brief Set component type.
* @param className The component type.
* @since 3
* @sysCap Accessibility
*/
void SetComponentType(const std::string &className);
* @brief Gets the text of node.
* @return The text of node
* @since 3
* @sysCap Accessibility
*/
const std::string &GetContent() const;
* @brief Set the text of node.
* @param text The text of node
* @since 3
* @sysCap Accessibility
*/
void SetContent(const std::string &text);
* @brief Gets the hint information.
* @return the hint information.
* @since 3
* @sysCap Accessibility
*/
const std::string &GetHint() const;
* @brief Sets the hint information.
* @param hintText the hint information.
* @since 3
* @sysCap Accessibility
*/
void SetHint(const std::string &hintText);
* @brief Gets the description of the accessibility node.
* @return the description of the accessibility node.
* @since 3
* @sysCap Accessibility
*/
const std::string &GetDescriptionInfo() const;
* @brief Set the description of the accessibility node.
* @param contentDescription the description of the accessibility node.
* @since 3
* @sysCap Accessibility
*/
void SetDescriptionInfo(const std::string &contentDescription);
* @brief Set the resource name of the component.
* @param viewIdResName The resource name.
* @since 3
* @sysCap Accessibility
*/
void SetComponentResourceId(const std::string &viewIdResName);
* @brief Gets the resource name.
* @return the resource name.
* @since 3
* @sysCap Accessibility
*/
const std::string &GetComponentResourceId() const;
* @brief Set whether this node has live region
* @param liveRegion live region: 0: not live region; 1: interrupt current talk back; 2: talk back by order
* @since 3
* @sysCap Accessibility
*/
void SetLiveRegion(const int32_t liveRegion);
* @brief Get the live region of the node
* @return The live region of the node
* @since 3
* @sysCap Accessibility
*/
int32_t GetLiveRegion() const;
* @brief Set whether this node has content Invalid.
* @note If the node has content Invalid,when input invalid information, it will be talkbacked. such as:
* The editbox permit number only, you input character("a"), The invalid information will be talkbacked.
* @param contentInvalid true:the content is invalid; false:the content is valid
* @since 3
* @sysCap Accessibility
*/
void SetContentInvalid(const bool contentInvalid);
* @brief Get whether this node has content Invalid.
* @return true:the content is invalid; false:the content is valid
* @since 3
* @sysCap Accessibility
*/
bool GetContentInvalid() const;
* @brief Set error information, it used with contentInvalid is setted true.
* @param error error information
* @since 3
* @sysCap Accessibility
*/
void SetError(const std::string &error);
* @brief Get error information,it used with contentInvalid is setted true.
* @return error information
* @since 3
* @sysCap Accessibility
*/
const std::string &GetError() const;
* @brief Set the id of component labeled
* @param componentId the id of component
* @since 3
* @sysCap Accessibility
*/
void SetLabeled(const int64_t componentId);
* @brief Get labeled accessibility Id
* @return accessibility Id
* @since 3
* @sysCap Accessibility
*/
int64_t GetLabeledAccessibilityId() const;
* @brief Set accessibility Id
* @param componentId The id of component
* @since 3
* @sysCap Accessibility
*/
void SetAccessibilityId(const int64_t componentId);
* @brief Get accessibility Id
* @return accessibility Id
* @since 3
* @sysCap Accessibility
*/
int64_t GetAccessibilityId() const;
* @brief Get the object of RangeInfo
* @return the object of RangeInfo
* @since 3
* @sysCap Accessibility
*/
const RangeInfo &GetRange() const;
* @brief Set the object of RangeInfo
* @param rangeInfo the object of RangeInfo
* @since 3
* @sysCap Accessibility
*/
void SetRange(RangeInfo &rangeInfo);
* @brief Set the start location of text selected.
* @param start the start location of text selected.
* @since 3
* @sysCap Accessibility
*/
void SetSelectedBegin(const int32_t start);
* @brief Get the start location of text selected.
* @return the start location of text selected.
* @since 3
* @sysCap Accessibility
*/
int32_t GetSelectedBegin() const;
* @brief Set the end location of text selected.
* @param end the end location of text selected.
* @since 3
* @sysCap Accessibility
*/
void SetSelectedEnd(const int32_t end);
* @brief Get the end location of text selected.
* @return the end location of text selected.
* @since 3
* @sysCap Accessibility
*/
int32_t GetSelectedEnd() const;
* @brief Get the object of GridInfo
* @return the object of GridInfo
* @since 3
* @sysCap Accessibility
*/
const GridInfo &GetGrid() const;
* @brief Set the object of GridInfo
* @param grid the object of GridInfo
* @since 3
* @sysCap Accessibility
*/
void SetGrid(const GridInfo &grid);
* @brief Get the object of GridItemInfo
* @return the object of GridItemInfo
* @since 3
* @sysCap Accessibility
*/
const GridItemInfo &GetGridItem() const;
* @brief Set the object of GridItemInfo
* @param gridItem the object of GridItemInfo
* @since 3
* @sysCap Accessibility
*/
void SetGridItem(const GridItemInfo &gridItem);
* @brief Get the current index of list or location text
* @return the current index of list or location text
* @since 3
* @sysCap Accessibility
*/
int32_t GetCurrentIndex() const;
* @brief Set the current index of list or location text
* @param index the current index of list or location text
* @since 3
* @sysCap Accessibility
*/
void SetCurrentIndex(const int32_t index);
* @brief Get the start index of list or location text
* @return the start index of list or location text
* @since 3
* @sysCap Accessibility
*/
int32_t GetBeginIndex() const;
* @brief Set the start index of list or location text
* @param index the start index of list or location text
* @since 3
* @sysCap Accessibility
*/
void SetBeginIndex(const int32_t index);
* @brief Get the end index of list or location text
* @return the end index of list or location text
* @since 3
* @sysCap Accessibility
*/
int32_t GetEndIndex() const;
* @brief Set the end index of list or location text
* @param index the end index of list or location text
* @since 3
* @sysCap Accessibility
*/
void SetEndIndex(const int32_t index);
* @brief Get the input type of text
* @return The input type of text
* @since 3
* @sysCap Accessibility
*/
int32_t GetInputType() const;
* @brief Set the input type of text
* @param inputType The input type of text
* @since 3
* @sysCap Accessibility
*/
void SetInputType(const int32_t inputType);
* @brief Check whether this node is valid
* @return true:valid, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
bool IsValidElement() const;
* @brief Set whether this node is valid
* @param valid true:valid, otherwise is not.
* @since 3
* @sysCap Accessibility
*/
void SetValidElement(const bool valid);
* @brief Set inspector key
* @param inspector The inspector key.
* @since 3
* @sysCap Accessibility
*/
void SetInspectorKey(const std::string &key);
* @brief Get inspector key
* @return The inspector key
* @since 3
* @sysCap Accessibility
*/
const std::string &GetInspectorKey() const;
* @brief Set the path of page.
* @param path The unique identification of one page.
* @sysCap Accessibility
*/
void SetPagePath(const std::string &path);
* @brief Get the path of page
* @return Page path
* @sysCap Accessibility
*/
const std::string &GetPagePath() const;
* @brief Set page id
* @param pageId page id.
* @sysCap Accessibility
*/
void SetPageId(const int32_t pageId);
* @brief Get page id
* @return page id
* @sysCap Accessibility
*/
int32_t GetPageId() const;
* @brief Set the text movement step
* @param granularity text moving unit
* @sysCap Accessibility
*/
void SetTextMovementStep(const TextMoveUnit granularity);
* @brief Get the text movement step
* @return Text moving unit
* @sysCap Accessibility
*/
TextMoveUnit GetTextMovementStep() const;
* @brief Set item count
* @param itemCounts The count of item
* @sysCap Accessibility
*/
void SetItemCounts(const int32_t itemCounts);
* @brief Get item count
* @return The count of item
* @sysCap Accessibility
*/
int32_t GetItemCounts() const;
* @brief Set trigger action
* @param action The trigger action
* @sysCap Accessibility
*/
void SetTriggerAction(const ActionType action);
* @brief Get trigger action
* @return The trigger action
* @sysCap Accessibility
*/
ActionType GetTriggerAction() const;
* @brief Set content list
* @param contentList The list of content
* @sysCap Accessibility
*/
void SetContentList(const std::vector<std::string> &contentList);
* @brief Get content list
* @param contentList(out) The list of content
* @sysCap Accessibility
*/
void GetContentList(std::vector<std::string> &contentList) const;
* @brief Set custom action list
* @param customActionList The list of custom actions
* @sysCap Accessibility
*/
void SetCustomActionList(const std::vector<std::string> &customActions);
* @brief Get custom action list
* @param customActionList(out) The list of custom actions
* @sysCap Accessibility
*/
void GetCustomActionList(std::vector<std::string> &customActions) const;
* @brief Set latest content
* @param content The latest content
* @sysCap Accessibility
*/
void SetLatestContent(const std::string &content);
* @brief Get latest content
* @return The latest content
* @sysCap Accessibility
*/
const std::string &GetLatestContent() const;
* @brief Set accessibility text
* @param accessibilityText The accessibility text of node
* @sysCap Accessibility
*/
void SetAccessibilityText(const std::string &accessibilityText);
* @brief Get accessibility text
* @return The accessibility text of node
* @sysCap Accessibility
*/
const std::string &GetAccessibilityText() const;
* @brief Set accessibility state description
* @param accessibilityText The accessibility state description of node
* @sysCap Accessibility
*/
void SetAccessibilityStateDescription(const std::string &accessibilityStateDescription);
* @brief Get accessibility state description
* @return The accessibility state description of node
* @sysCap Accessibility
*/
const std::string &GetAccessibilityStateDescription() const;
* @brief Set text type
* @param textType The text type of node
* @sysCap Accessibility
*/
void SetTextType(const std::string &textType);
* @brief Get text type
* @return The text type of node
* @sysCap Accessibility
*/
const std::string &GetTextType() const;
* @brief Set offset
* @param offset The offset of scroll
* @sysCap Accessibility
*/
void SetOffset(const float offset);
* @brief Get offset
* @return The offset of scroll
* @sysCap Accessibility
*/
float GetOffset() const;
* @brief Set the child tree Id and the child window Id of the component that belongs to the window.
* @param iChildTreeId The child tree Id
* @param iChildWindowId The child window Id
* @sysCap Accessibility
*/
void SetChildTreeIdAndWinId(const int32_t iChildTreeId, const int32_t iChildWindowId);
* @brief Get the child tree Id of the component that belongs to the window.
* @return The child tree Id
* @sysCap Accessibility
*/
int32_t GetChildTreeId() const;
* @brief Get the child window Id of the component that belongs to the window.
* @return The child window Id
* @sysCap Accessibility
*/
int32_t GetChildWindowId() const;
* @brief Set the child tree Id of the component that belongs to the window.
* @param iChildTreeId The child tree Id
* @sysCap Accessibility
*/
void SetBelongTreeId(const int32_t iBelongTreeId);
* @brief Get the child tree Id of the component that belongs to the window.
* @return The child tree Id
* @sysCap Accessibility
*/
int32_t GetBelongTreeId() const;
* @brief Get the parent WindowId.
* @return The parent windowId Id
* @sysCap Accessibility
*/
int32_t GetParentWindowId() const;
* @brief Set the parent window Id to the element info.
* @param iParentWindowId The parent window Id
* @sysCap Accessibility
*/
void SetParentWindowId(const int32_t iParentWindowId);
void SetExtraElement(const ExtraElementInfo &extraElementInfo);
const ExtraElementInfo &GetExtraElement() const;
* @brief Get the accessibilityGroup to the element info.
* @return the accessibilityGroup
* @sysCap Accessibility
*/
bool GetAccessibilityGroup() const;
* @brief Set the accessibilityGroup to the element info.
* @param accessibilityGroup The accessibilityGroup of node
* @sysCap Accessibility
*/
void SetAccessibilityGroup(const bool accessibilityGroup);
* @brief Set the accessibilityLevel to the element info.
* @param accessibilityLevel The accessibilityLevel of node.
* @sysCap Accessibility
*/
void SetAccessibilityLevel(const std::string accessibilityLevel);
* @brief Get the accessibilityLevel to the element info.
* @return the accessibilityLevel
* @sysCap Accessibility
*/
const std::string &GetAccessibilityLevel() const;
* @brief Set zIndex
* @param textType The value of zIndex
* @sysCap Accessibility
*/
void SetZIndex(const int32_t zIndex);
* @brief Get zindex
* @return The zindex of node
* @sysCap Accessibility
*/
int32_t GetZIndex() const;
* @brief Set opacity
* @param textType The value of opacity
* @sysCap Accessibility
*/
void SetOpacity(const float opacity);
* @brief Get opacity
* @return The opacity of node
* @sysCap Accessibility
*/
float GetOpacity() const;
* @brief Set backgroundColor
* @param textType The value of backgroundColor
* @sysCap Accessibility
*/
void SetBackgroundColor(const std::string &backgroundColor);
* @brief Get backgroundColor
* @return The backgroundColor of node
* @sysCap Accessibility
*/
const std::string &GetBackgroundColor() const;
* @brief Set backgroundImage
* @param textType The value of backgroundImage
* @sysCap Accessibility
*/
void SetBackgroundImage(const std::string &backgroundImage);
* @brief Get backgroundImage
* @return The backgroundImage of node
* @sysCap Accessibility
*/
const std::string &GetBackgroundImage() const;
* @brief Set blur
* @param textType The value of blur
* @sysCap Accessibility
*/
void SetBlur(const std::string &blur);
* @brief Get blur
* @return The blur of node
* @sysCap Accessibility
*/
const std::string &GetBlur() const;
* @brief Set hitTestBehavior
* @param textType The value of hitTestBehavior
* @sysCap Accessibility
*/
void SetHitTestBehavior(const std::string &hitTestBehavior);
* @brief Get hitTestBehavior
* @return The hitTestBehavior of node
* @sysCap Accessibility
*/
const std::string &GetHitTestBehavior() const;
* @brief Set the navDestinationId to the element info.
* @param navDestinationId The navDestinationId of node.
* @sysCap Accessibility
*/
void SetNavDestinationId(const int64_t navDestinationId);
* @brief Get the navDestinationId to the element info.
* @return the navDestinationId
* @sysCap Accessibility
*/
int64_t GetNavDestinationId() const;
* @brief Set the span to the spanlist.
* @param span The span.
* @sysCap Accessibility
*/
void AddSpan(const SpanInfo &span);
* @brief Set the spanlist to the element info.
* @param spanList The list of span.
* @sysCap Accessibility
*/
void SetSpanList(const std::vector<SpanInfo> &spanList);
* @brief Gets an span list.
* @return span list.
* @sysCap Accessibility
*/
const std::vector<SpanInfo> &GetSpanList() const;
* @brief Get the isActive to the element info.
* @return isActive status.
* @sysCap Accessibility
*/
bool GetIsActive() const;
* @brief Set the isActive to the element info.
* @param isActive The isActive of node.
* @sysCap Accessibility
*/
void SetIsActive(const bool isActive);
* @brief Get the accessibilityVisible to the element info.
* @return accessibilityVisible status.
* @sysCap Accessibility
*/
bool GetAccessibilityVisible() const;
* @brief Set the accessibilityVisible to the element info.
* @param isActive The accessibilityVisible of node.
* @sysCap Accessibility
*/
void SetAccessibilityVisible(const bool accessibilityVisible);
* @brief Get the clip to the element info.
* @return clip status.
* @sysCap Accessibility
*/
bool GetClip() const;
* @brief Set the clip to the element info.
* @param clip The clip of node.
* @sysCap Accessibility
*/
void SetClip(const bool clip);
* @brief Get the windowId to the element info.
* @return mainWindowId.
* @sysCap Accessibility
*/
int32_t GetMainWindowId() const;
* @brief Set the windowId to the element info.
* @param windowId The mainWindowId of node.
* @sysCap Accessibility
*/
void SetMainWindowId(const int32_t windowId);
* @brief Get the customComponentType to the element info.
* @return customComponentType status.
* @sysCap Accessibility
*/
const std::string &GetCustomComponentType() const;
* @brief Set the customComponentType to the element info.
* @param customComponentType The customComponentType of node.
* @sysCap Accessibility
*/
void SetCustomComponentType(const std::string &customComponentType);
* @brief Get the accessibilityNextFocusId to the element info.
* @return accessibilityNextFocusId.
* @sysCap Accessibility
*/
int64_t GetAccessibilityNextFocusId() const;
* @brief Set the accessibilityNextFocusId to the element info.
* @param accessibilityNextFocusId The accessibilityNextFocusId of node.
* @sysCap Accessibility
*/
void SetAccessibilityNextFocusId(const int64_t accessibilityNextFocusId);
* @brief Get the accessibilityPreviousFocusId to the element info.
* @return accessibilityPreviousFocusId.
* @sysCap Accessibility
*/
int64_t GetAccessibilityPreviousFocusId() const;
* @brief Set the accessibilityPreviousFocusId to the element info.
* @param accessibilityPreviousFocusId The accessibilityPreviousFocusId of node.
* @sysCap Accessibility
*/
void SetAccessibilityPreviousFocusId(const int64_t accessibilityPreviousFocusId);
* @brief Get the accessibilityNextFocusInspectorKey to the element info.
* @return accessibilityNextFocusInspectorKey.
* @sysCap Accessibility
*/
const std::string &GetAccessibilityNextFocusInspectorKey() const;
* @brief Set the accessibilityNextFocusInspectorKey to the element info.
* @param accessibilityNextFocusInspectorKey The accessibilityNextFocusInspectorKey of node.
* @sysCap Accessibility
*/
void SetAccessibilityNextFocusInspectorKey(const std::string &accessibilityNextFocusInspectorKey);
* @brief Get the windowId to the element info.
* @return innerWindowId.
* @sysCap Accessibility
*/
int32_t GetInnerWindowId() const;
* @brief Set the windowId to the element info.
* @param windowId The innerWindowId of node.
* @sysCap Accessibility
*/
void SetInnerWindowId(const int32_t windowId);
* @brief Get the accessibilityScrollable to the element info.
* @return accessibilityScrollable status.
* @sysCap Accessibility
*/
bool GetAccessibilityScrollable() const;
* @brief Set the accessibilityScrollable to the element info.
* @param accessibilityScrollable The accessibilityScrollable of node.
* @sysCap Accessibility
*/
void SetAccessibilityScrollable(const bool accessibilityScrollable);
* @brief Get the uniqueId of the element info.
* @return uniqueId.
* @sysCap Accessibility
*/
int64_t GetUniqueId() const;
* @brief Set the uniqueId to the element info.
* @param uniqueId The uniqueId of node.
* @sysCap Accessibility
*/
void SetUniqueId(const int64_t uniqueId);
* @brief Get the accessibilityOriginalText to the element info.
* @return accessibilityOriginalText.
* @sysCap Accessibility
*/
const std::string &GetOriginalText() const;
* @brief Set the accessibilityOriginalText to the element info.
* @param accessibilityScrollable The accessibilityOriginalText of node.
* @sysCap Accessibility
*/
void SetOriginalText(const std::string &originalText);
* @brief Get the accessibilitySourceType to the element info.
* @return accessibilitySourceType.
* @sysCap Accessibility
*/
const AccessibilitySourceType &GetSourceType() const;
* @brief Set the accessibilitySourceType to the element info.
* @param sourceType The accessibilitySourceType of node.
* @sysCap Accessibility
*/
void SetSourceType(const AccessibilitySourceType &sourceType);
protected:
int32_t pageId_ = -1;
int32_t windowId_ = -1;
int64_t elementId_ = UNDEFINED_ACCESSIBILITY_ID;
int64_t parentId_ = UNDEFINED_ACCESSIBILITY_ID;
int32_t belongTreeId_ = UNDEFINED_TREE_ID;
int32_t childTreeId_ = UNDEFINED_TREE_ID;
int32_t childWindowId_ = UNDEFINED_WINID_ID;
int32_t parentWindowId_ = UNDEFINED_WINID_ID;
std::string bundleName_ = "";
std::string componentType_ = "";
std::string text_ = "";
std::string hintText_ = "";
std::string accessibilityText_ = "";
std::string accessibilityStateDescription_ = "";
std::string contentDescription_ = "";
std::string resourceName_ = "";
std::string inspectorKey_ = "";
std::string pagePath_ = "";
std::vector<int64_t> childNodeIds_;
int32_t childCount_ = 0;
std::vector<AccessibleAction> operations_;
int32_t textLengthLimit_ = -1;
Rect bounds_ {};
bool checkable_ = false;
bool checked_ = false;
bool focusable_ = false;
bool focused_ = false;
bool visible_ = false;
bool accessibilityFocused_ = false;
bool selected_ = false;
bool clickable_ = false;
bool longClickable_ = false;
bool enable_ = false;
bool isPassword_ = false;
bool scrollable_ = false;
bool editable_ = false;
bool popupSupported_ = false;
bool multiLine_ = false;
bool deletable_ = false;
bool hint_ = false;
bool isEssential_ = false;
int32_t currentIndex_ = 0;
int32_t beginIndex_ = 0;
int32_t endIndex_ = 0;
RangeInfo rangeInfo_ {};
GridInfo grid_ {};
GridItemInfo gridItem_ {};
int32_t liveRegion_ = 0;
bool contentInvalid_ = true;
std::string error_ = "";
int64_t labeled_ = 0;
int32_t beginSelected_ = 0;
int32_t endSelected_ = 0;
int32_t inputType_ = 0;
bool validElement_ = true;
TextMoveUnit textMoveStep_ = STEP_CHARACTER;
int32_t itemCounts_ = 0;
ActionType triggerAction_ = ACCESSIBILITY_ACTION_INVALID;
std::vector<std::string> contentList_ {};
std::vector<std::string> customActions_ {};
std::string latestContent_ = "";
std::string textType_ = "";
float offset_ = 0.0f;
ExtraElementInfo extraElementInfo_ {};
bool accessibilityGroup_ = true;
std::string accessibilityLevel_ = "auto";
int32_t zIndex_ = 0;
float opacity_ = 0.0f;
std::string backgroundColor_ = "";
std::string backgroundImage_ = "";
std::string blur_ = "";
std::string hitTestBehavior_ = "";
int64_t navDestinationId_ = -1;
std::vector<SpanInfo> spanList_ {};
bool isActive_ = true;
bool accessibilityVisible_ = true;
bool clip_ = false;
static const int backgroundImageMaxLength = 20;
int32_t mainWindowId_ = -1;
std::string customComponentType_ = "";
int32_t innerWindowId_ = -1;
int64_t accessibilityNextFocusId_ = -1;
int64_t accessibilityPreviousFocusId_ = -1;
std::string accessibilityNextFocusInspectorKey_ = "";
bool accessibilityScrollable_ = true;
int64_t uniqueId_ = -1;
std::string originalText_ = "";
AccessibilitySourceType sourceType_ = DEFAULT_NODE;
};
* @brief Define element attribute for updating accessibility element info
*/
class AccessibilityVirtualNode {
public:
AccessibilityVirtualNode() {}
~AccessibilityVirtualNode() = default;
* @brief Gets the elementId.
* @return The elementId.
*/
int64_t GetId() const
{
return id_;
}
* @brief Sets the elementId.
* @param id The elementId.
*/
void SetId(int64_t id)
{
id_ = id;
}
* @brief Gets the text.
* @return The text.
*/
const std::string &GetText() const
{
return text_;
}
* @brief Sets the text.
* @param text The text.
*/
void SetText(const std::string &text)
{
text_ = text;
}
* @brief Gets the accessibility text.
* @return The accessibility text.
*/
const std::string &GetAccessibilityText() const
{
return accessibilityText_;
}
* @brief Sets the accessibility text.
* @param accessibilityText The accessibility text.
*/
void SetAccessibilityText(const std::string &accessibilityText)
{
accessibilityText_ = accessibilityText;
}
* @brief Gets the accessibility group.
* @return The accessibility group.
*/
bool GetAccessibilityGroup() const
{
return accessibilityGroup_;
}
* @brief Sets the accessibility group.
* @param accessibilityGroup The accessibility group.
*/
void SetAccessibilityGroup(bool accessibilityGroup)
{
accessibilityGroup_ = accessibilityGroup;
}
* @brief Gets the accessibility level.
* @return The accessibility level.
*/
const std::string &GetAccessibilityLevel() const
{
return accessibilityLevel_;
}
* @brief Sets the accessibility level.
* @param accessibilityLevel The accessibility level.
*/
void SetAccessibilityLevel(const std::string &accessibilityLevel)
{
accessibilityLevel_ = accessibilityLevel;
}
* @brief Gets the rect.
* @return The rect.
*/
const Rect &GetRect() const
{
return rect_;
}
* @brief Sets the rect.
* @param rect The rect.
*/
void SetRect(const Rect &rect)
{
rect_ = rect;
}
* @brief Gets the checkable.
* @return The checkable.
*/
bool GetCheckable() const
{
return checkable_;
}
* @brief Sets the checkable.
* @param checkable The checkable.
*/
void SetCheckable(bool checkable)
{
checkable_ = checkable;
}
* @brief Gets the checked.
* @return The checked.
*/
bool GetChecked() const
{
return checked_;
}
* @brief Sets the checked.
* @param checked The checked.
*/
void SetChecked(bool checked)
{
checked_ = checked;
}
* @brief Gets the clickable.
* @return The clickable.
*/
bool GetClickable() const
{
return clickable_;
}
* @brief Sets the clickable.
* @param clickable The clickable.
*/
void SetClickable(bool clickable)
{
clickable_ = clickable;
}
* @brief Gets the enabled.
* @return The enabled.
*/
bool GetEnabled() const
{
return enabled_;
}
* @brief Sets the enabled.
* @param enabled The enabled.
*/
void SetEnabled(bool enabled)
{
enabled_ = enabled;
}
* @brief Gets the selected.
* @return The selected.
*/
bool GetSelected() const
{
return selected_;
}
* @brief Sets the selected.
* @param selected The selected.
*/
void SetSelected(bool selected)
{
selected_ = selected;
}
* @brief Gets the custom component type.
* @return The custom component type.
*/
const std::string &GetCustomComponentType() const
{
return customComponentType_;
}
* @brief Sets the custom component type.
* @param customComponentType The custom component type.
*/
void SetCustomComponentType(const std::string &customComponentType)
{
customComponentType_ = customComponentType;
}
* @brief Gets the point.
* @return The point.
*/
const AccessibilityVirtualPoint &GetPoint() const
{
return point_;
}
* @brief Sets the point.
* @param point The point.
*/
void SetPoint(const AccessibilityVirtualPoint &point)
{
point_ = point;
}
* @brief Gets the accessibility focused.
* @return The accessibility focused.
*/
bool GetAccessibilityFocused() const
{
return accessibilityFocused_;
}
* @brief Sets the accessibility focused.
* @param accessibilityFocused The accessibility focused.
*/
void SetAccessibilityFocused(bool accessibilityFocused)
{
accessibilityFocused_ = accessibilityFocused;
}
* @brief Gets the parent id.
* @return The parent id.
*/
int64_t GetParentId() const
{
return parentId_;
}
* @brief Sets the parent id.
* @param parentId The parent id.
*/
void SetParentId(int64_t parentId)
{
parentId_ = parentId;
}
* @brief Gets the child node ids.
* @return The child node ids.
*/
const std::vector<int64_t> &GetChildNodeIds() const
{
return childNodeIds_;
}
* @brief Sets the child node ids.
* @param childNodeIds The child node ids.
*/
void SetChildNodeIds(const std::vector<int64_t> &childNodeIds)
{
childNodeIds_ = childNodeIds;
}
* @brief Gets the elementId.
* @return The elementId.
*/
int64_t GetElementId() const
{
return elementId_;
}
* @brief Sets the elementId.
* @param elementId The elementId.
*/
void SetElementId(int64_t elementId)
{
elementId_ = elementId;
}
* @brief Gets the windowId.
* @return The windowId.
*/
int32_t GetWindowId() const
{
return windowId_;
}
* @brief Sets the windowId.
* @param windowId The windowId.
*/
void SetWindowId(int32_t windowId)
{
windowId_ = windowId;
}
protected:
int64_t id_ = -1;
std::string text_ = "";
std::string accessibilityText_ = "";
bool accessibilityGroup_ = true;
std::string accessibilityLevel_ = "";
Rect rect_ {};
bool checkable_ = false;
bool checked_ = false;
bool clickable_ = false;
bool enabled_ = false;
bool selected_ = false;
std::string customComponentType_ = "";
AccessibilityVirtualPoint point_ {};
bool accessibilityFocused_ = false;
int64_t parentId_ = -1;
std::vector<int64_t> childNodeIds_;
int64_t elementId_ = -1;
int32_t windowId_ = -1;
};
}
}
#endif