Bug 36588

Summary: CoolBar Cleanup
Product: [Eclipse Project] Platform Reporter: Lynne Kues <lynne_kues>
Component: UIAssignee: Lynne Kues <lynne_kues>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3    
Version: 2.1   
Target Milestone: ---   
Hardware: PC   
OS: Windows 2000   
Whiteboard:
Attachments:
Description Flags
code jar none

Description Lynne Kues CLA 2003-04-16 14:11:12 EDT
- investigate having global CoolBar layout vs. saving a coolbar layout per 
perspective
- investigate simplifying the positioning of remembered coolitems
- need a try/finally block around code that sets the redraw flag to false so if 
an exception occurs redraw is set back on, need to check ToolBarManager also 
for this
- as part of action cleanup need to come up with a story for 
CoolItemMultiToolBarManager
Comment 1 Lynne Kues CLA 2003-04-23 15:44:22 EDT
- cleanup plugin action processing (revisit ordering bug report)
Comment 2 Lynne Kues CLA 2003-04-23 15:48:08 EDT
- is setRedraw necessary for busyResetPersp and setPersp????
Comment 3 Lynne Kues CLA 2003-04-23 16:01:38 EDT
setRedraws are necessary for switching/resetting perspectives, otherwise the 
coolbar gets really flashy as the coolbar area is resized.
Comment 4 Lynne Kues CLA 2003-04-23 16:24:14 EDT
Created attachment 4687 [details]
code jar
Comment 5 Lynne Kues CLA 2003-04-23 16:26:59 EDT
Attached jar which has changes for global layout, simplified remembering, and 
proper handling of setRedraw flag.  Waiting for feedback from NE regarding 
global layout handling.  Changed the code to always set coolitem sizes to 
minimum sizes when update() occurs.  It turns out to be impossible (well very 
difficult) to incrementally change the layout of the coolbar via the current 
API.  setSize() in particular is screwy/difficult to use because of the 
requirement that the coolitems on a row completely span the row.  So setting 
the size of one coolitem will affect the size of other coolitems.
Comment 6 Lynne Kues CLA 2003-05-06 17:36:08 EDT
NE okayed new behavior.  Released changes.  Minimum size for coolitems is 
always maintained.  Coolitems are sized whenever an update(boolean) on the 
coolbar takes place.  If you arrange your coolbar such that coolitems have 
extra space between each other, this space will get "reclaimed" when an update 
occurs.  Also reduced the complexity of the restoring remembered position 
algorithm.  The simplified version seems adequate.  If too much rearranging of 
the coolbar is done, the added item will just be added to the end of the 
coolbar.