package context

import "fmt"

type DynamicTitleBuilder struct {
	formatStr string // e.g. 'remote branches for %s'

	titleRef string // e.g. 'origin'
}

func NewDynamicTitleBuilder(formatStr string) *DynamicTitleBuilder {
	return &DynamicTitleBuilder{
		formatStr: formatStr,
	}
}

func (self *DynamicTitleBuilder) SetTitleRef(titleRef string) {
	self.titleRef = titleRef
}

func (self *DynamicTitleBuilder) Title() string {
	return fmt.Sprintf(self.formatStr, self.titleRef)
}