summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrewMurrell <amurrel@purdue.edu>2014-05-06 22:26:11 -0400
committerAndrewMurrell <amurrel@purdue.edu>2014-05-06 22:26:11 -0400
commita0ac4d4cf9e31bbe019d29ddb6f514a9e3edcc73 (patch)
treeb2cbda2a416c90c8bd93d1fb8cad3fabd3db55ef
parent100d98e3ff6798ce2e2a8f1f97b8b24de1e20168 (diff)
Added MetaCircle handling for key modification, but this needs to be fixed.
BREAKS THINGS.
-rw-r--r--res/values/strings.xml2
-rw-r--r--src/us/minak/IMEView.java22
-rw-r--r--src/us/minak/MetaCircle.java12
-rw-r--r--src/us/minak/MetaExpression.java2
4 files changed, 18 insertions, 20 deletions
diff --git a/res/values/strings.xml b/res/values/strings.xml
index a446fb0..d3352bc 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -38,7 +38,7 @@
<!-- Temporary labels for buttons -->
<string name="button_shift">Shift</string>
- <string name="button_backspace">&x2190;</string>
+ <string name="button_backspace">&#x2190;</string>
<string name="button_space">Space</string>
</resources>
diff --git a/src/us/minak/IMEView.java b/src/us/minak/IMEView.java
index 7cdf4fd..0f40325 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;
@@ -184,20 +182,12 @@ public class IMEView extends RelativeLayout {
* The character to enter
*/
private void enterCharacter(String character) {
- //for each circle in circles check to see if the touch was in the circle and apply the meta-key
- switch (mShiftState) {
- case OFF:
- mOnCharacterEnteredListener.putString(character);
- break;
- case ON:
- mOnCharacterEnteredListener.putString(character.toUpperCase(Locale.ENGLISH));
- shift();
- break;
- case CAPS_LOCK:
- mOnCharacterEnteredListener.putString(character.toUpperCase(Locale.ENGLISH));
- break;
- default:
- throw new IllegalArgumentException();
+ 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
+ ;
+ }
}
}
}
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
}