UEXMenusSpec

Revision as of 15:21, 14 March 2013 by Saubrecht (Talk | contribs)

Date: 27 FEB 2013. Authors: NB UI Steering Committee (Rich Gunther, Petr Somol, Jan Peska, Standa Aubrecht, ...)

Contents

Specification of menu structure for NetBeans 7.4 / 8.0

This is the planned structure of top menus in the next post-7.3 NetBeans version, as agreed within the NB UI Steering Committee. Agreed/pending status is marked with each menu below. The owners of those menus with Agreed state are pleased to implement the changes. Changes are emphasized with respect to NB7.3 state using bold font or comments in italic.

Remark: The extent of the proposed changes is limited so as to introduce improvements without making navigation difficult for current users.

Note that an updated UI Review process (NetBeans 7.3+) is to be followed before substantial changes to NB UI are implemented. See UIReviews for details. For discussion preceeding this spec see UEXMenus. For overview of all currently considered UI problem areas see UIReviewsAreas.


File

No structural change with respect to NB 7.3.

Edit

No structural change with respect to NB 7.3. Please ensure that existing keyboard shortcuts are displayed aside the relevant menu items at all times, this is currently not always the case. Issue 226720

View

No no structural change with respect to NB 7.3.

Navigate

Redesign proposal: approval pending.

The proposed redesign includes joining Go to Type and Go to Symbol dialogs into one, that would be invoked by default in the Search for Type mode (from menu or by shortcut Ctrl-O) or in Search for Symbol mode (by shortcut Ctrl-Alt-Shift-O):

Unified Go to Type / Symbol dialog

Please ensure that existing keyboard shortcuts are displayed aside the relevant menu items at all times, this is currently not always the case. Issue 226720

  1. Go to File... Alt+Shift+O
  2. Go to Type / Symbol... Ctrl+O
  3. Go to Declaration Ctrl+B
  4. Go to Super Implementation Ctrl+Shift+P
  5. Go to Test Ctrl+Alt+T
  6. ----------------------------------
  7. Go to Last Edit Location Ctrl+Q
  8. Go Back Alt+Left
  9. Go Forward Alt+Right
  10. ----------------------------------
  11. Go to Line/Bookmark... Ctrl+G
  12. Bookmarks image:submenu.png
    1. Toggle Bookmark Ctrl+Shift+M
    2. Go Back Ctrl+Shift+Period
    3. Go Forward Ctrl+Shift+Comma
  13. ----------------------------------
  14. Go to Next Error Ctrl+Period
  15. Go to Previous Error Ctrl+Comma
  16. ----------------------------------
  17. Go to Spring Bean... Alt+Shift+B
  18. Go to Grails Domain Class (when Groovy is active)
  19. Go to Grails Controller (when Groovy is active)
  20. Go to Grails View (when Groovy is active)
  21. ----------------------------------
  22. Inspect image:submenu.png
    1. Members Ctrl+Shift+F12 (Petr: shows members of the entity under cursor)
    2. File Members Ctrl+F12 (Petr: shows members of the class represented by the currently selected file, regardless cursor position)
    3. ----------------------------------
    4. Hierarchy Alt+Shift+F12 (Petr: shows hierarchy for the entity under cursor)
    5. File Hierarchy Alt+F12 (Petr: shows members for the class represented by the currently selected file, regardless cursor position)
  23. ----------------------------------
  24. image:icon_symbol.png Select in Projects Ctrl+Shift+1
  25. image:icon_symbol.png Select in Files Ctrl+Shift+2
  26. Select in Classes Ctrl+Shift+3
  27. Select in Favorites Ctrl+Shift+4

Source

Redesign proposal: approval pending.

Please ensure that existing keyboard shortcuts are displayed aside the relevant menu items at all times, this is currently not always the case. Issue 226720

  1. Format Alt+Shift+F
  2. Remove Trailing Spaces
  3. Shift Left Alt+Shift+Left
  4. Shift Right Alt+Shift+Right
  5. Move image:submenu.png
    1. Move Up Alt+Shift+Up
    2. Move Down Alt+Shift+Down
    3. Move Code Element Up Alt+Shift+Page Up
    4. Move Code Element Down Alt+Shift+Page Down
  6. Duplicate image:submenu.png
    1. Duplicate Up Ctrl+Shift+Up
    2. Duplicate Down Ctrl+Shift+Down
    3. Duplicate Code Element Up Ctrl+Shift+Page Up
    4. Duplicate Code Element Down Ctrl+Shift+Page Down
  7. Toggle Comment Ctrl+Shift+C
  8. ----------------------------------
  9. Complete Code... Ctrl+Space
  10. Insert Code... Alt+Insert
  11. Remove Surrounding Code... Alt+Backspace
  12. Fix Code... Alt+Enter
  13. Fix Uses... Ctrl-Shift-I (when PHP is active, Note: this PHP shortcut clashes with the one below. Please fix it.)
  14. Fix Imports... Ctrl+Shift+I
  15. Organize Imports
  16. Organize Members
  17. ---------------------------------- (separated for somewhat better clarity)
  18. Insert Next Matching Word Ctrl+Shift+K
  19. Insert Previous Matching Word Ctrl+K
  20. ----------------------------------
  21. image:icon_symbol.png Make Controller (when Groovy is active)
  22. ----------------------------------
  23. Preprocessor Blocks image:submenu.png (when ME is active)
  24. ----------------------------------
  25. Show Method Parameters Ctrl+P (moved "show" actions here for clarity - from here downwards no action changes the source)
  26. Show Documentation Ctrl+Shift+Space
  27. ----------------------------------
  28. Inspect...
  29. ----------------------------------
  30. Scan for External Changes

Refactor

Redesign proposal: approval pending.

  1. Rename... Ctrl+R
  2. Move... Ctrl+M
  3. Copy...
  4. Safely Delete... Alt+Delete
  5. ----------------------------------
  6. Inline...
  7. Change Method Parameters...
  8. ----------------------------------
  9. Pull Up...
  10. Push Down...
  11. Extract Interface...
  12. Extract Superclass...
  13. Use Supertype Where Possible...
  14. ----------------------------------
  15. Introduce image:submenu.png
    1. Variable... Alt+Shift+V
    2. Constant... Alt+Shift+C
    3. Field... Alt+Shift+E
    4. Parameter... Alt+Shift+P
    5. Method... Alt+Shift+M
    6. Local Extension... Alt+Shift+X
  16. ----------------------------------
  17. Move Inner to Outer Level...
  18. Convert Anonymous to Member...
  19. Encapsulate Fields...
  20. Replace Constructor with Factory...
  21. Replace Constructor with Builder...
  22. Invert Boolean...
  23. ----------------------------------
  24. Inspect and Transform...
  25. Inspect Javadoc... (formerly Tools->Analyze Javadoc. Ideally should be included in Inspect and Transform)

Run

No no structural change with respect to NB 7.3.

Debug

No no structural change with respect to NB 7.3.

Profile

No no structural change with respect to NB 7.3.

Team

Redesign proposal: approval pending.

Please follow the proposal at UEXTeamMenu

Tools

Redesign proposal: approval pending.

Remark: note that Analyze Javadoc is moved to Refactor->Inspect JavaDoc..., ideally should become part of Refactor->Inspect & Transform....

  1. Apply Diff Patch...
  2. Diff to... (Note the missing to)
  3. Add to Favorites
  4. ----------------------------------
  5. Create Tests
  6. Internationalization image:submenu.png
    1. Internationalize...
    2. Insert Internationalization String... Ctrl_Shift+J
    3. ----------------------------------
    4. Internationalization Wizard
    5. Internationalization Test Wizard
  7. Add to Palette... (moved to be neighbor with Palette->)
  8. Palette image:submenu.png (moved to be neighbor with Add to Palette)
    1. Swing/AWT Components
    2. HTML/JSP Code Clips
    3. Code Clips
    4. SVG Shapes
  9. ----------------------------------
  10. Java Platforms
  11. NetBeans Platforms
  12. ---------------------------------- (added line to emphasize the importance of platforms)
  13. Variables (See Issue 224702 why Ant Variables should be renamed back)
  14. Libraries (See Issue 224702 why Ant Libraries should be renamed back)
  15. Servers
  16. Cloud Providers
  17. Mobility Deployment
  18. Keystores
  19. Templates
  20. DTDs and XML Schemas
  21. ----------------------------------
  22. Plugins
  23. ----------------------------------
  24. Options

Window

Redesign proposal: approval pending.

Remark: Window->Navigator->Hierarchy opens a C++ related Hierarchy window only in undocked state, even if working on Java project. There is no way of opening a Java Hierarchy window from Window menu. In fact there should be just one Hierarchy window but currently this is not the case

Remark: Standa argues that menu items prefixed here with [EMPTY] open just an empty window. User must actually invoke some other action to set window's context and initialize it; his suggestion is thus to remove these items from Window menu. Petr on the other hand thinks that the gain from removal would be questionable (the marked windows reside in submenus so no space would be saved in the main menu); retaining the marked items would make sense at least to retain discoverability.

Layout without menu items that open only an empty window.

  1. image:icon_symbol.png Projects Ctrl+1
  2. image:icon_symbol.png Files Ctrl+2
  3. image:icon_symbol.png Classes Ctrl+9
  4. image:icon_symbol.png Favorites Ctrl+3
  5. image:icon_symbol.png Services Ctrl+5
  6. image:icon_symbol.png Navigator Ctrl+7
  7. image:icon_symbol.png Action Items Ctrl+6
  8. image:icon_symbol.png Output Ctrl+4
  9. image:icon_symbol.png Editor Ctrl+0
  10. Debugging image:submenu.png
    1. image:icon_symbol.png Variables Alt+Shift+1
    2. image:icon_symbol.png Watches Alt+Shift+2
    3. image:icon_symbol.png Call Stack Alt+Shift+3
    4. image:icon_symbol.png Loaded Classes Alt+Shift+4
    5. image:icon_symbol.png Breakpoints Alt+Shift+5
    6. image:icon_symbol.png Sessions Alt+Shift+6
    7. image:icon_symbol.png Threads Alt+Shift+7
    8. image:icon_symbol.png Expression Evaluation
    9. image:icon_symbol.png Sources Alt+Shift+8
    10. ----------------------------------
    11. image:icon_symbol.png Debugging Alt+Shift+9
    12. image:icon_symbol.png Disassembly
    13. image:icon_symbol.png Memory
    14. image:icon_symbol.png Registers
    15. ----------------------------------
    16. image:icon_symbol.png Debugger Console
    17. image:icon_symbol.png Analyze Stack
  11. Profiling image:submenu.png
    1. image:icon_symbol.png Profiler
    2. image:icon_symbol.png Live Results
    3. image:icon_symbol.png Threads
    4. image:icon_symbol.png VM Telemetry
    5. image:icon_symbol.png VM Telemetry Overview
    6. image:icon_symbol.png Profiling Points
  12. Web image:submenu.png
    1. image:icon_symbol.png Web Browser
    2. image:icon_symbol.png CSS Styles
  13. Tools image:submenu.png
    1. image:icon_symbol.png Palette Ctrl+Shift+8
    2. image:icon_symbol.png Properties Ctrl+Shift+7
    3. image:icon_symbol.png Bookmarks
    4. image:icon_symbol.png Javadoc Documentation (formerly Javadoc)
    5. image:icon_symbol.png C/C++ Documentation
    6. ----------------------------------
    7. image:icon_symbol.png Notifications (planned for next release as Notification and Messaging Center, see UEXNotifications)
    8. image:icon_symbol.png Exception Reporter
    9. image:icon_symbol.png Terminal
    10. image:icon_symbol.png Processes
  14. ----------------------------------
  15. Configure Window image:submenu.png
    1. Maximize
    2. Float
    3. Float Group
    4. Minimize
    5. Minimize Group
    6. Dock Alt+Shift+D
    7. Dock Group
    8. ----------------------------------
    9. Clone Document
    10. New Document Tab Group
    11. Collapse Document Tab Group
  16. Reset Windows
  17. ----------------------------------
  18. Close Window Ctrl+W
  19. Close All Documents Strl+Shift+W
  20. Close Other Documents
  21. Documents... Shift+F4

Remark (Petr): What is better here is the placement of Output back to main menu - imho Output may well be one of the most frequently used items in this menu, because Output window in not opened by default in IDE but many users want it open. What I do not like is the submenu IDE becoming effectively another "Other" that collects all that does not fit elsewhere. This was not meant so - the IDE submenu in the first proposal above makes more sense as the four items in it all are somehow unrelated to concrete projects or relate to IDE as a whole. In this alternative proposal I would better see IDE menu unchanged and to put the excessive items better to Navigation submenu, which would then be better renamed to the compromise name Editing (you use Navigator and Bookmarks windows when editing after all)..

Help

No no structural change with respect to NB 7.3.

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo