"Note This message [PBM_SETMARQUEE] requires ComCtl32.dll version 6.00 or later." blah, no more indeterminate progress bars (Windows 2000 has 5.something)
This commit is contained in:
parent
bfc9f7e339
commit
d721e8f61b
|
@ -7,8 +7,6 @@ import (
|
||||||
|
|
||||||
// A ProgressBar is a horizontal rectangle that fills up from left to right to indicate the progress of a long-running task.
|
// A ProgressBar is a horizontal rectangle that fills up from left to right to indicate the progress of a long-running task.
|
||||||
// This progress is typically a percentage, so within the range [0,100].
|
// This progress is typically a percentage, so within the range [0,100].
|
||||||
// Alternatively, a progress bar can be "indeterminate": it indicates progress is being made, but is unclear as to how much.
|
|
||||||
// The presentation of indeterminate progress bars is system-specific (for instance, on Windows and many GTK+ skins, this is represented by a small chunk of progress going back and forth across the width of the bar).
|
|
||||||
type ProgressBar struct {
|
type ProgressBar struct {
|
||||||
lock sync.Mutex
|
lock sync.Mutex
|
||||||
created bool
|
created bool
|
||||||
|
@ -23,11 +21,14 @@ func NewProgressBar() *ProgressBar {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// SetProgress sets the currently indicated progress amount on the ProgressBar. If this amount is outside the range [0,100] (ideally -1), the progress bar is indeterminate.
|
// SetProgress sets the currently indicated progress amount on the ProgressBar. If this amount is outside the range [0,100] (ideally -1), the function will panic (it should allow indeterminate progress bars, alas those are not supported on Windows 2000).
|
||||||
func (p *ProgressBar) SetProgress(percent int) {
|
func (p *ProgressBar) SetProgress(percent int) {
|
||||||
p.lock.Lock()
|
p.lock.Lock()
|
||||||
defer p.lock.Unlock()
|
defer p.lock.Unlock()
|
||||||
|
|
||||||
|
if percent < 0 || percent > 100 {
|
||||||
|
panic("invalid percent") // TODO
|
||||||
|
}
|
||||||
if p.created {
|
if p.created {
|
||||||
p.sysData.setProgress(percent)
|
p.sysData.setProgress(percent)
|
||||||
return
|
return
|
||||||
|
|
Loading…
Reference in New Issue