System\Windows\Forms\ToolTip\KeyboardToolTipStateMachine.cs (22)
55private SmState Transition(IKeyboardToolTip tool, ToolTip tooltip, SmEvent @event)
58(SmState.Hidden, SmEvent.FocusedTool) => SetupInitShowTimer(tool, tooltip),
59(SmState.Hidden, SmEvent.LeftTool) => _currentState, // OK
60(SmState.ReadyForInitShow, SmEvent.FocusedTool) => _currentState, // unlikely: focus without leave
61(SmState.ReadyForInitShow, SmEvent.LeftTool) => FullFsmReset(),
62(SmState.ReadyForInitShow, SmEvent.InitialDelayTimerExpired) => ShowToolTip(tool, tooltip),
64(SmState.Shown, SmEvent.FocusedTool) => _currentState, // unlikely: focus without leave
65(SmState.Shown, SmEvent.LeftTool) => HideAndStartWaitingForRefocus(tool, tooltip),
66(SmState.Shown, SmEvent.DismissTooltips) => FullFsmReset(),
68(SmState.WaitForRefocus, SmEvent.FocusedTool) => SetupReshowTimer(tool, tooltip),
69(SmState.WaitForRefocus, SmEvent.LeftTool) => _currentState, // OK
70(SmState.WaitForRefocus, SmEvent.RefocusWaitDelayExpired) => FullFsmReset(),
72(SmState.ReadyForReshow, SmEvent.FocusedTool) => _currentState, // unlikely: focus without leave
73(SmState.ReadyForReshow, SmEvent.LeftTool) => StartWaitingForRefocus(tool),
74(SmState.ReadyForReshow, SmEvent.ReshowDelayTimerExpired) => ShowToolTip(tool, tooltip),
111Transit(SmEvent.LeftTool, sender);
123Transit(SmEvent.FocusedTool, sender);
177Transit(SmEvent.RefocusWaitDelayExpired, (IKeyboardToolTip)toolObject);
189GetOneRunTickHandler((Timer sender) => Transit(SmEvent.ReshowDelayTimerExpired, tool)));
215GetOneRunTickHandler((Timer sender) => Transit(SmEvent.DismissTooltips, _currentTool)));
226GetOneRunTickHandler((Timer sender) => Transit(SmEvent.InitialDelayTimerExpired, _currentTool)));
250private void Transit(SmEvent @event, IKeyboardToolTip source)