Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [platform-ui-dev] Working sets on a workbench window


All very good points.

Kim and I are prototyping some things this week to try and come up with a nice solution.  I think it would be best if we in essence discuss this in terms of the scenarios that should be supported, I believe they are the following:

1) New Workspace.
        1) user opens eclipse on new workspace
        2) checks out some projects
        3) defines a working set on the window (from the toolbar item for example)
        4) poof.  All views that filter on working sets become filtered.
        5) user deselects the working set(s)
        6) poof.  All views become unfiltered and show all elements (of what ever working sets would have filtered)

2) New Workspace, view working set is different from the windows working set.
        1) user opens eclipse on new workspace
        2) checks out some projects
        3) defines a working set on the window (from the toolbar item for example)
        4) user launches their application
        5) the launch fails due to an error in some code that is not part of their global working set
        6) user goes to their navigator and turns off working sets for that view by one of the following:
                a) select more specific\a larger group of working sets to view
                b) select a different working set, might be a superset of the global one
                NOTE: the view remembers this working set locally
        7) now the user can temporarily fix this problem
        8) when done users undoes what was done in step 6.
                - For this I have been thinking it might be nice to add an additional link from the global working sets drop down that shows views that are currently using them and those that are not for a one click way to undo what might be done in step 6 for a view, but this requires more communication between views and the workbench window

3) Old workspace, views are filtered on working sets already
        1a) views would remain filtered on the existing working sets until the user manually switches them as in step #8 above.
        1b) another option here would be for views to throw away their local settings for working sets and pick up the global set as in scenario 1 and 2
        NOTE: the view remembers this working set locally

The hope is that the views that utilize the existing WorkingSetFilterActionGroup will receive as much of this behaviour as possible for free.  

/kim and michael



"Mik Kersten" <beatmik@xxxxxxx>
Sent by: platform-ui-dev-bounces@xxxxxxxxxxx

09/29/2005 01:39 PM

Please respond to
"Eclipse Platform UI component developers list."

To
"'Eclipse Platform UI component developers list.'" <platform-ui-dev@xxxxxxxxxxx>
cc
Subject
RE: [platform-ui-dev] Working sets on a workbench window





I like the proposal and goal.  As Ed alludes, I find it weird that a view could choose to show anything other than the global working set.  The price of all the manual toggling, and of easily getting into a state where the content of views is matched doesn't seem to be worth the benefit.  Is there really a case where I want choose one working set but to see markers and breakpoints from another?  Seems that I would just include the corresponding resources in both working sets instead.
 
Thinking longer-term, it would be great if improvements in working sets could deprecate most needs for multiple workspaces and the need for a “Switch Workspace” UI.  You've probably considered this, but I wonder if there is potential for a more radical approach where understanding of working sets get pushed down to the resource level.  So when you select your global working set, the workspace itself filters things that aren't part of it.  If you ask IWorkspaceRoot for all the projects, you only get the ones in the working set, only get notified of resource deltas for resources in the working set, etc.  This could address Martin's concern about the many non-SDK views that aren't aware of working sets.   It could also get rid of things like the need for "Build Working Set" since the current working set (or entire workspace) would always be built, and could make runtime configurations use the global working set transparently when "Workspace Plug-ins" is enabled.  Might be too radical, but it seems that the more the user can depend on a single mechanism for toggling the active working set the better.
 
Mik
 



From: platform-ui-dev-bounces@xxxxxxxxxxx [mailto:platform-ui-dev-bounces@xxxxxxxxxxx] On Behalf Of Randy Hudson
Sent:
September 29, 2005 10:00 AM
To:
Eclipse Platform UI component developers list.
Subject:
RE: [platform-ui-dev] Working sets on a workbench window

 

Because working sets have been overloaded to include things like breakpoint sets.


"Ed Burnette" <Ed.Burnette@xxxxxxx>
Sent by: platform-ui-dev-bounces@xxxxxxxxxxx

09/29/2005 11:54 AM


Please respond to
"Eclipse Platform UI component developers list."


To
"Eclipse Platform UI component developers list." <platform-ui-dev@xxxxxxxxxxx>
cc
 
Subject
RE: [platform-ui-dev] Working sets on a workbench window

 


   





Pardon the question, but if there's a global working set then why would one realistically need or want to pick a working set in each view?

 



From: platform-ui-dev-bounces@xxxxxxxxxxx [mailto:platform-ui-dev-bounces@xxxxxxxxxxx] On Behalf Of Martin Aeschlimann
Sent:
Thursday, September 29, 2005 9:04 AM
To:
Eclipse Platform UI component developers list.
Subject:
Re: [platform-ui-dev] Working sets on a workbench window



As I see it, Dirk's proposal has the advantage that it means no changes at all for viewers that already support working sets. Opening the normal working set selection dialog, a view can select the 'global working set', which is just a redirection. The working set selection dialog is all controlled by platform, so views don't need to know about the special characteristics of the global working set. The advantage is also that a view could choose not to take the global working set but a different one. It can be discussed if that feature really will be used, but it seem to be a compromise so that also friends of the old behavior are not broken.


Martin


Michael Van Meekeren <Michael_Van_Meekeren@xxxxxxxxxx>
Sent by: platform-ui-dev-bounces@xxxxxxxxxxx

09/28/2005 02:54 PM


Please respond to
"Eclipse Platform UI component developers list." <platform-ui-dev@xxxxxxxxxxx>

 


To
"Eclipse Platform UI component developers list." <platform-ui-dev@xxxxxxxxxxx>
cc
 
Subject
Re: [platform-ui-dev] Working sets on a workbench window

 


   







For M3 we propose the following.  Working sets are selected per Window.  While the suggestion of a global working set (global being understood as one per window) would make the listening scenario a little simpler for views, it would still be necessary for views to look at the global working set to filter out working set types that are not meaningful for a particular view.  So since views need to do this anyway, it does not seem like a big benefit and is not worth doing.  Also we need to consider what type this global working set is, how to make it read only etc...

The goal is to allow views to remove as much of the working set related menu/toolbar items that have in favour of putting it in one place, if this does not support that goal then we are keen to make sure it does.


/michael

Dirk Baeumer <dirk_baeumer@xxxxxxxxxx>
Sent by: platform-ui-dev-bounces@xxxxxxxxxxx

09/09/2005 01:17 PM


Please respond to
"Eclipse Platform UI component developers list."

 


To
"Eclipse Platform UI component developers list." <platform-ui-dev@xxxxxxxxxxx>
cc
"Eclipse Platform UI component developers list." <platform-ui-dev@xxxxxxxxxxx>, platform-ui-dev-bounces@xxxxxxxxxxx
Subject
Re: [platform-ui-dev] Working sets on a workbench window



   







Cool ! I am missing that feature as well. That's why I started hacking on a
comparable
feature in July. Here is what I did. May be it is of any help:

- added a special working set (global working set) which is simply a
reference to
an existing working set

- views (e.g. package explorer) selected the global working set for
filtering

- changing the global working set to reference another working set updated
all views referencing this working set since the global working set
changed.

The nice thing was that this didn't require any additional code on the view
part
side.

Dirk


                                                                       
         Kimberly Horne                                                
         <kim@xxxxxxxxxxxx                                            
         m>                                                         To
         Sent by:                  "Eclipse Platform UI component      
         platform-ui-dev-b         developers list."                  
         ounces@xxxxxxxxxx         <platform-ui-dev@xxxxxxxxxxx>      
         g                                                          cc
                                                                       
                                                               Subject
         09/09/2005 04:39          Re: [platform-ui-dev] Working sets  
         PM                        on a workbench window              
                                                                       
                                                                       
         Please respond to                                            
         "Eclipse Platform                                            
           UI component                                                
         developers list."                                            
         <platform-ui-dev@                                            
           eclipse.org>                                                
                                                                       
                                                                       




Yes.  For instance, the package explorer currently has a menu item to
select the visible working sets (when you're in the working set
mode).  With this new API, you could simply show all working sets
that are of the java type and listen for changes so that you can
update your tree appropriately.

On 9-Sep-05, at 10:27 AM, Dirk Baeumer wrote:

> Kimberly
>
> can you explain the purpose of the new API to me. Is the idea that
> view
> parts listen to these
> changes and update there current working set accordingly.
>
> Dirk
>
>
>
>
>              Nick Edgar
>              <Nick_Edgar@xxxxx
>
> m.com>                                                     To
>              Sent by:                  "Eclipse Platform UI component
>              platform-ui-dev-b         developers list."
>              ounces@xxxxxxxxxx         <platform-ui-dev@xxxxxxxxxxx>
>
> g                                                          cc
>
>
> Subject
>              09/09/2005 04:03          Re: [platform-ui-dev]
> Working sets
>              PM                        on a workbench window
>
>
>              Please respond to
>              "Eclipse Platform
>                UI component
>              developers list."
>              <platform-ui-dev@
>                eclipse.org>
>
>
>
>
>
>
> Is there any kind of notification (e.g. property change event) when
> it's
> changed?
> How would a view tracking this know to update?
>
> Nick
>
>
>
>
> Kimberly Horne <kim@xxxxxxxxxxxxx>
> Sent by: platform-ui-dev-bounces@xxxxxxxxxxx
> 09/09/2005 08:20 AM
> Please respond to
> "Eclipse Platform UI component developers list."
>
>
> To
> "Eclipse Platform UI component developers list."
> <platform-ui-dev@xxxxxxxxxxx>
> cc
>
> Subject
> [platform-ui-dev] Working sets on a workbench window
>
>
>
>
>
>
> Next weeks integration build will introduce the following new API on
> IWorkbenchPage:
>
> IWorkingSet[] getWorkingSets();
> void setWorkingSets(IWorkingSet[])
>
> The intention of these methods is to allow you to specify what
> working sets should be visible across all components within a given
> workbench window.  Currently this API is not being used by any
> downstream component but we're making it public (and visible) now to
> gauge interest.
>
> By visible I am referring to a new action that's been added to the
> Resource Navigation action set.
>
> You will see in your toolbar and in your Window menu a pulldown
> action called Working Sets.  The children of this action represent
> all working sets registered with the system IWorkingSetManager and
> are either checked or unchecked.  If they're checked, they're
> contained in the array returned by IWorkbenchPage.getWorkingSets().
>
> The notable problems with the implementation as it currently sits are
> as follows:
>      The "Edit..." action currently opens the "Select Working Set"
> dialog despite there being no selection required.  We will replace
> this with a more particular editing dialog at some later point.
>      The dropdown won't scale when the user has a large number of
> working sets.
>      The action needs a toolbar icon.
>      The action probably doesn't belong in the Resource Navigation
> action set.
> Please don't log these bugs.  We've already done so :)
>
>
>
> _______________________________________________
> platform-ui-dev mailing list
> platform-ui-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/platform-ui-dev
>
>
> _______________________________________________
> platform-ui-dev mailing list
> platform-ui-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/platform-ui-dev
>
>
> _______________________________________________
> platform-ui-dev mailing list
> platform-ui-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/platform-ui-dev
>

_______________________________________________
platform-ui-dev mailing list
platform-ui-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-ui-dev


_______________________________________________
platform-ui-dev mailing list
platform-ui-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-ui-dev
_______________________________________________
platform-ui-dev mailing list
platform-ui-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-ui-dev
_______________________________________________
platform-ui-dev mailing list
platform-ui-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-ui-dev
_______________________________________________
platform-ui-dev mailing list
platform-ui-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-ui-dev


Back to the top