import java.applet.*; import java.awt.*; public class ColorScribble extends Scribble { // Luetaan väriparametrit ja asetetaan värit. public void init() { super.init(); Color foreground = getColorParameter("foreground"); Color background = getColorParameter("background"); if (foreground != null) this.setForeground(foreground); if (background != null) this.setBackground(background); } // Luetaan haluttu parametri. Tulkitaan parametri RRGGBB-muodossa olevaksi // heksadesimaaliluvuksi ja muunnetaan se väriksi. protected Color getColorParameter(String name) { String value = this.getParameter(name); try { return new Color(Integer.parseInt(value, 16)); } catch (Exception e) { return null; } } // Palautaan About-dialogissa näytettäväksi sopivia tietoja. public String getAppletInfo() { return "ColorScribble v. 0.02. Written by David Flanagan."; } // Palautetaan tietoja appletin tukemista parametreista. Selainohjelmissa // ja applettien katseluohjelmissa saatetaan näyttää nämä tiedot. // Joissakin ympäristöissä käyttäjälle annetaan myös mahdollisuus asettaa // nämä arvot. public String[][] getParameterInfo() { return info; } // Tässä on getParameterInfo()-metodin palauttamat tiedot. Paluuarvo on // taulukko, jonka alkiot ovat merkkijonotaulukoita. Kukin alkio kuvailee // yhtä parametria. Muoto on: parametrin nimi, parametrin tyyppi, parametrin kuvaus private String[][] info = { {"foreground", "hexadecimal color value", "foreground color"}, {"background", "hexadecimal color value", "background color"} }; }