Bug 310059 - [api][framework] provide 'update configuration' button on query pages
Summary: [api][framework] provide 'update configuration' button on query pages
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Mylyn (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: 3.7   Edit
Assignee: Frank Becker CLA
QA Contact:
URL:
Whiteboard:
Keywords: noteworthy, plan
Depends on: 245152
Blocks: 304104
  Show dependency tree
 
Reported: 2010-04-22 03:33 EDT by Jacek Jaroczynski CLA
Modified: 2011-09-22 18:52 EDT (History)
3 users (show)

See Also:


Attachments
patch V1 (35.41 KB, patch)
2011-03-27 14:56 EDT, Frank Becker CLA
eclipse: review?
Details | Diff
mylyn/context/zip (12.17 KB, application/octet-stream)
2011-03-27 14:56 EDT, Frank Becker CLA
no flags Details
mylyn/context/zip (5.82 KB, application/octet-stream)
2011-07-30 13:05 EDT, Frank Becker CLA
no flags Details
mylyn/context/zip (43.87 KB, application/octet-stream)
2011-08-24 15:57 EDT, Frank Becker CLA
no flags Details
screenshot Edit Query (68.28 KB, image/jpeg)
2011-08-29 14:42 EDT, Frank Becker CLA
no flags Details
screenshot Search Window (83.45 KB, image/jpeg)
2011-08-29 14:43 EDT, Frank Becker CLA
no flags Details
screenshot on win7 (29.93 KB, image/png)
2011-09-21 08:08 EDT, Steffen Pingel CLA
no flags Details
trac query dialog (30.05 KB, image/png)
2011-09-22 17:55 EDT, Steffen Pingel CLA
no flags Details
Bugzilla Query Dialog (28.84 KB, image/png)
2011-09-22 17:57 EDT, Steffen Pingel CLA
no flags Details
Bugzilla Search Page (32.76 KB, image/png)
2011-09-22 18:52 EDT, Steffen Pingel CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jacek Jaroczynski CLA 2010-04-22 03:33:19 EDT
Build Identifier: 

It would be great to have generic solution to add the button to the bottom of the page where 'Finish' and 'Cancel' buttons are placed (but on the left).

Reproducible: Always
Comment 1 Steffen Pingel CLA 2010-04-22 21:20:28 EDT
That sounds like a good idea but how would that work when  the page is displayed in the Eclipse search dialog (Ctrl+H)? Also note this related task: bug 229817: add clear button to search pages .
Comment 2 Frank Becker CLA 2011-02-18 13:27:05 EST
(In reply to comment #1)
> That sounds like a good idea but how would that work when  the page is displayed
> in the Eclipse search dialog (Ctrl+H)? Also note this related task: bug 229817:
> add clear button to search pages .

Steffen,

should we support this for 'new Query'  and 'Query Property' and support the search dialog when we have an way to change the OpenSearchDialogAction to open an other Dialog where we can support the needed functions.

Thoughts?
Comment 3 Steffen Pingel CLA 2011-02-21 23:13:37 EST
Yes, that makes sense to me. The ValidatableWizardDialog is an example how to make that work. Maybe there is some potential for generalization to apply the same principle to the query dialogs. For the cases where we can't contribute to the dialog button bar the buttons should be displayed on the bottom of the page. It would be nice to make that part of AbstractRepositoryQueryPage2 and also add API for the collapsable sections that you implemented for Bugzilla (and then make Bugzilla extend AbstractRepositoryQueryPage2).
Comment 4 Frank Becker CLA 2011-03-27 14:56:18 EDT
Created attachment 191967 [details]
patch V1

Steffen,
Rob,

please verify!
Comment 5 Frank Becker CLA 2011-03-27 14:56:21 EDT
Created attachment 191968 [details]
mylyn/context/zip
Comment 6 Steffen Pingel CLA 2011-05-21 14:21:04 EDT
Sorry, I didn't get around to looking at this. Let's apply it early in 3.7.
Comment 7 Frank Becker CLA 2011-07-26 15:16:41 EDT
Steffen,

should I recreate the patch now?
Comment 8 Steffen Pingel CLA 2011-07-26 18:11:45 EDT
Yes, this would be a good time to implement this abstraction. Note that we should consider putting this support into AbstractRepositoryQueryPage2 and also consider generalizing the "Clear Fields" button.
Comment 9 Frank Becker CLA 2011-07-30 13:05:26 EDT
I have the patch in the following git branches
http://git.eclipse.org/c/mylyn/org.eclipse.mylyn.tasks.git/log/?h=bug%23310059 (sorry wrong commit message)
http://git.eclipse.org/c/mylyn/org.eclipse.mylyn.commons.git/log/?h=bug%23310059

Please review!
Comment 10 Frank Becker CLA 2011-07-30 13:05:29 EDT
Created attachment 200622 [details]
mylyn/context/zip
Comment 11 Steffen Pingel CLA 2011-08-14 07:26:17 EDT
Frank, I revied the Mylyn Commons portion of the change. Can we rename the class to EnhancedWizardDialog following the pattern we have used in other places? Please feel free to rebase on master and commit that. I hope I'll get around to reviewing the remainder of the changes soon.
Comment 12 Steffen Pingel CLA 2011-08-16 08:48:17 EDT
For the tasks.ui part I would prefer if the new API was added to AbstractRepositoryQueryPage instead of introducing a new interface IQueryButtomButtons. We can ensure backwards compatibility through the boolean capabilities  that you added, i.e. needsClearFields() and needsUpdateConfiguration().

Some of this code is already implemented in AbstractRepositoryQueryPage2. I think we should merge AbstractRepositoryQueryPage2 into AbstractRepositoryQueryPage and deprecate the former. We will also need to handle the case when the query page is embedded in the search dialog. In that case the buttons should be displayed on a composite on the bottom of the page. We may also want to add a progress area since the search dialog does not have built-in support for monitoring progress (bug 245152).

Does that make sense?
Comment 13 Frank Becker CLA 2011-08-16 15:01:14 EDT
The Mylyn Commons portion is now in GIT master!
Comment 14 Frank Becker CLA 2011-08-16 15:05:11 EDT
(In reply to comment #12)
> For the tasks.ui part I would prefer if the new API was added to
> AbstractRepositoryQueryPage instead of introducing a new interface
> IQueryButtomButtons. We can ensure backwards compatibility through the boolean
> capabilities  that you added, i.e. needsClearFields() and
> needsUpdateConfiguration().
> 
> Some of this code is already implemented in AbstractRepositoryQueryPage2. I
> think we should merge AbstractRepositoryQueryPage2 into
> AbstractRepositoryQueryPage and deprecate the former. We will also need to
> handle the case when the query page is embedded in the search dialog. In that
> case the buttons should be displayed on a composite on the bottom of the page.
> We may also want to add a progress area since the search dialog does not have
> built-in support for monitoring progress (bug 245152).
> 
> Does that make sense?

OK,

I start with this now!
Comment 15 Frank Becker CLA 2011-08-16 16:16:33 EDT
(In reply to comment #12)

> Some of this code is already implemented in AbstractRepositoryQueryPage2. I
> think we should merge AbstractRepositoryQueryPage2 into
> AbstractRepositoryQueryPage and deprecate the former. We will also need to
> handle the case when the query page is embedded in the search dialog. In that
> case the buttons should be displayed on a composite on the bottom of the page.
> We may also want to add a progress area since the search dialog does not have
> built-in support for monitoring progress (bug 245152).
> 
> Does that make sense?

We need to make sure that the other usage of AbstractRepositoryQueryPage did not brake (6 other classes).
Comment 16 Frank Becker CLA 2011-08-21 14:26:56 EDT
For now I keep AbstractRepositoryQueryPage2 see http://git.eclipse.org/c/mylyn/org.eclipse.mylyn.tasks.git/log/?h=bug%23310059_patch2

Steffen, after the review I change the other 5 classes.
Comment 17 Steffen Pingel CLA 2011-08-22 21:30:03 EDT
This looks like a good start! I would suggest that we move the API for the Clear button up to AbstractRepositoryQueryPage2 so we have a common implementation.

Some minor problems I noticed in a quick UI review:
* The button panel has padding that should be removed
* The attribute composite has a border in the query dialog
* The clear and update buttons should be left aligned on the search page
* The button labels should be changed to "Clear Fields" and "Refresh Configuration".
Comment 18 Frank Becker CLA 2011-08-24 15:57:35 EDT
Steffen, I did the changes from comment#17.
Comment 19 Frank Becker CLA 2011-08-24 15:57:46 EDT
Created attachment 202105 [details]
mylyn/context/zip
Comment 20 Steffen Pingel CLA 2011-08-25 05:22:38 EDT
I have created a code review here: http://review.mylyn.org/#change,2
Comment 21 Steffen Pingel CLA 2011-08-26 20:09:57 EDT
The changes are now in master. Thanks for driving this Frank. I'll look into merging AbstractRepoisitoryQueryPage2 into AbstractRepoisitoryQueryPage and adding the progress bar.
Comment 22 Steffen Pingel CLA 2011-08-29 12:46:08 EDT
Can you attach a screenshot of the new query dialog on Mac? I would like to put this up for UI review on the Mylyn call.
Comment 23 Frank Becker CLA 2011-08-29 14:42:16 EDT
Created attachment 202351 [details]
screenshot Edit Query
Comment 24 Frank Becker CLA 2011-08-29 14:43:00 EDT
Created attachment 202352 [details]
screenshot Search Window
Comment 25 Steffen Pingel CLA 2011-09-01 13:19:00 EDT
Thank for the screenshots. The feedback on the call was very good. We had two suggestions:

* Consider renaming "Refresh Configuration" to "Refresh"
* The icon causes the Refresh button to be larger than the other buttons. Is there a way to reduce padding on the button? Otherwise we should consider removing the icon or using a 12x12 icon.
Comment 26 Frank Becker CLA 2011-09-04 16:15:26 EDT
(In reply to comment #25)
> Thank for the screenshots. The feedback on the call was very good. We had two
> suggestions:
> 
> * Consider renaming "Refresh Configuration" to "Refresh"

Done!

> * The icon causes the Refresh button to be larger than the other buttons. Is
> there a way to reduce padding on the button? Otherwise we should consider
> removing the icon or using a 12x12 icon.

I remove the icon because i did not find a way to reduce the size even with the 12X12 icon I get an height of 32!

ID=46912ef6facbb5b2e94fad430d0e7cf324bfa3f8
Comment 27 Steffen Pingel CLA 2011-09-16 14:19:07 EDT
I have moved AbstractRepositoryQueryPage2 to org.eclipse.mylyn.tasks.ui.wizards (the provisional implementation is still around but deprecated and likely to be removed for 3.7). The following API enhancements are now available:

 * A title field is provided by the framework if the search page is used in the query dialog.
 * Refresh and Clear buttons are provided by the framework: Refresh updates the repository configuration and clear resets all entry fields in the dialog.
 * The Refresh and Clear buttons are displayed on the lower left on the button bar of the query dialog when editing existing queries.
 * The search page refreshes the repository configuration on repository selection if it is not available. 
 * The progress bar is now embedded in the search page to avoid blocking navigation in the search dialog.

Clients are encouraged to extend AbstractRepositoryQueryPage2 instead of AbstractRepositoryQueryPage when building on Mylyn 3.7 or later.
Comment 28 Steffen Pingel CLA 2011-09-21 08:08:10 EDT
Created attachment 203753 [details]
screenshot on win7
Comment 29 Steffen Pingel CLA 2011-09-22 17:55:00 EDT
Created attachment 203871 [details]
trac query dialog
Comment 30 Steffen Pingel CLA 2011-09-22 17:57:21 EDT
Created attachment 203872 [details]
Bugzilla Query Dialog
Comment 31 Steffen Pingel CLA 2011-09-22 18:52:29 EDT
Created attachment 203873 [details]
Bugzilla Search Page