Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 158655

Summary: [Cheat Sheet Editor] New composite cheat sheet editor: Model, UI, & functionality
Product: [Eclipse Project] PDE Reporter: Mike Pawlowski <mike.pawlowski>
Component: UIAssignee: Mike Pawlowski <mike.pawlowski>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: cgold, wassim.melhem
Version: 3.3   
Target Milestone: 3.3 M3   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Bug Depends on:    
Bug Blocks: 146988    

Description Mike Pawlowski CLA 2006-09-25 16:32:56 EDT
Implement new composite cheat sheet editor.

* Implement composite cheat sheet editor model

* Implement composite cheat sheet editor UI

* Implement composite cheat sheet editor functionality
Comment 1 Mike Pawlowski CLA 2006-09-28 11:21:02 EDT
Patch:  patch_158655_2006-09-28_10-29.txt
Target:  3.3 M3

Patch released to HEAD


Work Done:

* Completed underlying model design and implementation for the composite cheat
  sheet editor
  
  -> 13 interfaces, 12 classes
  
     - Implemented XML serialization and XML parsing methods
  
  -> Created Model, Workspace Model, Model factory

* Refactored shared simple cheat sheet model and composite cheat sheet model
  code 
  
  -> Created cheat sheet utility class

  -> Created shared contants

TODO:

* Implement composite cheat sheet editor UI

* Implement composite cheat sheet editor functionality
Comment 2 Mike Pawlowski CLA 2006-10-17 15:25:48 EDT
Patch:  patch_158665_2006-10-17_13-02.txt
Patch released to HEAD

Work Done:

* Defined editor extension for composite cheat sheet editor
  -> Created the associated form editor 
  -> Created the associated input context that loads composite cheat sheet XML
     file content into the in-memory model and flushes the in-memory model back
     to file
  -> Created the associated input context manager

* Defined extension to associate composite cheat sheet XML content-type 
  with composite sheet editor

* Updated PDE label provider to retrieve associated composite cheat sheet object 
  names and images for composite cheat sheets, task groups and tasks in the 
  master tree view section
  
* Added icons for composite cheat sheets, task groups and tasks in the master
  tree view section and outline view
  
* Significantly refactored shared UI code between the simple and composite
  cheat sheet editors
  -> Shared details abstract class with helper utilities
     - Create details section 
     - Create section client composite
     - Configure parent layout
  -> Created shared interfaces 
     - Details block sections
     - Surrogate details block sections
     - Master block sections

* Created one form page for the composite cheat sheet editor
  -> Implemented using master details block pattern 
  -> Implemented details page provider to update the details section
     with the appropriate section depending on the node selected in the 
     master tree section

* Created user interface for the master tree viewer block section of the 
  master details block design pattern:
  -> Implemented and hooked in composite cheat sheet content provider to 
     adapt underlying model representation into a presentable form in the
     tree widget
  -> Implemented collapse all action and added to section toolbar
  -> implemented composite cheatsheet preview action
     
* Created user interface for the following detail block sections of the 
  master details block design pattern:
  -> Composite cheat sheets
  -> Tasks
  -> Task groups
  
* Created user interface for the following resusable 'surrogate' sections:
  -> Dependencies section
  -> Enclosing text section 
Comment 3 Mike Pawlowski CLA 2006-10-17 18:31:12 EDT
Patch:  patch_158665_2006-10-17_18-25.txt
Patch released to HEAD

Work Done:

* Fix bug:  Improper parsing of mixed element content

* Implemented feature to get next and previous task object sibling given
  a task object (task or task group)
  -> Functionality required in order to select the proper node in the master
     tree view section on node deletion
Comment 4 Mike Pawlowski CLA 2006-10-18 17:48:57 EDT
Patch:  patch_158665_2006-10-18_17-46.txt
Patch released to HEAD

Work Done:

* Updated simple and composite cheat sheet editor to use the latest 
  open cheat sheat action API to fix the following cheatsheet preview bug:
   <snip>  
   I got the following exception when trying to preview a composite cheat 
   sheet using the open cheat sheet action 
   (org.eclipse.ui.cheatsheets.OpenCheatSheetAction)
   that takes a String containg raw XML as a parameter:
   
   java.net.MalformedURLException: no protocol: helloworld/helloworld-create.xml
   ...
   </snip>
Comment 5 Mike Pawlowski CLA 2006-10-20 14:22:36 EDT
Patch:  patch_158665_2006-10-20-14-20.txt
Patch released to HEAD

Work Done:

* Removed task-specific checkbox under introduction tab allowing the user
  to show a task's first step rather than showing the introduction
  
* Removed entire dependencies section from the task and task group details 
  pages
Comment 6 Mike Pawlowski CLA 2006-10-26 12:54:15 EDT
Patch:  patch_158665_2006-10-26_10-52.txt
Patch released to HEAD

Work Done:

* Implemented and hooked in the following listeners and Model to UI update 
  facilities for the task definition section:
  -> Name entry
  -> Skip button checkbox
  -> Path entry
     - Text input field
     - Browse button
     - Hyperlink label

* Implemented custom dialog for filtering and selecting simple cheat sheets 
  within the project using the Path entry Browse button
  -> Implemented custom performance-sensitive file validator for the dialog
     - Determines whether a selected file is a simple cheat sheet by parsing
       it and verifying its root node corresponds
 
* Implemented comprehensive utilities to do the following:
  -> Covert absolute simple cheat sheet paths to paths relative to the 
     composite cheat sheet
  -> Convert relative simple cheat sheet paths to the composite cheat sheet
     to absolute paths

* Implemented dual functionality for path entry hyperlink label
  -> Open simple cheat sheet editor using input from path entry text field
     if the specified simple cheat sheet exists
  -> Open new custom simple cheat sheet wizard to create a new simple cheat sheet
     on the fly supporting workflow
     - Implemented validation to restrict new simple cheat sheet location to
       the same project as the composite cheat sheet
     
* Implemented and hooked in the following listeners and Model to UI update 
  facilities for the cheat sheet definition section:
  -> Name entry

* Implemented and hooked in the following listeners and Model to UI update 
  facilities for the task group definition section:
  -> Name entry
  -> Kind combo box
  -> Skip button check-box

* Implemented and hooked in the following listeners and Model to UI update 
  facilities for the enclosing text section:
  -> Introduction text input field
  -> Conclusion text input field
  -> Tab folder widget

* Implemented the following new actions:
  -> Add task action
     - Action provides implementation for the master tree view right context 
       new task menu and master tree view add task button
  -> Add group action  
     - Action provides implementation for the master tree view right context 
       new group menu and master tree view add group button
  -> Remove task / group action
     - Action provides implementation for the master tree view right context 
       delete menu and master tree view remove button
     - Sibling of deleted task / group is properly selected
  
* Implemented a master tree view group validator
  -> Registers and monitors all groups contained in the workspace model and 
     sets error messages on the form and disables the preview button when a 
     group becomes invalid  
  
* Implemented functionality to adjust the enablement of the master tree view
  buttons on master tree view selection changes
  
* Implemented up / down button functionality in the master tree view for 
  tasks and groups
Comment 7 Mike Pawlowski CLA 2006-10-30 19:27:41 EST
Target:  3.3 M3
Patch:  patch_158665_2006-10-30_17-36.txt
Patch released to HEAD

Work Done:

* Implemented composite cheat sheet form outline page for the outline view
Comment 8 Chris Goldthorpe CLA 2006-12-28 17:47:28 EST
*** Bug 143841 has been marked as a duplicate of this bug. ***