home *** CD-ROM | disk | FTP | other *** search
- import java.applet.Applet;
- import java.awt.Button;
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Event;
- import java.awt.GridBagConstraints;
- import java.awt.GridBagLayout;
- import java.awt.Label;
- import java.awt.List;
- import java.awt.TextField;
- import java.io.InputStream;
- import java.net.URL;
-
- public class ClientSearch extends Applet implements Runnable {
- Thread loader;
- SearchEngine engine;
- SearchEngineResult[] result;
- // $FF: renamed from: t1 java.awt.TextField
- TextField field_0;
- // $FF: renamed from: b1 java.awt.Button
- Button field_1;
- // $FF: renamed from: l1 java.awt.List
- List field_2;
- static final String rawfile = "searchR.dat";
- static final String zipfile = "searchZ.dat";
-
- public String getAppletInfo() {
- return "Name: ClientSearch\r\nAutor: Gerhard Schild\r\n(c)PCONLiNE, Vogel Verlag 1997";
- }
-
- private void add(Component var1, GridBagLayout var2, GridBagConstraints var3) {
- ((Container)this).add(var1);
- var2.setConstraints(var1, (GridBagConstraints)var3.clone());
- }
-
- public void run() {
- boolean var1 = true;
-
- try {
- Class.forName("java.util.zip.InflaterInputStream");
- } catch (Exception var12) {
- var1 = false;
- }
-
- String var2 = var1 ? "searchZ.dat" : "searchR.dat";
-
- try {
- URL var5 = new URL(((Applet)this).getDocumentBase(), var2);
- ((Applet)this).showStatus("Lade " + var5.getFile());
- InputStream var6 = var5.openStream();
- if (var1) {
- this.engine.loadZIP(var6);
- } else {
- this.engine.load(var6);
- }
- } catch (Exception var10) {
- System.err.println("Exception: " + ((Throwable)var10).getMessage());
- } finally {
- ((Applet)this).showStatus("Suchmaschine bereit (" + this.engine.size() + " Einträge).");
- }
-
- this.field_1.enable();
- }
-
- Color getColor(String var1) {
- String var2 = ((Applet)this).getParameter(var1);
- return var2 == null ? null : new Color(Integer.valueOf(var2, 16));
- }
-
- public void init() {
- Color var1 = this.getColor("bgcolor");
- Color var2 = this.getColor("fgcolor");
- if (var1 != null) {
- ((Component)this).setBackground(var1);
- }
-
- if (var2 != null) {
- ((Component)this).setForeground(var2);
- }
-
- GridBagConstraints var3 = new GridBagConstraints();
- GridBagLayout var4 = new GridBagLayout();
- ((Container)this).setLayout(var4);
- var3.gridx = -1;
- var3.gridy = 0;
- var3.gridwidth = 1;
- var3.gridheight = 1;
- var3.weightx = (double)0.0F;
- var3.fill = 1;
- this.add(new Label("Suchbegriff:", 0), var4, var3);
- var3.weightx = (double)1.0F;
- this.add(this.field_0 = new TextField(""), var4, var3);
- var3.weightx = (double)0.0F;
- this.add(this.field_1 = new Button("Suchen"), var4, var3);
- var3.gridx = 0;
- var3.gridy = 1;
- var3.gridwidth = 3;
- var3.weighty = (double)1.0F;
- this.add(this.field_2 = new List(), var4, var3);
- this.field_0.requestFocus();
- if (var1 != null) {
- this.field_2.setBackground(var1);
- }
-
- if (var2 != null) {
- this.field_2.setForeground(var2);
- }
-
- this.engine = new SearchEngine();
- this.field_1.disable();
- }
-
- public void start() {
- if (this.loader == null) {
- this.loader = new Thread(this);
- this.loader.start();
- }
-
- }
-
- public boolean action(Event var1, Object var2) {
- if (var1.target == this.field_1) {
- this.search();
- return true;
- } else if (var1.target == this.field_0) {
- if (this.field_1.isEnabled()) {
- this.search();
- }
-
- return true;
- } else if (var1.target == this.field_2) {
- this.method_0();
- return true;
- } else {
- return false;
- }
- }
-
- // $FF: renamed from: go () void
- void method_0() {
- String var1 = ((Applet)this).getParameter("base");
- if (var1 == null) {
- var1 = "";
- }
-
- try {
- URL var2 = new URL(var1 + this.result[this.field_2.getSelectedIndex()].document);
- ((Applet)this).showStatus("Verzweige zu " + var2.toString());
- ((Applet)this).getAppletContext().showDocument(var2);
- } catch (Exception var3) {
- }
- }
-
- void search() {
- ((Applet)this).showStatus("Suche...");
- this.field_1.disable();
- this.result = this.engine.lookup(this.field_0.getText().toUpperCase());
- ((Applet)this).showStatus("Treffer: " + this.result.length);
- this.field_2.clear();
- if (this.result.length > 0) {
- for(int var1 = 0; var1 < this.result.length; ++var1) {
- this.field_2.addItem(this.result[var1].getString());
- }
-
- this.field_2.select(0);
- this.field_2.requestFocus();
- }
-
- this.field_1.enable();
- }
- }
-