The Extensible Help project was found to resolve any issues and incorporate any changes required to allow the application help (aka Online Help) to be extended by extra content, mainly provided by OpenOffice.org extensions.
|Matthias Müller-Prove||User Experience|
Context Sensitive Help
The Application Help is context specific, in that calling the Help from within the application (using F1 or the Help button, if available) triggers the display of a help page associated with the context in which the help was called. Note, that not all application contexts may be currently covered. The context sensitivity is established by calling the Help in conjunction with context parameters, such as
- a Help ID designating the actual context within the application
- an application name designating the application that calls the help (Writer, Calc, Impress...)
- a language code designating the current UI language
- a system identifier designating the current operating platform (Window, Unix)
This is how context sensitivity is currently implemented with the help application.
The basic logic is:
- Get info about help id, the current application, the current locale and platform.
- Look at the application database *.db and find the help id
- Extract the help file associated with the help id from the application help topic archive *.jar
- If no help file is associated with the id, display the start page as defined in the application's configuration file *.cfg
- Otherwise, process the extracted help xml file through main_transform.xsl and display it in the viewer.
- The application database consulted depends on the application context communicated. It contains tables that relate Help IDs to help pages.
- Some Help IDs are not associated with specific help pages
- In that case, the default start page for the application context is displayed as defined in the
- The help page associated with the help id is extracted from the jar archive
- Should the archive not contain the help page, there is a misalignment between database and archive. This should never happen and is a real bug.
- The file main_transform.xsl is used to produce the help output as displayed by the viewer
- The err.html page contains the id for the help page that could not be found for error reporting
Any new process must take into account that there may be one or more extensions installed. We need to also find a way to deal with extensions that do not match the currently installed locale.
Since the new process will require some changes to the triggering path, we will also move out the shared content from the application specific content. Currently, all shared topics are contained in all application topic files resulting in some amount of reduandant data.
Extended Tips or bubble help are chunks of help content that are defined in the application help source files and get extracted when the help is built. They are application-dependent, i.e. every application has its own set, and are stored in *.ht files in the help directories. An extended tip gets displayed when the user rests the mouse over a UI element (with extended tips activated through Tools - Options), or if he presses Shift-F1. The Help-ID for that element is used to select the corresponding extended tip content from the *.ht files.
<INSERT DIAGRAM FOR EXTENDED TIP CALL RESOLUTION PROCESS>