package applets; import java.applet.Applet; import java.awt.*; import java.awt.event.*; import java.awt.image.*; import java.io.*; import java.util.Date; import java.net.URL; import shout3d.core.*; import shout3d.*; public class AddRemoveObjectsApplet extends Shout3DApplet{ String sAdd = "Add Objects"; String sRemove = "Remove Objects"; Choice addChoiceButton; CheckboxGroup objectOperations; Checkbox moveObject, removeObject; Choice removeChoiceButton; public void init(){ super.init() ; setLayout(new BorderLayout()); Panel buttonsPanel = new Panel(); objectOperations = new CheckboxGroup(); Label addLabel = new Label(sAdd); addChoiceButton = new Choice(); addChoiceButton.addItem("Small Cube"); addChoiceButton.addItem("Large Cube"); buttonsPanel.setLayout(new GridLayout(10, 1, 10, 10)); buttonsPanel.add(addChoiceButton); buttonsPanel.add(addLabel); buttonsPanel.add(moveObject = new Checkbox("Move", objectOperations, true)); buttonsPanel.add(removeObject = new Checkbox("Remove", objectOperations, false)); add( "East", buttonsPanel); addChoiceButton.addItemListener( new ItemListener() { public void itemStateChanged(ItemEvent e){ addObject(((Choice)e.getSource()).getSelectedIndex()); moveObject.setState(true); ((AddRemoveObjectsPanel)panel).moveObj = 1; } }); moveObject.addItemListener( new ItemListener() { public void itemStateChanged(ItemEvent e){ if (moveObject.getState()){ ((AddRemoveObjectsPanel)panel).moveObj = 1; ((AddRemoveObjectsPanel)panel).addRemove = -1; } }}); removeObject.addItemListener( new ItemListener() { public void itemStateChanged(ItemEvent e){ if (removeObject.getState()){ ((AddRemoveObjectsPanel)panel).moveObj = 0; ((AddRemoveObjectsPanel)panel).addRemove = 1; }} }); } public void initShout3DPanel(){ panel = new AddRemoveObjectsPanel(this); } void addObject(int objNumber){ ((AddRemoveObjectsPanel)panel).addRemove = 0; ((AddRemoveObjectsPanel)panel).objectNumber = objNumber; } }