Page regrouping

Martin Aeschlimann & Tom Eicher
November 9th, 2004

Our thoughts for the page grouping, with some ideas borrowed from Tod's screenshot.



Capabilities to a separate menu (not preferences)

General
      Appearance
            Perspective
            Font & Colors
            Label Decorators
      Navigation
            Keys
      Workspace
            Build Order
            Local History
            Linked Resources
      Help
      Startup & Shutdown

Editors
      File Associations
      Quick Diff
      Text Editor
      Java Editor
      Java Properties File Editor
      Ant Editor
     
Development
      Team
      Run/Debug
      Java
          Appearance
               Type Filters
          Build Path
              Installed JRE's
              Classpath Variables
              User Libraries
           Code Style
           Compiler
                Problem Severities
                Task Tags
           Debug
                Detail Formatters
                Step Filtering
        PDE

Comments and ideas for existing pages


Screenshot of existing page
Comments & suggestions
  • Rename to 'General'
  • 'Auto build' as checkable action to Project menu
  • 'Refresh' as checkable action to Project menu or always enabled. Otherwise to 'Workspace' pref page
  • 'Keep next/prev..' to appearance or view menu of editor dialogs or always on
  • 'Workspace save interval' to 'Workspace' pref page
  • Open mode is more a issue of 'navigation' (-> Navigation)
  • Theme is empty: Hide it until more extensions are found
  • Tab positions settings directly on tab configuration menu?
  • Preview?
  • Don't have this as preference page but a separate action in 'Window'
  • Find box currently not so useful. Remove.
  • Improve Categories: why 'Basic' and 'Workbench'? Maybe not a tree but tabs, drop down or two panes. Instead:
    • use a dropdown instead of the tree (users would usually use the preview, and only seldom the dropdown).
    • This would require to separate items that do not fit into the same preview (e.g. part appearance vs. editor appearance vs. decorators)
    • Good backlinking from preview
    • Better previews, per category: Example: Windows display appearance: Click in preview to select item

  • All to the compare editor view menu
  • 'Size of recently opened files list' -> Advanced or remove
  • 'Show Multiple Tabs' to Appearance
  • 'Close all editors on exit' to 'Startup - Shutdown' (is it still an issue with lazy editor creation?)
  • 'Text file encoding': could go to the new 'workspace' group. Not just important for editors but also compilers and other tools reading text files
  • Needs Categories (Java...)
  • Preview? (Linked field)
  • Colors also to Colors & Fonts?
  • reference provider in editor quick diff menu
  • only appears once for all text based editors for most settings:
    • print margin, line numbers etc.
  • some settings may require to be overridden in specific editors or projects:
    • tab settings
  • Regroup under the editor node
  • Content type based selection?
  • Does not scale well for the 700-plug-in case
  • Still so much overlap between plug-ins to make it hard to separate.
  • I havent ever used this feature-> Advanced
  • Should be under Workspace
  • Workspace or Team (!)
  • general
  • grouping for available perspectives (Java, Team.. etc) ?
  • Could probably be removed with moving settings to view preferences
  • 'Reuse' and 'Ignore potential', 'emphasize', 'color'  to search dialog or search view config menu
  • Introduce concept of 'default perspective for view' (--> Perspective page)?

  • Currently a top level node -> Order under workspace
  • General browser settings?
  • Advanced or merge with help page
  • add to view menus or wizards
  • proxy settings related to browsers, -> help?
Remove Preferences (to Advanced / Hidden):
  • move Caret options to 'Accessibility'
  • remove OverviewRuler option
  • do not display "folding provider selection" as long as there is just one provider
Concentrate Appearance Prefs:

User Settings independent of content:
  • Line Numbers
  • Highlight current line (!! some people may use the color to distinguish editors)
  • Print margin column
  • Caret
  • Quick Diff
  • Colors for all the above
  • Colors for Content Assist

Overrideable Settings depending on editor / content:
 (Note: these will likely be also per-project settings)
  • Tab width (do we need this per editor type? per project would make a lot more sense! -> have one default option and per-project overriding)
Highlighting: per language, with two-way-linking / affordance (e.g. language element in preview blinks when selected in drop-down, drop down selection is updated when clicked into preview)

Pseude-Common Prefs:

  • Preferences that appear in many text editors but not all:
  • matching (brackets, peers, etc.) highlighting (this is hard -  "highlight peers" is too abstract, but repeating it is bad. Better: treat it like annotations).
  • Ctrl+click navigation (this should be general, people can participate or not)
  • Content Assist (while the intricate details should be configurable per language, the color settings should be global)
  • All "push-downs" to text
  • Annotations


-> Move to "Source" Plug-in?
Change Preference (Voreinstellung) to Remembering Last Setting:
  • Stuff that a user may want to change from time to time (e.g. quickly see line numbers, then hide them).
  • reduces number of preferences a lot
  • works well for UI element toggling that can be pointed at ("direct manipulation")
  • may need to introduce direct preference pages (e.g. for the "initial folding" preferences).
Problem:
  • may inflate context menus greatly
  • direct manipulation on UI elements configure or turn them off is fine - but how do you turn them back on?

Example:
  • Show Line Numbers -> make this configurable via the ruler menu (where you would expect them), then remember the last state. No preference, no nothing.
  • Quick Diff: same thing only colors need to be configurable (-> annotations)
  • Folding: same thing (configure what is initially folded, but remember the folded state from the last time I touched the editor.
  • mark occurrences on/off and highlighting types.

Question:
What do open editors do upon a change in another editor?
  • stay as they are (only newly opened editors will pick up the change)
  • adapt to the change (either all editors show line numbers or none)


Geek Mode
  • a lot more geeks with eclipse than, say, firefox
  • a lot of people that like to fine-tune their settings for maximal productivity (power users)
  • we should still not frighten the beginner and especially the perpetuate intermediate.

-> show reduced preferences in easy to understand UI
-> enalbe some geeky direct control similar to gconf or "about:config" that simply contains a modifieable list of {preference key, value, description}.
  • this will please the geek
  • this will enable Tweak-Eclipse add-ons to provide the additional stuff.