summaryrefslogtreecommitdiffstats
path: root/src/org/madore/android/unicodeMap/UnicodeListActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/madore/android/unicodeMap/UnicodeListActivity.java')
-rw-r--r--src/org/madore/android/unicodeMap/UnicodeListActivity.java52
1 files changed, 52 insertions, 0 deletions
diff --git a/src/org/madore/android/unicodeMap/UnicodeListActivity.java b/src/org/madore/android/unicodeMap/UnicodeListActivity.java
new file mode 100644
index 0000000..8f962f0
--- /dev/null
+++ b/src/org/madore/android/unicodeMap/UnicodeListActivity.java
@@ -0,0 +1,52 @@
+package org.madore.android.unicodeMap;
+
+import java.util.List;
+import java.util.ArrayList;
+import android.content.Context;
+import android.content.Intent;
+import android.content.res.AssetManager;
+import android.os.Bundle;
+import android.view.View;
+import android.widget.*;
+import android.text.ClipboardManager;
+import android.app.ListActivity;
+
+public final class UnicodeListActivity extends ListActivity {
+
+ public static final String EXTRA_FROM
+ = "org.madore.android.unicodeMap.range.From";
+ public static final String EXTRA_TO
+ = "org.madore.android.unicodeMap.range.To";
+
+ protected UnicodeDatabase db;
+ protected List<UnicodeCharacter> list;
+
+ /** Called when the activity is first created. */
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ this.db = new UnicodeDatabase(getApplicationContext());
+ Intent intent = getIntent();
+ int from = intent.getIntExtra(EXTRA_FROM, 0);
+ int to = intent.getIntExtra(EXTRA_TO, from+128);
+ this.list = new ArrayList<UnicodeCharacter>(db.countRange(from,to));
+ for ( UnicodeCharacter ch : db.getRange(from,to) )
+ list.add(ch);
+ final ClipboardManager cmgr
+ = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
+ setListAdapter(new ArrayAdapter<UnicodeCharacter>(this, R.layout.list_item, list));
+ ListView lv = getListView();
+ lv.setTextFilterEnabled(true);
+ lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
+ public void onItemClick(AdapterView<?> parent, View view,
+ int position, long id) {
+ UnicodeCharacter it = (UnicodeCharacter)parent.getItemAtPosition(position);
+ Toast.makeText(getApplicationContext(), it.getName(),
+ Toast.LENGTH_SHORT).show();
+ cmgr.setText(new String(Character.toChars(it.getCodePoint())));
+ }
+ });
+
+ }
+
+}