38 public class UnitOfWork
89 internal IGPALGrid<string> RetGrid {
get;
set; } =
null;
96 public List<string>
TokenList {
get;
internal set; } =
null;
101 internal class WebElementWithType
105 internal ElementType elementType;
106 internal bool currentNode;
110 internal List<GPALElement> elements;
111 internal int current;
116 null != elements && current < elements.Count ? elements[current] : gPalElement;
118 internal WebElementWithType(
Selector selector,
GPALElement webElement, ElementType elementType)
120 this.gPalElement = webElement;
121 this.elementType = elementType;
122 this.currentNode =
true;
123 this.selector = selector;
126 internal List<WebElementWithType> ContextPath {
get;
set; }
127 internal GPALElement ShadowRoot {
get;
set; }
129 internal List<string> FetchResults {
get;
set; } =
new List<string>();
131 internal IGPALGrid<string> FetchTokens {
get;
set; }
134 internal class ElementNode
136 public AutomationElement AutomationElement {
get;
internal set; }
137 public Control ControlElement {
get;
internal set; }
138 public GPALElement GPALElement {
get;
internal set; }
139 public InteractionType InteractionType {
get;
internal set; } = InteractionType.Selenium;
140 public int OffsetX {
get;
internal set; } = 0;
141 public int OffsetY {
get;
internal set; } = 0;
146 internal GPALGrid<UnitOfWork.ElementNode> ElementGrid {
get;
set; } =
null;
154 public List<string>
HeaderList {
get;
internal set; } =
null;
158 public List<string> ControlHeaderList {
get;
internal set; } =
null;
159 internal SortedDictionary<int, string> MatchedRowIndexes {
get;
set; } =
null;
178 internal bool GetGridCalled {
get;
set; } =
false;
191 internal WaitTime WaitForInMs {
get;
set; } = WaitTime.Never;
197 internal DateTime? WaitForSatisfied {
get;
set; } =
null;
198 internal string WaitForTitle {
get;
set; } =
null;
199 internal string WaitForTitleRegex {
get;
set; } =
null;
200 internal ElementState WaitForElementState {
get;
set; } = ElementState.NotSet;
202 internal int ColCount {
get;
set; } = 0;
203 internal int RowCount {
get;
set; } = 0;
205 internal Browser.Browser.CallAfterFillInDelegate CallAfterFillIn {
get;
set; }
206 internal List<CallIfDelegate> CallIfFound {
get;
set; }
207 internal List<CallIfDelegate> CallIfNotFound {
get;
set; }
208 internal Application.Application.CallAfterFillInDelegate AppCallAfterFillIn {
get;
set; }
209 internal List<Application.Application.CallIfDelegate> AppCallIfFound {
get;
set; }
210 internal List<Application.Application.CallIfDelegate> AppCallIfNotFound {
get;
set; }
212 public CallIfStatus CallIfFoundHandled {
get;
internal set; } = CallIfStatus.NotHandled;
213 public CallIfStatus CallIfNotFoundHandled {
get;
internal set; } = CallIfStatus.NotHandled;
214 public CallIfStatus AppCallIfFoundHandled {
get;
internal set; } = CallIfStatus.NotHandled;
215 public CallIfStatus AppCallIfNotFoundHandled {
get;
internal set; } = CallIfStatus.NotHandled;
239 ControlHeaderList =
new List<string>();
240 CallIfFound =
new List<CallIfDelegate>();
241 CallIfNotFound =
new List<CallIfDelegate>();
242 AppCallIfFound =
new List<Application.Application.CallIfDelegate>();
243 AppCallIfNotFound =
new List<Application.Application.CallIfDelegate>();
244 MatchedRowIndexes =
new SortedDictionary<int, string>();
246 ContextPath =
new List<WebElementWithType>();
247 WaitForInMs = GPAL.GPALSettings.WaitForInMs;
249 RetGrid = GPAL.GridForType<
string>();