Dynamic List Content: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
(2 intermediate revisions by one other user not shown) | |||
Line 14: | Line 14: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
It's also possible to fill a container with multiple <content> sources. | |||
=== Available attributes === | === Available attributes === | ||
Line 32: | Line 32: | ||
|- | |- | ||
| '''sortorder''' | | '''sortorder''' | ||
| Sort direction of the list: ascending or | | Sort direction of the list: ascending or descending. | ||
|- | |||
| '''browse''' | |||
| Since v21: Control visibility of the "more..." button which can be appended to lists to open the window specified by the '''target''' attribute: | |||
* '''always''' : Add the button, if list contains at least one item. | |||
* '''auto''' : Add the button, if the list as provided by the core actually has more items than specified by the '''limit''' attribute. This is the default value. | |||
* '''never''' : Never add the button. | |||
|} | |} | ||
Latest revision as of 05:46, 30 September 2023
Container controls (the List Container, Fixed List Container, Wrap List Container, and Panel Container) can be setup by the skinner with dynamic content from a path or plugin. This is done by including the <content> tag in the control. It saves many lines of code as it's not necessary anymore to use static items for i.e. recently added movies.
Examples
Content filled from a plugin
<content>plugin://plugin.test.me?arg1=foo</content>
Content filled from a path
<content target="music" sortby="artist" sortorder="ascending" limit="10">musicdb://recentlyaddedalbums/</content>
It's also possible to fill a container with multiple <content> sources.
Available attributes
The available XML attributes for the content tag are as follows. Note that, as always, they're lower-case only, as XML is case-sensitive.
Attributes | Description |
---|---|
target | Specifies the context window of the content. This is only necessary for folder items as it defines which window should be activated. For example musicdb://albums/ should have target="music" but musicdb://songs/ does not need a target because it contains only songs which will be played via PlayMedia(...) rather than opened via ActivateWindow(target,path,return) |
limit | Limits the number of items in the container. |
sortby | Sorts the list by the given value. |
sortorder | Sort direction of the list: ascending or descending. |
browse | Since v21: Control visibility of the "more..." button which can be appended to lists to open the window specified by the target attribute:
|
Available item properties (can be filled in plugins)
Property | Description |
---|---|
node.target | Specifies the context window of the content. This overwrites the target attribute of the content tag. |
node.target_url | Overwrites the path of an item if it's clicked on. This can be used to show the content of the item's path in another container while entering a different path if the item is clicked on. An example would be Confluence's home screen where Movies shows the items of it's path as a submenu below while clicking the item always takes the user to movie titles. |
Override onclick action
You can define a custom <onclick> action for lists with dynamic content.
<control type="list"> ... <onclick>some_builtin</onclick> ... <content>...</content> </control>
See also
Development: