From 6e93a3db56d6add29b43077718a4cad9ccfc047f Mon Sep 17 00:00:00 2001 From: Joe Onorato Date: Fri, 17 Apr 2009 14:18:46 -0700 Subject: [PATCH] Add sketch gesture demo application. Initial checkin, there's no Android.mk yet. --- tests/sketch/AndroidManifest.xml | 30 ++ tests/sketch/res/drawable/icon.png | Bin 0 -> 3180 bytes tests/sketch/res/layout/demo.xml | 33 ++ tests/sketch/res/layout/gestureviewer.xml | 58 +++ tests/sketch/res/layout/newgesture_dialog.xml | 34 ++ tests/sketch/res/values/strings.xml | 28 ++ .../src/com/android/gesture/Gesture.java | 361 +++++++++++++++++ .../src/com/android/gesture/GestureLib.java | 280 +++++++++++++ .../com/android/gesture/GestureListener.java | 25 ++ .../src/com/android/gesture/GesturePad.java | 371 ++++++++++++++++++ .../gesture/example/GestureEntryDemo.java | 225 +++++++++++ .../gesture/example/GestureLibViewer.java | 262 +++++++++++++ .../gesture/recognizer/Classifier.java | 42 ++ .../android/gesture/recognizer/Instance.java | 78 ++++ .../gesture/recognizer/NearestNeighbor.java | 91 +++++ .../gesture/recognizer/Prediction.java | 36 ++ .../gesture/recognizer/RecognitionUtil.java | 190 +++++++++ 17 files changed, 2144 insertions(+) create mode 100755 tests/sketch/AndroidManifest.xml create mode 100755 tests/sketch/res/drawable/icon.png create mode 100755 tests/sketch/res/layout/demo.xml create mode 100755 tests/sketch/res/layout/gestureviewer.xml create mode 100755 tests/sketch/res/layout/newgesture_dialog.xml create mode 100755 tests/sketch/res/values/strings.xml create mode 100755 tests/sketch/src/com/android/gesture/Gesture.java create mode 100755 tests/sketch/src/com/android/gesture/GestureLib.java create mode 100755 tests/sketch/src/com/android/gesture/GestureListener.java create mode 100755 tests/sketch/src/com/android/gesture/GesturePad.java create mode 100755 tests/sketch/src/com/android/gesture/example/GestureEntryDemo.java create mode 100755 tests/sketch/src/com/android/gesture/example/GestureLibViewer.java create mode 100755 tests/sketch/src/com/android/gesture/recognizer/Classifier.java create mode 100755 tests/sketch/src/com/android/gesture/recognizer/Instance.java create mode 100755 tests/sketch/src/com/android/gesture/recognizer/NearestNeighbor.java create mode 100755 tests/sketch/src/com/android/gesture/recognizer/Prediction.java create mode 100755 tests/sketch/src/com/android/gesture/recognizer/RecognitionUtil.java diff --git a/tests/sketch/AndroidManifest.xml b/tests/sketch/AndroidManifest.xml new file mode 100755 index 0000000000000..c44b54e5e201f --- /dev/null +++ b/tests/sketch/AndroidManifest.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + diff --git a/tests/sketch/res/drawable/icon.png b/tests/sketch/res/drawable/icon.png new file mode 100755 index 0000000000000000000000000000000000000000..75024841d327c4fbaefef7c8e9c8d0e892895f93 GIT binary patch literal 3180 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 S`hb-H0000 + + + + + + + diff --git a/tests/sketch/res/layout/gestureviewer.xml b/tests/sketch/res/layout/gestureviewer.xml new file mode 100755 index 0000000000000..5302d34cd253a --- /dev/null +++ b/tests/sketch/res/layout/gestureviewer.xml @@ -0,0 +1,58 @@ + + + + + + + + + +