X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=applet.tcl;h=87c0a6000bb51e725f204b309ace52c94c07c258;hb=f7bcd40c7873380890a86d306527fc248278e3b3;hp=59a67ffcc185d136f8a6fe32499b85d7bf69f65f;hpb=f6dacaec04481ca53da7f627b463553cf254d745;p=chiark-tcl-applet.git diff --git a/applet.tcl b/applet.tcl index 59a67ff..87c0a60 100644 --- a/applet.tcl +++ b/applet.tcl @@ -1,5 +1,9 @@ # General purpose code for being a tray applet +# Copyright 2016,2020 Ian Jackson +# SPDX-License-Identifier: GPL-3.0-or-later +# There is NO WARRANTY. + package require Tclx package require tktray @@ -64,19 +68,21 @@ package require tktray # # This also uses the same variables as setup-subwindow. -wm withdraw . - -tktray::icon .i -class example -.i configure -docked 1 +namespace eval applet { -fconfigure stdout -buffering none -fconfigure stderr -buffering none +proc become {} { + wm withdraw . + tktray::icon .i -class example + .i configure -docked 1 -namespace eval applet { + fconfigure stdout -buffering none + fconfigure stderr -buffering none +} # used by both menus and tooltips variable posted 0 +variable tooltip_offset {9 9} #----- menus ----- @@ -170,8 +176,9 @@ proc tooltip-set {s} { proc tooltip-show {x y} { variable tooltip_on_vis - incr x 9 - incr y 9 + variable tooltip_offset + incr x [lindex $tooltip_offset 0] + incr y [lindex $tooltip_offset 1] wm geometry .tt +$x+$y wm deiconify .tt raise .tt