Flutter Engine
The Flutter Engine
Classes | Namespaces | Macros | Functions
ax_platform_node_textrangeprovider_win.cc File Reference
#include "ax/platform/ax_platform_node_textrangeprovider_win.h"
#include <UIAutomation.h>
#include <wrl/client.h>
#include <string_view>
#include "ax/ax_action_data.h"
#include "ax/ax_range.h"
#include "ax/platform/ax_platform_node_delegate.h"
#include "ax/platform/ax_platform_node_win.h"
#include "ax/platform/ax_platform_tree_manager.h"
#include "base/win/variant_vector.h"
#include "flutter/fml/platform/win/wstring_conversion.h"
#include "third_party/icu/source/i18n/unicode/usearch.h"

Go to the source code of this file.

Classes

class  ui::AXRangePhysicalPixelRectDelegate
 

Namespaces

namespace  ui
 

Macros

#define UIA_VALIDATE_TEXTRANGEPROVIDER_CALL()
 
#define UIA_VALIDATE_TEXTRANGEPROVIDER_CALL_1_IN(in)
 
#define UIA_VALIDATE_TEXTRANGEPROVIDER_CALL_1_OUT(out)
 
#define UIA_VALIDATE_TEXTRANGEPROVIDER_CALL_1_IN_1_OUT(in, out)
 
#define UIA_VALIDATE_BOUNDS(bounds)
 

Functions

static bool ui::StringSearchBasic (const std::u16string_view search_string, const std::u16string_view find_in, size_t *find_start, size_t *find_length, bool backwards)
 
bool ui::StringSearch (std::u16string_view search_string, std::u16string_view find_in, size_t *find_start, size_t *find_length, bool ignore_case, bool backwards)
 

Macro Definition Documentation

◆ UIA_VALIDATE_BOUNDS

#define UIA_VALIDATE_BOUNDS (   bounds)
Value:
if (bounds.OffsetFromOrigin().IsZero() && bounds.IsEmpty()) \
return UIA_E_NOTSUPPORTED;
Optional< SkRect > bounds
Definition: SkRecords.h:189

Definition at line 54 of file ax_platform_node_textrangeprovider_win.cc.

◆ UIA_VALIDATE_TEXTRANGEPROVIDER_CALL

#define UIA_VALIDATE_TEXTRANGEPROVIDER_CALL ( )
Value:
if (!GetOwner() || !GetOwner()->GetDelegate() || !start() || \
!start()->GetAnchor() || !end() || !end()->GetAnchor()) \
return UIA_E_ELEMENTNOTAVAILABLE; \
SetStart(start()->AsValidPosition()); \
SetEnd(end()->AsValidPosition());
glong glong end

Definition at line 20 of file ax_platform_node_textrangeprovider_win.cc.

◆ UIA_VALIDATE_TEXTRANGEPROVIDER_CALL_1_IN

#define UIA_VALIDATE_TEXTRANGEPROVIDER_CALL_1_IN (   in)
Value:
if (!GetOwner() || !GetOwner()->GetDelegate() || !start() || \
!start()->GetAnchor() || !end() || !end()->GetAnchor()) \
return UIA_E_ELEMENTNOTAVAILABLE; \
if (!in) \
return E_POINTER; \
SetStart(start()->AsValidPosition()); \
SetEnd(end()->AsValidPosition());

Definition at line 26 of file ax_platform_node_textrangeprovider_win.cc.

◆ UIA_VALIDATE_TEXTRANGEPROVIDER_CALL_1_IN_1_OUT

#define UIA_VALIDATE_TEXTRANGEPROVIDER_CALL_1_IN_1_OUT (   in,
  out 
)
Value:
if (!GetOwner() || !GetOwner()->GetDelegate() || !start() || \
!start()->GetAnchor() || !end() || !end()->GetAnchor()) \
return UIA_E_ELEMENTNOTAVAILABLE; \
if (!in || !out) \
return E_POINTER; \
*out = {}; \
SetStart(start()->AsValidPosition()); \
SetEnd(end()->AsValidPosition());

Definition at line 43 of file ax_platform_node_textrangeprovider_win.cc.

◆ UIA_VALIDATE_TEXTRANGEPROVIDER_CALL_1_OUT

#define UIA_VALIDATE_TEXTRANGEPROVIDER_CALL_1_OUT (   out)
Value:
if (!GetOwner() || !GetOwner()->GetDelegate() || !start() || \
!start()->GetAnchor() || !end() || !end()->GetAnchor()) \
return UIA_E_ELEMENTNOTAVAILABLE; \
if (!out) \
return E_POINTER; \
*out = {}; \
SetStart(start()->AsValidPosition()); \
SetEnd(end()->AsValidPosition());

Definition at line 34 of file ax_platform_node_textrangeprovider_win.cc.