Command improvements.
This commit is contained in:
parent
781b9e4fa1
commit
05bce67856
4 changed files with 28 additions and 20 deletions
|
@ -316,22 +316,18 @@ func loadFlags() []zenity.Option {
|
||||||
switch {
|
switch {
|
||||||
case errorDlg:
|
case errorDlg:
|
||||||
setDefault(&title, "Error")
|
setDefault(&title, "Error")
|
||||||
setDefault(&icon, "dialog-error")
|
|
||||||
setDefault(&text, "An error has occurred.")
|
setDefault(&text, "An error has occurred.")
|
||||||
setDefault(&okLabel, "OK")
|
setDefault(&okLabel, "OK")
|
||||||
case infoDlg:
|
case infoDlg:
|
||||||
setDefault(&title, "Information")
|
setDefault(&title, "Information")
|
||||||
setDefault(&icon, "dialog-information")
|
|
||||||
setDefault(&text, "All updates are complete.")
|
setDefault(&text, "All updates are complete.")
|
||||||
setDefault(&okLabel, "OK")
|
setDefault(&okLabel, "OK")
|
||||||
case warningDlg:
|
case warningDlg:
|
||||||
setDefault(&title, "Warning")
|
setDefault(&title, "Warning")
|
||||||
setDefault(&icon, "dialog-warning")
|
|
||||||
setDefault(&text, "Are you sure you want to proceed?")
|
setDefault(&text, "Are you sure you want to proceed?")
|
||||||
setDefault(&okLabel, "OK")
|
setDefault(&okLabel, "OK")
|
||||||
case questionDlg:
|
case questionDlg:
|
||||||
setDefault(&title, "Question")
|
setDefault(&title, "Question")
|
||||||
setDefault(&icon, "dialog-question")
|
|
||||||
setDefault(&text, "Are you sure you want to proceed?")
|
setDefault(&text, "Are you sure you want to proceed?")
|
||||||
setDefault(&okLabel, "Yes")
|
setDefault(&okLabel, "Yes")
|
||||||
setDefault(&cancelLabel, "No")
|
setDefault(&cancelLabel, "No")
|
||||||
|
@ -347,7 +343,6 @@ func loadFlags() []zenity.Option {
|
||||||
setDefault(&cancelLabel, "Cancel")
|
setDefault(&cancelLabel, "Cancel")
|
||||||
case passwordDlg:
|
case passwordDlg:
|
||||||
setDefault(&title, "Type your password")
|
setDefault(&title, "Type your password")
|
||||||
setDefault(&icon, "dialog-password")
|
|
||||||
setDefault(&okLabel, "OK")
|
setDefault(&okLabel, "OK")
|
||||||
setDefault(&cancelLabel, "Cancel")
|
setDefault(&cancelLabel, "Cancel")
|
||||||
case progressDlg:
|
case progressDlg:
|
||||||
|
@ -355,10 +350,6 @@ func loadFlags() []zenity.Option {
|
||||||
setDefault(&text, "Running...")
|
setDefault(&text, "Running...")
|
||||||
setDefault(&okLabel, "OK")
|
setDefault(&okLabel, "OK")
|
||||||
setDefault(&cancelLabel, "Cancel")
|
setDefault(&cancelLabel, "Cancel")
|
||||||
case notification:
|
|
||||||
setDefault(&icon, "dialog-information")
|
|
||||||
default:
|
|
||||||
setDefault(&text, "")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// General options
|
// General options
|
||||||
|
@ -390,10 +381,12 @@ func loadFlags() []zenity.Option {
|
||||||
ico = zenity.WarningIcon
|
ico = zenity.WarningIcon
|
||||||
case "dialog-password":
|
case "dialog-password":
|
||||||
ico = zenity.PasswordIcon
|
ico = zenity.PasswordIcon
|
||||||
case "":
|
default:
|
||||||
ico = zenity.NoIcon
|
ico = zenity.NoIcon
|
||||||
}
|
}
|
||||||
opts = append(opts, ico)
|
if icon != unspecified {
|
||||||
|
opts = append(opts, ico)
|
||||||
|
}
|
||||||
|
|
||||||
// Message options
|
// Message options
|
||||||
|
|
||||||
|
|
|
@ -14,11 +14,14 @@ import (
|
||||||
|
|
||||||
func notify(opts ...zenity.Option) error {
|
func notify(opts ...zenity.Option) error {
|
||||||
if !listen {
|
if !listen {
|
||||||
|
if text == unspecified {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
return zenity.Notify(text, opts...)
|
return zenity.Notify(text, opts...)
|
||||||
}
|
}
|
||||||
|
|
||||||
zenutil.Command = false
|
zenutil.Command = false
|
||||||
icon := zenity.InfoIcon
|
ico := zenity.NoIcon
|
||||||
for scanner := bufio.NewScanner(os.Stdin); scanner.Scan(); {
|
for scanner := bufio.NewScanner(os.Stdin); scanner.Scan(); {
|
||||||
line := scanner.Text()
|
line := scanner.Text()
|
||||||
var cmd, msg string
|
var cmd, msg string
|
||||||
|
@ -32,20 +35,20 @@ func notify(opts ...zenity.Option) error {
|
||||||
case "icon":
|
case "icon":
|
||||||
switch msg {
|
switch msg {
|
||||||
case "error", "dialog-error":
|
case "error", "dialog-error":
|
||||||
icon = zenity.ErrorIcon
|
ico = zenity.ErrorIcon
|
||||||
case "info", "dialog-information":
|
case "info", "dialog-information":
|
||||||
icon = zenity.InfoIcon
|
ico = zenity.InfoIcon
|
||||||
case "question", "dialog-question":
|
case "question", "dialog-question":
|
||||||
icon = zenity.QuestionIcon
|
ico = zenity.QuestionIcon
|
||||||
case "important", "warning", "dialog-warning":
|
case "important", "warning", "dialog-warning":
|
||||||
icon = zenity.WarningIcon
|
ico = zenity.WarningIcon
|
||||||
case "dialog-password":
|
case "dialog-password":
|
||||||
icon = zenity.PasswordIcon
|
ico = zenity.PasswordIcon
|
||||||
default:
|
default:
|
||||||
icon = zenity.NoIcon
|
ico = zenity.NoIcon
|
||||||
}
|
}
|
||||||
case "message", "tooltip":
|
case "message", "tooltip":
|
||||||
opts := []zenity.Option{icon}
|
opts := []zenity.Option{ico}
|
||||||
if n := strings.IndexByte(msg, '\n'); n >= 0 {
|
if n := strings.IndexByte(msg, '\n'); n >= 0 {
|
||||||
opts = append(opts, zenity.Title(msg[:n]))
|
opts = append(opts, zenity.Title(msg[:n]))
|
||||||
msg = msg[n+1:]
|
msg = msg[n+1:]
|
||||||
|
|
|
@ -32,6 +32,17 @@ func message(kind messageKind, text string, opts options) error {
|
||||||
flags |= 0x30 // MB_ICONWARNING
|
flags |= 0x30 // MB_ICONWARNING
|
||||||
case InfoIcon:
|
case InfoIcon:
|
||||||
flags |= 0x40 // MB_ICONINFORMATION
|
flags |= 0x40 // MB_ICONINFORMATION
|
||||||
|
case unspecifiedIcon:
|
||||||
|
switch kind {
|
||||||
|
case errorKind:
|
||||||
|
flags |= 0x10 // MB_ICONERROR
|
||||||
|
case questionKind:
|
||||||
|
flags |= 0x20 // MB_ICONQUESTION
|
||||||
|
case warningKind:
|
||||||
|
flags |= 0x30 // MB_ICONWARNING
|
||||||
|
case infoKind:
|
||||||
|
flags |= 0x40 // MB_ICONINFORMATION
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if kind == questionKind && opts.defaultCancel {
|
if kind == questionKind && opts.defaultCancel {
|
||||||
|
|
|
@ -132,7 +132,8 @@ func (i DialogIcon) apply(o *options) { o.icon = i }
|
||||||
|
|
||||||
// The stock dialog icons.
|
// The stock dialog icons.
|
||||||
const (
|
const (
|
||||||
ErrorIcon DialogIcon = iota + 1
|
unspecifiedIcon DialogIcon = iota
|
||||||
|
ErrorIcon
|
||||||
WarningIcon
|
WarningIcon
|
||||||
InfoIcon
|
InfoIcon
|
||||||
QuestionIcon
|
QuestionIcon
|
||||||
|
|
Loading…
Reference in a new issue