Tkabber

Check-in [a491c1b77d]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Removed system tray plugins which use obsolete extensions (closes ticket [e02761a005]).
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: a491c1b77d967171b0bd4c5e3b0b613fd1426414
User & Date: sgolovan 2016-04-25 06:01:35
Context
2016-06-30
04:16
Fixed typo. check-in: 0c110e46a5 user: sgolovan tags: trunk
2016-04-25
06:01
Removed system tray plugins which use obsolete extensions (closes ticket [e02761a005]). check-in: a491c1b77d user: sgolovan tags: trunk
2016-03-17
11:34
Loosened the condition for forbidden characters in URLs. check-in: 7dfadad142 user: sgolovan tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to ChangeLog.







1
2
3
4
5
6
7






2016-03-17  Sergei Golovan  <sgolovan@nes.ru>

	* plugins/richtext/urls.tcl, plugins/chat/shuffle.tcl: Loosened the
	  condition for forbidden characters in URLs.

2016-02-18  Sergei Golovan  <sgolovan@nes.ru>

>
>
>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
2016-04-25  Sergei Golovan  <sgolovan@nes.ru>

	* plugins/unix/dockingtray.tcl, plugins/unix/systray.tcl: Removed
	  system tray plugins which use obsolete extensions (closes ticket
	  [e02761a005]).

2016-03-17  Sergei Golovan  <sgolovan@nes.ru>

	* plugins/richtext/urls.tcl, plugins/chat/shuffle.tcl: Loosened the
	  condition for forbidden characters in URLs.

2016-02-18  Sergei Golovan  <sgolovan@nes.ru>

Deleted plugins/unix/dockingtray.tcl.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# dockingtray.tcl --
#
#       KDE tray icon support.
#       Requires Tk_Theme package
#       (http://tkabber.jabber.ru/files/other/Tk_Theme-23.tgz)

if {[catch { package require Tk_Theme }]} return

##########################################################################

namespace eval dockingtray {
    variable s2p
    foreach {k v} [list available   available      \
                        away        away \
                        chat        chat \
                        dnd         dnd  \
                        xa          xa   \
                        unavailable unavailable    \
                        invisible   invisible      \
                        blank       blank          \
                        message1    message-server \
                        message2    message        \
                        message3    message-personal] {
        set s2p($k) docking/$v
    }

    variable options

    custom::defvar options(enable) 1 \
        [::msgcat::mc "Enable KDE tray icon."] \
        -group Systray -type boolean \
        -command [namespace code enable_disable]
}

##########################################################################

proc dockingtray::enable_disable {args} {
    variable options

    set icon .dockingtray

    if {$options(enable) && ![winfo exists $icon]} {
        ifacetk::systray::create $icon \
            -createcommand [namespace code create] \
            -configurecommand [namespace code configure] \
            -destroycommand [namespace code destroy]
    } elseif {!$options(enable) && [winfo exists $icon]} {
        ifacetk::systray::destroy $icon
    }
}

hook::add finload_hook [namespace current]::dockingtray::enable_disable

##########################################################################

proc dockingtray::create {icon} {
    variable s2p

    set mb $icon.mb

    theme:frame $icon -kdesystray -class TkabberIcon

    label $mb -borderwidth 0 -image $s2p(unavailable) \
              -highlightthickness 0 -padx 0 -pady 0
    pack $mb

    set m [ifacetk::systray::popupmenu $icon.menu]

    bind $mb <ButtonRelease-1> ifacetk::systray::restore
    bind $mb <<PasteSelection>> ifacetk::systray::withdraw
    bind $mb <<ContextMenu>> [list tk_popup [double% $m] %X %Y]
    balloon::setup $icon -command [list ifacetk::systray::balloon $icon]
}

##########################################################################

proc dockingtray::configure {icon status} {
    variable s2p

    if {$icon ne "" && [winfo exists $icon]} {
        $icon.mb configure -image $s2p($status)
    }
}

##########################################################################

proc dockingtray::destroy {icon} {
    if {$icon ne "" && [winfo exists $icon]} {
        ::destroy $icon
    }
}

# vim:ft=tcl:ts=8:sw=4:sts=4:et
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<


























































































































































































Deleted plugins/unix/systray.tcl.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# systray.tcl --
#
#       Freedesktop systray icon support.
#       Requires Tray package
#       (ftp://ftp.atmsk.ru/pub/tkabber/tksystray.tar.gz)

if {[catch { package require Tray }]} return

##########################################################################

namespace eval systray {
    variable options

    custom::defvar options(enable) 1 \
        [::msgcat::mc "Enable freedesktop systray icon."] \
        -group Systray -type boolean \
        -command [namespace code enable_disable]
}

##########################################################################

proc systray::set_current_theme {} {
    variable s2p
    foreach {k v} [list available   available      \
                        away        away           \
                        chat        chat           \
                        dnd         dnd            \
                        xa          xa             \
                        unavailable unavailable    \
                        invisible   invisible      \
                        blank       blank          \
                        message1    message-server \
                        message2    message        \
                        message3    message-personal] {
        set s2p($k) [pixmaps::get_filename docking/$v]
    }
}

hook::add set_theme_hook [namespace current]::systray::set_current_theme

##########################################################################

proc systray::enable_disable {args} {
    variable options

    set icon .si

    if {$options(enable) && ![winfo exists $icon]} {
        ifacetk::systray::create $icon \
            -createcommand [namespace code create] \
            -configurecommand [namespace code configure] \
            -destroycommand [namespace code destroy]
    } elseif {!$options(enable) && [winfo exists $icon]} {
        ifacetk::systray::destroy $icon
    }
}

hook::add finload_hook [namespace current]::systray::enable_disable

##########################################################################

proc systray::create {icon} {
    variable s2p

    newti $icon -pixmap $s2p(unavailable)

    set m [ifacetk::systray::popupmenu $icon.menu]

    bind $icon <ButtonRelease-1> ifacetk::systray::restore
    bind $icon <<PasteSelection>> ifacetk::systray::withdraw
    bind $icon <<ContextMenu>> [list tk_popup [double% $m] %X %Y]
    balloon::setup $icon -command [list ifacetk::systray::balloon $icon]
}

##########################################################################

proc systray::configure {icon status} {
    variable s2p

    if {$icon ne "" && [winfo exists $icon]} {
        configureti $icon -pixmap $s2p($status)
    }
}

##########################################################################

proc systray::destroy {icon} {
    if {$icon ne "" && [winfo exists $icon]} {
        removeti $icon
        ::destroy $icon
    }
}

# vim:ft=tcl:ts=8:sw=4:sts=4:et
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<