FeaturesPluginsDocs & SupportCommunityPartners

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
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