handleWidgetClick handles the Click event for basic Widget behavior. For Left button: If Checkable, toggles Checked. if Focusable, Focuses or clears, If Selectable, updates state and sends Select, Deselect.
()
| 288 | // If Checkable, toggles Checked. if Focusable, Focuses or clears, |
| 289 | // If Selectable, updates state and sends Select, Deselect. |
| 290 | func (wb *WidgetBase) handleWidgetClick() { |
| 291 | wb.OnClick(func(e events.Event) { |
| 292 | if wb.AbilityIs(abilities.Checkable) { |
| 293 | wb.SetState(!wb.StateIs(states.Checked), states.Checked) |
| 294 | } |
| 295 | if wb.AbilityIs(abilities.Focusable) { |
| 296 | wb.SetFocus() |
| 297 | } else { |
| 298 | wb.focusClear() |
| 299 | } |
| 300 | // note: read only widgets are automatically selectable |
| 301 | if wb.AbilityIs(abilities.Selectable) || wb.IsReadOnly() { |
| 302 | wb.Send(events.Select, e) |
| 303 | } |
| 304 | }) |
| 305 | } |
| 306 | |
| 307 | // handleWidgetStateFromMouse updates all standard |
| 308 | // State flags based on mouse events, |
no test coverage detected