webMainWin object | webui.t[2714]

The standard "main window" of our user interface. This is the game object that represents the default initial HTML page that the player's web browser connects to. We build this out of three base classes:

- WebResourceInit, because this is the starting page that the browser initially connects to. This class does the initial handshaking to set up the session.

- WebResourceResFile, because we store the HTML for the page in a resource file. This class does the work of sending the resource file's contents to the browser.

- WebLayoutWindow, because the default main page is also a layout window, which is basically a container for IFRAME elements where we plug in the sub-windows that make up the game's user interface.

Games can customize the front page in any way they like. If you want to customize the HTML of the main page, you can substitute a different HTML (.htm) file, and change the processName() method to return the name of that file. If you want to use something other than a layout window as the front page, you can simply replace this whole class.

`transient webMainWin : WebResourceInit WebLayoutWindow WebResourceResFile`

Superclass Tree (in declaration order)

`webMainWin`
`WebResourceInit`
`object`
`WebLayoutWindow`
`WebWindow`
`WebResourceResFile`
`WebResource`
`object`
`WebResourceResFile`
`WebResource`
`object`

Summary of Properties

`curCmdClient fileDialogResult fileDialogState inputDialogResult inputDialogState inputEventResult inputEventState menuSysState name pathName synthEventQueue title vpath`

Inherited from `WebResourceInit` :
`server`

Inherited from `WebLayoutWindow` :
`frames src`

Inherited from `WebWindow` :
`sthCtx`

Inherited from `WebResourceResFile` :
`binaryExts browserExtToMime`

Inherited from `WebResource` :
`group priority`

``

``

Summary of Methods

`getInputDialog getInputEvent getInputFile getInputFileFromClient getState getSyntheticEvent inputFileDismissed offerDownload postSyntheticEvent processName receiveFileSelection receiveFileUpload receiveInputDialog receiveInputEvent setTitle syntheticEventReady`

Inherited from `WebResourceInit` :
`connectUI processRequest`

Inherited from `WebLayoutWindow` :
`createFrame flushWin winFromPath`

Inherited from `WebWindow` :
`clearWindow sendWinEvent sendWinEventTo write`

Inherited from `WebResourceResFile` :
`isTextFile matchRequest`

Inherited from `WebResource` :
`sendAck sendXML`

``

``

Properties

`curCmdClient` | `webui.t[2744]`

Client session for current command line input. Certain modal interactions, such as file dialogs, are directed only to the client that initiated the current command.

`fileDialogResult` | `webui.t[3202]`

file dialog result - this is a result list using the same format as the native inputFile() function

`fileDialogState` | `webui.t[3196]`

file dialog state - this is the XML describing the currently open file dialog; if the dialog isn't open, this is an empty string

`inputDialogResult` | `webui.t[3211]`

input dialog result - this is the button number the user selected

`inputDialogState` | `webui.t[3208]`

input dialog state - this is the XML describing an input dialog while a dialog is running, or an empty string if not

`inputEventResult` | `webui.t[3217]`

input event result

`inputEventState` | `webui.t[3214]`

input event state

`menuSysState` | `webui.t[3220]`

menuSys state - menu system state (maintained by the menu module)

`name` OVERRIDDEN | `webui.t[2723]`

the top window is always called "main"

`pathName` OVERRIDDEN | `webui.t[2724]`

no description available

`synthEventQueue` | `webui.t[3229]`

Synthetic event queue. This is a vector of synthetic events, set up in the [type, params...] format that the system inputEvent() function and related functions use. The 'type' code for a synthetic evente is a string instead of the numeric identifier that the system functions use.

`title` | `webui.t[2727]`

the window title

`vpath` OVERRIDDEN | `webui.t[2719]`

match the webuires directory path as the URL path, but map this to main.htm as the underlying resource name

Methods

`getInputDialog (icon, prompt, buttons, defaultButton, cancelButton)` | `webui.t[3100]`

show a generic inputDialog dialog

`getInputEvent (timeout)` | `webui.t[2779]`

wait for an input event

`getInputFile (prompt, dialogType, fileType, flags)` | `webui.t[2835]`

show the file selector dialog

`getInputFileFromClient (prompt, dialogType, fileType, flags)` | `webui.t[2912]`

Get an input file from the client PC. We'll attempt to upload or download a file from/to the client PC, using a local temporary file for the actual file operations. This is a special form of the input file dialog that we use when we're not connected to a storage server.

`getState (client)`OVERRIDDEN | `webui.t[2747]`

get the state

`getSyntheticEvent ( )` | `webui.t[3190]`

pull the next synthetic event from the queue

`inputFileDismissed ( )` | `webui.t[3033]`

receive notification that the file dialog has been closed

`offerDownload (file)` | `webui.t[2986]`

Offer a file for download to the client. 'file' is a DownloadTempFile object previously created by a call to inputFile().

`postSyntheticEvent (id, [params])` | `webui.t[3180]`

Post a synthetic event. A synthetic event looks like a regular UI or network event, but is generated internally instead of being delivered from the underlying browser or network subsystems.

'id' is a string giving the event type. The remaining parameters are up to each event type to define.

`processName (n)`OVERRIDDEN | `webui.t[2720]`

no description available

`receiveFileSelection (req, query)` | `webui.t[2999]`

receive a file selection from the file selector dialog

`receiveFileUpload (req, query)` | `webui.t[3040]`

receive a file upload from the file upload dialog

`receiveInputDialog (req, query)` | `webui.t[3159]`

receive a selection from the input dialog

`receiveInputEvent (req, query)` | `webui.t[2813]`

receive an input event

`setTitle (title)` | `webui.t[2730]`

set the window title

`syntheticEventReady ( )` | `webui.t[3187]`

is a synthetic event ready?

TADS 3 Library Manual
Generated on 5/16/2013 from TADS version 3.1.3