home *** CD-ROM | disk | FTP | other *** search
- package webeq3.app;
-
- import java.awt.Choice;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Event;
- import java.awt.FlowLayout;
- import java.awt.Font;
- import java.awt.Frame;
- import java.awt.Label;
- import java.awt.Panel;
- import java.util.Enumeration;
- import java.util.Hashtable;
-
- public class Controls extends Frame {
- static Controls controls;
- Hashtable equations = new Hashtable();
- Panel sizes = new Panel();
- Label copyright = new Label("WebEQ -- Copyright (c) 1998");
- Label copyright2 = new Label("Geometry Technologies, Inc. ");
- Label point_size_label = new Label(" Point sizes: ");
- Choice pointsize = new Choice();
- int current_size = 0;
- int[] realsizes = new int[11];
- int numfonts = 0;
-
- public Controls() {
- int[] var1 = new int[]{72, 48, 36, 30, 24, 18, 16, 14, 12, 10, 8};
-
- for(int var4 = 0; var4 < 11; ++var4) {
- Font var2 = new Font("TimesRoman", 0, var1[var4]);
- Font var3 = new Font("TimesRoman", 2, var1[var4]);
- if (var2 != null && var3 != null) {
- this.pointsize.addItem(String.valueOf(var1[var4]));
- this.realsizes[this.numfonts] = var1[var4];
- ++this.numfonts;
- }
- }
-
- try {
- this.pointsize.select(0);
- } catch (Exception var6) {
- }
-
- ((Container)this).setLayout(new FlowLayout(0, 5, 5));
- ((Container)this).add("copyright;side=nw", this.copyright);
- ((Container)this).add("copyright;side=nw", this.copyright2);
- ((Container)this).add("pointsizelabel;side=s", this.point_size_label);
- ((Container)this).add("pointsize;side=s", this.pointsize);
- ((Frame)this).setTitle("WebEQ Controls");
- ((Component)this).resize(300, 180);
- ((Component)this).repaint();
- }
-
- public static synchronized Controls getControls() {
- if (controls == null) {
- controls = new Controls();
- }
-
- return controls;
- }
-
- public boolean handleEvent(Event var1) {
- if (controls == null) {
- return false;
- } else if (var1.target == this.pointsize && var1.id == 1001) {
- this.current_size = Integer.valueOf(this.pointsize.getSelectedItem());
- Enumeration var2 = this.equations.elements();
-
- while(var2.hasMoreElements()) {
- PEquation var3 = (PEquation)var2.nextElement();
- ((Equation)var3).setPointSize(this.current_size);
- ((Equation)var3).redraw();
- ((Equation)var3).getHandler().repaint();
- }
-
- return true;
- } else if (var1.id == 201) {
- controls.hide();
- return true;
- } else {
- return false;
- }
- }
-
- public synchronized void registerEquation(PEquation var1, int var2) {
- if (this.current_size == 0) {
- this.reset(var2);
- }
-
- this.equations.put(var1, var1);
- if (var2 != this.current_size) {
- ((Equation)var1).setPointSize(this.current_size);
- ((Equation)var1).redraw();
- ((Equation)var1).getHandler().repaint();
- }
-
- }
-
- public void reset(int var1) {
- if (this.current_size != var1) {
- for(int var2 = 0; var2 < this.numfonts; ++var2) {
- if (var1 >= this.realsizes[var2]) {
- this.current_size = this.realsizes[var2];
-
- try {
- this.pointsize.select(var2);
- } catch (Exception var4) {
- }
- break;
- }
- }
- }
-
- }
-
- public synchronized void setAllSizes(int var1) {
- Enumeration var2 = this.equations.elements();
-
- while(var2.hasMoreElements()) {
- PEquation var3 = (PEquation)var2.nextElement();
- ((Equation)var3).setPointSize(var1);
- ((Equation)var3).redraw();
- ((Equation)var3).getHandler().repaint();
- }
-
- }
-
- public synchronized void unregisterEquation(PEquation var1) {
- this.equations.remove(var1);
- }
- }
-