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