Hey guys,
I couldn't find a list on here so I thought I'd ask: what HTML-elements do you know, that can be delivered to the client?
I figured out the following tags (and attributes):
General elements<html>noscrollbar=""
[*]<head></head>
[*]<title></title>
[*]<body></body>
[*]Table-elements
Table - <table></table>
cellpadding=0
cellspacing=0
border=0
width=0
height=0
bgcolor={hexadecimal color value without pound symbol (#)}
fixwidth=0 (no idea what difference it makes to width)
[*]Table row - <tr></tr>
[*]Table cell - <td></td>
align={left, center, right}
valign={top, center, bottom}
width=0
height=0
fixwidth=0 (no idea what difference it makes to width)
[*]Controls
Default input box - <edit/>
var=variablename
align={left, center, right}
type={number} (use only if you want to let the user type in numbers ONLY)
width=0
height=0
length={length} (use only if you want to let the user type in certain amount of characters)
[*]Multiline input box <multiedit/>
var=variablename
width=0
height=0
[*]Combobox - <combobox/>
var=variablename
width=0
list="a;b;c" (use ; to separate list elements)
sel="a" (selects the specified element based on its displayed name)
[*]Regular button - <button/>
value=Button text (actually displayed text, may be "" if you don't want to display any text)
width=0
height=0
back="Button.Image" (background image, note: it has to have an _over version of the image or it will be black on mouse over)
fore="Button.Image" (foreground image? I don't know; use (utx-)package name + name of the file without extension in fore- and back-attributes)
action="bypass -h ..." (the actual action to perform when the button is clicked)
[*]Link - <a></a>
value=Button text (actually displayed text, may be "" if you don't want to display any text)
width=0
height=0
action="bypass -h ..." (the actual action to perform when the button is clicked)
[*]Image - <img/>
src="Button.Image" (source of the image, use (utx-)package and filename without extension)
width=0
height=0
[*]Other elements
New row - <br/>
New row (bigger gap) - <br1/>
Sysstring display - <fstring>{number}</fstring>
A few comments on the list:
In order to load custom images from the server without client-modding, use PledgeCrest and DDSConverter
Having <tr>-elements without any <td>-elements in it will most likely crash the game client
There is no way (at least I don't know of any way) to display a preset value in an <edit/> or <multiedit/> control
Judging by the nwindow.dll (if I'm not mistaken) it seems, that there are more HTML-controls available - e.g. slider or flash
There are ways to display various system strings by using &$#####; (where ##### is a number) as well as other combinations of the first two characters (&$, $#, $^ and some more)
Regular NpcHtmlMessage can only hold a relatively small amount of data (not sure if 16kb or 64kb); more data can be displayed using the community board
Community board has an ugly issue when displaying an input box, leaving that input box empty and clicking on a button, which sends the input-box-variable (var-attribute) using $var to the server; even though it seems the bypass is processed, it displays a weird error saying the message box shouldn't contain more than 3000 characters (in fact it contains no character at all). This message seems to be raised on the client-side since I couldn't find any packet being sent to server beforehand.
Is this list more or less complete or does anyone happen to have some more controls, attributes or tricks of how to use something?
Help in this regard is greatly appreciated! Thank you for reading.