Skip to main content
Jump to: navigation, search

Eclipse 4diac Wiki/4days Of 4diac/Usability Session 2019

At the 2019 4days of 4diac we had a dedicated session on usability issues of 4diac IDE. The following points where identified:

FBN Editor

  • Palette
    • Double-click on type => open type editor
    • Use type-specific icons like in system explorers type library
  • Allow comments on everything
    • At least inputs/outputs of FB instances are missing
  • Allow attributes on everything
    • Attributes, which are user-defined metadata as key-value pairs
    • "Attributes" tab in the property pane
  • Do not adjust FB size to title size -> done in [1]
    • Make FB titles multi-line
    • ... or use smart truncation: ellipsis in the middle, with full name tool-tip
  • Mouse interaction with FBs is too overloaded
    • This is somewhat by design, but still worth improving
    • FB rename mode only triggers when clicking the title twice (like windows explorer rename, not double-click) -> done in [2]
    • Open instance viewer/type editor on double click outside of ports/title
      • Maybe type editor as a context menu entry instead?
  • Improve literal value editing for input ports
    • Add context menu entry for input ports: "set literal value"
    • Fix position of empty "literal value" edit box
    • Popup tooltip with port comment and type syntax/example
    • Use inline Xtext editor for syntax-checking
  • Improve visualisation for drag&drop errors (esp. connections)
    • Popup tooltip explaining why a given target is not a valid drop site
    • Do this while dragging is in progress, or after dropping at invalid site
  • TODO Offer an alternative to the palette
    • double click on empty space opens textbox that searches through types
    • popdown-completion for search term
    • history of past blocks when search term is empty

Type Editor

  • Improve mass creation of ports
    • Existing workflow: use property sheet to create many instances quickly
    • Problem: changing type on every port via mouse is tedious
    • Suggestion: change "Type" column to use a combo-box with auto-complete or a cell-editor instead of the current popup list
  • "Edit Events" property sheet: rename "Inputs" labels to "event inputs"
    • Improves visual distinction between "Edit Events" and "Edit Data"
    • Same for "Outputs" table
  • Use an adaptive layout for input/output property tables
    • Change to a vertical arrangement (top inputs/bottom outputs) for people dragging the property pane to the right window edge
    • Maybe use pane aspect ratio to decide?

System Editor

  • "Attributes" property sheet should use new add/delete/reorder widget

Resource View

  • Boxes around individual applications
    • Rationale:
      • No overlap => resource view becomes much more usable
      • Different visual => less likely to confuse app editor and resource editor
    • Draw a shaded box around/behind each application
    • Nested boxes for subapps
    • Separate application boxes
    • Allow to collapse application boxes

System Explorer

  • Add a search field
    • Contra: use eclipse's global search instead
  • Split type library into read-only standard library and custom types
    • two predefined subfolders

Global UI

  • Tab names have no visual hint for associated project
  • Add documentation pane
    • Could reside under palette, or shared with the outline pane
    • Always shows information relevant to the most recently selected item
      • Comment
      • For types, subapps, FBs: Graphical view of interface definition for types
      • For states inside ECCs: Algorithm preview
      • For types, subapps, FBs: FBN/ECC outline?
      • For systems/devices/resources: content outline?
      • ... and other sources of documentation
      • maybe add instance status summary as well?
        • Rationale: property pane might have other information as default view
        • FB count for systems/devices/resources
        • user-specified attributes
    • From anywhere, i.e. selection in palette, FBN editor, system explorer
  • Add open-document view to the System Explorer pane
    • Flat list of open tabs
    • Grouped by project
  • Add a "Useful tips" startup notification
    • Not a dialog, that is too annoying
    • Notification bar (like in browsers, MS Office) that closes itself after a while
  • Add toolbar buttons and keybindings for direct creation of new types
    • separate actions for basic, composite, SIFBs
    • alternatively improve the type creation dialog to be less cluttered
      • no scrolling through type list, just make the four types selectable with a simple click/keyboard action
      • default folder something like "Type Library/Custom Types"
      • use clicked folder as default folder if invoked via system explorer context menu
  • Sort tabs by project and separate projects by a visual separator

Property Sheets

  • Order of sub-tabs is inconsistent
  • Order of sub-tabs should be optimised for usage frequency
    • "Type Info" is the worst choice for default sub-tab
  • Edit function of tables not discoverable enough
    • "Click to edit" hint or something similar
    • Might apply to other panes and dialogs as well
  • Add keybinding to change property pane sub-tabs
    • Also make sure the default focus after tab change is sensible

Back to the top