dirk_krause.tools
Class DkTool

java.lang.Object
  extended by dirk_krause.tools.DkTool

public class DkTool
extends java.lang.Object


Field Summary
protected static int first_no_boolean
          Index of first "no" entry in theBooleanStrings.
protected static char[] hexCharacters
          Hexadecimal characters, used by encodeToHtml.
protected static java.lang.String psAllowedCharacters
          Allowed character set in PS files.
static int RUN_TYPE_APPLET
          Run-type: Applet.
static int RUN_TYPE_APPLICATION
          Run-type: Application.
static int RUN_TYPE_WEBSTART
          Run-type: Web-start application.
static java.lang.String[] stt
          Static texts used by this class.
protected static java.lang.String[] theBooleanStrings
          Strings which can be converted into boolean values.
 
Constructor Summary
DkTool(java.lang.String a, java.lang.String g)
          Constructor.
DkTool(java.lang.String a, java.lang.String g, int r)
          Constructor.
DkTool(java.lang.String a, java.lang.String g, java.lang.String u)
          Constructor.
DkTool(java.lang.String a, java.lang.String g, java.lang.String u, int r)
          Constructor.
 
Method Summary
 void addResourceBase(java.lang.String s)
          Add a directory (file name or URL) to the list of resource bases.
 java.lang.String backslashesToSlashes(java.lang.String s)
          Convert all backslashes to slashes in a string.
static void chooseModalPosition(int w, int h, java.awt.Component p, java.awt.Component c)
          Choose modal position for component c relative to parent component p.
static void chooseNonModalPosition(int w, int h, java.awt.Component p, java.awt.Component c)
          Choose normal (non-modal) position for component c relative to parent component p.
static void choosePosition(int w, int h, java.awt.Component p, java.awt.Component c, boolean mod)
          Choose position for component c relative to parent component p.
 void cleanup()
          Destructor.
static java.awt.Color convertColor(java.lang.String s)
          Convert a string into a color.
static java.awt.Color convertColor(java.lang.String s, int dr, int dg, int db)
          Convert a string into a color.
static java.lang.String encodeForPostscript(java.lang.String s)
          Convert a text string to PS encoding, so we can insert it into a PS file.
 java.lang.String encodeToHtml(java.lang.String s)
          Create HTML representation of a string.
 java.awt.image.BufferedImage findBufferedImage(java.lang.Object o, java.lang.String fn)
          Get buffered image.
 java.awt.Font findFont(java.lang.Object o, java.lang.String[] ffn, java.lang.String[] fn, java.lang.String fb, int fe, double fs)
          Fint font.
 java.awt.Font findFont(java.lang.Object o, java.lang.String[] ffn, java.lang.String[] fn, java.lang.String fb, int fe, float fs)
          Fint font.
 javax.swing.ImageIcon findImageIcon(java.lang.Object o, java.lang.String fn)
          Create image icon.
 void flushPreferences()
          Flush preferences to permanent storage.
static boolean getBoolean(java.lang.String s, boolean d)
          Convert string to boolean.
static java.lang.String getCurrentDateGerman()
          Get the current date in normalized form as string (german date format).
 java.lang.String getCurrentDirectory()
          Get current directory.
 java.lang.String getFilenameSuffix(java.lang.String fn)
          Find file name suffix (including the dot).
 int getFilenameSuffixPosition(java.lang.String fn)
          Find position of file name suffix.
 java.lang.String getFileSeparator()
          Get file separator.
 java.lang.String getFontPath()
          Get font path.
 java.lang.String getHostName()
          Get host name.
 java.lang.String getImagePath()
          Get images path.
static int getIntValue(java.lang.String s)
          Retrieve integer value from string.
static int getIntValue(java.lang.String s, int d)
          Retrieve integer value from string.
 java.lang.String getLanguage()
          Get users language.
 java.lang.String[] getLocalizedArray(java.lang.Object o, java.lang.String fn)
          Get a localized array of strings from a named file.
 java.lang.String[] getLocalizedArray(java.lang.Object o, java.lang.String fn, java.lang.String csn)
          Get a localized array of strings from a named file.
 java.lang.String getLocalizedString(java.lang.Object o, java.lang.String fn)
          Get file contents as one string.
 java.lang.String getLocalizedString(java.lang.Object o, java.lang.String fn, java.lang.String csn)
          Get file contents as one string.
 void getMultiplePreferenceBools(java.lang.String[] k, boolean[] v)
          Get multiple preferences entries.
 void getMultiplePreferenceInts(java.lang.String[] k, int[] v)
          Get multiple preferences entries.
 void getMultiplePreferenceStrings(java.lang.String[] k, java.lang.String[] v)
          Get multiple preference entries.
static java.lang.String getNormalizedDate(java.lang.String s)
          Convert string to a normalized date (german date format).
 java.lang.String getPathSeparator()
          Get PATH separator.
 boolean getPreferenceBool(java.lang.String k, boolean d)
          Get preference entry.
 int getPreferenceInt(java.lang.String k, int d)
          Get preferences entry.
 java.lang.String getPreferenceString(java.lang.String k, java.lang.String d)
          Get preferences entry.
 java.lang.String getPropertyString(java.lang.String k, java.lang.String d)
          Get property entry.
 int getRunType()
          Retrieve run type.
static int getStringArrayIndex(java.lang.String[] a, java.lang.String s)
          Get index of string s in string array a.
static int getStringArrayIndex(java.lang.String[] a, java.lang.String s, boolean cs)
          Get index of string s in string array a.
static int getStringArrayIndex(java.lang.String[] a, java.lang.String s, int[] c)
          Get index of string s in string array a.
static int getStringArrayIndex(java.lang.String[] a, java.lang.String s, int[] c, boolean cs)
          Get index of string s in string array a.
 java.lang.String getStringFromInputStream(java.io.InputStream is)
          Construct one large string from an input stream contents.
 java.lang.String getStringFromInputStream(java.io.InputStream is, java.lang.String csn)
          Construct one large string from an input stream contents.
 java.lang.String getUserHome()
          Get users home directory.
 java.lang.String getUserLanguage()
          Get users language.
 java.lang.String getUserName()
          Get current user name.
 java.lang.String getUserRegion()
          Get users region.
static boolean isBoolean(java.lang.String s)
          Check whether a string is a boolean.
 java.io.InputStream openLocalizedResource(java.lang.Object o, java.lang.String n)
          Get input stream for a named resource, prefer localized version.
 java.io.InputStream openResource(java.lang.Object o, java.lang.String n)
          Get input stream for a named resource.
 java.lang.String processBackslashEscapedString(java.lang.String s)
          Process a backslash-escaped string.
 java.lang.String replaceSuffix(java.lang.String fn, java.lang.String ns)
          Replace file suffixes by a new suffix (or add new suffix).
 void setMultiplePreferenceBools(java.lang.String[] k, boolean[] v)
          Set multiple preferences entries.
 void setMultiplePreferenceBools(java.lang.String[] k, boolean[] v, boolean g, boolean a)
          Set multiple preferences entries.
 void setMultiplePreferenceInts(java.lang.String[] k, int[] v)
          Set multiple preferences entries.
 void setMultiplePreferenceInts(java.lang.String[] k, int[] v, boolean g, boolean a)
          Set multiple preferences entries.
 void setMultiplePreferenceStrings(java.lang.String[] k, java.lang.String[] v)
          Set multiple preference entries.
 void setMultiplePreferenceStrings(java.lang.String[] k, java.lang.String[] v, boolean g, boolean a)
          Set multiple preference entries.
 void setPreferenceBool(java.lang.String k, boolean v, boolean g, boolean a)
          Set preference entry.
 void setPreferenceInt(java.lang.String k, int v)
          Set preferences entry.
 void setPreferenceInt(java.lang.String k, int v, boolean g, boolean a)
          Set preferences entry.
 void setPreferenceString(java.lang.String k, java.lang.String v)
          Set preferences entry.
 void setPreferenceString(java.lang.String k, java.lang.String v, boolean g, boolean a)
          Set a preferences entry.
 java.lang.String trimString(java.lang.String s)
          Trim and squeeze a string (return text only).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RUN_TYPE_APPLICATION

public static final int RUN_TYPE_APPLICATION
Run-type: Application.

See Also:
Constant Field Values

RUN_TYPE_WEBSTART

public static final int RUN_TYPE_WEBSTART
Run-type: Web-start application.

See Also:
Constant Field Values

RUN_TYPE_APPLET

public static final int RUN_TYPE_APPLET
Run-type: Applet.

See Also:
Constant Field Values

stt

public static final java.lang.String[] stt
Static texts used by this class.


hexCharacters

protected static final char[] hexCharacters
Hexadecimal characters, used by encodeToHtml.


theBooleanStrings

protected static final java.lang.String[] theBooleanStrings
Strings which can be converted into boolean values.


first_no_boolean

protected static final int first_no_boolean
Index of first "no" entry in theBooleanStrings.

See Also:
Constant Field Values

psAllowedCharacters

protected static final java.lang.String psAllowedCharacters
Allowed character set in PS files.

See Also:
Constant Field Values
Constructor Detail

DkTool

public DkTool(java.lang.String a,
              java.lang.String g,
              java.lang.String u,
              int r)
Constructor.

Parameters:
a - Application name.
g - Application group name.
u - URL to first resource base directory (may be null).
r - Run-Type.

DkTool

public DkTool(java.lang.String a,
              java.lang.String g,
              java.lang.String u)
Constructor.

Parameters:
a - Application name.
g - Application group name.
u - First resource directory URL.

DkTool

public DkTool(java.lang.String a,
              java.lang.String g,
              int r)
Constructor.

Parameters:
a - Application name.
g - Application group name.
r - Run-type (RUN_TYPE_xxx).

DkTool

public DkTool(java.lang.String a,
              java.lang.String g)
Constructor.

Parameters:
a - Application name.
g - Application group name.
Method Detail

cleanup

public void cleanup()
Destructor.


getUserName

public java.lang.String getUserName()
Get current user name.

Returns:
The users logname.

getUserLanguage

public java.lang.String getUserLanguage()
Get users language.

Returns:
The language.

getLanguage

public java.lang.String getLanguage()
Get users language.

Returns:
The language.

getUserRegion

public java.lang.String getUserRegion()
Get users region.

Returns:
The region converted to lower-case.

getUserHome

public java.lang.String getUserHome()
Get users home directory.

Returns:
The home directory.

getCurrentDirectory

public java.lang.String getCurrentDirectory()
Get current directory.

Returns:
The current directory.

getHostName

public java.lang.String getHostName()
Get host name.

Returns:
The host name.

getFileSeparator

public java.lang.String getFileSeparator()
Get file separator.

Returns:
The file separator (slash or backslash).

getPathSeparator

public java.lang.String getPathSeparator()
Get PATH separator.

Returns:
The path separator (colon or semicolon).

getRunType

public int getRunType()
Retrieve run type.

Returns:
The run type RUN_TYPE_xxx.

getStringArrayIndex

public static int getStringArrayIndex(java.lang.String[] a,
                                      java.lang.String s,
                                      boolean cs)
Get index of string s in string array a.

Parameters:
a - Array with patterns.
s - String to search in array.
cs - Flag: Case-sensitive or not.
Returns:
Index of matched string on success, -1 on error.

getStringArrayIndex

public static int getStringArrayIndex(java.lang.String[] a,
                                      java.lang.String s)
Get index of string s in string array a.

Parameters:
a - Array with patterns.
s - String to search in array.
Returns:
Index of matched string on success, -1 on error.

getStringArrayIndex

public static int getStringArrayIndex(java.lang.String[] a,
                                      java.lang.String s,
                                      int[] c,
                                      boolean cs)
Get index of string s in string array a.

Parameters:
a - Array to search.
s - String to search for.
c - Array of indexes to check.
cs - Flag: Case sensitive or not.
Returns:
Index in array or -1.

getStringArrayIndex

public static int getStringArrayIndex(java.lang.String[] a,
                                      java.lang.String s,
                                      int[] c)
Get index of string s in string array a.

Parameters:
a - Array to search.
s - String to search for.
c - Array of indexes to check.
Returns:
Index in array or -1.

getBoolean

public static boolean getBoolean(java.lang.String s,
                                 boolean d)
Convert string to boolean.

Parameters:
s - String to convert.
d - Default value.
Returns:
Conversion result or default value.

isBoolean

public static boolean isBoolean(java.lang.String s)
Check whether a string is a boolean.

Parameters:
s - String to check.
Returns:
Check result.

getIntValue

public static int getIntValue(java.lang.String s,
                              int d)
Retrieve integer value from string.

Parameters:
s - String to inspect.
d - Default value.
Returns:
Conversion result or default value.

getIntValue

public static int getIntValue(java.lang.String s)
Retrieve integer value from string.

Parameters:
s - String to inspect.
Returns:
Conversion result or 0 if conversion failed.

convertColor

public static java.awt.Color convertColor(java.lang.String s,
                                          int dr,
                                          int dg,
                                          int db)
Convert a string into a color.

Parameters:
s - String to convert.
dr - Default red.
dg - Default green.
db - Default blue.
Returns:
The color retrieved from the string.

convertColor

public static java.awt.Color convertColor(java.lang.String s)
Convert a string into a color.

Parameters:
s - String to convert.
Returns:
The color retrieved from the string.

setPreferenceString

public void setPreferenceString(java.lang.String k,
                                java.lang.String v,
                                boolean g,
                                boolean a)
Set a preferences entry.

Parameters:
k - Entry key.
v - Entry value.
g - Flag: Set for application group too.
a - Flag: Set for all applications too.

setPreferenceString

public void setPreferenceString(java.lang.String k,
                                java.lang.String v)
Set preferences entry.

Parameters:
k - Entry key.
v - Entry name.

setMultiplePreferenceStrings

public void setMultiplePreferenceStrings(java.lang.String[] k,
                                         java.lang.String[] v,
                                         boolean g,
                                         boolean a)
Set multiple preference entries.

Parameters:
k - Entry keys.
v - Entry values.
g - Flag: Set for application group too.
a - Flag: Set as general defaults too.

setMultiplePreferenceStrings

public void setMultiplePreferenceStrings(java.lang.String[] k,
                                         java.lang.String[] v)
Set multiple preference entries.

Parameters:
k - Entry keys.
v - Entry values.

getPreferenceString

public java.lang.String getPreferenceString(java.lang.String k,
                                            java.lang.String d)
Get preferences entry.

Parameters:
k - Entry key.
d - Default value.
Returns:
Entry value or default value.

getPropertyString

public java.lang.String getPropertyString(java.lang.String k,
                                          java.lang.String d)
Get property entry.

Parameters:
k - Entry key.
d - Default value.
Returns:
Entry value or default value.

getMultiplePreferenceStrings

public void getMultiplePreferenceStrings(java.lang.String[] k,
                                         java.lang.String[] v)
Get multiple preference entries.

Parameters:
k - Key array.
v - Value array.

setPreferenceInt

public void setPreferenceInt(java.lang.String k,
                             int v,
                             boolean g,
                             boolean a)
Set preferences entry.

Parameters:
k - Entry key.
v - Entry value.
g - Flag: Set for application group too.
a - Flag: Set as general defaults too.

setPreferenceInt

public void setPreferenceInt(java.lang.String k,
                             int v)
Set preferences entry.

Parameters:
k - Entry key.
v - Entry value.

getPreferenceInt

public int getPreferenceInt(java.lang.String k,
                            int d)
Get preferences entry.

Parameters:
k - Entry key.
d - Default value.
Returns:
Entry value or default value.

setMultiplePreferenceInts

public void setMultiplePreferenceInts(java.lang.String[] k,
                                      int[] v,
                                      boolean g,
                                      boolean a)
Set multiple preferences entries.

Parameters:
k - Key array.
v - Value array.
g - Flag: Set entries for application group too.
a - Flag: Set as default values.

setMultiplePreferenceInts

public void setMultiplePreferenceInts(java.lang.String[] k,
                                      int[] v)
Set multiple preferences entries.

Parameters:
k - Keys array.
v - Values array.

getMultiplePreferenceInts

public void getMultiplePreferenceInts(java.lang.String[] k,
                                      int[] v)
Get multiple preferences entries.

Parameters:
k - Keys array.
v - Values array.

setPreferenceBool

public void setPreferenceBool(java.lang.String k,
                              boolean v,
                              boolean g,
                              boolean a)
Set preference entry.

Parameters:
k - Entry key.
v - Entry value.
g - Flag: Set for application group too.
a - Flag: Set as default.

getPreferenceBool

public boolean getPreferenceBool(java.lang.String k,
                                 boolean d)
Get preference entry.

Parameters:
k - Entry key.
d - Default value.
Returns:
Entry value or default value.

setMultiplePreferenceBools

public void setMultiplePreferenceBools(java.lang.String[] k,
                                       boolean[] v,
                                       boolean g,
                                       boolean a)
Set multiple preferences entries.

Parameters:
k - Keys array.
v - Values array.
g - Flag: Set entries for application group too.
a - Flag: Set as default for all applications.

getMultiplePreferenceBools

public void getMultiplePreferenceBools(java.lang.String[] k,
                                       boolean[] v)
Get multiple preferences entries.

Parameters:
k - Keys array.
v - Values array.

setMultiplePreferenceBools

public void setMultiplePreferenceBools(java.lang.String[] k,
                                       boolean[] v)
Set multiple preferences entries.

Parameters:
k - Keys array.
v - Values array.

flushPreferences

public void flushPreferences()
Flush preferences to permanent storage.


addResourceBase

public void addResourceBase(java.lang.String s)
Add a directory (file name or URL) to the list of resource bases.

Parameters:
s - Directory to add.

openLocalizedResource

public java.io.InputStream openLocalizedResource(java.lang.Object o,
                                                 java.lang.String n)
Get input stream for a named resource, prefer localized version.

Parameters:
o - Object originating the request.
n - File name.
Returns:
Input stream or null.

openResource

public java.io.InputStream openResource(java.lang.Object o,
                                        java.lang.String n)
Get input stream for a named resource.

Parameters:
o - Object originating the request.
n - File name.
Returns:
Input stream or null.

findBufferedImage

public java.awt.image.BufferedImage findBufferedImage(java.lang.Object o,
                                                      java.lang.String fn)
Get buffered image.

Parameters:
o - Object originating the request.
fn - File name.
Returns:
Image or null.

findImageIcon

public javax.swing.ImageIcon findImageIcon(java.lang.Object o,
                                           java.lang.String fn)
Create image icon.

Parameters:
o - Object.
fn - File name.
Returns:
Image icon or null.

findFont

public java.awt.Font findFont(java.lang.Object o,
                              java.lang.String[] ffn,
                              java.lang.String[] fn,
                              java.lang.String fb,
                              int fe,
                              float fs)
Fint font.

Parameters:
o - Object originating the request.
ffn - Font file names.
fn - Font names.
fb - Fallback font.
fe - Features of the font.
fs - Font size.
Returns:
Found font or null.

findFont

public java.awt.Font findFont(java.lang.Object o,
                              java.lang.String[] ffn,
                              java.lang.String[] fn,
                              java.lang.String fb,
                              int fe,
                              double fs)
Fint font.

Parameters:
o - Object originating the request.
ffn - Font file names.
fn - Font names.
fb - Fallback font.
fe - Features of the font.
fs - Font size.
Returns:
Found font or null.

getLocalizedArray

public java.lang.String[] getLocalizedArray(java.lang.Object o,
                                            java.lang.String fn,
                                            java.lang.String csn)
Get a localized array of strings from a named file.

Parameters:
o - Object originating the request.
fn - File name.
csn - Character set name.
Returns:
String array or null.

getLocalizedArray

public java.lang.String[] getLocalizedArray(java.lang.Object o,
                                            java.lang.String fn)
Get a localized array of strings from a named file.

Parameters:
o - Object originating the request.
fn - File name.
Returns:
String array or null.

getFontPath

public java.lang.String getFontPath()
Get font path.

Returns:
Font base directory.

getImagePath

public java.lang.String getImagePath()
Get images path.

Returns:
Images base directory.

getStringFromInputStream

public java.lang.String getStringFromInputStream(java.io.InputStream is,
                                                 java.lang.String csn)
Construct one large string from an input stream contents.

Parameters:
is - Input stream to process, must be a text file.
csn - Character set name ("UTF-8" or "ISO-8859-1" or null).
Returns:
A string containing the file contents.

getStringFromInputStream

public java.lang.String getStringFromInputStream(java.io.InputStream is)
Construct one large string from an input stream contents.

Parameters:
is - Input stream to process.
Returns:
A string containing the file contents.

getLocalizedString

public java.lang.String getLocalizedString(java.lang.Object o,
                                           java.lang.String fn,
                                           java.lang.String csn)
Get file contents as one string.

Parameters:
o - Object.
fn - File name.
csn - Character set name.
Returns:
File contents as one large string.

getLocalizedString

public java.lang.String getLocalizedString(java.lang.Object o,
                                           java.lang.String fn)
Get file contents as one string.

Parameters:
o - Object.
fn - File name.
Returns:
File contents as one large string.

processBackslashEscapedString

public java.lang.String processBackslashEscapedString(java.lang.String s)
Process a backslash-escaped string.

Parameters:
s - Source string.
Returns:
Processed string.

trimString

public java.lang.String trimString(java.lang.String s)
Trim and squeeze a string (return text only). Leading and trailing whitespaces are removed, other sequences of whitespaces are replaced by one space.

Parameters:
s - Original string.
Returns:
Trimmed and squeezed string or null.

encodeForPostscript

public static java.lang.String encodeForPostscript(java.lang.String s)
Convert a text string to PS encoding, so we can insert it into a PS file.

Parameters:
s - String to convert.
Returns:
Conversion result.

getFilenameSuffixPosition

public int getFilenameSuffixPosition(java.lang.String fn)
Find position of file name suffix.

Parameters:
fn - File name
Returns:
Index of the suffix dot or -1.

getFilenameSuffix

public java.lang.String getFilenameSuffix(java.lang.String fn)
Find file name suffix (including the dot).

Parameters:
fn - File name to inspect.
Returns:
File name suffix or null.

replaceSuffix

public java.lang.String replaceSuffix(java.lang.String fn,
                                      java.lang.String ns)
Replace file suffixes by a new suffix (or add new suffix).

Parameters:
fn - Original file name.
ns - New suffix to append.
Returns:
The modified file name

encodeToHtml

public java.lang.String encodeToHtml(java.lang.String s)
Create HTML representation of a string.

Parameters:
s - Original string.
Returns:
HTML code to show the string.

backslashesToSlashes

public java.lang.String backslashesToSlashes(java.lang.String s)
Convert all backslashes to slashes in a string.

Parameters:
s - Original string.
Returns:
Processed string.

getNormalizedDate

public static java.lang.String getNormalizedDate(java.lang.String s)
Convert string to a normalized date (german date format).

Parameters:
s - Source string.
Returns:
Date as string.

getCurrentDateGerman

public static java.lang.String getCurrentDateGerman()
Get the current date in normalized form as string (german date format).

Returns:
Date string.

choosePosition

public static void choosePosition(int w,
                                  int h,
                                  java.awt.Component p,
                                  java.awt.Component c,
                                  boolean mod)
Choose position for component c relative to parent component p.

Parameters:
w - Screen width.
h - Screen height.
p - Parent component.
c - New child component to be placed.
mod - Flag to indicate whether or not c is a modal component.

chooseModalPosition

public static void chooseModalPosition(int w,
                                       int h,
                                       java.awt.Component p,
                                       java.awt.Component c)
Choose modal position for component c relative to parent component p.

Parameters:
w - Screen width.
h - Screen height.
p - Parent component.
c - New modal child component to be placed.

chooseNonModalPosition

public static void chooseNonModalPosition(int w,
                                          int h,
                                          java.awt.Component p,
                                          java.awt.Component c)
Choose normal (non-modal) position for component c relative to parent component p.

Parameters:
w - Screen width.
h - Screen height.
p - Parent component.
c - New non-modal child component to be placed.