From 5e4aa8e9aba34bb101923685c23f0f6681a12812 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Sun, 12 Dec 2021 23:29:06 +0100 Subject: Add documenttation for javascript rewrite. --- .../javascript/components/tab_group_element.texi | 46 ++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 doc/ref/javascript/components/tab_group_element.texi (limited to 'doc/ref/javascript/components/tab_group_element.texi') diff --git a/doc/ref/javascript/components/tab_group_element.texi b/doc/ref/javascript/components/tab_group_element.texi new file mode 100644 index 00000000..7d9ca412 --- /dev/null +++ b/doc/ref/javascript/components/tab_group_element.texi @@ -0,0 +1,46 @@ +@subsection Tab Group Element + +@deftp {Web Component for VEvent} TabGroupElement +@wcindex +@wcindex tab-group +@code{} + +A group of tabs, where only one can be visible at a time. + +@c TODO which form does the HTML document have? For CSS purposes + +Each tab consists of two parts, a label which is used for selecting +it, and a tab-element, which contains the actual content. These two +should refer to each other as follows: + +@verbatim ++---------------+ +----------------+ +| TabLabel | | Tab | ++---------------+ +----------------+ +| id |<----| aria-labeledby | +| aria-controls |---->| id | ++---------------+ +----------------+ +@end verbatim + +Further information about tabs in HTML can be found here: +@url{https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Tab_Role} + +@defvr {CSS Variable} {--tabcount} +Each tab element has the style property @code{--tabcount} set to how +many tabs it has. This is mostly useful to make sure the tab context +is large enough to fit all tab labels without overflowing. +@end defvr + +@deftypemethod TabGroupElement void addTab {HTMLElement} {label: string?} {title: string?} +Adds a new tab to the group. The first parameter will make up the body +of the tab. The label is whath should be shown in the tab selector, +but defaults to the first letter of the text content of the body node. +Title is the hoover text of the label. +@end deftypemethod + +@deftypemethod TabGroupElement void removeTab {HTMLElement} +HTMLElement must be one of the tab bodies in this group. This method +removes it, along with its TabLabel. +@end deftypemethod + +@end deftp -- cgit v1.2.3