parent
982a4c8e89
commit
5d67016b04
@ -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; |
||||
} |
||||
} |
@ -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); |
||||
} |
||||
} |
Loading…
Reference in new issue