Allow window specifications for display of online content to be defined in the ditamap.
When a Help system is invoked from an application, it is desirable to specify the size, position and behaviour of the window containing the Help content. Some Help Application Programming Interfaces (APIs) provide for a window name to be passed in the Help call. In some cases, the definition for the window of the called name will be embedded in the Help system. In other cases, the complete window definition information may be passed in the Help call itself.
To cater for Help systems with embedded window information, it is important for that information to be defined in the ditamap being processed, so that the processor can incorporate the definitions in the generated output file.
This proposal suggests adding a ua-window element, valid within the map element. The ua-window element would contain optional attributes of id, name, top, left, height, width, on-top, features, relative, and full-screen. None, one or many ua-window elements would be permitted within the parent element. The relative attribute is a boolean flag used to indicate whether the window dimensions are relative to the calling window, or are absolute positions.
<map title="Widget Help"> <ua-window id="fg23" name="csh" top="10" left="20" height="400" width="500" features="status=yes,toolbar=no,menubar=no,location=no" relative="true", full-screen="no" /> <topicref href="file_ops.dita" type="concept"> <topicref href="saving.dita" type="task" /> <topicref href="deleting.dita" type="task" /> <topicref href="editing.dita" type="task"> <topicmeta> <help help-id="5432" help-string="idh_fileedit" help-window="ua" /> <topicmeta> </topicref> </topicref> </map>
If implemented as a specialisation, new DTD/Schema files and alterations to the topic shells. Toolkit implementations need to modify the map2hhp and similar collection (book) level transforms. A related new ua-context element with a ua-window attribute would be required. The features attribute is modelled on the JavaScript window.Open method parameters.
Toolkit changes could be implemented as XSLT additions, at a relatively low (and one-off) cost.