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 50880 - Internationalization support needs major UI review
Summary: Internationalization support needs major UI review
Status: STARTED
Alias: None
Product: java
Classification: Unclassified
Component: I18N (show other bugs)
Version: 4.x
Hardware: All All
: P2 blocker with 1 vote (vote)
Assignee: Ralph Ruijs
URL:
Keywords: UI
Depends on:
Blocks:
 
Reported: 2004-10-27 03:54 UTC by _ tboudreau
Modified: 2011-11-28 09:21 UTC (History)
2 users (show)

See Also:
Issue Type: TASK
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description _ tboudreau 2004-10-27 03:54:24 UTC
There are a number of UI problems here:

1.  The internationalization wizard, and the dialog produced by 
the Internationalize menu item do almost exactly the same thing 
- they even have some panels in common.  Kill one or the other, 
it's confusing.

2.  We know now that caching resource bundles in static 
variables is a bad idea for memory consumption reasons.  The 
wizard should not offer this (it only does in advanced mode - 
has anyone ever found advanced mode?)

3.  Button text on pane 2 "Select Resource" vs. "Select all" is 
confusing.  I wouldn't expect a button that says "Select all" to 
open a chooser dialog.  Better text would be good, best might 
be:  Remove the "Select all" button entirely - the user will select 
everything in the table if they need to, this button is non 
intuitive....and change Select Resource to Choose Resource.

4.  Having suggested item 2, I suggest killing Advanced mode 
entirely.  Entering property keys and values in a table is more 
work than in an editor.  And the property to turn on advanced 
mode in the options dialog is incredibly well hidden.

5.  Kill "Insert Internationalized String" - again, it's much less 
work for someone to type the code to do this than to use the 
tool;  it's also pretty non-obvious what this does (you select it 
from the Internationalize submenu of the Node's Tools submenu 
and it inserts a string at the current caret position in the editor - 
who needs this?)


Probably 80% of the complexity of this module could be 
removed and result in a marked usability improvement.
Comment 1 Ondrej Rypacek 2004-10-27 16:47:47 UTC
I agree.
Comment 2 _ rkubacki 2004-11-23 13:32:48 UTC
Another ugly UI contribution are i18n actions.

We have one action that is a popup presenter enabled on i18n'alizable
nodes (java, form, jsp). It is shown as a sub-submenu of object.

Another actions is defined as a menu presenter and it is submenu of
Tools menu and always enabled.

My suggestion - extend i18n'ed objects directly with proper action
(should be possible as a result of issue #45137) and remove existing
tools action + simplify presentation in Tools main menu. Perhaps this
can also eliminate part of complexity with i18n factories.
Comment 3 Marian Petras 2004-12-07 13:24:48 UTC
Accepted. It probably will not get into NB 4.1. I hope it will get
into the subsequent release.
Comment 4 _ tboudreau 2005-04-16 01:15:31 UTC
Some additional feedback received by email:
Wizard:
1. allow single resource file for multiple sources. right now, users have to browse and select resource 
bundle for each source file

2. save last accessed resource bundle

3. key: right now it's the whole string with space replaced with "_"
   should limit to, say, 4 words or 12 chars
   also, allow prefix
Comment 5 _ tboudreau 2005-04-16 01:27:02 UTC
Minor comment on #1:  We might want to make the default the NetBeans code convention of a per-
package Bundle.properties, and only give the option to select a bundle file if >1 .properties files already 
exist in the package.

Probably we don't want to support cross-package .properties files (all strings for an app in one properties 
file), simply because once the properties files get big enough, it adds some performance overhead due to 
parsing keys that may not actually be used until much later if ever.