import java.applet.*; import java.awt.*; import java.io.*; import java.net.*; import java.util.*; public class Op2 extends Applet implements Runnable { private String serverName = "193.40.238.40"; private int serverPort=3025; private String ise="0", sk="a"; Socket socket; DataOutputStream outputs; DataInputStream inputs; int maluarv=10, jooksevpilt=0; Image malu[]=new Image[maluarv]; Button save=new Button("Save"), reload=new Button("reload"); Graphics[] malug=new Graphics[maluarv]; Choice pildinr= new Choice(); Panel allnupud=new Panel(), allvasaknupud=new Panel(), allnupudpildid=new Panel(), arhiivinupud=new Panel(); Thread chatConnectionThread; Pa3 tahvel1, tahvel2; Label[] nimi=new Label[5]; Button[] vaade=new Button[5]; boolean uksinda[]=new boolean[5]; Button[] otse=new Button[5]; Panel tekstinupud[]=new Panel[5]; Panel tekstialus[]=new Panel[5]; Ta1[] t=new Ta1[5]; Panel[] isik=new Panel[5]; Tap1 sisse=new Tap1(); TextField tekstipilditekst=new TextField(); Panel nupud=new Panel(); Button maluules=new Button("/\\"); Button malualla=new Button("\\/"); Button tekstipiltules=new Button("/\\"); Button tekstipiltalla=new Button("\\/"); Button saadatekst=new Button("Send text"); Button saadapilt=new Button("Send picture"); Panel saatekast=new Panel(); Panel tekstid=new Panel(), pildid=new Panel(); Nimedialoog1 nd=new Nimedialoog1("Name input", this); public void init() { int i; for(i=0; i<5; i++){ nimi[i]=new Label(" *** "); t[i]=new Ta1(5, 30); isik[i]=new Panel(); isik[i].setLayout(new BorderLayout()); isik[i].add("Center", t[i]); t[i].setEditable(false); t[i].setBackground(new Color(235, 235, 235)); } for(i=1; i<5; i++){ uksinda[i]=false; vaade[i]=new Button("All"); otse[i]=new Button("Send"); tekstinupud[i]=new Panel(); tekstinupud[i].setLayout(new GridLayout(1, 2)); tekstialus[i]=new Panel(); tekstialus[i].setLayout(new BorderLayout()); tekstinupud[i].add(vaade[i]); vaade[i].disable(); tekstinupud[i].add(otse[i]);otse[i].disable(); tekstialus[i].add("Center", nimi[i]); tekstialus[i].add("East", tekstinupud[i]); isik[i].add("South", tekstialus[i]); } isik[0].add("South", nimi[0]); setLayout(new BorderLayout()); tekstid.setLayout(new GridLayout(3, 2)); for(i=1; i<5; i++)tekstid.add(isik[i]); tekstid.add(isik[0]); nupud.setLayout(new GridLayout(1, 2)); nupud.add(saadatekst); nupud.add(saadapilt); saatekast.setLayout(new BorderLayout()); saatekast.add("Center", sisse); saatekast.add("South", nupud); tekstid.add(saatekast); add("Center", tekstid); pildid.add(tahvel2=new Pa3(this)); tahvel1=new Pa3(this); pildid.setLayout(new GridLayout(1, 2)); pildid.add(tahvel1); allvasaknupud.setLayout(new GridLayout(1, 5)); allvasaknupud.add(malualla); allvasaknupud.add(maluules); allvasaknupud.add(pildinr); allvasaknupud.add(tekstipiltalla); allvasaknupud.add(tekstipiltules); allnupud.setLayout(new GridLayout(1, 2)); arhiivinupud.setLayout(new GridLayout(1, 3)); arhiivinupud.add(tekstipilditekst); arhiivinupud.add(save); arhiivinupud.add(reload); allnupud.add(allvasaknupud); allnupud.add(arhiivinupud); allnupudpildid.setLayout(new BorderLayout()); allnupudpildid.add("Center", pildid); allnupudpildid.add("South", allnupud); add("South", allnupudpildid); tahvel1.butt.setLabel("<"); tahvel2.butt.setLabel(">"); for(i=0; i0)vaade[nr].setLabel("All"); if(nr>0)vaade[nr].disable(); otse[nr].disable(); } if(message.charAt(3)=='n'){ int nr=Integer.valueOf(message.substring(1,2)).intValue(); System.out.println("number "+nr); if(nr>0)vaade[nr].enable(); if(nr>0)otse[nr].enable(); nimi[nr].setText(message.substring(4)); } } if((message.charAt(0)=='t')&(message.length()>4)){ message=message+"\n"; t[Integer.valueOf(message.substring(1, 2)).intValue()].juurde(message.substring(4)); t[0].korras(); } try{ if(message.charAt(0)=='p'){tahvel1.a.stringipilt(message.substring(4));} } catch(Exception e){} if(message.charAt(0)=='a'){ if(message.startsWith("as0p"))lisa_malupilt(message.substring(4)); if(message.startsWith("au0p"))jooksevpilt=0; } } } } catch (Exception e) { t[1].appendText("CONNECTION ERROR :"+"\n"); t[1].appendText(e.getMessage()+"\n"); } } void write( String mess ) { try { outputs.writeBytes(mess+"\n"); outputs.flush (); } catch (Exception e) { t[1].appendText("OUTPUT ERROR :"+"\n"); t[1].appendText(e.getMessage()+"\n"); } } public void salvestapildid(){ write("a0up"); for(int i=0; i