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";
- static final String version = "1.0";
- boolean loaded = false;
-
- public String getAppletInfo() {
- return "Name: ClientSearch Version 1.0\r\nAutor: Gerhard Schild, 1997\r\nFuer: PC-ONLiNE";
- }
-
- private void add(Component var1, GridBagLayout var2, GridBagConstraints var3) {
- ((Container)this).add(var1);
- var2.setConstraints(var1, (GridBagConstraints)var3.clone());
- }
-
- void status(String var1) {
- ((Applet)this).showStatus(var1 + " - ClientSearch Version " + "1.0" + " - die Suchmaschine der PCONLiNE");
- }
-
- void load(boolean var1) {
- String var2 = var1 ? "searchZ.dat" : "searchR.dat";
-
- try {
- URL var3 = new URL(((Applet)this).getDocumentBase(), var2);
- this.status("Lade " + var3.getFile());
- InputStream var4 = var3.openStream();
- if (var1) {
- this.engine.loadZIP(var4);
- } else {
- this.engine.load(var4);
- }
-
- this.loaded = true;
- } catch (Exception var5) {
- System.err.println("Exception: " + ((Throwable)var5).getMessage());
- }
- }
-
- public void run() {
- boolean var1 = true;
-
- try {
- Class.forName("java.util.zip.InflaterInputStream");
- } catch (Exception var2) {
- var1 = false;
- }
-
- this.load(var1);
- if (!this.loaded && var1) {
- this.load(false);
- }
-
- if (this.loaded) {
- this.status("Suchmaschine bereit (" + this.engine.size() + " Einträge)");
- this.field_1.enable();
- } else {
- this.status("Suchdaten konnten nicht geladen werden");
- }
- }
-
- 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;
- }
- }
-
- public boolean keyDown(Event var1, int var2) {
- if (var1.target != this.field_2 || var2 != 13 && var2 != 10) {
- return false;
- } else {
- this.method_0();
- return true;
- }
- }
-
- // $FF: renamed from: go () void
- void method_0() {
- if (this.field_2.getSelectedIndex() >= 0) {
- String var1 = ((Applet)this).getParameter("base");
- if (var1 == null) {
- var1 = "";
- }
-
- String var2 = this.result[this.field_2.getSelectedIndex()].document;
- URL var3 = null;
-
- try {
- var3 = new URL(new URL(var1), var2);
- } catch (Exception var6) {
- }
-
- if (var3 == null) {
- try {
- var3 = new URL(((Applet)this).getDocumentBase(), var1 + var2);
- } catch (Exception var5) {
- }
- }
-
- if (var3 == null) {
- try {
- var3 = new URL(var1 + var2);
- } catch (Exception var4) {
- }
- }
-
- if (var3 == null) {
- this.status("Ungueltige Verzweigung (" + var1 + "," + var2 + ")");
- } else {
- this.status("Verzweige zu " + var3.toString());
- ((Applet)this).getAppletContext().showDocument(var3);
- }
- }
- }
-
- void search() {
- this.status("Suche...");
- this.field_1.disable();
- this.result = this.engine.lookup(this.field_0.getText().toUpperCase());
- this.status("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();
- }
- }
-