public override void OnRefStateSet(ref Atk.StateSet states) { states.AddState(Atk.StateType.Selectable); ISelectionItemProvider selectionItem = peer.GetPattern(PatternInterface.SelectionItem) as ISelectionItemProvider; if (selectionItem.IsSelected) { states.AddState(Atk.StateType.Selected); } else { states.RemoveState(Atk.StateType.Selected); } }
public override void OnRefStateSet(ref Atk.StateSet states) { IExpandCollapseProvider expandCollapse = peer.GetPattern(PatternInterface.ExpandCollapse) as IExpandCollapseProvider; if (expandCollapse != null) { var state = expandCollapse.ExpandCollapseState; // If it's not a leaf, it can be expanded if (state != ExpandCollapseState.LeafNode) { states.AddState(Atk.StateType.Expandable); } if (state == ExpandCollapseState.Expanded || state == ExpandCollapseState.PartiallyExpanded) { states.AddState(Atk.StateType.Expanded); } else { states.RemoveState(Atk.StateType.Expanded); } } IToggleProvider toggle = peer.GetPattern(PatternInterface.Toggle) as IToggleProvider; if (toggle != null) { states.RemoveState(Atk.StateType.Checked); states.RemoveState(Atk.StateType.Indeterminate); var state = toggle.ToggleState; if (state == ToggleState.On) { states.AddState(Atk.StateType.Checked); } else if (state == ToggleState.Indeterminate) { states.AddState(Atk.StateType.Indeterminate); } } }
public override void OnRefStateSet(ref Atk.StateSet states) { if (valueProvider.IsReadOnly) { states.RemoveState(Atk.StateType.Editable); } else { states.AddState(Atk.StateType.Editable); } }
public override void OnRefStateSet(ref Atk.StateSet states) { bool?isSelected = IsSelected; if (!isSelected.HasValue) { return; } states.AddState(Atk.StateType.Selectable); if (isSelected.Value) { states.AddState(Atk.StateType.Selected); } else { states.RemoveState(Atk.StateType.Selected); } }
private static void AddStateIf (StateSet s, bool condition, StateType t) { if (condition) { s.AddState (t); } }
protected override Atk.StateSet OnRefStateSet() { Atk.StateSet states = base.OnRefStateSet(); // Clearing inherited states to remove assumptions in specific // interface implementations. states.ClearStates(); DynamicAdapterFactory.Instance.MarkExternalReference(states); if (disposed) { states.AddState(Atk.StateType.Defunct); return(states); } if (Peer == null) { return(states); } if (!Peer.IsOffscreen()) { states.AddState(Atk.StateType.Showing); states.AddState(Atk.StateType.Visible); } else { states.RemoveState(Atk.StateType.Showing); states.RemoveState(Atk.StateType.Visible); } if (Peer.IsEnabled()) { states.AddState(Atk.StateType.Sensitive); states.AddState(Atk.StateType.Enabled); } else { states.RemoveState(Atk.StateType.Sensitive); states.RemoveState(Atk.StateType.Enabled); } if (Peer.IsKeyboardFocusable()) { states.AddState(Atk.StateType.Focusable); } else { states.RemoveState(Atk.StateType.Focusable); } if (Peer.HasKeyboardFocus()) { states.AddState(Atk.StateType.Focused); } else { states.RemoveState(Atk.StateType.Focused); } var orientation = Peer.GetOrientation(); if (orientation == AutomationOrientation.Horizontal) { states.AddState(Atk.StateType.Horizontal); } else { states.RemoveState(Atk.StateType.Horizontal); } if (orientation == AutomationOrientation.Vertical) { states.AddState(Atk.StateType.Vertical); } else { states.RemoveState(Atk.StateType.Vertical); } foreach (BasePatternImplementor impl in PatternImplementors) { impl.OnRefStateSet(ref states); } return(states); }