Pošiljanje ukazov


to ukazi
   netstartup
   show netaccepton 5124 [] [dobil]
   windowcreate "root "okno [Vnesite podatke za povezavo] 0 0 200 77 []
   groupboxcreate "okno "g1 5 2 180 38
   staticcreate "okno "s1 [Ime vašega računalnika:] 10 12 100 10
   staticcreate "okno "s2 [Ime drugega računalnika:] 10 26 100 10
   comboboxcreate "okno "c1 95 10 82 12
   comboboxcreate "okno "c2 95 24 82 12
   buttoncreate "okno "b1 [Poveži se z drugim računalnikom] 10 45 120 12 [poveži]
   buttoncreate "okno "b2 [Prekliči] 140 45 40 12 [prekliči]
end

to poveži
   make "ime first comboboxgettext "c1
   show netconnecton comboboxgettext "c2 5124 [] []
   windowdelete "okno
   windowcreate "root "okno [Pošiljanje ukazov] 0 0 280 103 []
   groupboxcreate "okno "g1 5 1 265 66
   staticcreate "okno "s1 [Vnesite ukaz:] 10 12 60 10
   staticcreate "okno "s2 [Komu naj ga pošljem:] 10 26 80 10
   radiobuttoncreate "okno "g1 "r1 [Vsem] 20 38 40 10
   radiobuttoncreate "okno "g1 "r2 [Samo naštetim:] 20 50 60 10
   comboboxcreate "okno "c1 60 10 200 12
   comboboxcreate "okno "c2 85 49 175 12
   buttoncreate "okno "b1 [Pošlji] 170 73 40 12 [pošlji]
   buttoncreate "okno "b2 [Končaj] 220 73 40 12 [končaj]
   radiobuttonset "r1 "true
   radiobuttonset "r2 "false
end

to pošlji
   make "ukazi comboboxgettext "c1
   ifelse radiobuttonget "r1 [make "komu []] [make "komu comboboxgettext "c2]
   show netconnectsendvalue (list :ime :komu :ukazi)
   comboboxsettext "c1 []
end

to dobil
   make "sporočilo netacceptreceivevalue
   make "pošiljatelj first :sporočilo
   make "naslovniki first bf :sporočilo
   if or emptyp :naslovniki memberp :ime :naslovniki [run last :sporočilo]
   if not equalp :ime :pošiljatelj [show netconnectsendvalue :sporočilo]
end

to končaj
   netconnectoff
   messagebox [Povezava je prekinjena] [Ko bodo tudi vsi drugi uporabniki dobili to sporočilo, pritisni OK.]
   prekliči
end

to prekliči
   netacceptoff
   netshutdown
   windowdelete "okno
end