This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 148977

Summary: [65cat] Change tooltip for CoS
Product: platform Reporter: ulfzibis <ulfzibis>
Component: ActionsAssignee: Jiri Rechtacek <jrechtacek>
Status: RESOLVED FIXED    
Severity: blocker CC: hmichel, jbecicka, jkovalsky, mmirilovic, olangr
Priority: P3 Keywords: NETFIX, SIMPLEFIX
Version: 6.x   
Hardware: All   
OS: All   
Issue Type: ENHANCEMENT Exception Reporter:
Attachments: Patch for 6.7
New patch

Description ulfzibis 2008-10-02 15:26:09 UTC
[ JDK VERSION : 1.6.0_07 ]

Suggstion:
Tooltip of "Save All"-button is just "Save All".
What about extending it to "Save All + Compile all Modifications", if
CoS is on?
Comment 1 Ondrej Langr 2008-10-06 12:34:50 UTC
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. 
Comment 2 ulfzibis 2008-10-06 12:47:43 UTC
"Save All + Compile all Modifications" is just a suggestion, I'm sure, somebody has better ideas, how to label this tooltip.
Comment 3 Jiri Kovalsky 2009-03-30 14:59:22 UTC
Jiri Rechtacek agreed that he would review and integrate a patch for this issue contributed by the NetFIX [1] team.

[1] http://wiki.netbeans.org/NetFIX
Comment 4 Michel Graciano 2009-03-31 01:03:42 UTC
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.

Regards.
Comment 5 Michel Graciano 2009-03-31 02:36:14 UTC
Created attachment 79101 [details]
Patch for 6.7
Comment 6 Michel Graciano 2009-03-31 02:38:32 UTC
An simple patch. Please, remove review it and remove unused imports :(
Comment 7 ulfzibis 2009-03-31 13:13:16 UTC
> 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.

Comment 8 Michel Graciano 2009-03-31 14:29:43 UTC
>> 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. ;-)
Suggestion?

Regards
Comment 9 Jiri Kovalsky 2009-04-01 13:07:42 UTC
Ondreji, can you please comment on the latest questions? Thanks!
Comment 10 Michel Graciano 2009-04-09 16:04:00 UTC
Any ideas about it?
Comment 11 Ondrej Langr 2009-04-09 21:56:49 UTC
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? 
Comment 12 Michel Graciano 2009-04-09 22:24:44 UTC
For me this is ok. Just confirm that this is what I could implement and I will update the patch asap.

Thanks
Comment 13 Jiri Kovalsky 2009-04-10 08:59:24 UTC
Irina, could somebody from your team please OK the Ondrej's wording? Thanks!
Comment 14 ulfzibis 2009-04-10 11:46:39 UTC
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
different semantics.

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)"
Comment 15 ulfzibis 2009-04-10 12:03:32 UTC
On top, it's additionally _confusing_ the user, that in case of CoS the Build button is just enabled, as in fact it does
nothing.
IMHO a detailed tooltip would suffice here, as it prevents the user to hit the Cancel button in the following
CoS-sensitive dialogue.

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
this shortcut.
Comment 16 Jiri Kovalsky 2009-04-10 12:19:02 UTC
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,
-Jirka
Comment 17 Irina Filippova 2009-04-15 06:34:33 UTC
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)
Comment 18 ulfzibis 2009-04-15 09:56:12 UTC
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. ;-)
Comment 19 Jiri Kovalsky 2009-04-15 10:49:46 UTC
I still second Irina's wording better in spite of 14 more characters. Michel will you please attach the final path here?
Thanks!
Comment 20 Michel Graciano 2009-04-15 14:18:25 UTC
Created attachment 80156 [details]
New patch
Comment 21 Michel Graciano 2009-04-15 14:27:02 UTC
I attached the new patch. I hope it is the final. :)
If any change is needed, just let me know.

Regards
Comment 22 Jiri Kovalsky 2009-04-15 14:28:49 UTC
Jirko, can you please review the patch now and integrate it? Thanks!
Comment 23 Jiri Rechtacek 2009-04-16 19:30:15 UTC
Thanks for the patch. It's applied in core-main/rev/ae8c652ab26a and it should catch the Nb6.7Beta.
Comment 24 Quality Engineering 2009-04-17 19:54:25 UTC
Integrated into 'main-golden', will be available in build *200904171401* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main-golden/rev/ae8c652ab26a
User: Jiri Rechtacek <jrechtacek@netbeans.org>
Log: #148977: [65cat] Change tooltip for CoS