| Deutsch English Français Italiano |
|
<v6s75i$36sb9$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: greg <gregor.ebbing@gmx.de>
Newsgroups: comp.lang.tcl
Subject: Re: Can Tcl/Tk be used to create Xfce panel apps?
Date: Fri, 12 Jul 2024 23:28:18 +0200
Organization: A noiseless patient Spider
Lines: 59
Message-ID: <v6s75i$36sb9$1@dont-email.me>
References: <U9qcnbciI7BFxhP7nZ2dnZfqn_idnZ2d@brightview.co.uk>
<v6obke$2dlc7$2@dont-email.me>
<Kf-dnTesu683Sg37nZ2dnZfqn_udnZ2d@brightview.co.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Fri, 12 Jul 2024 23:28:18 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="90a7842b38cea63e05755422d8836294";
logging-data="3371369"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18UnyrUdzrtOEwgYCNiasjA77a8YJwTt94="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:Cw05ABpozjdB5YKsWMXsMTQXq94=
Content-Language: de-DE
In-Reply-To: <Kf-dnTesu683Sg37nZ2dnZfqn_udnZ2d@brightview.co.uk>
Bytes: 2991
Am 12.07.24 um 09:13 schrieb Mark Summerfield:
> To clarify: I want to write a Tcl/Tk app that presents itself as a
> menubutton (shown as an icon) that appears in the Xfce taskbar.
> I don't know if this is possible since it may require using some Xfce C
> library.
The solution is only an approximation:
#!/usr/bin/env tclsh
package require Tk
# position xfce panel, horizontal or vertical
# https://docs.xfce.org/xfce/xfconf/xfconf-query
# xfconf-query -c xfce4-panel -lv
if {[catch {exec xfconf-query -vc xfce4-panel -p /panels/panel-1/mode}
msg ]} {
set xpos [winfo pointerx .]
set ypos [winfo pointery .]
} elseif {$msg eq "0"} {
set xpos [winfo pointerx .]
set ypos 0
} else {
set xpos 0
set ypos [winfo pointery .]
}
wm title . "Custom Menu App"
frame .mainWindow
menu .menubar
..menubar add cascade -label "Menu" -menu .menu
menu .menu
..menu add command -label "Option 1" \
-command {tk_messageBox -message "Option 1 selected"}
..menu add command -label "Option 2" \
-command {tk_messageBox -message "Option 2 selected"}
..menu add separator
..menu add command -label "Exit" -command {exit}
.. configure -menu .menubar
pack .mainWindow -expand true -fill both
wm geometry . 60x10+$xpos+$ypos
wm attributes . -topmost 1
wm attributes . -alpha 0.5
if {0} {
Adding the script to the XFCE4 panel:
Create a launcher in the XFCE4 panel that runs the Tcl/Tk script.
Right click on the XFCE4 panel and select "Panel" > "Panel preferences".
Go to the "Items" tab and click "Add".
Select "Launcher" and click "Add".
Find the new launcher in the list and click "Edit".
Click "Add a new empty item" and then click "Edit".
Enter a name for the launcher, e.g. "Custom Menu".
Enter the path to your Tcl/Tk script in the "Command" field, e.g.
/path/to/custom_menu.tcl.
}