tray icon behaviour
This commit is contained in:
@@ -6,6 +6,8 @@
|
||||
(provide wv-menu
|
||||
wv-menu-item
|
||||
is-wv-menu?
|
||||
wv-menu?
|
||||
wv-menu-empty?
|
||||
wv-menu-set-callback!
|
||||
wv-menu-set-icon!
|
||||
wv-menu-set-title!
|
||||
@@ -16,8 +18,6 @@
|
||||
wv-menu-item-id
|
||||
wv-menu-id
|
||||
)
|
||||
|
||||
|
||||
|
||||
(define-struct ww-menu-item*
|
||||
(id [title #:mutable] [icon-url #:mutable] [callback #:mutable] [submenu #:mutable] [separator #:mutable])
|
||||
@@ -37,6 +37,9 @@
|
||||
|
||||
(define (wv-menu-id m)
|
||||
(ww-menu*-id m))
|
||||
|
||||
(define (wv-menu? mnu)
|
||||
(is-wv-menu? mnu))
|
||||
|
||||
(define (is-wv-menu? mnu)
|
||||
(if (ww-menu*? mnu)
|
||||
@@ -61,10 +64,18 @@
|
||||
(when (symbol? (car items))
|
||||
(set! menu-id (car items))
|
||||
(set! items (cdr items)))
|
||||
(when (list? (car items))
|
||||
(set! items (car items)))
|
||||
(if (null? items)
|
||||
(set! items '())
|
||||
(when (list? (car items))
|
||||
(set! items (car items))))
|
||||
(make-ww-menu* menu-id items)))
|
||||
|
||||
|
||||
(define (wv-menu-empty? menu)
|
||||
(if (is-wv-menu? menu)
|
||||
(null? (ww-menu*-items menu))
|
||||
(error "wv-empty-menu?: argument is not a menu")))
|
||||
|
||||
(define (wv-menu-item id title
|
||||
#:icon-url [icon-url #f]
|
||||
#:callback [callback (lambda args #t)]
|
||||
|
||||
Reference in New Issue
Block a user