/*
*   The Search applet to search the web for information
*   Title   : Search Engine
*   Version : 1.0
*   Author  : Jayesh R Prajapati
*   Copyright: 1998
*/

package AppSearch;

import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import java.net.*;
import java.util.*;
import borland.jbcl.layout.*;
import borland.jbcl.control.*;

public class SearchApp extends Applet {
  XYLayout xYLayout1 = new XYLayout();
  boolean isStandalone = false;
  TextField txtSearchField = new TextField();  //txtSearchField
  Button butSearch = new Button();             //butSearch
  Choice chEngine = new Choice();              //chEngine
  URL SearchEngineUrl = null;
  Label lblTitle = new Label();
  BevelPanel bevelPanel1 = new BevelPanel();                  //SearchEngineUrl

  //Construct the applet:
  public SearchApp() {
  }//SearchApp

  //Initialize the applet:
  public void init() {
    try { jbInit(); } catch (Exception e) { e.printStackTrace(); }
  }//init()

  //Component initialization:
  public void jbInit() throws Exception{

    this.setBackground(Color.black);
    xYLayout1.setWidth(399);
    xYLayout1.setHeight(125);
    txtSearchField.setBackground(new Color(77, 255, 255));
    butSearch.setFont(new Font("TimesRoman", 0, 14));
    butSearch.setLabel("Search..");
    butSearch.addActionListener(new SearchApp_butSearch_actionAdapter(this));
    chEngine.setBackground(new Color(77, 255, 255));
    lblTitle.setForeground(Color.red);
    lblTitle.setFont(new Font("TimesRoman", 1, 14));
    lblTitle.setText("Welcome to Jayesh\'s Search:");
    bevelPanel1.setBackground(new Color(163, 255, 162));

    this.setLayout(xYLayout1);
    this.add(txtSearchField, new XYConstraints(155, 38, 160, -1));
    this.add(butSearch, new XYConstraints(317, 37, 61, 25));
    this.add(chEngine, new XYConstraints(17, 40, 129, 32));
    this.add(lblTitle, new XYConstraints(3, 11, 392, 21));
    this.add(bevelPanel1, new XYConstraints(4, 5, 391, 116));

    chEngine.addItem("Yahoo");
    chEngine.addItem("AltaVista");
    chEngine.addItem("Lycos");
    chEngine.addItem("WebCrawler");
    chEngine.addItem("InfoSeek");
    chEngine.addItem("HotBot");

 }//jbinit()

 //Start the applet
  public void start() {
  }

 //Stop the applet
  public void stop() {
  }

 //Destroy the applet
  public void destroy() {
  }

 //Get Applet information
  public String getAppletInfo() {
    return "Applet Information";
  }

 //Get parameter info:
  public String[][] getParameterInfo() {
    return null;
  }//meet

 //Main method
  static public void main(String[] args) {
    SearchApp applet = new SearchApp();
    applet.isStandalone = true;
    DecoratedFrame frame = new DecoratedFrame();
    frame.setTitle("Applet Frame");
    frame.add(applet, BorderLayout.CENTER);
    applet.init();
    applet.start();
    frame.pack();
    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
    frame.setLocation((d.width - frame.getSize().width) / 2, (d.height - frame.getSize().height) / 2);
    frame.setVisible(true);
  }//main()

  void butSearch_actionPerformed(ActionEvent e) {
   String StrUrl = getStringQuery();
   System.out.println("Context" + getAppletContext());
   System.out.println("URL IS :" + StrUrl);
   try {
     SearchEngineUrl = new URL( StrUrl );
      }catch ( MalformedURLException ee ) {
   System.out.println("Cannot Connect to URL" + ee.getMessage()); }
   getAppletContext().showDocument( SearchEngineUrl, "_blank" );
  }//burSearch..

/**
-------------------------------------------------------------
        INPUT : void
        OUTPUT: String which is parsed
   DESCRIPTION: It takes the query fromm txtSearchField and
       inserts the '+' between keywords.
-------------------------------------------------------------
*/
   String getStringQuery(){
   String StrResolved = "";
   StringTokenizer strtk = new StringTokenizer(txtSearchField.getText());
   while(strtk.hasMoreTokens()){
       if( StrResolved.equals("")){
       StrResolved = strtk.nextToken() ;
       }//if
       else{
       StrResolved = StrResolved + "+" + strtk.nextToken() ;
       }//else
   }//while()

   //This is a typing practise so go ahead with it till something
   // if you want to talk talk on top of your voice.
   //If i keep on typing like this than there
 

   if(((String)chEngine.getSelectedItem()).equalsIgnoreCase("yahoo"))
   {
     StrResolved =  "http://av.yahoo.com/bin/query?" + "p=" + StrResolved;
   }//yahoo
   else if(((String)chEngine.getSelectedItem()).equalsIgnoreCase("AltaVista"))
   {
    StrResolved = "http://www.altavista.digital.com/cgi-bin/query?" + "q=" + StrResolved;
   }//altavista
   else if(((String)chEngine.getSelectedItem()).equalsIgnoreCase("Lycos"))
   {
    StrResolved = "http://www.lycos.com/cgi-bin/pursuit?" + "query=" + StrResolved;
    System.out.println("Strresolved: " +StrResolved );
   }//lycos
   else if(((String)chEngine.getSelectedItem()).equalsIgnoreCase("WebCrawler"))
   {
    StrResolved =  "http://www.webcrawler.com/cgi-bin/WebQuery?" + "searchText=" + StrResolved;
   }//webcrawler
   else if(((String)chEngine.getSelectedItem()).equalsIgnoreCase("InfoSeek"))
    {
     StrResolved =  "http://www.infoseek.com/Titles?" + "qt=" + StrResolved;
    }//Infoseek
   else if(((String)chEngine.getSelectedItem()).equalsIgnoreCase("HotBot"))
    {
     StrResolved =  "http://www.search.hotbot.com/hResult.html?" + "MT=" + StrResolved;
    }//HotBot
    return StrResolved;
  }//getStringQuery()
}//applet

//---------------------------------------------
// Event Classes:
//---------------------------------------------
class SearchApp_butSearch_actionAdapter implements java.awt.event.ActionListener {
  SearchApp adaptee;

  SearchApp_butSearch_actionAdapter(SearchApp adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.butSearch_actionPerformed(e);
  }
}
   back 

For the list of Free applets go to HOME page.