Added gradient classes

This commit is contained in:
2014-07-26 23:14:39 +02:00
parent 982a4c8e89
commit 5d67016b04
5 changed files with 152 additions and 1 deletions
+82
View File
@@ -0,0 +1,82 @@
/**
* General purpose string utilities
*
* @author Ondřej Hruška (MightyPork)
*/
public class Str {
public static String fromLastDot(String s)
{
return fromLastChar(s, '.');
}
public static String toLastDot(String s)
{
return toLastChar(s, '.');
}
public static String fromLastChar(String s, char c)
{
if (s == null) return null;
return s.substring(s.lastIndexOf(c) + 1, s.length());
}
public static String toLastChar(String s, char c)
{
if (s == null) return null;
if (s.lastIndexOf(c) == -1) return s;
return s.substring(0, s.lastIndexOf(c));
}
/**
* Repeat a string
*
* @param repeated string
* @param count
* @return output
*/
public static String repeat(String repeated, int count)
{
String s = "";
for (int i = 0; i < count; i++)
s += repeated;
return s;
}
public static boolean isValidFilenameChar(char ch)
{
return isValidFilenameString(Character.toString(ch));
}
public static boolean isValidFilenameString(String filename)
{
return filename.matches("[a-zA-Z0-9 +\\-.,_%@#!]+");
}
public static String ellipsisStart(String orig, int length)
{
if (orig.length() > length) {
orig = "\u2026" + orig.substring(length, orig.length());
}
return orig;
}
public static String ellipsisEnd(String orig, int length)
{
if (orig.length() > length) {
orig = orig.substring(0, length - 1) + "\u2026";
}
return orig;
}
}
@@ -11,7 +11,7 @@ import mightypork.utils.interfaces.Enableable;
*
* @author Ondřej Hruška (MightyPork)
*/
public class DelegatingList extends ClientList implements DelegatingClient, Enableable {
public class DelegatingList extends ClientList implements DelegatingClient, Enableable, ToggleableClient {
private boolean enabled = true;
@@ -47,6 +47,13 @@ public class DelegatingList extends ClientList implements DelegatingClient, Enab
}
@Override
public boolean isListening()
{
return isEnabled();
}
@Override
public void setEnabled(boolean yes)
{
+30
View File
@@ -0,0 +1,30 @@
package mightypork.utils.math.color;
/**
* Linear gradient (each corner can have different color)
*
* @author MightyPork
*/
public class Grad {
public final Color leftTop, rightTop, rightBottom, leftBottom;
/**
* Create a gradient
*
* @param leftTop left top color
* @param rightTop right top color
* @param rightBottom right bottom color
* @param leftBottom left bottom color
*/
public Grad(Color leftTop, Color rightTop, Color rightBottom, Color leftBottom) {
this.leftTop = leftTop;
this.rightTop = rightTop;
this.rightBottom = rightBottom;
this.leftBottom = leftBottom;
}
}
@@ -0,0 +1,16 @@
package mightypork.utils.math.color;
/**
* Linear horizontal gradient
*
* @author MightyPork
*/
public class GradH extends Grad {
public GradH(Color left, Color right) {
super(left, right, right, left);
}
}
@@ -0,0 +1,16 @@
package mightypork.utils.math.color;
/**
* Linear vertical gradient
*
* @author MightyPork
*/
public class GradV extends Grad {
public GradV(Color top, Color bottom) {
super(top, top, bottom, bottom);
}
}