Difference between revisions of "Extensible Help Project Plan"

From Apache OpenOffice Wiki
Jump to: navigation, search
 
(5 intermediate revisions by one other user not shown)
Line 16: Line 16:
  
 
=== M1 Extend help runtime system ===
 
=== M1 Extend help runtime system ===
General target: Finished end of week 36
+
Finished end of week 36
 
* Extend HelpContentProvider to support help sources in extensions
 
* Extend HelpContentProvider to support help sources in extensions
** For Extended tool tips (*.ht files), '''Done'''
+
** For Extended tool tips (*.ht files), <font color='green'><b>Done</b></font>
** For help content (*.db files), '''Done'''
+
** For help content (*.db files), <font color='green'><b>Done</b></font>
** For index content (*.key files), '''Done'''
+
** For index content (*.key files), <font color='green'><b>Done</b></font>
** Allow extention developer to choose target index/indices (swriter, scalc, ...), '''Done'''
+
** Allow extention developer to choose target index/indices (swriter, scalc, ...), <font color='green'><b>Done</b></font>
** For tree content? To be discussed..., '''Open'''
+
 
* Multiple language support
 
* Multiple language support
** Works automatically by name convention if language folder exists<br/>'''Done''' respectively compiler related problem
+
** Works automatically by name convention if language folder exists<br/><font color='green'><b>Done</b></font> respectively compiler related problem
** English as fallback, '''Open''' (can be done better with at least M2 finished)
+
 
* Check performance
 
* Check performance
** Performance analysis, '''Done''' no problems, but uncovered:
+
** Performance analysis, <font color='green'><b>Done</b></font>, no problems, but uncovered:
** Potential memory problem, '''Open''' (can be analyzed better with at least M2 finished)
+
** Potential memory problem (will be handled in M5)
  
 
=== M2 Access HelpCompiler/HelpLinker to compile extension help content ===
 
=== M2 Access HelpCompiler/HelpLinker to compile extension help content ===
General target: Finished in week 40
+
Finished in week 40
* Make new C++ HelpLinker available as library in OOo, '''Done'''
+
* Make new C++ HelpLinker available as library, <font color='green'><b>Done</b></font>
* Adapt HelpLinker to compile/link help content inside extensions,
+
* Adapt HelpLinker to compile/link help content inside extensions, <font color='green'><b>Done</b></font>
*:e.g. when called with a special option, '''In progress'''
+
  
=== M3 OOo integration ===
+
=== M3 Change HelpCompiler/HelpLinker error handling ===
General target: Finished end of week 41
+
Finished in week 43
* Package registry backend, '''Open'''
+
* Remove exit(1) calls from HelpCompiler/HelpLinker for extension case, <font color='green'><b>Done</b></font>
 +
* Register error handler at libxml2 to get xml parsing error info, <font color='green'><b>Done</b></font>
 +
* Return error info to caller, <font color='green'><b>"Done"</b></font>
 +
 
 +
=== M4 OOo integration ===
 +
Target: To be finished in week 44
 +
* Package registry backend, <font color='green'><b>"Done"</b></font>
 
** Shared extensions: Compile help at deploy time
 
** Shared extensions: Compile help at deploy time
** User extensions: Mark somehow that help needs to be compiled
+
** User extensions: Compile help at deploy time, at least for now. Optimization can be done later:
** Implement on demand compilation mechanism in HelpContentProvider
+
*** Mark somehow that help needs to be compiled
* Dialog and menu bindings (if any changes are necessary), '''Open'''
+
*** Implement on demand compilation mechanism in HelpContentProvider
* Adapt help viewer (if any changes are necessary), '''Open'''
+
* Resources for HelpCompiler/HelpLinker error classes, <font color='green'><b>"Done"</b></font>
 +
* Dialog and menu bindings, <font color='green'><b>Done</b></font>
 +
* (Adapt help viewer) it seems no changes are necessary, <font color='green'><b>"Done"</b></font>
  
=== M4 Migrate to Lucene as indexer ===
+
=== M5: Finish project ===
General target: Finished end of week 43
+
Target: To be finished at the beginning of week 45 (11/05/2007)
 +
* English as fallback, <font color='green'><b>"Done"</b></font>
 +
* Analyze/fix memory problem, <font color='red'><b>Open</b></font> (no easy fix available, postponed)
 +
* Deploy HelpLinker library with OOo, <font color='green'><b>"Done"</b></font>
 +
* Clean up code, <font color='green'><b>"Done"</b></font>
 +
* Prepare cws ab38 for QA, <font color='green'><b>"Done"</b></font>
  
* Add Lucene as project into OOo built environment, '''Open'''
+
=== M6: Documentation ===
* Make HelpLinker use Lucene indexer functionality, '''Open'''
+
Target: To be finished end of week 46
* Make HelpContentProvider use Lucene search engine, '''Open'''
+
* Create SDK example (containing new menu entry with help and a dialog with help), <font color='red'><b>Open</b></font>
 +
* Developers Guide Chapter, <font color='red'><b>Open</b></font>
  
This is not really a precondition for extension help support, extensions could also use the old indexer.
+
== Future planning, OOo 3.0 ==
But then, after introducing Lucene later, a special handling will have to be provided for already installed
+
Already known issues that probably cannot be realized for OOo 2.4
extensions. Either the old indexer still has to be supported or the index will have to be rebuild with
+
the new indexer.
+
  
=== M5: Finish project ===
+
=== M7 Migrate to Lucene as indexer ===
General target: Finished end of week 44 (11/02/2007)
+
* Add Lucene as project into OOo built environment
* Clean up code, '''Open'''
+
* Make HelpLinker use Lucene indexer functionality
* Optimization, '''Open'''
+
* Make HelpContentProvider use Lucene search engine
* Prepare cws ab38 for QA, '''Open'''
+
* Support Lucene for extens help content
 +
 
 +
=== M8 ===
 +
* Images in help
 +
* Support adding tree content
 +
 
 +
=== M9 ===
 +
* Overloading of existing help pages
 +
* Extending existing help pages
 +
 
 +
=== Status Changes ===
 +
 
 +
10/26/2007
 +
* Updated status
 +
* Moved Lucene/Indexing to Future planning
 +
[[Category:Documentation]]

Latest revision as of 11:11, 4 March 2010

This page describes project details for the Extensible Help project. Main page: Extensible_Help

General concept

Extension developers should be able to include help content into the extension just by including xhp files (the help file format also used by the OOo help) into a help folder inside the extension. Multiple languages should be supported. English should be the fallback language. It shouldn't be necessary for extension developers to compile the help files at creation time. This will be done automatically when the extension is deployed (shared extensions) or used for the first time (user extensions).

Planning

Although the main tasks are listed as milestones they should not be seen in a strict sequence as some parts of earlier milestones may depend on progress in others. Example: The new HelpContentProvider mechanisms (M1) can't be finally tested and finished without a running HelpLinker mechanism (M2).

M1 Extend help runtime system

Finished end of week 36

  • Extend HelpContentProvider to support help sources in extensions
    • For Extended tool tips (*.ht files), Done
    • For help content (*.db files), Done
    • For index content (*.key files), Done
    • Allow extention developer to choose target index/indices (swriter, scalc, ...), Done
  • Multiple language support
    • Works automatically by name convention if language folder exists
      Done respectively compiler related problem
  • Check performance
    • Performance analysis, Done, no problems, but uncovered:
    • Potential memory problem (will be handled in M5)

M2 Access HelpCompiler/HelpLinker to compile extension help content

Finished in week 40

  • Make new C++ HelpLinker available as library, Done
  • Adapt HelpLinker to compile/link help content inside extensions, Done

M3 Change HelpCompiler/HelpLinker error handling

Finished in week 43

  • Remove exit(1) calls from HelpCompiler/HelpLinker for extension case, Done
  • Register error handler at libxml2 to get xml parsing error info, Done
  • Return error info to caller, "Done"

M4 OOo integration

Target: To be finished in week 44

  • Package registry backend, "Done"
    • Shared extensions: Compile help at deploy time
    • User extensions: Compile help at deploy time, at least for now. Optimization can be done later:
      • Mark somehow that help needs to be compiled
      • Implement on demand compilation mechanism in HelpContentProvider
  • Resources for HelpCompiler/HelpLinker error classes, "Done"
  • Dialog and menu bindings, Done
  • (Adapt help viewer) it seems no changes are necessary, "Done"

M5: Finish project

Target: To be finished at the beginning of week 45 (11/05/2007)

  • English as fallback, "Done"
  • Analyze/fix memory problem, Open (no easy fix available, postponed)
  • Deploy HelpLinker library with OOo, "Done"
  • Clean up code, "Done"
  • Prepare cws ab38 for QA, "Done"

M6: Documentation

Target: To be finished end of week 46

  • Create SDK example (containing new menu entry with help and a dialog with help), Open
  • Developers Guide Chapter, Open

Future planning, OOo 3.0

Already known issues that probably cannot be realized for OOo 2.4

M7 Migrate to Lucene as indexer

  • Add Lucene as project into OOo built environment
  • Make HelpLinker use Lucene indexer functionality
  • Make HelpContentProvider use Lucene search engine
  • Support Lucene for extens help content

M8

  • Images in help
  • Support adding tree content

M9

  • Overloading of existing help pages
  • Extending existing help pages

Status Changes

10/26/2007

  • Updated status
  • Moved Lucene/Indexing to Future planning
Personal tools