Edgewall Software

Opened 13 years ago

Last modified 7 years ago

#10270 closed enhancement

[PATCH] Workflow graph visualization macro — at Initial Version

Reported by: psuter <petsuter@…> Owned by:
Priority: normal Milestone: 1.0
Component: ticket system Version:
Severity: normal Keywords: workflow macro
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:

Description

I propose adding a macro to render workflow graphs, similar to the two illustrations on the TracWorkflow page (which could be replaced by this macro).

For example [[Workflow(fix = open -> closed; reopen = closed -> open)]] would expand to this figure: Example rendering of `[[Workflow(fix = open -> closed; reopen = closed -> open)]]`

Most often this would be used in MacroProcessor mode, e.g. to paste the definition from Trac's basic-workflow.ini:

    {{{
    #!Workflow
    leave = * -> *
    leave.operations = leave_status
    leave.default = 1

    accept = new,assigned,accepted,reopened -> accepted
    accept.permissions = TICKET_MODIFY
    accept.operations = set_owner_to_self

    resolve = new,assigned,accepted,reopened -> closed
    resolve.permissions = TICKET_MODIFY
    resolve.operations = set_resolution

    reassign = new,assigned,accepted,reopened -> assigned
    reassign.permissions = TICKET_MODIFY
    reassign.operations = set_owner

    reopen = closed -> reopened
    reopen.permissions = TICKET_CREATE
    reopen.operations = del_resolution
    }}}

This would expand to: Trac basic-workflow.ini example rendering

Change History (4)

by psuter <petsuter@…>, 13 years ago

Attachment: basic-example-workflow.png added

Trac basic-workflow.ini example rendering

by psuter <petsuter@…>, 13 years ago

Attachment: example-open-closed.png added

Example rendering of [[Workflow(fix = open -> closed; reopen = closed -> open)]]

by psuter <petsuter@…>, 13 years ago

WorkflowMacro implementation using client-side javascript / canvas rendering

by psuter <petsuter@…>, 13 years ago

Attachment: example-basic-workflow.png added

Trac basic-workflow.ini example rendering

Note: See TracTickets for help on using tickets.