1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-28 04:19:56 +00:00
TiddlyWiki5/editions/tw5.com/tiddlers/widgets/MessageCatcherWidget.tid

47 lines
2.2 KiB
Plaintext
Raw Normal View History

2021-03-09 18:07:07 +00:00
created: 20210309133636211
modified: 20210711193113104
2021-03-09 18:07:07 +00:00
tags: Widgets
title: MessageCatcherWidget
type: text/vnd.tiddlywiki
! Introduction
<<.from-version "5.2.0">>
2021-03-09 18:07:07 +00:00
The message catcher widget traps [[messages|Messages]] dispatched within its child content, and allows invoking a series of ActionWidgets in response to those messages.
! Content and Attributes
The content of the `<$messagecatcher>` widget is displayed normally.
|!Attribute |!Description |
|//{any attributes starting with $}// |Each attribute name (excluding the $) specifies the name of a message, and the value specifies the action string to be invoked |
|type |Name of the message be trapped, for example "tm-scroll" or "tm-navigate". The `type` and `actions` attributes can be useful when the type of event needs to be specified via a variable or text reference |
|actions |Action string to be invoked when a matching message is trapped. Must be used in conjunction with the `type` attribute |
2021-03-09 18:07:07 +00:00
! Variables
The message catcher widget sets the following variables within each action string:
2021-03-09 18:07:07 +00:00
|!Variables |!Description |
|`event-*` |All string-based properties of the `event` object, with the names prefixed with `event-` |
|`list-event` |A list of the names of each the string-based properties of the `event` object (the names are not prefixed with `event-`) |
2021-03-09 18:07:07 +00:00
|`event-paramObject-*` |All string-based properties of the `event.paramObject` object, with the names prefixed with `event-paramObject-` |
|`list-event-paramObject` |A list of the names of each the string-based properties of the `event.paramObject` object (the names are not prefixed with `event-paramObject-`) |
|`modifier` |For messages that originated with browser events, the modifier keys that were pressed when the event was fired. The possible modifiers are ''normal'' (no modifiers), ''ctrl'', ''ctrl-alt'', ''ctrl-shift'', ''alt'', ''alt-shift'', ''shift'' and ''ctrl-alt-shift'' |
2021-03-09 18:07:07 +00:00
! Example
<$macrocall $name="wikitext-example-without-html" src="""
\define actions()
<$action-log/>
\end
<$messagecatcher type="tm-navigate" actions=<<actions>>>
Click on [[this link]] to fire an action. See the browser JavaScript console for the output
</$messagecatcher>
"""/>