Extension Point : ITicketActionController
Interface | ITicketActionController | Since | 0.11 |
Module | trac.ticket.api | Source | api.py |
The ITicketActionController allows components to add their own actions and operations to the ticket workflow.
Purpose
TracWorkflow provides a configurable workflow for the ticket system.
The main purpose for this interface is to allow plugins to implement new actions and operations for the workflow.
Usage
Implementing the interface follows the standard guidelines found in TracDev/ComponentArchitecture and of course TracDev/PluginDevelopment.
Implementations have to be added to the the workflow
option in the [ticket]
section in TracIni.
Trac automatically calls the following methods to let users perform actions on tickets:
get_ticket_actions
returns possible actions.get_all_status
returns possible values for the ticket status field.render_ticket_action_control
renders an HTML UI control for selecting a particular action.get_ticket_changes
returns the ticket field changes a particular action would make.apply_action_side_effects
performs additional side effects.
Examples
- CodeReview sample plugin
- DeleteTicket sample plugin
- MilestoneOperation sample plugin
- StatusFixer sample plugin
- VoteOperation sample plugin
Available Implementations
trac.ticket.default_workflow.ConfigurableTicketWorkflow
: Provides the default configurable workflow and operations.
- th:AdvancedTicketWorkflowPlugin: Provides various experimental operations
Additional Information and References
- epydoc
- API Reference
- TracWorkflow
- TracIdeas/TracWorkflow
- The Workflow macro can visualize workflow configurations.
API History
- 0.11 introduced the interface