Bug 69922 - [Help Wanted] Introduce a "run last make target" key binding
Summary: [Help Wanted] Introduce a "run last make target" key binding
Status: RESOLVED FIXED
Alias: None
Product: CDT
Classification: Tools
Component: cdt-build (show other bugs)
Version: 2.0   Edit
Hardware: All All
: P3 enhancement with 3 votes (vote)
Target Milestone: 7.0   Edit
Assignee: Andrew Gvozdev CLA
QA Contact:
URL:
Whiteboard:
Keywords: bugday, helpwanted
: 208151 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-07-13 10:38 EDT by Mark R. Stevens CLA
Modified: 2014-05-13 17:40 EDT (History)
4 users (show)

See Also:


Attachments
Adds Rebuild Last Target menu entry (7.61 KB, patch)
2009-11-18 17:15 EST, Axel Mueller CLA
no flags Details | Diff
Bind Build Target dialog to a key (3.67 KB, patch)
2010-01-05 10:18 EST, Axel Mueller CLA
no flags Details | Diff
Bind Build Target dialog to a key and introduce a true key binding for the last target (23.50 KB, patch)
2010-01-08 20:49 EST, Axel Mueller CLA
no flags Details | Diff
Bind Build Target dialog to a key and introduce a true key binding for the last target (34.62 KB, patch)
2010-01-26 18:11 EST, Axel Mueller CLA
no flags Details | Diff
Bind Build Target dialog to a key and introduce a true key binding for the last target (35.00 KB, patch)
2010-01-29 17:30 EST, Axel Mueller CLA
no flags Details | Diff
Bind Build Target dialog to a key and introduce a true key binding for the last target (39.83 KB, patch)
2010-02-01 16:35 EST, Axel Mueller CLA
cdtdoug: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mark R. Stevens CLA 2004-07-13 10:38:53 EDT
We have set up our cdt to use ~100 different Make Targets (auto generated by a 
perl script) so that different modules and unit tests have their own set of 
targets (release, debug, etc).

Having the ability to map F7 to build last make target would be invaluable and 
prevent constant switching back to Make Targets view to build.
Comment 1 David Inglis CLA 2004-07-13 14:09:19 EDT
The last build target is preserved on the selected folder, and the build make
target dialog which will auto select the last target, can be bound to a hotkey,
are you looking for something that is not selection driven?
Comment 2 Mark R. Stevens CLA 2004-07-13 14:14:46 EDT
> are you looking for something that is not selection driven?

yes. I guess the functionality is similar to msdev "Set as active project", 
only now it would be "Set as active make target". The working set concept is 
also similar, but our build system is extremely non-standard and this does not 
seem to work well

thanks
Comment 3 Sean Evoy CLA 2004-11-02 14:42:23 EST
Changing target to 3.0
Comment 4 David Daoust CLA 2005-05-13 13:19:06 EDT
As discussed in the weekly meeting -- all enhancements requests that had a
target milestone of 3.0 but were assigned to an inbox owner (which is an invalid
combination), have been moved to Target Milestone "--".
Comment 5 Axel Mueller CLA 2007-12-05 05:46:35 EST
I would appreciate this feature, too.
Comment 6 Sergey Prigogin CLA 2007-12-05 11:23:32 EST
*** Bug 208151 has been marked as a duplicate of this bug. ***
Comment 7 Andrew Gvozdev CLA 2008-06-04 22:25:56 EDT
+1 for this one, would be useful for us.
Comment 8 Chris Recoskie CLA 2009-05-06 15:45:00 EDT
Triaging as valid.
Comment 9 Chris Recoskie CLA 2009-05-06 15:45:54 EDT
This would be a good candidate for Bug Day.
Comment 10 Axel Mueller CLA 2009-11-18 17:15:10 EST
Created attachment 152531 [details]
Adds Rebuild Last Target menu entry

I have made a patch that adds the menu entry "Rebuild last target" to the Make Targets menu in the project explorer and the popup menu of the C/C++ editor. If no last target is available (it is stored per session) the existing build target dialog will show up.
Unfortunately, I was not able to get the key binding working. Although the key binding is listed in the preferences it is not shown in the menu entry and it is not function.

I am a Eclipse CDT user for many years. However, I just recently started to work on the Eclipse source code itself (in my spare time). So, any help would be appreciated.

(BTW, it is not possible to get a key binding for the existing make target dialog, too.)
Comment 11 Axel Mueller CLA 2010-01-05 10:18:44 EST
Created attachment 155335 [details]
Bind Build Target dialog to a key

Please ignore my last comment. I have written a new patch that will bind the Build Make Target dialog to the F9 key. Of course, it was possible to do this before. However, the hotkey was only working when a resource was selected in the Project Explorer *and* the active part was *not* an editor. I.e. if you pressed F9 during working in an editor nothing would happen.
The provided patch will change this behavior. If any kind of editor is active the F9 hotkey will handle the file opened in the editor as selection and give it to the Build Make Target dialog.
I think this is most natural way: you change something in the code and want to rebuild the same target without using the mouse. Of course, you have to press the Enter key in addition after the Build target dialog pops up (the last build target is highlighted). But I think this is OK and it leaves you the possibility to alter your choice which target to build.
I am not sure if this patch fulfills the wishes of the initial bug reporter (see comment #2) but I think it is worth to be considered. So if anybody of the CDT contributors is willing to have a look at it ...
BTW, I have rejected the initial proposal to use F7 for the key binding because this is already in use for debugging (Step return).
Comment 12 Andrew Gvozdev CLA 2010-01-07 10:11:54 EST
This is worthy functionality but seems to be geared toward a particular organization of the project, i.e. having makefiles in each folder. While this case is probably the most popular, still some (like us or another example is MBS) may want to run last target even if located in different folder. For us, this would be the "natural" way as most of our homegrown build system targets are located in root folder. I'd like my case to be covered too.

Other thoughts:

- I think it is appropriate to add F9 in context menu in Make Targets view
- Context menu->Make Targets->Build label is missing "F9" (as opposed to menu->Project->Make Target->Build).
- While working I am often visiting Problems view and Console view. It could be nice to hook up F9 there too.
- I am undecided if having to press (extra) Enter key is good. Aren't the point to minimize the number of keystrokes? On the other hand it's not a big deal to press the extra key. Hmm...
Comment 13 Axel Mueller CLA 2010-01-07 16:50:16 EST
(In reply to comment #12)
> This is worthy functionality but seems to be geared toward a particular
> organization of the project, i.e. having makefiles in each folder. While this
> case is probably the most popular, still some (like us or another example is
> MBS) may want to run last target even if located in different folder. For us,
> this would be the "natural" way as most of our homegrown build system targets
> are located in root folder. I'd like my case to be covered too.
Yes, you are right. And to be honest I would like this option as well :) After studying bug #132980 I had an idea. What about adding some kind of scope to the build make target dialog?
- show targets of selected resource only (current behavior)
- show root targets only (targets created in project root)
- show branch targets only (all targets of selected resource and its parent folder up to the project root)
- show all targets that belong to this working set
- show all targets of this project
The dialog could be extented on the bottom with a scope area like e.g. the search dialog (CTRL-H). What do you think?

> Other thoughts:
> 
> - I think it is appropriate to add F9 in context menu in Make Targets view
> - Context menu->Make Targets->Build label is missing "F9" (as opposed to
> menu->Project->Make Target->Build).
Yes, I know that the label is missing. But I don't know why and how to add it! I thought it would be magically added if I define a key binding. Can you help me on this? I haven't found anything via Google.

> - While working I am often visiting Problems view and Console view. It could be
> nice to hook up F9 there too.
I see. But which resource should be selected then? The active editor? I could try to implement this.

> - I am undecided if having to press (extra) Enter key is good. Aren't the point
> to minimize the number of keystrokes? On the other hand it's not a big deal to
> press the extra key. Hmm...
On hand it would be preferable just to press a single key. On the other hand it is not a big deal to press ENTER (this key is relatively large and has a favorite position, so you don't need to look on your keyboard will using it). Second you can see which make target will be actually executed and you have the option to change your make target (very handy if you have several make targets and have to change it very often, this is my use case with several different applications in one large project). Of course, then you should be able to see make targets from different folders, too ( see my comment above).
Comment 14 Andrew Gvozdev CLA 2010-01-07 22:15:30 EST
(In reply to comment #13)
> > - I think it is appropriate to add F9 in context menu in Make Targets view
> > - Context menu->Make Targets->Build label is missing "F9" (as opposed to
> > menu->Project->Make Target->Build).
> Yes, I know that the label is missing. But I don't know why and how to add it! I
> thought it would be magically added if I define a key binding. Can you help me
> on this? I haven't found anything via Google.
I am not really an expert but I saw code like that in a contributed patch. Take a look at MakeView.bindingManagerChanged().

> Yes, you are right. And to be honest I would like this option as well :) After
> studying bug #132980 I had an idea. What about adding some kind of scope to the
> build make target dialog?
> - show targets of selected resource only (current behavior)
> - show root targets only (targets created in project root)
> - show branch targets only (all targets of selected resource and its parent
> folder up to the project root)
> - show all targets that belong to this working set
> - show all targets of this project
> The dialog could be extented on the bottom with a scope area like e.g. the
> search dialog (CTRL-H). What do you think?
Well, on the other hand we need to avoid overcomplicated UI. It should be simple, functional and handy. Let me try minimalistic approach:
-a. ability to run last target with a single key
-b. ability to run last target in the current project
-c. ability to run last target of the selected resource
If I base the UI on those cases - I envision a preference what kind of last target to run (b. or c.) and running with a single F9 key. In the case when there was no last target the dialog would pop up. This should probably cover your and my cases. Thoughts?
Comment 15 Axel Mueller CLA 2010-01-08 20:49:17 EST
Created attachment 155641 [details]
Bind Build Target dialog to a key and introduce a true key binding for the last target

Andrew, I have extened the patch according to your suggestions. The patch contains now the following:
* a key binding (F7) for the build make target dialog (see my previous patch)
   - menu labels are now correct (thanks for your hint)

* a new menu entry "Rebuild Last Target" that has F9 as key binding
   - it will immediately rebuild the last target without any further user interaction ( I didn't want to introduce a key binding without a corresponding menu entry; so it is conform with "Run/Debug Last launched") 
   - if no last target is found (no targets defined or session restarted), then the build target dialog is shown
   - default action is to list all targets of the selected resource recursively (as it was before)
   - I added a global preference option (C/C++->Make) to alter this behavior; instead of the selected resource you can choose the project root for the last target; in this case the target search is done not recursively!

What do you think? This should be sufficient for the most use cases.

There is only one bug that I was not able to resolve yet. When you first start Eclipse and select a single file (not a folder) in the project explorer or you activate an editor and press then F7 or F9 nothing happens. Tracing exhibits that the commands are not enabled. But I don't know why. You must first select a folder and press F7/9 and then you can work normally.
Comment 16 Andrew Gvozdev CLA 2010-01-10 22:57:58 EST
(In reply to comment #15)
> Created an attachment (id=155641)
> Andrew, I have extened the patch according to your suggestions. The patch
> contains now the following:

- Is it possible to use same but modified key for those 2 actions? (i.e. F7/Shift-F7 or F9/Ctrl-Shift-F9 - you got the idea). I think unmodified key should be reserved for "Rebuild Last" and modified one for the dialog popup since you don't mind an "easy" extra key anyway.

- F9 does not do anything in Make Targets view and does not show the dialog after "last" target was renamed. In Project Explorer View I get an exception:
java.lang.NullPointerException
at org.eclipse.cdt.make.ui.TargetBuild$1$1.run(TargetBuild.java:95)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1857)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1839)
at org.eclipse.cdt.make.ui.TargetBuild$1.run(TargetBuild.java:98)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

- I am getting in some cases another exception, see below. For example: Select a project and press F7. Select a target in a subfolder and run. After it finishes try F7 or F9 again:
java.lang.NullPointerException
at org.eclipse.cdt.make.internal.core.MakeTargetManager.findTarget(MakeTargetManager.java:131)
at org.eclipse.cdt.make.ui.actions.BuildTargetAction.run(BuildTargetAction.java:73)
at org.eclipse.ui.actions.ActionDelegate.runWithEvent(ActionDelegate.java:70)
at org.eclipse.ui.internal.handlers.ActionDelegateHandlerProxy.execute(ActionDelegateHandlerProxy.java:281)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:470)

- For "Rebuild last target" recursive targets should not be probably listed on first invocation as after that it is intended to invoke last target of given container only.

- Option to build "of the project root" is forgotten after restart:
a. Set and save "of the project root" in preferences.
b. Restart eclipse.
c. Select a project and press F7. Build a target.
d. Select a subfolder. Press F9. A dialog listing targets on subfolder level is presented.
If I force saving the preference F9 starts working.

- I think "Build Last Target" should be added in Make Targets view context menus. It should also work if the current selection is a make target. I suppose having F7 invocation of the dialog does not make sense in the context menu, but it should still work as a key.
- A make target run from Make Targets view is not considered to be the "last" target.

- Check out UI guidelines http://wiki.eclipse.org/User_Interface_Guidelines and http://www.eclipse.org/articles/Article-UI-Guidelines/Index.html. Some violations I noticed include capitalization, using of "..." which means that secondary window will popup, missing shortcut keys in preference dialog (Accessibility).

- The wording is slightly different in menu->Project->"Make Target" and in context menu->"Make Targets". Should be the same and preferable point to the same string. This is not your fault of course but you are in good position to fix it :)
Comment 17 Andrew Gvozdev CLA 2010-01-10 23:08:14 EST
Oh, and I forgot to ask to create patches from workspace root, it makes them easier to apply.
Comment 18 Axel Mueller CLA 2010-01-11 17:58:05 EST
(In reply to comment #16)
> - Is it possible to use same but modified key for those 2 actions? (i.e.
> F7/Shift-F7 or F9/Ctrl-Shift-F9 - you got the idea). I think unmodified key
> should be reserved for "Rebuild Last" and modified one for the dialog popup
> since you don't mind an "easy" extra key anyway.
That's a good idea. I suggets F9 or "Rebuild Last" and Shift-F9 for the dialog (Ctrl-F9 is already i use).

>In Project Explorer View I get an exception:
> - I am getting in some cases another exception, see below.
I will have a look at this issues.

> - For "Rebuild last target" recursive targets should not be probably listed on
> first invocation as after that it is intended to invoke last target of given
> container only.
Hmm, the default is to list the targets recursively in the dialog. But I will think about your suggestion. I can see some benefit in it.

> - Option to build "of the project root" is forgotten after restart:
> a. Set and save "of the project root" in preferences.
> b. Restart eclipse.
> c. Select a project and press F7. Build a target.
> d. Select a subfolder. Press F9. A dialog listing targets on subfolder level is
> presented.
> If I force saving the preference F9 starts working.
I will look into this, too. I expected preferences to be saved automatically.
BTW, what do you think of the preferences themselves? I am not sure if anybody else does understand them.

> - I think "Build Last Target" should be added in Make Targets view context
> menus. It should also work if the current selection is a make target. I suppose
> having F7 invocation of the dialog does not make sense in the context menu, but
> it should still work as a key.
> - A make target run from Make Targets view is not considered to be the "last"
> target.
If I understand you correctly you want:
- the target dialog should popup if the user presses F7 (or Shift-F9)
- last target is rebuild if user selects a folder and presses F9
- in case the user selects a make target and presses F9 the selected target should be ignored and the last target of the folder/root should be invoked


> violations I noticed include capitalization, using of "..." which means that
> secondary window will popup, missing shortcut keys in preference dialog
> (Accessibility).
> - The wording is slightly different in menu->Project->"Make Target" and in
> context menu->"Make Targets". Should be the same and preferable point to the
> same string. 
I will fix the wording etc. It was not my first priority :)

Give me some days (depends on my spare time) and I will deliver a new patch (from workspace root).
Comment 19 Andrew Gvozdev CLA 2010-01-11 18:26:38 EST
(In reply to comment #18)
> (In reply to comment #16)
> > - Is it possible to use same but modified key for those 2 actions? (i.e.
> > F7/Shift-F7 or F9/Ctrl-Shift-F9 - you got the idea). I think unmodified key
> > should be reserved for "Rebuild Last" and modified one for the dialog popup
> > since you don't mind an "easy" extra key anyway.
> That's a good idea. I suggets F9 or "Rebuild Last" and Shift-F9 for the dialog
> (Ctrl-F9 is already i use).
Fine with me (unless somebody makes reasoning against it).

> BTW, what do you think of the preferences themselves? I am not sure if anybody
> else does understand them.
Initially I wanted to minimize the number of new preferences but after some deliberation I thought they make sense. Well, wording definitely needs to be improved.

> If I understand you correctly you want:
> - the target dialog should popup if the user presses F7 (or Shift-F9)
> - last target is rebuild if user selects a folder and presses F9
> - in case the user selects a make target and presses F9 the selected target
> should be ignored and the last target of the folder/root should be invoked
Yes, according to the preferences of course. Basically the same functionality. And if user ran last make target via Make Target view - that target should be invoked on F9.

> Give me some days (depends on my spare time) and I will deliver a new patch
> (from workspace root).
Sure. Take your time.
Comment 20 Axel Mueller CLA 2010-01-26 18:11:59 EST
Created attachment 157353 [details]
Bind Build Target dialog to a key and introduce a true key binding for the last target

Here is a new patch that includes the following changes WRT to my latest patch.
- key binding for build target dialog is Shift-F9 (instead F7)
- I corrected some resource strings (wording, capitalization, key accelarator)
- fixed an exception when last target was renamed (I could not reproduce the other exceptions you mentioned in comment #16)
- key bindings for rebuild last target (F9) and show build target dialog (Shift-F9) are enabled in the Make Target View
- the context menu in the Make Target View has an additional entry to Rebuild Last Target (btw, invoking a target from this view does *not* change the last target selection)
- preferences are saved *and* restored correctly
- search for last target is never done recursively (in first dialog and during run, this is also true if resource is not the root folder of the project)
Comment 21 Andrew Gvozdev CLA 2010-01-27 00:50:29 EST
Thanks, it's taking shape. Here are some more comments:

When preference "selected resource" is set - Shift F9 allows running a target in a subfolder even if project is selected (OK). However this target still gets attributed to the project and invoked on F9. Following the logic not allowing recursive targets - the target should be assigned as "last" for the subfolder or ignored.

- Still getting exceptions on F9 (pairs of those) after removing last make target:
java.lang.NullPointerException
at org.eclipse.cdt.make.ui.TargetBuild$1$1.run(TargetBuild.java:95)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1857)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1839)
at org.eclipse.cdt.make.ui.TargetBuild$1.run(TargetBuild.java:98)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

- Exception from comment#16:
1. Select a project. Use Shift-F9 and run a target in a subfolder
2. Remove (or rename) the folder. Press F9:
java.lang.NullPointerException
at org.eclipse.cdt.make.internal.core.MakeTargetManager.findTarget(MakeTargetManager.java:131)
at org.eclipse.cdt.make.ui.actions.BuildLastTargetAction.run(BuildLastTargetAction.java:52)
at org.eclipse.ui.actions.ActionDelegate.runWithEvent(ActionDelegate.java:70)
at org.eclipse.ui.internal.handlers.ActionDelegateHandlerProxy.execute(ActionDelegateHandlerProxy.java:281)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
...
Not sure if it is relevant if recursive target is not allowed on F9. May be worth taking a look in case some other flow leads there.

> btw, invoking a target from this view [Make Target View] does *not* change the last
> target selection
Sad. We mainly use the view, never the dialog. What is the reason last target from Make Target View is not considered?
Comment 22 Axel Mueller CLA 2010-01-29 17:30:59 EST
Created attachment 157680 [details]
 Bind Build Target dialog to a key and introduce a true key binding for the last target

OK, the next patch. Andrew, hopefully I addressed all your comments

>When preference "selected resource" is set - Shift F9 allows running a target
>in a subfolder even if project is selected (OK). However this target still gets
>attributed to the project and invoked on F9. Following the logic not allowing
>recursive targets - the target should be assigned as "last" for the subfolder
>or ignored.
Last target is now ignored if it resides in a subfolder.

>- Still getting exceptions on F9 (pairs of those) after removing last make
>target:
Fixed.

>- Exception from comment#16:
>1. Select a project. Use Shift-F9 and run a target in a subfolder
>2. Remove (or rename) the folder. Press F9:
Fixed. 
However, I found a bug that is related to the target management (not my patch!). 
1) Create a target in a folder
2) Rename this folder => target is not longer visible in the Make Target View (and not available)
3) Rename this folder again to its old name => the seemingly deleted target reappears!

>> btw, invoking a target from this view [Make Target View] does *not* change >the last
>> target selection
>Sad. We mainly use the view, never the dialog. What is the reason last target
>from Make Target View is not considered?
Oh, this was a misunderstanding. I thought you wanted it that way. Nevermind, I already had the code :)
Comment 23 Andrew Gvozdev CLA 2010-01-31 14:19:53 EST
(In reply to comment #22)
> Created an attachment (id=157680)
Thanks for the fixes.

> >When preference "selected resource" is set - Shift F9 allows running a target
> >in a subfolder even if project is selected (OK). However this target still gets
> >attributed to the project and invoked on F9. Following the logic not allowing
> >recursive targets - the target should be assigned as "last" for the subfolder
> >or ignored.
> Last target is now ignored if it resides in a subfolder.
Hmm, last target in this case is ignored on F9 now, but I really expected to see the F9 dialog. Sorry if my comment was unclear, by "ignore" I meant "ignore assigning to selected folder as a last target".

> However, I found a bug that is related to the target management (not my patch!).
> 1) Create a target in a folder
> 2) Rename this folder => target is not longer visible in the Make Target View
> (and not available)
> 3) Rename this folder again to its old name => the seemingly deleted target
> reappears!
Yeah, I am aware of the feature. There is bug 96627 about that.

> >> btw, invoking a target from this view [Make Target View] does *not* change
> >the last target selection
> >Sad. We mainly use the view, never the dialog. What is the reason last target
> >from Make Target View is not considered?
> Oh, this was a misunderstanding. I thought you wanted it that way. Nevermind, I
> already had the code :)
That is a welcome news.

- Wording in preferences is a bit verbose for my taste. How about:
Rebuild Last Target
(*) From selected folder
(  ) From project root


The code is pretty good. Some formal comments:
- A year in copyright header should be updated like that in the files you changed:
> Copyright (c) 2004, 2010 IBM Corporation and others.
- List of contributors should be updated when significant changes are made in the file. MakeResources.properties normally woudn't qualify.
- Could you add some JavaDoc to public classes and methods you added?
- I think literal "org.eclipse.cdt.make.ui.targetBuildLastCommand" deserves to be defined as a (private) constant in the class.
Comment 24 Axel Mueller CLA 2010-02-01 05:38:06 EST
(In reply to comment #23)
> > >When preference "selected resource" is set - Shift F9 allows running a target
> > >in a subfolder even if project is selected (OK). However this target still gets
> > >attributed to the project and invoked on F9. Following the logic not allowing
> > >recursive targets - the target should be assigned as "last" for the subfolder
> > >or ignored.
> > Last target is now ignored if it resides in a subfolder.
> Hmm, last target in this case is ignored on F9 now, but I really expected to
> see the F9 dialog. 
That makes sense because the dialog should be shown if no last target is defined. Which is the case here.
 
> - Wording in preferences is a bit verbose for my taste. How about:
> Rebuild Last Target
> (*) From selected folder
> (  ) From project root
Yeah, sounds much better. I will fix it.

> 
> The code is pretty good.
Thanks. That is my favorite comment :)
Anyway, your comments are always welcome. They helped me a lot to improve my code.

> Some formal comments:
> - A year in copyright header should be updated like that in the files you
> changed:
> > Copyright (c) 2004, 2010 IBM Corporation and others.
> - List of contributors should be updated when significant changes are made in
> the file. MakeResources.properties normally woudn't qualify.
> - Could you add some JavaDoc to public classes and methods you added?
> - I think literal "org.eclipse.cdt.make.ui.targetBuildLastCommand" deserves to
> be defined as a (private) constant in the class.
I will change the patch accordingly.
Comment 25 Axel Mueller CLA 2010-02-01 16:35:07 EST
Created attachment 157846 [details]
Bind Build Target dialog to a key and introduce a true key binding for the last target

New patch. For changes see previous comment.
Comment 26 Andrew Gvozdev CLA 2010-02-01 21:47:49 EST
As a part of eclipse legal process, can you confirm each of these?
- that you yourself wrote 100% of the new code you are submitting
- that you have the right to contribute the code to Eclipse
Comment 27 Axel Mueller CLA 2010-02-02 01:59:57 EST
(In reply to comment #26)
> As a part of eclipse legal process, can you confirm each of these?
> - that you yourself wrote 100% of the new code you are submitting
> - that you have the right to contribute the code to Eclipse
I can confirm that I wrote all of the code by myself and that I have the right to contribute it (this work was done solely in my spare time is not related to my employee).
Comment 28 Andrew Gvozdev CLA 2010-02-02 09:11:56 EST
Committed on HEAD (7.0). Thanks for the nice patch, Axel. I gonna have a ball using it.
Comment 29 Axel Mueller CLA 2010-02-02 09:22:04 EST
(In reply to comment #28)
> Committed on HEAD (7.0). Thanks for the nice patch, Axel. I gonna have a ball
> using it.
This are great news. Stay tuned for more patches in the future.