Académique Documents
Professionnel Documents
Culture Documents
import java.awt.*;
import java.util.*;
import java.net.*;
import java.io.*;
import java.applet.Applet;
int imageWidth = 0;
int imageHeight = 0;
int displayWidth = 0;
int displayHeight = 0;
int numComponents = 0;
String[] compValues; //parameter values
String dataTokValue; //temporary data token
StringTokenizer[] compTokValues; //tokenized parameter values
StringTokenizer compDataTokValues; //tokenized image data and drawing
rules
String compType; //temporary token variable
//row 1
c.gridwidth = 1; //spacer
c.gridheight = 1;
makelabel("", gridbag, c);
defaultState = params.nextToken();
c.gridwidth = 2; //description
c.gridheight = 1;
makelabel(params.nextToken(), gridbag, c);
//row 2
c.gridwidth = 1;
c.gridheight = 1;
makelabel(" "+lhsLabel, gridbag, c);
c.gridwidth = 2;
c.fill = GridBagConstraints.HORIZONTAL;
c.gridheight = 1;
c.gridwidth = GridBagConstraints.REMAINDER;
c.gridheight = 1;
makelabel(" "+rhsLabel, gridbag, c);
}
c.gridwidth = 2; //description
c.gridheight = 1;
makelabel(params.nextToken(), gridbag, c);
c.gridwidth = 1; //spacer
c.gridheight = 1;
makelabel("", gridbag, c);
c.gridwidth = 1; //spacer
c.gridheight = 1;
makelabel("", gridbag, c);
}
demoLocation.openConnection().getInputStream());
//ignore all lines that begin with '#'
do dataLine = demoParams.readLine();
while (dataLine.charAt(0) == '#');
}
//catch all expections that might be thrown as a result
catch(Exception e){
//do nothing test
}
demoLocation.openConnection().getInputStream());
}
//catch all expections that might be thrown as a result
catch(Exception e){
//do nothing test
}
catch(Exception e){
//do nothing test
}
catch(Exception e){
//do nothing test
}
System.out.println(imageWidth); //test
System.out.println(imageHeight); //test
System.out.println(numRows); //test
resize(displayWidth, displayHeight);
}
((Scrollbar)CompNamePool.component("DynComp"+i)).disable();
else((Scrollbar)CompNamePool.component("DynComp"+i)).enable();
}
}
if(((Checkbox)CompNamePool.component("DynComp"+dataValue+"_checkbox")).getStat
e()){
//get component's current
value
compValue =
((Scrollbar)CompNamePool.component("DynComp"+dataValue)).getValue();
//get threshold
dataTokValue =
compDataTokValues.nextToken();
dataValue =
Integer.parseInt(dataTokValue);
//compare component value to
threshold
if(compValue < dataValue){
//get color (String)
dataTokValue =
compDataTokValues.nextToken();
compColor =
Integer.parseInt(dataTokValue);
//get drawing
instruction
dataTokValue =
compDataTokValues.nextToken();
dataValue =
Integer.parseInt(dataTokValue);
System.out.println("dataValue" + dataValue);
//create a rectangle
drawing
if(dataValue == 0){
//get drawing
coordinites
dataTokValue =
compDataTokValues.nextToken();
//re-
instantiate compDataTokValues to seperate commas
compDataTokValues =
new StringTokenizer(dataTokValue,",",false);
//define
coordinites
xVal =
Integer.parseInt(compDataTokValues.nextToken());
yVal =
Integer.parseInt(compDataTokValues.nextToken());
wVal =
Integer.parseInt(compDataTokValues.nextToken());
hVal =
Integer.parseInt(compDataTokValues.nextToken());
//instantiate
DrawRect object
DrawRect rectangle =
new DrawRect(xVal,yVal,wVal,hVal,colors[compColor]);
//add the
drawable object to the drawables vector
drawables.addElement(rectangle);
}
//create a point
drawing
else if(dataValue == 1){
//get drawing
coordinites
dataTokValue =
compDataTokValues.nextToken();
//re-
instantiate compDataTokValues to seperate commas
compDataTokValues =
new StringTokenizer(dataTokValue,",",false);
//define
coordinites
xVal =
Integer.parseInt(compDataTokValues.nextToken());
yVal =
Integer.parseInt(compDataTokValues.nextToken());
sizeVal =
Integer.parseInt(compDataTokValues.nextToken());
//instantiate
DrawPoint object
DrawPoint point = new
DrawPoint(xVal,yVal,sizeVal,colors[compColor]);
//add the
drawable object to the drawables vector
drawables.addElement(point);
}
//create a string
drawing
else if(dataValue == 2){
//get drawing
coordinites
dataTokValue =
compDataTokValues.nextToken();
//re-
instantiate compDataTokValues to seperate commas
compDataTokValues =
new StringTokenizer(dataTokValue,",",false);
//define
coordinites
xVal =
Integer.parseInt(compDataTokValues.nextToken());
yVal =
Integer.parseInt(compDataTokValues.nextToken());
sizeVal =
Integer.parseInt(compDataTokValues.nextToken());
stringVal =
compDataTokValues.nextToken();
//instantiate
DrawString object
DrawString string =
new DrawString(stringVal,xVal,yVal,sizeVal,colors[compColor]);
//add the
drawable object to the drawables vector
drawables.addElement(string);
}
else
System.out.println("Error: Unable to parse demodata");
}
}
}
imgcanvas.repaint();
}
return true;
}
}
class CompNamePool{
static final Hashtable hash = new Hashtable ();
static final void baptize(Object o,String name) {hash.put (name,o);}
static final Object component(String name) {return hash.get (name);}
static final boolean includes(String name) {return hash.containsKey
(name);}
}
class ImageCanvas extends Canvas{
Container parentContainer;
public Image canvasImage;
public Image renderImage;
public Graphics renderImageGraphics;
MediaTracker tracker;
Vector drawVect;
int imageWidth = -1;
int imageHeight = -1;
canvasImage = cImage;
drawVect = dVect;
parentContainer = container;
if (tracker.checkAll(true)) {
if (tracker.isErrorAny()) {
System.err.println("Error loading this canvasImage: "
+ canvasImage);
}
}
//Component-initiated resizing
resize(imageWidth, imageHeight);
parentContainer.validate();
renderImageGraphics.setColor(Color.black);
//draw border around image
renderImageGraphics.drawRect(0, 0, imageWidth - 1, imageHeight
- 1);
//draw buffered image
g.drawImage(renderImage, 0, 0, this);
}
}