970 likes | 1.11k Views
Creating a JavaHelp System. Presented By: Kevin Lewis www.kevinlewis.com. Start. Contents. What is JavaHelp? What you need Demo Components of a JavaHelp system How they work together Directory and file organization XML and JavaHelp Topic, data, and navigation files
E N D
Creating a JavaHelp System Presented By: Kevin Lewis www.kevinlewis.com Start
Contents • What is JavaHelp? • What you need • Demo • Components of a JavaHelp system • How they work together • Directory and file organization • XML and JavaHelp • Topic, data, and navigation files • JavaHelp system enhancements • Secondary windows • Pop-up windows • Custom lightweight components • Merging HelpSets Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Contents • Presenting a JavaHelp system • Standalone • Context-sensitive • Embedded • Help-authoring tools • RoboHELP • Closing thoughts • Future of JavaHelp • Survey information • More information • Questions & answers Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
What is JavaHelp? • Online help system written in Java • Platform independent • Best for Java-based interfaces • Topic files based on HTML • Data and navigation files based on XML • Installation options • Local application • Network application • Java applet • Java product suite Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
What You Need • JavaHelp download • http://www.java.sun.com/products/javahelp • Java runtime environment (JRE) • JDK 1.1 or, preferably, Java SDK 1.2 or higher • Version 1.1 with JDK 1.1 requires Swing 1.1 or higher • Optional help-authoring tool • Java developer Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? System uses standard tripane window Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents Toolbar What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Navigation pane Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts Content pane: uses standard HTML
Demo Contents What is JavaHelp? Demo Components of a JavaHelp System ‘File’ menu offers standard ‘Open’ (for opening other HelpSets) and ‘Exit’ menu items JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? Demo ‘Options’ menu offers option for changing the font in the navigation pane Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? Demo • Standard previous and next buttons function like in a Web browser—not in a predefined order • Print buttons for setting up your printer and printing the current topic Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? Demo Components of a JavaHelp System Tabs for switching between TOC, index, and word-search index JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? Demo Components of a JavaHelp System • Standard TOC with expandable and collapsible categories • Categories and/or topics can link to topics • Synchronized JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? Demo Components of a JavaHelp System • Standard index with primary and secondary index terms • Find feature for user to type word to search for in index JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? Demo Components of a JavaHelp System • Word-search index for user to search contents of all help topics for word or phrase • Search results are listed by topic title in order of likely match • Circle shows how close the match is • Number indicates how many times the search term is found in that topic • System displays #1 topic and highlights the search term JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? Demo Components of a JavaHelp System Show and hide buttons for showing and hiding the navigation pane JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Demo Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts Invoke secondary and pop-up windows using links in text, buttons, or images
Components of a JavaHelp System • Topic files (HTML) • Data files • HelpSet file (XML) • Map file (XML) • Navigation files • TOC (XML) • Index (XML) • Word search index • HelpSet Viewer Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
How the Components Work Together Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Directory and File Organization Contents TypeFacerHelp What is JavaHelp? Demo HelpSet.hs Components of a JavaHelp System Map.jhm Standard directory and file structure for a JavaHelp system JavaHelp System Enhancements TOC.xml Presenting a JavaHelp System Index.xml Help-Authoring Tools JavaHelpSearch Closing Thoughts Images Topics FieldLevelHelp
Directory and File Organization Contents TypeFacerHelp What is JavaHelp? Demo HelpSet.hs Components of a JavaHelp System HelpSet data and navigation files at top level of project folder Map.jhm JavaHelp System Enhancements TOC.xml Presenting a JavaHelp System Index.xml Help-Authoring Tools JavaHelpSearch Closing Thoughts Images Topics FieldLevelHelp
Directory and File Organization Contents TypeFacerHelp What is JavaHelp? Demo HelpSet.hs Components of a JavaHelp System Map.jhm JavaHelp System Enhancements TOC.xml Presenting a JavaHelp System Index.xml Directory that you create when generating the word-search index Help-Authoring Tools JavaHelpSearch Closing Thoughts Images Topics FieldLevelHelp
Directory and File Organization Contents TypeFacerHelp What is JavaHelp? Demo HelpSet.hs Components of a JavaHelp System Map.jhm JavaHelp System Enhancements TOC.xml Presenting a JavaHelp System Index.xml Help-Authoring Tools JavaHelpSearch Closing Thoughts Contains image files for images used in topic files as well as navigation system Images Topics FieldLevelHelp
Directory and File Organization Contents TypeFacerHelp What is JavaHelp? Demo HelpSet.hs Components of a JavaHelp System Map.jhm JavaHelp System Enhancements TOC.xml Presenting a JavaHelp System Index.xml Help-Authoring Tools JavaHelpSearch Closing Thoughts Images Contains HTML topic files and other subdirectories—subdirectory structure is easy to manage if you copy the structure of your TOC Topics FieldLevelHelp
Directory and File Organization Contents TypeFacerHelp What is JavaHelp? Demo HelpSet.hs Components of a JavaHelp System Map.jhm JavaHelp System Enhancements TOC.xml Presenting a JavaHelp System Index.xml Help-Authoring Tools JavaHelpSearch Closing Thoughts Images Topics Contains HTML files for field-level help topics FieldLevelHelp
Topic Files • HTML-based • Use hyperlinks and other standard HTML components • Employ lightweight components • Standard JavaHelp components • “Home-grown” components • See JavaHelp documentation for limitations Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
XML and JavaHelp • JavaHelp files are XML-based • HelpSet • Map • TOC • Index • HelpSet Viewer uses DTDs for each JavaHelp file Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
HelpSet File • XML-based • “Master control” file in system • System reads this file first • HelpSet data elements • Title of help system • Location of map file • Default help topic on startup • Navigation elements • Internal information • Tool tip labels • Name and location of navigation files • Delete or rearrange order for the same appearance in the viewer’s navigation pane Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
HelpSet File <?xml version='1.0' encoding='ISO-8859-1' ?> <!DOCTYPE helpset PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp HelpSet Version 1.0//EN" "http://java.sun.com/products/javahelp/helpset_1_0.dtd"> <helpset version="1.0"> </helpset> Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools … HelpSet Data Elements Closing Thoughts … Navigation Elements Uses the <helpset> tag to nest all of the information
HelpSet File HelpSet Data Elements Contents What is JavaHelp? <title>Typeface Tester Online Help</title> <maps> <mapref location="Map.jhm"/> <homeID>overview</homeID> </maps> Demo Components of a JavaHelp System JavaHelp System Enhancements Specifies the title of the help system Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
HelpSet File HelpSet Data Elements Contents What is JavaHelp? <title>Typeface Tester Online Help</title> <maps> <mapref location="Map.jhm"/> <homeID>overview</homeID> </maps> Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Location and name of map file and the map ID of the default help topic Closing Thoughts
HelpSet File Navigation Elements Contents <view> <label>TypeFacer TOC</label> <name>TOC</name> <type>javax.help.TOCView</type> <data>TOC.xml</data> </view> What is JavaHelp? Demo Components of a JavaHelp System Text for the tool tip JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
HelpSet File Navigation Elements Contents <view> <label>TypeFacer TOC</label> <name>TOC</name> <type>javax.help.TOCView</type> <data>TOC.xml</data> </view> What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts Internal information
HelpSet File Navigation Elements Contents <view> <label>TypeFacer TOC</label> <name>TOC</name> <type>javax.help.TOCView</type> <data>TOC.xml</data> </view> What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts Location and name of file containing navigation data
Map File • XML-based • Assigns URLs to map IDs (shorter “nicknames”) • Map topic files and image files used in navigation controls or lightweight components • Use IDs instead of full URL • HelpSet and navigation files • Topic files for secondary windows Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Map File <?xml version='1.0' encoding='ISO-8859-1' ?> <!DOCTYPE map PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp Map Version 1.0//EN" "http://java.sun.com/products/javahelp/map_1_0.dtd"> <map version="1.0"> </map> Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System … Map IDs with corresponding URLs Help-Authoring Tools Closing Thoughts Uses the <map> tag to nest all of the information
Map File <!-- Image Files --> <mapID target="toplevelfolder“ url="images/toplevel.gif" /> <!-- Topics --> <mapID target="overview" url="topics/overview.htm" /> <mapID target="colors" url="topics/colors_view.htm" /> Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements I use optional comments to identify different sections in the map file Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
Map File <!-- Image Files --> <mapID target="toplevelfolder“ url="images/toplevel.gif" /> <!-- Topics --> <mapID target="overview" url="topics/overview.htm" /> <mapID target="colors" url="topics/colors_view.htm" /> Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts Map ID Corresponding URL
TOC • TOC file in HelpSet • XML-based • Uses map IDs to map top level, category, and topic titles to topic files • TOC file dictates structure of TOC in help system • Nest items to create top level, category, and topic levels • TOC component in help system • Traditional online help TOC • Uses default top level, category, and topic icons or custom icons for each • Synchronized Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
TOC <?xml version='1.0' encoding='ISO-8859-1' ?> <!DOCTYPE toc PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp TOC Version 1.0//EN" "http://java.sun.com/products/javahelp/toc_1_0.dtd"> <toc version="1.0"> </toc> Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools … TOC structure for top level, categories, and topics Closing Thoughts Uses the <toc> tag to nest all of the information
TOC <tocitem image="toplevelfolder" text="Typeface Tester Online Help"> <tocitem image="topic" target="overview" text="Overview"/> <tocitem image="topic" target="typefaces" text="Typeface View"/> <tocitem image="topic" target="colors" text="Color View"/> <tocitem image="topic" target="online_help" text="Online Help"/> <tocitem image="category" text="How to"> <tocitem image="topic" target="switch_views" text="Switch Views"/> <tocitem image="topic" target="enter_text" text="Enter Text"/> <tocitem image="topic" target="clear_text" text="Clear Text"/> <tocitem image="topic" target="change_fonts" text="Change Fonts"/> <tocitem image="topic" target="text_styles" text="Apply Text Styles"/> <tocitem image="topic" target="apply_colors" text="Apply Colors"/> </tocitem> </tocitem> Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts Notice the nests and the hierarchy for top level, category, and topics
TOC Contents The TOC file yields this TOC in the help system What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
TOC <tocitem image="toplevelfolder" text="Typeface Tester Online Help"> Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System First item in the nest creates the top level Help-Authoring Tools Closing Thoughts
TOC <tocitem image="toplevelfolder" text="Typeface Tester Online Help"> Contents What is JavaHelp? Demo Components of a JavaHelp System Map ID of the image to display with the corresponding line in the TOC JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
TOC <tocitem image="toplevelfolder" text="Typeface Tester Online Help"> Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System The top level text to display on the corresponding line in the TOC Help-Authoring Tools Closing Thoughts
TOC <tocitem image="topic" target="overview" text="Overview"/> <tocitem image="topic" target="typefaces" text="Typeface View"/> <tocitem image="topic" target="colors" text="Color View"/> <tocitem image="topic" target="online_help" text="Online Help"/> Contents What is JavaHelp? Demo Components of a JavaHelp System Series of TOC items yields those lines in the TOC JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts
TOC <tocitem image="topic" target="overview" text="Overview"/> <tocitem image="topic" target="typefaces" text="Typeface View"/> <tocitem image="topic" target="colors" text="Color View"/> <tocitem image="topic" target="online_help" text="Online Help"/> Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Map ID for the topic icon —if you don’t specify an image, JavaHelp uses its own default Help-Authoring Tools Closing Thoughts
TOC <tocitem image="topic" target="overview" text="Overview"/> <tocitem image="topic" target="typefaces" text="Typeface View"/> <tocitem image="topic" target="colors" text="Color View"/> <tocitem image="topic" target="online_help" text="Online Help"/> Contents What is JavaHelp? Demo Components of a JavaHelp System JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts The topic title to display on the corresponding line in the TOC
TOC <tocitem image="topic" target="overview" text="Overview"/> <tocitem image="topic" target="typefaces" text="Typeface View"/> <tocitem image="topic" target="colors" text="Color View"/> <tocitem image="topic" target="online_help" text="Online Help"/> Contents What is JavaHelp? Demo Components of a JavaHelp System The map ID of the topic file to display when the user selects that topic JavaHelp System Enhancements Presenting a JavaHelp System Help-Authoring Tools Closing Thoughts