summaryrefslogtreecommitdiff
path: root/org.fox.ttrss/src/main/java/com/amulyakhare/textdrawable/util/ColorGenerator.java
diff options
context:
space:
mode:
Diffstat (limited to 'org.fox.ttrss/src/main/java/com/amulyakhare/textdrawable/util/ColorGenerator.java')
-rw-r--r--org.fox.ttrss/src/main/java/com/amulyakhare/textdrawable/util/ColorGenerator.java48
1 files changed, 48 insertions, 0 deletions
diff --git a/org.fox.ttrss/src/main/java/com/amulyakhare/textdrawable/util/ColorGenerator.java b/org.fox.ttrss/src/main/java/com/amulyakhare/textdrawable/util/ColorGenerator.java
new file mode 100644
index 00000000..99e7467f
--- /dev/null
+++ b/org.fox.ttrss/src/main/java/com/amulyakhare/textdrawable/util/ColorGenerator.java
@@ -0,0 +1,48 @@
+package com.amulyakhare.textdrawable.util;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Random;
+
+/**
+ * @author amulya
+ * @datetime 14 Oct 2014, 5:20 PM
+ */
+public class ColorGenerator {
+
+ public static ColorGenerator DEFAULT;
+
+ static {
+ DEFAULT = create(Arrays.asList(
+ 0xfff16364,
+ 0xfff58559,
+ 0xfff9a43e,
+ 0xffe4c62e,
+ 0xff67bf74,
+ 0xff59a2be,
+ 0xff2093cd,
+ 0xffad62a7,
+ 0xff805781
+ ));
+ }
+
+ private final List<Integer> mColors;
+ private final Random mRandom;
+
+ public static ColorGenerator create(List<Integer> colorList) {
+ return new ColorGenerator(colorList);
+ }
+
+ private ColorGenerator(List<Integer> colorList) {
+ mColors = colorList;
+ mRandom = new Random(System.currentTimeMillis());
+ }
+
+ public int getRandomColor() {
+ return mColors.get(mRandom.nextInt(mColors.size()));
+ }
+
+ public int getColor(Object key) {
+ return mColors.get(Math.abs(key.hashCode()) % mColors.size());
+ }
+}