MenuItemBase

Class Diagram

There is a very similar class-hierarchy of buttons. See ButtonBase.

            ╭╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮     ┌─────────────┐        ╭╌╌╌╌╌╌╌╌╌╌╌╌╌╮
            ┆/Actionable/     ┆     │MenuItemBase │        ┆/WithContent/┆
            ┆  performAction()┆     │ onAction    │        ┆  content    ┆
            ┆                 ┆     │             │        ┆             ┆
            ╰╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯     └─────────────┘        ╰╌╌╌╌╌╌╌╌╌╌╌╌╌╯
                      △                    △                    △
                      └─────────┐      ┌───┴──────────────┐     │
                             ┌──┴──────┴──────┐           │     │
                             │LabelledMenuItem│      ┌────┴─────┴───┐
                             │ text           │      │CustomMenuItem│
                             │ graphic        │      │              │
                             │ ...            │      │              │
                             └────────────────┘      └──────────────┘
                                      △
      ┌────────────────┬──────────────┴───────┐               ╭╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮
┏━━━━━┷━━━━━┓     ┏━━━━┷━━━━━━┓       ┌───────┴──────────┐    ┆/Toggle/       ┆      ┏━━━━━━━━━━━━━━━┓
┃SubMenu    ┃     ┃MenuItem   ┃       │SelectMenuItemBase│    ┆  selected     ┆      ┃ToggleGroup    ┃
┃ items     ┃     ┃           ┃       │ selected         │    ┆  toggleGroup  ├─────◇┃ selectedToggle┃
┃           ┃     ┃           ┃       │                  │    ┆  userData     ┆      ┃ userData()    ┃
┗━━━━━━━━━━━┛     ┗━━━━━━━━━━━┛       └──────────────────┘    ╰╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯      ┗━━━━━━━━━━━━━━━┛
                                              △                       △
           ┌───────────────────────────┬──────┴────────────┐   ┌──────┴─────────────┐
┏━━━━━━━━━━┷━━━━━━━━━━━┓   ┏━━━━━━━━━━━┷━━━━━━━━━┓    ┌────┴───┴─────────┐          ╵
┃PropertyToggleMenuItem┃   ┃PropertyRadioMenuItem┃    │ToggleMenuItemBase│   ToggleButtonBase
┃ property             ┃   ┃ property            ┃    │                  │
┃ value                ┃   ┃ value               ┃    │                  │
┗━━━━━━━━━━━━━━━━━━━━━━┛   ┗━━━━━━━━━━━━━━━━━━━━━┛    └──────────────────┘
                                                               △
                                                     ┌─────────┴──────────┐
                                              ┏━━━━━━┷━━━━━━━┓   ┏━━━━━━━━┷━━━━┓
                                              ┃ToggleMenuItem┃   ┃RadioMenuItem┃
                                              ┃              ┃   ┃             ┃
                                              ┗━━━━━━━━━━━━━━┛   ┗━━━━━━━━━━━━━┛

Created with Blokart.

Inheritors

Properties

Link copied to clipboard

Functions

Link copied to clipboard
fun onAction(handlerCombination: HandlerCombination = HandlerCombination.AFTER, block: (event: ActionEvent) -> Unit)

Usage :

Link copied to clipboard
open override fun performAction()