2022-03-24 10:37:37 -04:00
|
|
|
//go:build !windows && !darwin
|
2021-04-25 19:36:15 -04:00
|
|
|
|
|
|
|
package zenity
|
|
|
|
|
2022-05-11 12:49:15 -04:00
|
|
|
import "github.com/ncruces/zenity/internal/zenutil"
|
2021-04-25 19:36:15 -04:00
|
|
|
|
|
|
|
func progress(opts options) (ProgressDialog, error) {
|
|
|
|
args := []string{"--progress"}
|
|
|
|
args = appendTitle(args, opts)
|
|
|
|
args = appendButtons(args, opts)
|
|
|
|
args = appendWidthHeight(args, opts)
|
2022-05-18 09:48:09 -04:00
|
|
|
args = appendWindowIcon(args, opts)
|
2021-04-25 19:36:15 -04:00
|
|
|
if opts.maxValue == 0 {
|
|
|
|
opts.maxValue = 100
|
|
|
|
}
|
|
|
|
if opts.maxValue < 0 {
|
|
|
|
args = append(args, "--pulsate")
|
|
|
|
}
|
|
|
|
if opts.noCancel {
|
|
|
|
args = append(args, "--no-cancel")
|
|
|
|
}
|
|
|
|
if opts.timeRemaining {
|
|
|
|
args = append(args, "--time-remaining")
|
|
|
|
}
|
2021-04-30 14:19:14 -04:00
|
|
|
return zenutil.RunProgress(opts.ctx, opts.maxValue, opts.extraButton, args)
|
2021-04-25 19:36:15 -04:00
|
|
|
}
|