Package-level declarations

Types

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
class MultiProgressBarAnimation(val terminal: Terminal, clearWhenFinished: Boolean = false, speedEstimateDuration: Duration = 30.seconds, maker: ProgressBarWidgetMaker = MultiProgressBarWidgetMaker, timeSource: TimeSource.WithComparableMarks = TimeSource.Monotonic) : RefreshableAnimation, ProgressBarAnimation
Link copied to clipboard

An animation that can draw one or more progress tasks to the screen.

Link copied to clipboard
interface ProgressTask<T>
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
fun ProgressBarAnimation.addTask(definition: ProgressBarDefinition<Unit>, total: Long? = null, completed: Long = 0, start: Boolean = true, visible: Boolean = true): ProgressTask<Unit>

Add a new task to the progress bar with the given definition.

Link copied to clipboard
fun ProgressTask<*>.advance(amount: Long = 1)
fun ProgressTask<*>.advance(amount: Number)

Advance the completed progress of this task by amount.

Link copied to clipboard
inline fun Animation<Unit>.animateOnThread(fps: Int = 30, crossinline finished: () -> Boolean = { false }): BlockingAnimator

Create an animator that runs this animation synchronously.

fun ProgressBarDefinition<Unit>.animateOnThread(terminal: Terminal, total: Long? = null, completed: Long = 0, start: Boolean = true, visible: Boolean = true, clearWhenFinished: Boolean = false, speedEstimateDuration: Duration = 30.seconds, timeSource: TimeSource.WithComparableMarks = TimeSource.Monotonic, maker: ProgressBarWidgetMaker = MultiProgressBarWidgetMaker): ThreadProgressTaskAnimator<Unit>

Create a progress bar animation for a single task that runs synchronously.

fun <T> ProgressBarDefinition<T>.animateOnThread(terminal: Terminal, context: T, total: Long? = null, completed: Long = 0, start: Boolean = true, visible: Boolean = true, clearWhenFinished: Boolean = false, speedEstimateDuration: Duration = 30.seconds, timeSource: TimeSource.WithComparableMarks = TimeSource.Monotonic, maker: ProgressBarWidgetMaker = MultiProgressBarWidgetMaker): ThreadProgressTaskAnimator<T>

Create a progress bar animation with a single task that runs synchronously.

Link copied to clipboard
fun BlockingAnimator.execute(executor: ExecutorService = Executors.newSingleThreadExecutor(DaemonThreadFactory())): Future<*>

Run the animation in a background thread on an executor.

Link copied to clipboard

Remove a task from the progress bar.

Link copied to clipboard
fun ProgressTask<*>.update(completed: Long)
fun ProgressTask<*>.update(completed: Number)

Set the completed progress of this task to completed.