aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/org/connectbot/util
diff options
context:
space:
mode:
authorKenny Root <kenny@the-b.org>2015-03-27 11:52:01 +0000
committerKenny Root <kenny@the-b.org>2015-03-27 11:52:01 +0000
commit48e9c2f37ca757c3dfbd882417670ed67192725f (patch)
tree7e4f348052736b5132609fe26376d1922c22fa1b /app/src/main/java/org/connectbot/util
parent8c2e8642127e0c6068a17e9ed82a46668cbd11c4 (diff)
parentada9571134b5d061206c4b7fa7d76a770ec9d419 (diff)
downloadconnectbot-48e9c2f37ca757c3dfbd882417670ed67192725f.tar.gz
connectbot-48e9c2f37ca757c3dfbd882417670ed67192725f.tar.bz2
connectbot-48e9c2f37ca757c3dfbd882417670ed67192725f.zip
Merge branch 'master' into gradle-conversion
Conflicts: app/src/main/java/org/connectbot/util/UberColorPickerDialog.java
Diffstat (limited to 'app/src/main/java/org/connectbot/util')
-rw-r--r--app/src/main/java/org/connectbot/util/UberColorPickerDialog.java218
1 files changed, 121 insertions, 97 deletions
diff --git a/app/src/main/java/org/connectbot/util/UberColorPickerDialog.java b/app/src/main/java/org/connectbot/util/UberColorPickerDialog.java
index c19d959..dc46525 100644
--- a/app/src/main/java/org/connectbot/util/UberColorPickerDialog.java
+++ b/app/src/main/java/org/connectbot/util/UberColorPickerDialog.java
@@ -33,6 +33,8 @@
package org.connectbot.util;
+import org.connectbot.R;
+
import android.app.Dialog;
import android.content.Context;
import android.graphics.Bitmap;
@@ -81,7 +83,6 @@ public class UberColorPickerDialog extends Dialog {
* @param context
* @param listener
* @param initialColor
- * @param showTitle If true, a title is shown across the top of the dialog. If false a toast is shown instead.
*/
public UberColorPickerDialog(Context context,
OnColorChangedListener listener,
@@ -110,7 +111,7 @@ public class UberColorPickerDialog extends Dialog {
int screenWidth = dm.widthPixels;
int screenHeight = dm.heightPixels;
- setTitle("Pick a color (try the trackball)");
+ setTitle(getContext().getResources().getString(R.string.title_color_picker));
try {
setContentView(new ColorPickerView(getContext(), l, screenWidth, screenHeight, mInitialColor));
@@ -132,20 +133,13 @@ public class UberColorPickerDialog extends Dialog {
* I highly recommend adding new methods to the end of the list. If you want to try to reorder the list, you're on your own.
*/
private static class ColorPickerView extends View {
- private static int SWATCH_WIDTH = 95;
- private static final int SWATCH_HEIGHT = 60;
-
- private static int PALETTE_POS_X = 0;
- private static int PALETTE_POS_Y = SWATCH_HEIGHT;
- private static final int PALETTE_DIM = SWATCH_WIDTH * 2;
- private static final int PALETTE_RADIUS = PALETTE_DIM / 2;
- private static final int PALETTE_CENTER_X = PALETTE_RADIUS;
- private static final int PALETTE_CENTER_Y = PALETTE_RADIUS;
+ private static int SWATCH_WIDTH_PORTRAIT_DP = 95;
+ private static int SWATCH_WIDTH_LANDSCAPE_DP = 110;
+ private static final int SWATCH_HEIGHT_DP = 60;
- private static final int SLIDER_THICKNESS = 40;
+ private static final int PALETTE_DIM_DP = SWATCH_WIDTH_PORTRAIT_DP * 2;
- private static int VIEW_DIM_X = PALETTE_DIM;
- private static int VIEW_DIM_Y = SWATCH_HEIGHT;
+ private static final int SLIDER_THICKNESS_DP = 40;
//NEW_METHOD_WORK_NEEDED_HERE
private static final int METHOD_HS_V_PALETTE = 0;
@@ -158,7 +152,11 @@ public class UberColorPickerDialog extends Dialog {
private static final int TRACK_HS_PALETTE = 30;
private static final int TRACK_VER_VALUE_SLIDER = 31;
- private static final int TEXT_SIZE = 12;
+ private static final int TEXT_SIZE_DP = 12;
+ private static final int TEXT_SIZE_LABEL_DP = 12;
+
+ private static final int BUTTON_TEXT_MARGIN_DP = 16;
+
private static int[] TEXT_HSV_POS = new int[2];
private static int[] TEXT_RGB_POS = new int[2];
private static int[] TEXT_YUV_POS = new int[2];
@@ -166,6 +164,19 @@ public class UberColorPickerDialog extends Dialog {
private static final float PI = 3.141592653589793f;
+ private final int mSwatchWidthPx;
+ private final int mTextSizePx;
+ private final int mTextSizeLabelPx;
+ private final int mPalettePosX;
+ private final int mPalettePosY;
+ private final int mPaletteDimPx;
+ private final int mPaletteRadiusPx;
+ private final int mSliderThicknessPx;
+ private final int mViewDimXPx;
+ private final int mViewDimYPx;
+ private final int mPaletteCenterPx;
+ private final int mButtonTextMarginPx;
+
private int mMethod = METHOD_HS_V_PALETTE;
private int mTracking = TRACKED_NONE; //What object on screen is currently being tracked for movement
@@ -225,6 +236,10 @@ public class UberColorPickerDialog extends Dialog {
throws Exception {
super(c);
+ DisplayMetrics metrics = c.getResources().getDisplayMetrics();
+ mTextSizePx = (int) (TEXT_SIZE_DP * metrics.density + 0.5f);
+ mTextSizeLabelPx = (int) (TEXT_SIZE_LABEL_DP * metrics.density + 0.5f);
+
//We need to make the dialog focusable to retrieve trackball events.
setFocusable(true);
@@ -236,55 +251,64 @@ public class UberColorPickerDialog extends Dialog {
updateAllFromHSV();
+ mPaletteDimPx = (int) (PALETTE_DIM_DP * metrics.density + 0.5f);
+ mSliderThicknessPx = (int) (SLIDER_THICKNESS_DP * metrics.density + 0.5f);
+ mButtonTextMarginPx = (int) (BUTTON_TEXT_MARGIN_DP * metrics.density + 0.5f);
+
//Setup the layout based on whether this is a portrait or landscape orientation.
if (width <= height) { //Portrait layout
- SWATCH_WIDTH = (PALETTE_DIM + SLIDER_THICKNESS) / 2;
+ mSwatchWidthPx = (int) (((PALETTE_DIM_DP + SLIDER_THICKNESS_DP) / 2) * metrics.density + 0.5f);
+ final int swatchHeightPx = (int) (SWATCH_HEIGHT_DP * metrics.density + 0.5f);
- PALETTE_POS_X = 0;
- PALETTE_POS_Y = TEXT_SIZE * 4 + SWATCH_HEIGHT;
+ mPalettePosX = 0;
+ mPalettePosY = mTextSizePx * 4 + swatchHeightPx;
//Set more rects, lots of rects
- mOldSwatchRect.set(0, TEXT_SIZE * 4, SWATCH_WIDTH, TEXT_SIZE * 4 + SWATCH_HEIGHT);
- mNewSwatchRect.set(SWATCH_WIDTH, TEXT_SIZE * 4, SWATCH_WIDTH * 2, TEXT_SIZE * 4 + SWATCH_HEIGHT);
- mPaletteRect.set(0, PALETTE_POS_Y, PALETTE_DIM, PALETTE_POS_Y + PALETTE_DIM);
- mVerSliderRect.set(PALETTE_DIM, PALETTE_POS_Y, PALETTE_DIM + SLIDER_THICKNESS, PALETTE_POS_Y + PALETTE_DIM);
+ mOldSwatchRect.set(0, mTextSizePx * 4, mSwatchWidthPx, mTextSizePx * 4 + swatchHeightPx);
+ mNewSwatchRect.set(mSwatchWidthPx, mTextSizePx * 4, mSwatchWidthPx * 2, mTextSizePx * 4 + swatchHeightPx);
+ mPaletteRect.set(0, mPalettePosY, mPaletteDimPx, mPalettePosY + mPaletteDimPx);
+ mVerSliderRect.set(mPaletteDimPx, mPalettePosY, mPaletteDimPx + mSliderThicknessPx, mPalettePosY + mPaletteDimPx);
- TEXT_HSV_POS[0] = 3;
+ TEXT_HSV_POS[0] = (int) (3 * metrics.density + 0.5f);
TEXT_HSV_POS[1] = 0;
- TEXT_RGB_POS[0] = TEXT_HSV_POS[0] + 50;
+ TEXT_RGB_POS[0] = TEXT_HSV_POS[0] + (int) (50 * metrics.density + 0.5f);
TEXT_RGB_POS[1] = TEXT_HSV_POS[1];
- TEXT_YUV_POS[0] = TEXT_HSV_POS[0] + 100;
+ TEXT_YUV_POS[0] = TEXT_HSV_POS[0] + (int) (100 * metrics.density + 0.5f);
TEXT_YUV_POS[1] = TEXT_HSV_POS[1];
- TEXT_HEX_POS[0] = TEXT_HSV_POS[0] + 150;
+ TEXT_HEX_POS[0] = TEXT_HSV_POS[0] + (int) (150 * metrics.density + 0.5f);
TEXT_HEX_POS[1] = TEXT_HSV_POS[1];
- VIEW_DIM_X = PALETTE_DIM + SLIDER_THICKNESS;
- VIEW_DIM_Y = SWATCH_HEIGHT + PALETTE_DIM + TEXT_SIZE * 4;
+ mViewDimXPx = mPaletteDimPx + mSliderThicknessPx;
+ mViewDimYPx = swatchHeightPx + mPaletteDimPx + mTextSizePx * 4;
} else { //Landscape layout
- SWATCH_WIDTH = 110;
+ mSwatchWidthPx = (int) (SWATCH_WIDTH_LANDSCAPE_DP * metrics.density + 0.5f);
+ final int swatchHeightPx = (int) (SWATCH_HEIGHT_DP * metrics.density + 0.5f);
- PALETTE_POS_X = SWATCH_WIDTH;
- PALETTE_POS_Y = 0;
+ mPalettePosX = mSwatchWidthPx;
+ mPalettePosY = 0;
//Set more rects, lots of rects
- mOldSwatchRect.set(0, TEXT_SIZE * 7, SWATCH_WIDTH, TEXT_SIZE * 7 + SWATCH_HEIGHT);
- mNewSwatchRect.set(0, TEXT_SIZE * 7 + SWATCH_HEIGHT, SWATCH_WIDTH, TEXT_SIZE * 7 + SWATCH_HEIGHT * 2);
- mPaletteRect.set(SWATCH_WIDTH, PALETTE_POS_Y, SWATCH_WIDTH + PALETTE_DIM, PALETTE_POS_Y + PALETTE_DIM);
- mVerSliderRect.set(SWATCH_WIDTH + PALETTE_DIM, PALETTE_POS_Y, SWATCH_WIDTH + PALETTE_DIM + SLIDER_THICKNESS, PALETTE_POS_Y + PALETTE_DIM);
+ mOldSwatchRect.set(0, mTextSizePx * 7, mSwatchWidthPx, mTextSizePx * 7 + swatchHeightPx);
+ mNewSwatchRect.set(0, mTextSizePx * 7 + mSliderThicknessPx, mSwatchWidthPx, mTextSizePx * 7 + swatchHeightPx * 2);
+ mPaletteRect.set(mSwatchWidthPx, mPalettePosY, mSwatchWidthPx + mPaletteDimPx, mPalettePosY + mPaletteDimPx);
+ mVerSliderRect.set(mSwatchWidthPx + mPaletteDimPx, mPalettePosY, mSwatchWidthPx + mPaletteDimPx + mSliderThicknessPx, mPalettePosY + mPaletteDimPx);
- TEXT_HSV_POS[0] = 3;
+ TEXT_HSV_POS[0] = (int) (3 * metrics.density + 0.5f);
TEXT_HSV_POS[1] = 0;
TEXT_RGB_POS[0] = TEXT_HSV_POS[0];
- TEXT_RGB_POS[1] = (int) (TEXT_HSV_POS[1] + TEXT_SIZE * 3.5);
- TEXT_YUV_POS[0] = TEXT_HSV_POS[0] + 50;
- TEXT_YUV_POS[1] = (int) (TEXT_HSV_POS[1] + TEXT_SIZE * 3.5);
- TEXT_HEX_POS[0] = TEXT_HSV_POS[0] + 50;
+ TEXT_RGB_POS[1] = (int) (TEXT_HSV_POS[1] + mTextSizePx * 3.5);
+ TEXT_YUV_POS[0] = TEXT_HSV_POS[0] + (int) (50 * metrics.density + 0.5f);
+ TEXT_YUV_POS[1] = (int) (TEXT_HSV_POS[1] + mTextSizePx * 3.5);
+ TEXT_HEX_POS[0] = TEXT_HSV_POS[0] + (int) (50 * metrics.density + 0.5f);
TEXT_HEX_POS[1] = TEXT_HSV_POS[1];
- VIEW_DIM_X = PALETTE_POS_X + PALETTE_DIM + SLIDER_THICKNESS;
- VIEW_DIM_Y = Math.max(mNewSwatchRect.bottom, PALETTE_DIM);
+ mViewDimXPx = mPalettePosX + mPaletteDimPx + mSliderThicknessPx;
+ mViewDimYPx = Math.max(mNewSwatchRect.bottom, mPaletteDimPx);
}
+ mPaletteCenterPx = mPaletteDimPx / 2;
+ mPaletteRadiusPx = mPaletteDimPx / 2;
+
//Rainbows make everybody happy!
mSpectrumColorsRev = new int[]{
0xFFFF0000, 0xFFFF00FF, 0xFF0000FF, 0xFF00FFFF,
@@ -305,18 +329,18 @@ public class UberColorPickerDialog extends Dialog {
mSwatchNew.setColor(Color.HSVToColor(mHSV));
Shader shaderA = new SweepGradient(0, 0, mSpectrumColorsRev, null);
- Shader shaderB = new RadialGradient(0, 0, PALETTE_CENTER_X, 0xFFFFFFFF, 0xFF000000, Shader.TileMode.CLAMP);
+ Shader shaderB = new RadialGradient(0, 0, mPaletteCenterPx, 0xFFFFFFFF, 0xFF000000, Shader.TileMode.CLAMP);
Shader shader = new ComposeShader(shaderA, shaderB, PorterDuff.Mode.SCREEN);
mOvalHueSat = new Paint(Paint.ANTI_ALIAS_FLAG);
mOvalHueSat.setShader(shader);
mOvalHueSat.setStyle(Paint.Style.FILL);
mOvalHueSat.setDither(true);
- mVerSliderBM = Bitmap.createBitmap(SLIDER_THICKNESS, PALETTE_DIM, Bitmap.Config.RGB_565);
+ mVerSliderBM = Bitmap.createBitmap(mSliderThicknessPx, mPaletteDimPx, Bitmap.Config.RGB_565);
mVerSliderCv = new Canvas(mVerSliderBM);
for (int i = 0; i < 3; i++) {
- mHorSlidersBM[i] = Bitmap.createBitmap(PALETTE_DIM, SLIDER_THICKNESS, Bitmap.Config.RGB_565);
+ mHorSlidersBM[i] = Bitmap.createBitmap(mPaletteDimPx, mSliderThicknessPx, Bitmap.Config.RGB_565);
mHorSlidersCv[i] = new Canvas(mHorSlidersBM[i]);
}
@@ -332,7 +356,7 @@ public class UberColorPickerDialog extends Dialog {
//Add Paints to represent the icon for the new method
shaderA = new SweepGradient(0, 0, mSpectrumColorsRev, null);
- shaderB = new RadialGradient(0, 0, PALETTE_DIM / 2, 0xFFFFFFFF, 0xFF000000, Shader.TileMode.CLAMP);
+ shaderB = new RadialGradient(0, 0, mPaletteDimPx / 2, 0xFFFFFFFF, 0xFF000000, Shader.TileMode.CLAMP);
shader = new ComposeShader(shaderA, shaderB, PorterDuff.Mode.SCREEN);
mOvalHueSatSmall = new Paint(Paint.ANTI_ALIAS_FLAG);
mOvalHueSatSmall.setShader(shader);
@@ -345,7 +369,7 @@ public class UberColorPickerDialog extends Dialog {
//Make a basic text Paint.
mText = new Paint(Paint.ANTI_ALIAS_FLAG);
- mText.setTextSize(TEXT_SIZE);
+ mText.setTextSize(mTextSizePx);
mText.setColor(Color.WHITE);
//Kickstart
@@ -376,7 +400,7 @@ public class UberColorPickerDialog extends Dialog {
private void drawSwatches(Canvas canvas) {
float[] hsv = new float[3];
- mText.setTextSize(16);
+ mText.setTextSize(mTextSizePx);
//Draw the original swatch
canvas.drawRect(mOldSwatchRect, mSwatchOld);
@@ -385,17 +409,17 @@ public class UberColorPickerDialog extends Dialog {
// hsv[1] = 0;
if (hsv[2] > .5)
mText.setColor(Color.BLACK);
- canvas.drawText("Revert", mOldSwatchRect.left + SWATCH_WIDTH / 2 - mText.measureText("Revert") / 2, mOldSwatchRect.top + 16, mText);
+ canvas.drawText("Revert", mOldSwatchRect.left + mSwatchWidthPx / 2 - mText.measureText("Revert") / 2, mOldSwatchRect.top + mButtonTextMarginPx, mText);
mText.setColor(Color.WHITE);
//Draw the new swatch
canvas.drawRect(mNewSwatchRect, mSwatchNew);
if (mHSV[2] > .5)
mText.setColor(Color.BLACK);
- canvas.drawText("Accept", mNewSwatchRect.left + SWATCH_WIDTH / 2 - mText.measureText("Accept") / 2, mNewSwatchRect.top + 16, mText);
+ canvas.drawText("Accept", mNewSwatchRect.left + mSwatchWidthPx / 2 - mText.measureText("Accept") / 2, mNewSwatchRect.top + mButtonTextMarginPx, mText);
mText.setColor(Color.WHITE);
- mText.setTextSize(TEXT_SIZE);
+ mText.setTextSize(mTextSizePx);
}
/**
@@ -405,25 +429,25 @@ public class UberColorPickerDialog extends Dialog {
*/
private void writeColorParams(Canvas canvas) {
if (mHSVenabled) {
- canvas.drawText("H: " + Integer.toString((int) (mHSV[0] / 360.0f * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + TEXT_SIZE, mText);
- canvas.drawText("S: " + Integer.toString((int) (mHSV[1] * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + TEXT_SIZE * 2, mText);
- canvas.drawText("V: " + Integer.toString((int) (mHSV[2] * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + TEXT_SIZE * 3, mText);
+ canvas.drawText("H: " + Integer.toString((int) (mHSV[0] / 360.0f * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + mTextSizePx, mText);
+ canvas.drawText("S: " + Integer.toString((int) (mHSV[1] * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + mTextSizePx * 2, mText);
+ canvas.drawText("V: " + Integer.toString((int) (mHSV[2] * 255)), TEXT_HSV_POS[0], TEXT_HSV_POS[1] + mTextSizePx * 3, mText);
}
if (mRGBenabled) {
- canvas.drawText("R: " + mRGB[0], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + TEXT_SIZE, mText);
- canvas.drawText("G: " + mRGB[1], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + TEXT_SIZE * 2, mText);
- canvas.drawText("B: " + mRGB[2], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + TEXT_SIZE * 3, mText);
+ canvas.drawText("R: " + mRGB[0], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + mTextSizePx, mText);
+ canvas.drawText("G: " + mRGB[1], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + mTextSizePx * 2, mText);
+ canvas.drawText("B: " + mRGB[2], TEXT_RGB_POS[0], TEXT_RGB_POS[1] + mTextSizePx * 3, mText);
}
if (mYUVenabled) {
- canvas.drawText("Y: " + Integer.toString((int) (mYUV[0] * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + TEXT_SIZE, mText);
- canvas.drawText("U: " + Integer.toString((int) ((mYUV[1] + .5f) * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + TEXT_SIZE * 2, mText);
- canvas.drawText("V: " + Integer.toString((int) ((mYUV[2] + .5f) * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + TEXT_SIZE * 3, mText);
+ canvas.drawText("Y: " + Integer.toString((int) (mYUV[0] * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + mTextSizePx, mText);
+ canvas.drawText("U: " + Integer.toString((int) ((mYUV[1] + .5f) * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + mTextSizePx * 2, mText);
+ canvas.drawText("V: " + Integer.toString((int) ((mYUV[2] + .5f) * 255)), TEXT_YUV_POS[0], TEXT_YUV_POS[1] + mTextSizePx * 3, mText);
}
if (mHexenabled)
- canvas.drawText("#" + mHexStr, TEXT_HEX_POS[0], TEXT_HEX_POS[1] + TEXT_SIZE, mText);
+ canvas.drawText("#" + mHexStr, TEXT_HEX_POS[0], TEXT_HEX_POS[1] + mTextSizePx, mText);
}
/**
@@ -448,9 +472,9 @@ public class UberColorPickerDialog extends Dialog {
*/
private void markVerSlider(Canvas canvas, int markerPos) {
mPosMarker.setColor(Color.BLACK);
- canvas.drawRect(new Rect(0, markerPos - 2, SLIDER_THICKNESS, markerPos + 3), mPosMarker);
+ canvas.drawRect(new Rect(0, markerPos - 2, mSliderThicknessPx, markerPos + 3), mPosMarker);
mPosMarker.setColor(Color.WHITE);
- canvas.drawRect(new Rect(0, markerPos, SLIDER_THICKNESS, markerPos + 1), mPosMarker);
+ canvas.drawRect(new Rect(0, markerPos, mSliderThicknessPx, markerPos + 1), mPosMarker);
}
/**
@@ -460,9 +484,9 @@ public class UberColorPickerDialog extends Dialog {
*/
private void hilightFocusedVerSlider(Canvas canvas) {
mPosMarker.setColor(Color.WHITE);
- canvas.drawRect(new Rect(0, 0, SLIDER_THICKNESS, PALETTE_DIM), mPosMarker);
+ canvas.drawRect(new Rect(0, 0, mSliderThicknessPx, mPaletteDimPx), mPosMarker);
mPosMarker.setColor(Color.BLACK);
- canvas.drawRect(new Rect(2, 2, SLIDER_THICKNESS - 2, PALETTE_DIM - 2), mPosMarker);
+ canvas.drawRect(new Rect(2, 2, mSliderThicknessPx - 2, mPaletteDimPx - 2), mPosMarker);
}
/**
@@ -472,9 +496,9 @@ public class UberColorPickerDialog extends Dialog {
*/
private void hilightFocusedOvalPalette(Canvas canvas) {
mPosMarker.setColor(Color.WHITE);
- canvas.drawOval(new RectF(-PALETTE_RADIUS, -PALETTE_RADIUS, PALETTE_RADIUS, PALETTE_RADIUS), mPosMarker);
+ canvas.drawOval(new RectF(-mPaletteRadiusPx, -mPaletteRadiusPx, mPaletteRadiusPx, mPaletteRadiusPx), mPosMarker);
mPosMarker.setColor(Color.BLACK);
- canvas.drawOval(new RectF(-PALETTE_RADIUS + 2, -PALETTE_RADIUS + 2, PALETTE_RADIUS - 2, PALETTE_RADIUS - 2), mPosMarker);
+ canvas.drawOval(new RectF(-mPaletteRadiusPx + 2, -mPaletteRadiusPx + 2, mPaletteRadiusPx - 2, mPaletteRadiusPx - 2), mPosMarker);
}
//NEW_METHOD_WORK_NEEDED_HERE
@@ -488,19 +512,19 @@ public class UberColorPickerDialog extends Dialog {
private void drawHSV1Palette(Canvas canvas) {
canvas.save();
- canvas.translate(PALETTE_POS_X, PALETTE_POS_Y);
+ canvas.translate(mPalettePosX, mPalettePosY);
//Draw the 2D palette
- canvas.translate(PALETTE_CENTER_X, PALETTE_CENTER_Y);
- canvas.drawOval(new RectF(-PALETTE_RADIUS, -PALETTE_RADIUS, PALETTE_RADIUS, PALETTE_RADIUS), mOvalHueSat);
- canvas.drawOval(new RectF(-PALETTE_RADIUS, -PALETTE_RADIUS, PALETTE_RADIUS, PALETTE_RADIUS), mValDimmer);
+ canvas.translate(mPaletteCenterPx, mPaletteCenterPx);
+ canvas.drawOval(new RectF(-mPaletteRadiusPx, -mPaletteRadiusPx, mPaletteRadiusPx, mPaletteRadiusPx), mOvalHueSat);
+ canvas.drawOval(new RectF(-mPaletteRadiusPx, -mPaletteRadiusPx, mPaletteRadiusPx, mPaletteRadiusPx), mValDimmer);
if (mFocusedControl == 0)
hilightFocusedOvalPalette(canvas);
mark2DPalette(canvas, mCoord[0], mCoord[1]);
- canvas.translate(-PALETTE_CENTER_X, -PALETTE_CENTER_Y);
+ canvas.translate(-mPaletteCenterPx, -mPaletteCenterPx);
//Draw the 1D slider
- canvas.translate(PALETTE_DIM, 0);
+ canvas.translate(mPaletteDimPx, 0);
canvas.drawBitmap(mVerSliderBM, 0, 0, null);
if (mFocusedControl == 1)
hilightFocusedVerSlider(canvas);
@@ -530,11 +554,11 @@ public class UberColorPickerDialog extends Dialog {
setVerValSlider();
float angle = 2 * PI - mHSV[0] / (180 / 3.1415927f);
- float radius = mHSV[1] * PALETTE_RADIUS;
+ float radius = mHSV[1] * mPaletteRadiusPx;
mCoord[0] = (int) (Math.cos(angle) * radius);
mCoord[1] = (int) (Math.sin(angle) * radius);
- mCoord[2] = PALETTE_DIM - (int) (mHSV[2] * PALETTE_DIM);
+ mCoord[2] = mPaletteDimPx - (int) (mHSV[2] * mPaletteDimPx);
}
//NEW_METHOD_WORK_NEEDED_HERE
@@ -568,7 +592,7 @@ public class UberColorPickerDialog extends Dialog {
GradientDrawable gradDraw = new GradientDrawable(Orientation.TOP_BOTTOM, colors);
gradDraw.setDither(true);
gradDraw.setLevel(10000);
- gradDraw.setBounds(0, 0, SLIDER_THICKNESS, PALETTE_DIM);
+ gradDraw.setBounds(0, 0, mSliderThicknessPx, mPaletteDimPx);
gradDraw.draw(mVerSliderCv);
}
@@ -577,7 +601,7 @@ public class UberColorPickerDialog extends Dialog {
*/
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
- setMeasuredDimension(VIEW_DIM_X, VIEW_DIM_Y);
+ setMeasuredDimension(mViewDimXPx, mViewDimYPx);
}
/**
@@ -761,18 +785,18 @@ public class UberColorPickerDialog extends Dialog {
mCoord[0] += x2;
mCoord[1] += y2;
- if (mCoord[0] < -PALETTE_RADIUS)
- mCoord[0] = -PALETTE_RADIUS;
- else if (mCoord[0] > PALETTE_RADIUS)
- mCoord[0] = PALETTE_RADIUS;
- if (mCoord[1] < -PALETTE_RADIUS)
- mCoord[1] = -PALETTE_RADIUS;
- else if (mCoord[1] > PALETTE_RADIUS)
- mCoord[1] = PALETTE_RADIUS;
+ if (mCoord[0] < -mPaletteRadiusPx)
+ mCoord[0] = -mPaletteRadiusPx;
+ else if (mCoord[0] > mPaletteRadiusPx)
+ mCoord[0] = mPaletteRadiusPx;
+ if (mCoord[1] < -mPaletteRadiusPx)
+ mCoord[1] = -mPaletteRadiusPx;
+ else if (mCoord[1] > mPaletteRadiusPx)
+ mCoord[1] = mPaletteRadiusPx;
float radius = (float) java.lang.Math.sqrt(mCoord[0] * mCoord[0] + mCoord[1] * mCoord[1]);
- if (radius > PALETTE_RADIUS)
- radius = PALETTE_RADIUS;
+ if (radius > mPaletteRadiusPx)
+ radius = mPaletteRadiusPx;
float angle = (float) java.lang.Math.atan2(mCoord[1], mCoord[0]);
// need to turn angle [-PI ... PI] into unit [0....1]
@@ -788,7 +812,7 @@ public class UberColorPickerDialog extends Dialog {
float[] hsv = new float[3];
Color.colorToHSV(c, hsv);
mHSV[0] = hsv[0];
- mHSV[1] = radius / PALETTE_RADIUS;
+ mHSV[1] = radius / mPaletteRadiusPx;
updateAllFromHSV();
mSwatchNew.setColor(Color.HSVToColor(mHSV));
@@ -814,7 +838,7 @@ public class UberColorPickerDialog extends Dialog {
mHSV[2] += (increase ? jump : -jump) / 256.0f;
mHSV[2] = pinToUnit(mHSV[2]);
updateAllFromHSV();
- mCoord[2] = PALETTE_DIM - (int) (mHSV[2] * PALETTE_DIM);
+ mCoord[2] = mPaletteDimPx - (int) (mHSV[2] * mPaletteDimPx);
mSwatchNew.setColor(Color.HSVToColor(mHSV));
@@ -889,11 +913,11 @@ public class UberColorPickerDialog extends Dialog {
float y = event.getY();
//Generate coordinates which are palette=local with the origin at the upper left of the main 2D palette
- int y2 = (int) (pin(round(y - PALETTE_POS_Y), PALETTE_DIM));
+ int y2 = (int) (pin(round(y - mPalettePosY), mPaletteDimPx));
//Generate coordinates which are palette-local with the origin at the center of the main 2D palette
- float circlePinnedX = x - PALETTE_POS_X - PALETTE_CENTER_X;
- float circlePinnedY = y - PALETTE_POS_Y - PALETTE_CENTER_Y;
+ float circlePinnedX = x - mPalettePosX - mPaletteCenterPx;
+ float circlePinnedY = y - mPalettePosY - mPaletteCenterPx;
//Is the event in a swatch?
boolean inSwatchOld = ptInRect(round(x), round(y), mOldSwatchRect);
@@ -903,11 +927,11 @@ public class UberColorPickerDialog extends Dialog {
float radius = (float) java.lang.Math.sqrt(circlePinnedX * circlePinnedX + circlePinnedY * circlePinnedY);
//Is the event in a circle-pinned 2D palette?
- boolean inOvalPalette = radius <= PALETTE_RADIUS;
+ boolean inOvalPalette = radius <= mPaletteRadiusPx;
//Pin the radius
- if (radius > PALETTE_RADIUS)
- radius = PALETTE_RADIUS;
+ if (radius > mPaletteRadiusPx)
+ radius = mPaletteRadiusPx;
//Is the event in a vertical slider to the right of the main 2D palette
boolean inVerSlider = ptInRect(round(x), round(y), mVerSliderRect);
@@ -951,7 +975,7 @@ public class UberColorPickerDialog extends Dialog {
float[] hsv = new float[3];
Color.colorToHSV(c, hsv);
mHSV[0] = hsv[0];
- mHSV[1] = radius / PALETTE_RADIUS;
+ mHSV[1] = radius / mPaletteRadiusPx;
updateAllFromHSV();
mSwatchNew.setColor(Color.HSVToColor(mHSV));
@@ -961,7 +985,7 @@ public class UberColorPickerDialog extends Dialog {
} else if (mTracking == TRACK_VER_VALUE_SLIDER) {
if (mCoord[2] != y2) {
mCoord[2] = y2;
- float value = 1.0f - (float) y2 / (float) PALETTE_DIM;
+ float value = 1.0f - (float) y2 / (float) mPaletteDimPx;
mHSV[2] = value;
updateAllFromHSV();