diff --git a/src/ui/android/res/drawable-hdpi/open_arrow.png b/src/ui/android/res/drawable-hdpi/open_arrow.png
new file mode 100644
index 000000000..ec7453797
Binary files /dev/null and b/src/ui/android/res/drawable-hdpi/open_arrow.png differ
diff --git a/src/ui/android/res/layout/activity_lexical_entry.xml b/src/ui/android/res/layout/activity_lexical_entry.xml
index 75be89885..55bf51059 100644
--- a/src/ui/android/res/layout/activity_lexical_entry.xml
+++ b/src/ui/android/res/layout/activity_lexical_entry.xml
@@ -5,20 +5,44 @@
android:layout_width="match_parent"
>
-
+ android:layout_alignParentRight="true"
+ android:padding="8dp"
+ android:background="#C0C0C0"
+ >
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/ui/android/res/layout/lexical_item.xml b/src/ui/android/res/layout/lexical_item.xml
new file mode 100644
index 000000000..0c56b6730
--- /dev/null
+++ b/src/ui/android/res/layout/lexical_item.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/ui/android/res/values/strings.xml b/src/ui/android/res/values/strings.xml
index ca5ea7317..2720ed10c 100644
--- a/src/ui/android/res/values/strings.xml
+++ b/src/ui/android/res/values/strings.xml
@@ -1,9 +1,9 @@
- GF4Translator
+ GF Translator
Microphone
Switch languages
-
+ Opening
diff --git a/src/ui/android/src/org/grammaticalframework/ui/android/ConversationView.java b/src/ui/android/src/org/grammaticalframework/ui/android/ConversationView.java
index 75d34f886..f138da336 100644
--- a/src/ui/android/src/org/grammaticalframework/ui/android/ConversationView.java
+++ b/src/ui/android/src/org/grammaticalframework/ui/android/ConversationView.java
@@ -76,7 +76,10 @@ public class ConversationView extends ScrollView {
showWordButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
- mListener.onWordSelected(lexicon2);
+ TextView textview = (TextView)
+ ((View) v.getParent()).findViewById(R.id.text);
+ CharSequence text = textview.getText();
+ mListener.onWordSelected(text, lexicon2);
}
});
}
@@ -88,6 +91,6 @@ public class ConversationView extends ScrollView {
}
public interface OnWordSelectedListener {
- public void onWordSelected(Object lexicon);
+ public void onWordSelected(CharSequence word, Object lexicon);
}
}
diff --git a/src/ui/android/src/org/grammaticalframework/ui/android/LexicalEntryActivity.java b/src/ui/android/src/org/grammaticalframework/ui/android/LexicalEntryActivity.java
index b50cbd0bd..a8717c1aa 100644
--- a/src/ui/android/src/org/grammaticalframework/ui/android/LexicalEntryActivity.java
+++ b/src/ui/android/src/org/grammaticalframework/ui/android/LexicalEntryActivity.java
@@ -3,9 +3,14 @@ package org.grammaticalframework.ui.android;
import java.util.ArrayList;
import java.util.List;
+import android.app.Activity;
import android.app.ListActivity;
import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
import android.widget.ArrayAdapter;
+import android.widget.TextView;
import org.grammaticalframework.pgf.*;
import org.grammaticalframework.ui.android.LanguageSelector.OnLanguageSelectedListener;
@@ -25,7 +30,6 @@ public class LexicalEntryActivity extends ListActivity {
mShowLanguageView = (LanguageSelector) findViewById(R.id.show_language);
mShowLanguageView.setLanguages(mTranslator.getAvailableSourceLanguages());
- mShowLanguageView.setSelectedLanguage(mTranslator.getTargetLanguage());
mShowLanguageView.setOnLanguageSelectedListener(new OnLanguageSelectedListener() {
@Override
public void onLanguageSelected(Language language) {
@@ -33,6 +37,9 @@ public class LexicalEntryActivity extends ListActivity {
updateTranslations();
}
});
+
+ TextView descrView = (TextView) findViewById(R.id.lexical_desc);
+ descrView.setText(getIntent().getExtras().getString("source"));
updateTranslations();
}
@@ -44,17 +51,34 @@ public class LexicalEntryActivity extends ListActivity {
List data = new ArrayList();
for (MorphoAnalysis a : list) {
- // Expr e = Expr.readExpr(a.getLemma());
- String phrase = "FOO" ; //mTranslator.linearize(e);
+ Expr e = Expr.readExpr(a.getLemma());
+ String phrase = mTranslator.linearize(e);
if (!data.contains(phrase)) {
data.add(phrase);
}
}
- ArrayAdapter adapter = new ArrayAdapter(this,
+ ArrayAdapter adapter = new ArrayAdapter(this,
android.R.layout.simple_list_item_1,
- data);
+ data) {
+ public View getView(int position, View convertView, ViewGroup parent) {
+ String item = getItem(position);
+
+ LayoutInflater inflater = (LayoutInflater) getContext()
+ .getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
+ if (convertView == null) {
+ convertView = inflater.inflate(R.layout.lexical_item, null);
+ }
+
+ TextView descView =
+ (TextView) convertView.findViewById(R.id.lexical_desc);
+ descView.setText(item);
+
+ return convertView;
+ }
+ };
+
setListAdapter(adapter);
}
}
diff --git a/src/ui/android/src/org/grammaticalframework/ui/android/MainActivity.java b/src/ui/android/src/org/grammaticalframework/ui/android/MainActivity.java
index 91823946b..c312d7aad 100644
--- a/src/ui/android/src/org/grammaticalframework/ui/android/MainActivity.java
+++ b/src/ui/android/src/org/grammaticalframework/ui/android/MainActivity.java
@@ -68,8 +68,9 @@ public class MainActivity extends Activity {
mConversationView.setOnWordSelectedListener(new OnWordSelectedListener() {
@Override
- public void onWordSelected(Object lexicon) {
+ public void onWordSelected(CharSequence word, Object lexicon) {
Intent myIntent = new Intent(MainActivity.this, LexicalEntryActivity.class);
+ myIntent.putExtra("source", word);
myIntent.putExtra("analyses", (Serializable) lexicon);
MainActivity.this.startActivity(myIntent);
}
@@ -83,7 +84,6 @@ public class MainActivity extends Activity {
mTranslator = ((GFTranslator) getApplicationContext()).getTranslator();
mSourceLanguageView.setLanguages(mTranslator.getAvailableSourceLanguages());
- mSourceLanguageView.setSelectedLanguage(mTranslator.getSourceLanguage());
mSourceLanguageView.setOnLanguageSelectedListener(new OnLanguageSelectedListener() {
@Override
public void onLanguageSelected(Language language) {
@@ -91,7 +91,6 @@ public class MainActivity extends Activity {
}
});
mTargetLanguageView.setLanguages(mTranslator.getAvailableTargetLanguages());
- mTargetLanguageView.setSelectedLanguage(mTranslator.getTargetLanguage());
mTargetLanguageView.setOnLanguageSelectedListener(new OnLanguageSelectedListener() {
@Override
public void onLanguageSelected(Language language) {
diff --git a/src/ui/android/src/org/grammaticalframework/ui/android/Translator.java b/src/ui/android/src/org/grammaticalframework/ui/android/Translator.java
index 797428a36..9f50ebc18 100644
--- a/src/ui/android/src/org/grammaticalframework/ui/android/Translator.java
+++ b/src/ui/android/src/org/grammaticalframework/ui/android/Translator.java
@@ -20,7 +20,7 @@ public class Translator {
private static final String TAG = "Translator";
// TODO: allow changing
- private String mGrammar = "ParseEngChi.pgf";
+ private String mGrammar = "ParseEngAbs.pgf";
// TODO: build dynamically?
private Language[] mLanguages = {