This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 153835

Summary: toolbar rewrite
Product: platform Reporter: Stanislav Aubrecht <saubrecht>
Component: Window SystemAssignee: Stanislav Aubrecht <saubrecht>
Status: RESOLVED FIXED    
Severity: blocker CC: geertjan, saubrecht
Priority: P2 Keywords: API_REVIEW_FAST
Version: 6.x   
Hardware: All   
OS: All   
Issue Type: TASK Exception Reporter:
Bug Depends on:    
Bug Blocks: 59242    
Attachments: changes in org.openide.awt.Toolbar
changes in org.openide.awt.ToolbarPool
new version of toolbar configuration DTD

Description Stanislav Aubrecht 2008-11-25 09:17:13 UTC
the current implementation of toolbars is hard to maintain (see #59242). i want to rewrite the implementation with the
following major changes:

- all look & feel specific code will move from openide.loaders module to core.windows
- toolbar drag and drop implementation will move from openide.loaders module to core.windows

the following API changes will be made:
- deprecation of toolbar dnd interfaces and methods (see attached toolbar.diff)
- deprecation of some methods in ToolbarPool that were needed by toolbar layout management (see attached toolbarpoo.diff)
- new version of DTD for toolbar configuration (see attachment)
Comment 1 Stanislav Aubrecht 2008-11-25 09:20:21 UTC
Created attachment 74118 [details]
changes in org.openide.awt.Toolbar
Comment 2 Stanislav Aubrecht 2008-11-25 09:21:12 UTC
Created attachment 74119 [details]
changes in org.openide.awt.ToolbarPool
Comment 3 Stanislav Aubrecht 2008-11-25 09:22:48 UTC
Created attachment 74120 [details]
new version of toolbar configuration DTD
Comment 4 Vitezslav Stejskal 2008-11-25 09:47:42 UTC
VS1: (This more a question than apireview) Is it possible to reuse all this for editor toolbar? How? Basically, the
editor somehow knows the actions that it wants to put on the toolbar and the question is how it could create a toolbar
implemented in openide/core? Currently we have our own toolbar and I suspect it was somehow copied from core with all
the L&F tricks, etc. Thanks
Comment 5 Stanislav Aubrecht 2008-11-25 09:55:45 UTC
VS1: do you really need in editor toolbar the extra functionality from the main window toolbar (multiple toolbar rows,
customization of toolbar buttons, toolbar repositioning etc). afaik, editor toolbar is a plain toolbar with fixed set of
buttons that cannot be customized. and in this case the default swing JToolbar should work perfectly
Comment 6 Vitezslav Stejskal 2008-11-25 10:18:14 UTC
VS1: Not all of the extra functionality, but some features would be useful. Eg. buttons customization, multiple toolbars
in a single row, maybe more...
Comment 7 Stanislav Aubrecht 2008-11-25 11:40:30 UTC
well, the new toolbar implementation will be usable with implementation dependency on core.windows only. and even that
will be difficult as the main and editor toolbars have different action pools (i think)
Comment 8 Geertjan Wielenga 2008-11-25 11:46:47 UTC
Customer in Germany has requested:
-- the toolbar should be drag/droppable to all sides of the IDE
Comment 9 Geertjan Wielenga 2008-11-25 11:47:23 UTC
-- and the size of the icons in the toolbar should be customizable (not just 16x16 and 32x32)
Comment 10 Geertjan Wielenga 2008-11-25 11:48:28 UTC
PS: The above are about the whole toolbar area, not specific toolbars within it.
Comment 11 Geertjan Wielenga 2008-11-25 11:48:59 UTC
Added me to the CC.
Comment 12 Stanislav Aubrecht 2008-11-25 11:54:34 UTC
> -- the toolbar should be drag/droppable to all sides of the IDE
not in the plan at the moment

> -- and the size of the icons in the toolbar should be customizable (not just 16x16 and 32x32)
netbeans ide defines action icons either in 16x16 or 24x24 sizes. if they're building application on top of netbeans
platform then they can use any icon size they want. the toolbar width/height will adjust accordingly
Comment 13 Stanislav Aubrecht 2008-11-27 14:23:56 UTC
if there are no objections, i'll integrate the changes tomorrow (nov 28th)
Comment 14 Stanislav Aubrecht 2008-11-28 11:17:52 UTC
done

9362087a438a
Comment 15 Quality Engineering 2008-11-29 05:01:36 UTC
Integrated into 'main-golden', will be available in build *200811290201* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main/rev/9362087a438a
User: S. Aubrecht <saubrecht@netbeans.org>
Log: #153835 - moving toolbar l&f code to core.windows, deprecated dnd related methods