AUI Framework  master
Cross-platform module-based framework for developing C++20 desktop applications
UIMatcher Class Reference

Public Member Functions

 UIMatcher (const _< IMatcher > &matcher)
 
ASet< _< AView > > toSet () const
 
_< AViewone () const
 
UIMatcherincludeInvisibleViews ()
 
template<class Action >
UIMatcherperform (Action &&action)
 
UIMatcher findNearestTo (UIMatcher matcher)
 Finds the nearest view to the specified one. More...
 
template<class Assertion >
UIMatchercheck (Assertion &&assertion, const char *msg="no msg")
 
UIMatcher parent () const
 
UIMatcher allChildren () const
 
UIMatcher operator| (const UIMatcher &matcher) const
 
UIMatcher operator& (const UIMatcher &matcher) const
 

Static Public Member Functions

static UIMatchercurrent ()
 

Member Function Documentation

◆ findNearestTo()

UIMatcher UIMatcher::findNearestTo ( UIMatcher  matcher)
inline

Finds the nearest view to the specified one.

Finds the nearest view to the bottom right corner of the specified view. The bottom right corner is chosen in order to simulate human eye scanning (which is from top-left to bottom-right).

Useful when finding fields by their labels:

_new<ALabel>("Login"),
_new<ATextField>(),
_new<ALabel>("Password"),
_new<ATextField>(),
...
By::type<ATextField>().findNearestTo(By::text("Login")) // <- matches the first ATextField
By::type<ATextField>().findNearestTo(By::text("Password")) // <- matches the second ATextField
Editable field with text to receive a text input from the user.
Definition: ATextField.h:25
UIMatcher findNearestTo(UIMatcher matcher)
Finds the nearest view to the specified one.
Definition: UIMatcher.h:111
Parameters
matcherUIMatcher of a view to find the nearest to. The UIMatcher is expected to match only one view.
Returns
the nearest view

The documentation for this class was generated from the following files: