Barracuda Functional Specification
Abstract
This paper descibes tasklist module functionality that
covers supported user tasks. Stable implementation should
be delivered in next release 'en block'. It's kind of
minimalistics still covering all supported use cases.
Use Case
Leaving TODOs in source (typing it).
Revisiting TODOs for currently edited file.
Revisiting TODOs for whole project.
Revisiting TODOs for user's responsibility scope.
Project TODOs
- Open Project TODO list view
- TODO scan starts filling the list by snapshot. List
contains: trimmed todo line, position hints.
It may be grouped by packages/folders.
Snapshot seems to be better solution as it allows
you to leave in code new todos while revisiting exiting
without mixing. But list items are live navigating to
proper lines (if they exists).
Active Document TODOs
TODOs for currently edited source
can be visualized in several alternative ways:
syntax coloting in editor, editor error stripe
and list following opened document.
- Open active document TODOs view
- Current document TODO scan starts. It's
automatically refreshed on document content
change or selecting different document. Focusing
the view or invoking navigation action refreshes
the view immediatelly without waiting for refresh
timeout (implementation detail to improve
perfomance by batching fast document changes).
TODO list functionality
Previous actions use list to present their results
- Navigate through the list
- Have a navigation shortcut for next, previous TODO
item in the list. This should be invocable from editor
and todo view.
- List filtering
- List content can be filtered according to
following criteria: matching TODO regexp,
todo location (path prefix, suffix, substring).
- List refresh action
- rescans selected scope
Options
There are following options:
- TODO mark patterns (regex)
- document rescan delay
Related Documents
Use cases description
UI Specfication
Design Specification
Test Specification
Petr Kuzel on 5th Novenber 2003
The document is open for feedback