FeaturesPluginsDocs & SupportCommunityPartners

User Interface Specification:
Source Editor Related Actions

Author: Gabriel Tichy
$Revision: 1.5 $
Table of Contents:


Introduction

The intention of this specification is to revise all editor actions and their occurence throughout the main menus. Discoverability is a real problem in the IDE. Actions are distributed, many of important and useful ones are even not visible.
Source editor's right-click also needs to be redesigned.

System-Wide UI Impact

Main menus

See Detailed specification.

Source Editor

See Detailed specification.

Detailed Specification

Main menus

Edit

Current State

New Solution
  ...
  Delete
-
  Find...
  Replace...
  Find Usages...
-
  Find in Projects...
-
  Go to Source
  Go to Declaration
  Go to Super Implementation 
  Go to Line...
  Go to Class...

Notes:

  • Go to Line... is renamed current action Goto...
  • Go to Class... is now placed in the Tools menu
  • Find Usages... and Go to Super Implementation is new refactoring action

View

Current State

New Solution
    Editors                   >
    Code Folds                >
-
    Web Browser
    ...
-
    Toolbars                  >
[ ] Show Line Numbers
[x] Show Editor Toolbar

Source Editor's right-click menu

Right-click menu should include a small subset of the most commonly used commands in the appropriate context.

Current State (Java)

Actions to be removed

Action Type Clarification Note
Close
Close All Documents
Close All But ...
Clone Document
Maximize
Save Document


Windowing System Windowing System actions are available by tab right-click menu already. Applies for all editors.
New >

New dialogs for Java elements No reason to include them in the source editor. Applies for all editors.
Delete

Edit action Used by keyboard usually; widely known shortcut. Applies for all editors.
Tools >

Main menu Main menu with many unrelated actions. Applies for all editors.
Margin >
Margin menu Margin menu. Applies for all editors.
Properties
  
Windowing System Properties are visible in a separate window, no added value.

Applies for all editors.

Customizer
  Obsolete in editor.

Applies for all editors.

New Solution (Java)

 Go To                 >
 Find Usages...
 Show Javadoc
-
 Refactoring           >
 Fix Imports
 Reformat Code
 Surround With...
-
 Run "[class name]"
 New Watch...
 Toggle Breakpoint
-
 Cut
 Copy
 Paste
-
 Code Folds            >

Go To submenu:

 Source
 Declaration
 Super Implementation
 Line...
 Class...

Notes:

  • Line... = Go to Line...
  • Class... = Go to Class...

New Solution (Other)

For all other editors, actions except those mentioned in the table below remain unaffected.

Source Editor's Gutter menu

Current State

Gutter menu contains three annotation sections. The first section contains all actions registered for annotation type which is currently visible. The second section contains submenus for all other types of annotations which are set on the line (active) with their actions. Third one is similar to the second one, but contains rest of the annotations types which can be set on the line (inactive).

New Solution

Only one section for annotation types is always visible - it contains all annotation types (as submenus with their actions always in the same order), regardless of active or visible annotations.

 

Companion
Projects:
MySQL Database Server   Open JDK: an Open SourceJDK   GlassFish Community: an Open Source Application Server    Mobile & Embedded Community    Open Solaris   java.net - The Source for Java Technology Collaboration   Virtual Box - full virtualizer  Open ESB - The Open Enterprise Service Bus Powered by