Added resultlist
authorviric@mandarina
Sun, 29 Jul 2007 21:03:52 +0200
changeset 19 6320751cad22
parent 18 44aa3764a6c5
child 20 2f815ca5cb8c
Added resultlist
src/jdict/AskWord.java
src/jdict/DictIndex.java
src/jdict/Result.java
src/jdict/ResultList.java
src/jdict/Results.java
src/jdict/Vorto.java
--- a/src/jdict/AskWord.java	Sun Jul 29 20:33:10 2007 +0200
+++ b/src/jdict/AskWord.java	Sun Jul 29 21:03:52 2007 +0200
@@ -95,6 +95,19 @@
 		Main.display.setCurrent(myform);
 	}
 
+    private String transliterate(String from)
+    {
+        String out = from;
+        if (translit.getString(translit.getSelectedIndex())
+                .equals(translit_iksa))
+            out = Replace.IksojAlCxapeloj(from);
+        else if (translit.getString(translit.getSelectedIndex())
+                .equals(translit_rusa))
+            out = Replace.AsciiAlRusa(from);
+
+        return out;
+    }
+
 	public void commandAction(Command c, Displayable d)
 	{
         if (c == cmd_sercxi)
@@ -103,12 +116,7 @@
 
             Vector results;
             String toSearch = word.getString();
-            if (translit.getString(translit.getSelectedIndex())
-                    .equals(translit_iksa))
-                toSearch = Replace.IksojAlCxapeloj(word.getString());
-            else if (translit.getString(translit.getSelectedIndex())
-                    .equals(translit_rusa))
-                toSearch = Replace.AsciiAlRusa(word.getString());
+            toSearch = transliterate(toSearch);
 
             showSearch.setText(toSearch);
             System.out.println("Serĉante: " + toSearch);
@@ -116,7 +124,7 @@
             /* Search the word */
             results = index.BinarySearchDefinition(toSearch);
 
-            Results resultsform = new Results(results, myform);
+            ResultList resultslist = new ResultList(results, vortaro, myform);
         }
         else if (c == cmd_eliri)
         {
@@ -125,12 +133,7 @@
         else if (c == cmd_montri)
         {
             String toSearch = word.getString();
-            if (translit.getString(translit.getSelectedIndex())
-                    .equals(translit_iksa))
-                toSearch = Replace.IksojAlCxapeloj(word.getString());
-            else if (translit.getString(translit.getSelectedIndex())
-                    .equals(translit_rusa))
-                toSearch = Replace.AsciiAlRusa(word.getString());
+            toSearch = transliterate(toSearch);
 
             showSearch.setText(toSearch);
         }
--- a/src/jdict/DictIndex.java	Sun Jul 29 20:33:10 2007 +0200
+++ b/src/jdict/DictIndex.java	Sun Jul 29 21:03:52 2007 +0200
@@ -6,7 +6,6 @@
 public class DictIndex
 {
     BlockFile in;
-    DictDefs defs;
 
     String index_basename;
     String defs_basename;
@@ -17,7 +16,6 @@
     public DictIndex(String dictname)
     {
         index_basename = "/dicts/x-" + dictname + ".index";
-        defs = new DictDefs(dictname);
         in = new BlockFile(index_basename);
         get_top_index();
     }
@@ -284,9 +282,10 @@
                 System.out.println("Definition for " + word + " at " +
                         new Integer(offset).toString() +  " length " +
                         new Integer(length).toString());
-                String definition = defs.getDefinition(offset, length);
+                /*String definition = defs.getDefinition(offset, length);*/
+                Vorto vorto = new Vorto(word, offset, length);
 
-                results.addElement(definition);
+                results.addElement(vorto);
                 break; /* Word found */
             } else
             {
@@ -334,9 +333,11 @@
                 System.out.println("Definition for " + word + " at " +
                         new Integer(offset).toString() +  " length " +
                         new Integer(length).toString());
-                String definition = defs.getDefinition(offset, length);
 
-                results.addElement(definition);
+                /*String definition = defs.getDefinition(offset, length);*/
+                Vorto vorto = new Vorto(word, offset, length);
+
+                results.addElement(vorto);
                 return results;
             } else if (comparision < 0)
             {
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/jdict/Result.java	Sun Jul 29 21:03:52 2007 +0200
@@ -0,0 +1,51 @@
+package jdict;
+
+import javax.microedition.lcdui.*;
+
+public class Result
+	implements CommandListener
+{
+	private Displayable _last;
+	private Form myform;
+	private String _title;
+	private String _text;
+	private Command cmd_malantauxen;
+
+	
+	public Result(String title, String text, Displayable last )
+	{
+        _title = title;
+        _last = last;
+        _text = text;
+		show();
+	}
+
+	public void show()
+	{
+		myform = new Form(_title);
+
+		/* Commands */
+		cmd_malantauxen = new Command(T.t("Malantaŭen"), Command.BACK, 0);
+		myform.addCommand(cmd_malantauxen);
+
+        StringItem item = new StringItem(null, _text);
+        myform.append(item);
+
+        /*
+        StringItem item = new StringItem(T.t("Entute:"),
+                new Integer(myresults.size()).toString());
+        myform.append(item);
+        */
+
+		myform.setCommandListener(this);
+		Main.display.setCurrent(myform);
+	}
+
+	public void commandAction(Command c, Displayable d)
+	{
+        if (c == cmd_malantauxen)
+        {
+            Main.display.setCurrent(_last);
+        }
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/jdict/ResultList.java	Sun Jul 29 21:03:52 2007 +0200
@@ -0,0 +1,62 @@
+package jdict;
+
+import javax.microedition.lcdui.*;
+import java.util.Vector;
+
+public class ResultList
+	implements CommandListener
+{
+	private List mylist;
+	private Command cmd_malantauxen;
+    Vector _list;
+    private Displayable _last;
+    private DictDefs defs;
+
+    public ResultList(Vector list, String vortarnomo, Displayable last)
+    {
+        _list = list;
+        _last = last;
+
+        defs = new DictDefs(vortarnomo);
+        show();
+    }
+
+	public void show()
+	{
+		mylist = new List(T.t("Rezultoj") + ": " +
+                new Integer(_list.size()).toString(), List.IMPLICIT);
+
+		/* Commands */
+		cmd_malantauxen = new Command(T.t("Malantaŭen"), Command.BACK, 0);
+		mylist.addCommand(cmd_malantauxen);
+
+        for(int i = 0; i < _list.size(); ++i)
+        {
+            Vorto v = (Vorto) _list.elementAt(i);
+
+            mylist.append(v.getString(), null);
+        }
+
+        /*
+        StringItem item = new StringItem(T.t("Entute:"),
+                new Integer(myresults.size()).toString());
+        mylist.append(item);
+        */
+
+		mylist.setCommandListener(this);
+		Main.display.setCurrent(mylist);
+	}
+
+	public void commandAction(Command c, Displayable d)
+	{
+        if (c == cmd_malantauxen)
+        {
+            Main.display.setCurrent(_last);
+        } else if (c == List.SELECT_COMMAND)
+        {
+            Vorto v = (Vorto) _list.elementAt(mylist.getSelectedIndex());
+            String def = defs.getDefinition(v.getPos(), v.getLength());
+            Result r = new Result(v.getString(), def, mylist);
+        }
+	}
+}
--- a/src/jdict/Results.java	Sun Jul 29 20:33:10 2007 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-package jdict;
-
-import javax.microedition.lcdui.*;
-import java.util.Vector;
-
-public class Results
-	implements CommandListener
-{
-	private Form last;
-	private Form myform;
-	private Command cmd_malantauxen;
-
-    Vector myresults;
-	
-	public Results(Vector _myresults, Form _last )
-	{
-        myresults = _myresults;
-        last = _last;
-		show();
-	}
-
-	public void show()
-	{
-		myform = new Form(T.t("Rezultoj"));
-
-		/* Commands */
-		cmd_malantauxen = new Command(T.t("Malantaŭen"), Command.BACK, 0);
-		myform.addCommand(cmd_malantauxen);
-
-        for (int i=0; i < myresults.size(); ++i)
-        {
-            StringItem item = new StringItem(T.t("Rezulto:"),
-                    (String) myresults.elementAt(i));
-            myform.append(item);
-        }
-        StringItem item = new StringItem(T.t("Entute:"),
-                new Integer(myresults.size()).toString());
-        myform.append(item);
-
-		myform.setCommandListener(this);
-		Main.display.setCurrent(myform);
-	}
-
-	public void commandAction(Command c, Displayable d)
-	{
-        if (c == cmd_malantauxen)
-        {
-            Main.display.setCurrent(last);
-        }
-	}
-}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/jdict/Vorto.java	Sun Jul 29 21:03:52 2007 +0200
@@ -0,0 +1,31 @@
+package jdict;
+
+
+public class Vorto
+{
+    int _pos;
+    int _length;
+    String _vorto;
+
+    public Vorto(String vorto, int pos, int length)
+    {
+        _pos = pos;
+        _vorto = vorto;
+        _length = length;
+    }
+
+    public int getLength()
+    {
+        return _length;
+    }
+
+    public int getPos()
+    {
+        return _pos;
+    }
+
+    public String getString()
+    {
+        return _vorto;
+    }
+}