Plan

Description

A component to display a plan

The Plan component displays a complex task with its sub-tasks and overall progress.

API reference

class

Plan

public sealed class Plan : IComponent, IHasMarginPadding

A timeline-style display for showing a multi-step plan or schedule with start/end times for each step.

Namespace
Tesserae
Implements
IComponent, IHasMarginPadding

Constructors

NameDescription
PlanInitializes a new instance of this class.
Constructor
Plan
public Plan(string title)

Initializes a new instance of this class.

Properties

NameDescription
MarginGets or sets the CSS margin of the component.
PaddingGets or sets the CSS padding of the component.
Property
Plan.Margin
public string Margin { get ; set ; }

Gets or sets the CSS margin of the component.

Property
Plan.Padding
public string Padding { get ; set ; }

Gets or sets the CSS padding of the component.

Methods

NameDescription
RenderRenders the component's root HTML element.
TitleGets or sets the title of the component.
HeaderCommandsSets the components shown in the header command area.
FooterMessageSets a message shown in the footer.
FooterCommandsSets the components shown in the footer command area.
AddTaskAdds the given task to the component.
ProgressConfigures the component to progress.
IndeterminateConfigures the component to indeterminate.
StartStopButtonAdds a start / stop toggle button wired up via the supplied callback.
HideStartStopButtonHides the start stop button.
ShowStartStopButtonShows the start stop button.
StartStarts the component's operation.
StopStops the component's operation.
Method
Plan.Render
public HTMLElement Render()

Renders the component's root HTML element.

Method
Plan.Title
public Plan Title(string title)

Gets or sets the title of the component.

Method
Plan.HeaderCommands
public Plan HeaderCommands(params IComponent[] commands)

Sets the components shown in the header command area.

Method
Plan.FooterMessage
public Plan FooterMessage(string message)

Sets a message shown in the footer.

Method
Plan.FooterCommands
public Plan FooterCommands(params IComponent[] commands)

Sets the components shown in the footer command area.

Method
Plan.AddTask
public Plan AddTask(string title, bool completed)

Adds the given task to the component.

Method
Plan.Progress
Overload
Progress(int, int)Configures the component to progress.
Progress(float)Configures the component to progress.
Progress(int, int)
public Plan Progress(int position, int total)

Configures the component to progress.

Parameters

position int
total int
Progress(float)
public Plan Progress(float percent)

Configures the component to progress.

Parameters

percent float
Method
Plan.Indeterminate
public Plan Indeterminate()

Configures the component to indeterminate.

Method
Plan.StartStopButton
public Plan StartStopButton(Action<Button> onStartStop)

Adds a start / stop toggle button wired up via the supplied callback.

Method
Plan.HideStartStopButton
public Plan HideStartStopButton()

Hides the start stop button.

Method
Plan.ShowStartStopButton
public Plan ShowStartStopButton()

Shows the start stop button.

Method
Plan.Start
public Plan Start()

Starts the component's operation.

Method
Plan.Stop
public Plan Stop()

Stops the component's operation.

Samples

Running plan with partial progress

Completed plan with stop button hidden

Plan with indeterminate progress

See also

© 2026 Curiosity. All rights reserved.