[ JDK VERSION : 1.6.0_07 ]
Tooltip of "Save All"-button is just "Save All".
What about extending it to "Save All + Compile all Modifications", if
CoS is on?
Totally reasonable suggestion and I assume it wouldn't be too difficult to implement (please correct me if I'm wrong).
Reassigning back to component's owner for implementation.
"Save All + Compile all Modifications" is just a suggestion, I'm sure, somebody has better ideas, how to label this tooltip.
Jiri Rechtacek agreed that he would review and integrate a patch for this issue contributed by the NetFIX  team.
Some questions about it:
1. This is just just for Save All? What about Save action?
2. If I understand correctly, it is for default tooltip, right? Or tooltip should be different if there is no projects
with CoS feature? It could be tricky to do if it is not fixed.
BTW, for the tooltip I suggest 'Save all files and if Compile on Save feature is on, it will compile/build your files'.
It is ok for web projects where it is 'Build on Save'? Suggestions are welcome.
Created attachment 79101 [details]
Patch for 6.7
An simple patch. Please, remove review it and remove unused imports :(
> 1. This is just just for Save All? What about Save action?
I don't have "Save All" button in my NetBeans toolbar, but if you also have "Save", just add it there too.
> 2. If I understand correctly, it is for default tooltip, right? Or tooltip should be different if there is no projects
with CoS feature?
:-( Sorry, you are wrong, tooptip should change accordingly if CoS is on/off.
> BTW, for the tooltip I suggest 'Save all files and if Compile on Save feature is on, it will compile/build your files'.
This is more for Help docs. ;-)
> It is ok for web projects where it is 'Build on Save'? Suggestions are welcome.
This would be fine, to have this 3rd variant on web projects.
>> 2. If I understand correctly, it is for default tooltip, right? Or tooltip should be different if there is no projects
>>with CoS feature?
>:-( Sorry, you are wrong, tooptip should change accordingly if CoS is on/off.
So, imagine I have 3 projects opened, one Java project, another one is an Web project and the last one is a Free form
project. How to decide which message should be shown? Imagine that I can have several files opened and I have unsaved
files for every kind of project opened. Ideas to solve that?
>> BTW, for the tooltip I suggest 'Save all files and if Compile on Save feature is on, it will compile/build your files'.
>This is more for Help docs. ;-)
Ondreji, can you please comment on the latest questions? Thanks!
Any ideas about it?
First, I'm sorry for the delay. I don't know how, but I missed this issue somehow.
Well .. since tooltips are used to describe what the action does and users longer-term expectations are built upon
seeing them, contextually sensitive tooltip could cause more confusion than good. Users may wonder why it does not
compile their files despite that when they read the tooltip some time ago, it did say so.
So I suggest something like: 'Save all files (if Compile on Save feature is on this will also compile/build your files)'.
But the exact wording really is more for help/docs team.
Does that answer both questions?
For me this is ok. Just confirm that this is what I could implement and I will update the patch asap.
Irina, could somebody from your team please OK the Ondrej's wording? Thanks!
I think, that there a 2 functions, which tooptip could serve:
1. Serve as a short "help" facility. In this manner it should explain, what this button, semantically only defined by
its icon, _potentially_ is for.
2. Precise more detailed, what this button _actually_ does in lack of context sensitive icon.
E.g. often we see on installer dialogues a button for "Next >". On the last dialogue, the same button changes its label
to "Finish" to avoid having 2 buttons, where 1 could be disabled. So it's possible to have 1 "soft"-button for 2
Sticking on 1. variant compels the user to annoyingly open the Project Properties dialogue to inform himself what this
button actually does.
In fact, automatic compilation is _never disabled_ to serve the syntax check etc., and additionally it doesn't depend on
persistently saving a document or not, what "CoS" predicates for.
What CoS actually does is, to propagate the changes to the potentially followed Run action, by copying the cached class
files to the build directory.
This is what most _"confuses"_ users (not only the newcomers) !!
What we really need (IMHO), is:
- rename CoS to what it actually does. Suggestion for Project Properties dialogue:
x Propagate [document] changes to next run action. Historically also known as "Compile on Save".
If selected, updated class files from just automatically compiled files were copied to build folder
when you save them.
This option saves you time for full build when you run or debug your application in the IDE.
To fully build your application from ant script (respectively update dist folder) invoke Build action.
- display status of "CoS" more user-friendly (Alternating tooltip is the most cheap we can have temporarily
until respectable solution is found)
- update CoS-sensitive dialogue after "Build Project" action accordingly.
- update label/tooltip for Run/Debug action:
"Run/Debug File/Main Project | saves modified files[ first]"
- Tooltip/Label for "Save[ All]" button/menu:
"Save[ All] | Propagates [document] changes to next run action (Can be disabled from Project Properties)"
On top, it's additionally _confusing_ the user, that in case of CoS the Build button is just enabled, as in fact it does
IMHO a detailed tooltip would suffice here, as it prevents the user to hit the Cancel button in the following
Alternatively a "Project Properties" button would be very helpful, also for many other reasons.
Ok, experienced users, which have just watchfully used the configuration facility, would potentially having recognized
Ulf, please don't be maximalist. :-) This particular issue is only about more descriptive tooltip of one button. And
this is what Annabel is going to patch once Irina's team confirms the wording. If you insist on the 5 improvements
mentioned above, I suggest you discuss this with your NetCAT 6.7 peers and then file separate issue(s).
Thanks for your understanding,
The tooltip text: "Save all files (if the Compile on Save feature is on, this will also compile/build your files)" is
correct and clear (probably too long, but I cannot do anything else to shorten it and retain the meaning)
Little shorter and IHMO nicer:
"Save all files | If the 'Compile on Save' is on, this will also compile/build your files"
"Save all files | If the Compile-on-Save is on, this will also compile/build your files"
"Save all files | If the 'Compile on Save' is on, also compiles/builds your files"
But in any case, new user may guess, his first standard project will actually be _build_, as it still runs inside the
IDE. To get the hang of the details, extensive manual study is required. Even old stagers needed 2 weeks to figure out
how it works (Remember the extensive discussions on NetCAT 6.5), for the simple reason, that 'Compile on Save' not
precisely designates the actual behaviour.
See my maximalist's comment. ;-)
I still second Irina's wording better in spite of 14 more characters. Michel will you please attach the final path here?
Created attachment 80156 [details]
I attached the new patch. I hope it is the final. :)
If any change is needed, just let me know.
Jirko, can you please review the patch now and integrate it? Thanks!
Thanks for the patch. It's applied in core-main/rev/ae8c652ab26a and it should catch the Nb6.7Beta.
Integrated into 'main-golden', will be available in build *200904171401* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
User: Jiri Rechtacek <email@example.com>
Log: #148977: [65cat] Change tooltip for CoS