1
namespace eval ::movewin {
6
::plugins::RegisterPlugin movewin
7
::plugins::RegisterEvent movewin new_chatwindow move
8
::plugins::RegisterEvent movewin chat_msg_received message
10
array set ::movewin::config {
17
set ::movewin::configlist [list \
18
[list str "x position" x] \
19
[list str "y position" y] \
20
[list bool "Deiconify window when messages are received" make_normal] \
21
[list str "only in states (blank for any)" state] \
25
proc ::movewin::on { } {
28
if { $::movewin::config(state) == "" } {
32
if { [info exists automessage] && $automessage != -1 \
33
&& [lsearch $::movewin::config(state) [lindex $automessage 0]] >=0 \
41
proc ::movewin::move { event epvar } {
44
set w [winfo toplevel $vars(win)]
45
after idle [list ::movewin::move_delayed $w]
48
proc ::movewin::move_delayed {w } {
49
if { [winfo exists $w] && [::movewin::on] } {
50
wm geometry $w +$::movewin::config(x)+$::movewin::config(y)
51
if { $::movewin::config(make_normal) } {
57
proc ::movewin::message { event epvar } {
59
upvar 2 $vars(chatid) chatid
61
set w [winfo toplevel [::ChatWindow::For $chatid]]
62
if { [::movewin::on] && $::movewin::config(make_normal)} {
b'\\ No newline at end of file'