1 import TCP/Client
2
3 Class TCP/Client/DegasControl -superclass TCP/Client
4
5 TCP/Client/DegasControl public init {} {
6 $self next
7 }
8
9 TCP/Client/DegasControl public destroy {} {
10 $self next
11 }
12
13 TCP/Client/DegasControl public open {host port} {
14 $self instvar host_ port_
15 set host_ $host
16 set port_ $port
17 $self next $host $port
18 return "Degas Control Channel"
19 }
20
21 TCP/Client/DegasControl public name {} {
22 return "Degas Control Channel"
23 }
24
25 TCP/Client/DegasControl public scopes {} {
26 return ""
27 }
28
29 TCP/Client/DegasControl public recv {s} {
30 $self [lindex $s 0]_callback [lrange $s 1 end]
31 }
32
33
34 TCP/Client/DegasControl public set_aglp {aglp} {
35 $self instvar aglp_
36 set aglp_ $aglp
37 }
38
39 TCP/Client/DegasControl public handoff_callback {argv} {
40 $self instvar aglp_ host_
41 puts "$self $aglp_"
42 set client_addr [lindex $argv 0]
43 set pid [lindex $argv 1]
44 set prog [lrange $argv 2 end]
45 regsub -all "::" $argv "\n" prog
46 $aglp_ parse_program $client_addr $pid $prog
47 set new_output_session [$aglp_ generate_new_session_spec]
48 $aglp_ send_handoff_complete $client_addr $pid $new_output_session $host_
49 $aglp_ start_service $client_addr $pid $new_output_session
50 }
51
52 TCP/Client/DegasControl public mouse_click_callback {x y} {
53 $self instvar chan_
54 if {[info exists chan_]} {
55 $self send "mouse_click $x $y\n"
56 }
57 }
58
59 TCP/Client/DegasControl public close {} {
60 $self next
61 }
62
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.