Page MenuHomePhorge

Button UI component
Open, NormalPublic


A mandatory UI component for various situations. Button components shall have the following properties:

  • A command/action assigned
  • A label/text
  • An icon (optional)
  • A tooltip text (optional)
  • A class specifying the type/importance (e.g. primary, secondary, delete)

Buttons should be generic containers and their visual appearance depends on the context they occur in. When grouped in a toolbar component, the button might only be represented with its icon and showing the label as a tooltip when hovering the mouse. Listed in a menu, the icon + text are displayed.

The assigned command/action can also be used to set the button state (enabled/disabled) depending whether the command is currently allowed based on the state of the application (i.e. the reply-to button is only enabled if one single message is selected). The binding of this State <-> Action <-> Button relation is yet to be defined. A global registry of currently available actions can be maintained by the app and button components can observe their respective action.

User Story

  • Mike browses his Inbox folder
  • He selects a message from the list
  • The toolbar shows active buttons for reply, forward, delete an archiving the selected mesage
  • Mike selects a second message
  • The reply button becomes inactive/disabled


Ticket Type

Related Objects