Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 214532 - [JFace] Open up the API for org.eclipse.jface.layout.AbstractColumnLayout
Summary: [JFace] Open up the API for org.eclipse.jface.layout.AbstractColumnLayout
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.3   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.5 M6   Edit
Assignee: Thomas Schindl CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 217605 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-01-07 15:02 EST by Ryan Norris CLA
Modified: 2009-06-01 09:39 EDT (History)
5 users (show)

See Also:
bokowski: review+


Attachments
Patch (3.77 KB, text/plain)
2008-02-03 17:35 EST, Thomas Schindl CLA
no flags Details
patch to make abstract methods protected (20.21 KB, patch)
2008-05-29 16:35 EDT, Gordon Hirsch CLA
bokowski: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ryan Norris CLA 2008-01-07 15:02:25 EST
Build ID: I20070625-1500

Steps To Reproduce:
1.  Unable to subclass AbstractColumnLayout due to package scope.

More information:
This request is to open up the API on org.eclipse.jface.layout.AbstractColumnLayout.  Currently it and its abstract methods are package scope.  

This layout is useful for any column-based widget users (Table, Tree or others such as Nebula Grid) that want to take advantage of the pixel-based and weight-based ColumnLayoutData objects.

I have been using TableViewer and this layout.  I recently switched to Nebula's GridTableViewer and lost the layout support.  If AbstractColumnLayout were public, it would be very easy to create a version for the Grid table widget.
Comment 1 Thomas Schindl CLA 2008-02-03 08:56:42 EST
*** Bug 217605 has been marked as a duplicate of this bug. ***
Comment 2 Thomas Schindl CLA 2008-02-03 17:35:53 EST
Created attachment 88725 [details]
Patch
Comment 3 Thomas Schindl CLA 2008-02-03 17:36:42 EST
Boris, could you review please.
Comment 4 Thomas Schindl CLA 2008-02-20 14:34:49 EST
The class @since of the class has to be @since 3.4
Comment 5 Thomas Schindl CLA 2008-02-20 15:55:13 EST
released to CVS HEAD >= 20080220
Comment 6 Thomas Schindl CLA 2008-03-27 09:23:59 EDT
Verified in build I20080326-1950
Comment 7 Gordon Hirsch CLA 2008-05-29 16:34:16 EDT
Unfortunately, the abstract methods in this class are package private, so there is no practical way to extend this class from a package outside of org.eclipse.jface.layout. Reopening. 

I'll attach a patch, but I suspect you won't want to make this change in 3.4, especially since there are changes in multiple files to react to the change from package-private to protected. 
Comment 8 Gordon Hirsch CLA 2008-05-29 16:35:14 EDT
Created attachment 102746 [details]
patch to make abstract methods protected
Comment 9 Thomas Schindl CLA 2009-02-18 18:18:20 EST
released to head >= 20090219
Comment 10 Remy Suen CLA 2009-02-18 18:53:10 EST
(In reply to comment #9)
> released to head >= 20090219

Tom, I'm getting several API tooling errors because the methods' visibility went up to "protected". Please rectify them with @since tags.
Comment 11 Boris Bokowski CLA 2009-02-18 19:52:16 EST
Comment on attachment 102746 [details]
patch to make abstract methods protected

The iplog+ flag needs to be applied to the patch, not the whole bug to be processed correctly.
Comment 12 Thomas Schindl CLA 2009-03-13 04:43:55 EDT
Verified in I20090312-0100 by providing a nebula implementation in bug 268497 
Comment 13 John Arthorne CLA 2009-06-01 09:39:25 EDT
Removing iplog+ from bug - this indicates an IP contribution in a comment
rather than a patch.

http://wiki.eclipse.org/Development_Resources/Automatic_IP_Log