summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/us/minak/IMEView.java10
-rw-r--r--src/us/minak/MetaCircle.java12
-rw-r--r--src/us/minak/MetaExpression.java2
3 files changed, 19 insertions, 5 deletions
diff --git a/src/us/minak/IMEView.java b/src/us/minak/IMEView.java
index 2cf7921..1b09af9 100644
--- a/src/us/minak/IMEView.java
+++ b/src/us/minak/IMEView.java
@@ -13,8 +13,6 @@
package us.minak;
import java.util.LinkedList;
-import java.util.List;
-import java.util.Locale;
import java.util.Queue;
import android.content.Context;
@@ -95,6 +93,14 @@ public class IMEView extends RelativeLayout {
* The character to enter
*/
private void enterCharacter(String character) {
+ for (MetaCircle circle : ((IMEGestureOverlayView) findViewById(R.id.drawing_space)).circles) {
+ //go through circles and check if they are applicable
+ if (circle.containsPoint(this.x, this.y) && circle.getMetaExpression().state != MetaExpression.State.ON) {
+ //TODO: apply the Meta-key here
+ ;
+ }
+ }
+
mOnCharacterEnteredListener.putString(character);
}
}
diff --git a/src/us/minak/MetaCircle.java b/src/us/minak/MetaCircle.java
index 908842a..9139dc9 100644
--- a/src/us/minak/MetaCircle.java
+++ b/src/us/minak/MetaCircle.java
@@ -5,7 +5,7 @@ package us.minak;
*
*/
public class MetaCircle {
- public MetaExpression metaExpr;
+ private MetaExpression metaExpression;
public float x;
public float y;
public float radius;
@@ -14,7 +14,7 @@ public class MetaCircle {
public int expansion; //the level of expansion (if multiple circles are expanded, this decides precidence)
MetaCircle(float x, float y, float radius, int color, MetaExpression metaExpr) {
- this.metaExpr = metaExpr;
+ this.setMetaExpression(metaExpr);
this.x = x;
this.y = y;
this.radius = radius;
@@ -26,4 +26,12 @@ public class MetaCircle {
public boolean containsPoint(float x, float y) {
return Math.pow(x - this.x, 2) + Math.pow(y - this.y, 2) < Math.pow(this.radius, 2) ? true : false;
}
+
+ public MetaExpression getMetaExpression() {
+ return metaExpression;
+ }
+
+ public void setMetaExpression(MetaExpression metaExpr) {
+ this.metaExpression = metaExpr;
+ }
}
diff --git a/src/us/minak/MetaExpression.java b/src/us/minak/MetaExpression.java
index 4398c42..f9c6cbe 100644
--- a/src/us/minak/MetaExpression.java
+++ b/src/us/minak/MetaExpression.java
@@ -1,7 +1,7 @@
package us.minak;
public class MetaExpression {
- public enum State {
+ public static enum State {
ON, OFF, LOCK
}