//Auto-generated by kalyptus. DO NOT EDIT. package org.kde.koala; import org.kde.qt.Qt; import org.kde.qt.QtSupport; import org.kde.qt.QRegExp; import java.util.ArrayList; import org.kde.qt.QFontMetrics; /** This class contains utility functions for handling strings. This class is not a substitute for the String class. What I tried to do with this class is provide an easy way to cut/slice/splice words inside sentences in whatever order desired. While the main focus of this class are words (ie characters separated by spaces/tabs), the two core functions here ( split() and join() ) will function given any char to use as a separator. This will make it easy to redefine what a 'word' means in the future if needed. I freely stole some of the function names from python. I also think some of these were influenced by mIRC (yes, believe it if you will, I used to write a LOT of scripts in mIRC). The ranges are a fairly powerful way of getting/stripping words from a string. These ranges function, for the large part, as they would in python. See the word(String, String ) and remword(String, uint) functions for more detail. This class contains no data members of its own. All strings are cut on the fly and returned as new qstrings/qstringlists. Quick example on how to use:
KStringHandler kstr; String line = "This is a test of the strings"; cout << "1> " << kstr.word( line , "4:" ) << "\n"; cout << "2> " << kstr.remrange( line , "2:5" ) << "\n"; cout << "2> " << kstr.reverse( line ) << "\n"; cout << "2> " << kstr.center( kstr.word( line , 4 ) , 15 ) << "\n";and so forth. @author Ian Zepp
pos
words in the original
string, the new word will be appended to the end.
@param text the original text
@param word the word to insert
@param pos the position (in words) for the new word
@return the resulting string
@short Inserts a word into the string, and returns a new string with the word included.
*/
public static native String insword(String text, String word, int pos);
/** Replaces a word in the string, and returns
a new string with the word included. the first
index is zero (0). If there are not pos
words in the original
string, the new word will be appended to the end.
@param text the original text
@param word the word to insert
@param pos the position (in words) for the new word
@return the resulting string
@short Replaces a word in the string, and returns a new string with the word included.
*/
public static native String setword(String text, String word, int pos);
/** Removes a word or ranges of words from the string,
and returns a new string. The ranges definitions
follow the definitions for the word() function.
width
, the original
string is returned. It is never truncated.
@param text the text to justify
@param width the desired width of the new string
@return the resulting string
@short Centers a string and returns a string at least 'width' characters wide.
*/
public static native String center(String text, int width);
/** Substitute characters at the beginning of a string by "...".
@param str is the string to modify
@param maxlen is the maximum length the modified string will have
If the original string is shorter than "maxlen", it is returned verbatim
@return the modified string
@short Substitute characters at the beginning of a string by ".
*/
public static native String lsqueeze(String str, int maxlen);
public static native String lsqueeze(String str);
/** Substitute characters at the beginning of a string by "...". Similar to
method above, except that it truncates based on pixel width rather than
the number of characters
@param name is the string to modify
@param fontMetrics is the font metrics to use to calculate character sizes
@param maxlen is the maximum length in ems the modified string will have
If the original string is shorter than "maxlen", it is returned verbatim
@return the modified string
@short Substitute characters at the beginning of a string by ".
*/
public static native String lEmSqueeze(String name, QFontMetrics fontMetrics, int maxlen);
public static native String lEmSqueeze(String name, QFontMetrics fontMetrics);
/** Substitute characters at the beginning of a string by "...". Similar to
method above, except that maxlen is the width in pixels to truncate to
@param name is the string to modify
@param fontMetrics is the font metrics to use to calculate character sizes
@param maxPixels is the maximum pixel length the modified string will have
If the original string is shorter than "maxlen", it is returned verbatim
@return the modified string
@short Substitute characters at the beginning of a string by ".
*/
public static native String lPixelSqueeze(String name, QFontMetrics fontMetrics, int maxPixels);
/** Substitute characters at the middle of a string by "...".
@param str is the string to modify
@param maxlen is the maximum length the modified string will have
If the original string is shorter than "maxlen", it is returned verbatim
@return the modified string
@short Substitute characters at the middle of a string by ".
*/
public static native String csqueeze(String str, int maxlen);
public static native String csqueeze(String str);
/** Substitute characters in the middle of a string by "...". Similar to
method above, except that it truncates based on pixel width rather than
the number of characters
@param name is the string to modify
@param fontMetrics is the font metrics to use to calculate character sizes
@param maxlen is the maximum length in ems the modified string will have
If the original string is shorter than "maxlen", it is returned verbatim
@return the modified string
@short Substitute characters in the middle of a string by ".
*/
public static native String cEmSqueeze(String name, QFontMetrics fontMetrics, int maxlen);
public static native String cEmSqueeze(String name, QFontMetrics fontMetrics);
/** Substitute characters in the middle of a string by "...". Similar to
method above, except that maxlen is the width in pixels to truncate to
@param name is the string to modify
@param fontMetrics is the font metrics to use to calculate character sizes
@param maxPixels is the maximum pixel length the modified string will have
If the original string is shorter than "maxlen", it is returned verbatim
@return the modified string
@short Substitute characters in the middle of a string by ".
*/
public static native String cPixelSqueeze(String name, QFontMetrics fontMetrics, int maxPixels);
/** Substitute characters at the end of a string by "...".
@param str is the string to modify
@param maxlen is the maximum length the modified string will have
If the original string is shorter than "maxlen", it is returned verbatim
@return the modified string
@short Substitute characters at the end of a string by ".
*/
public static native String rsqueeze(String str, int maxlen);
public static native String rsqueeze(String str);
/** Substitute characters at the end of a string by "...". Similar to
method above, except that it truncates based on pixel width rather than
the number of characters
@param name is the string to modify
@param fontMetrics is the font metrics to use to calculate character sizes
@param maxlen is the maximum length in ems the modified string will have
If the original string is shorter than "maxlen", it is returned verbatim
@return the modified string
@short Substitute characters at the end of a string by ".
*/
public static native String rEmSqueeze(String name, QFontMetrics fontMetrics, int maxlen);
public static native String rEmSqueeze(String name, QFontMetrics fontMetrics);
/** Substitute characters at the end of a string by "...". Similar to
method above, except that maxlen is the width in pixels to truncate to
@param name is the string to modify
@param fontMetrics is the font metrics to use to calculate character sizes
@param maxPixels is the maximum pixel length the modified string will have
If the original string is shorter than "maxlen", it is returned verbatim
@return the modified string
@short Substitute characters at the end of a string by ".
*/
public static native String rPixelSqueeze(String name, QFontMetrics fontMetrics, int maxPixels);
/**
Match a filename.
@param filename is the real decoded filename (or dirname
without trailing '/').
@param pattern is a pattern like .txt, .tar.gz, Makefile., README, etc.
Patterns with two asterisks like "*.pk" are not supported.
@return true if the given filename matches the given pattern
@short Match a filename.
*/
public static native boolean matchFileName(String filename, String pattern);
/**
Split a String into an ArrayList in a similar fashion to the static
ArrayList function in Qt, except you can specify a maximum number
of tokens. If max is specified (!= 0) then only that number of tokens
will be extracted. The final token will be the remainder of the string.
Example:
perlSplit("__", "some__string__for__you__here", 4) ArrayList contains: "some", "string", "for", "you__here"@param sep is the string to use to delimit s. @param s is the input string @param max is the maximum number of extractions to perform, or 0. @return An ArrayList containing tokens extracted from s. @short Split a String into an ArrayList in a similar fashion to the static ArrayList function in Qt, except you can specify a maximum number of tokens. */ public static native ArrayList perlSplit(String sep, String s, int max); public static native ArrayList perlSplit(String sep, String s); /** Split a String into an ArrayList in a similar fashion to the static ArrayList function in Qt, except you can specify a maximum number of tokens. If max is specified (!= 0) then only that number of tokens will be extracted. The final token will be the remainder of the string. Example:
perlSplit(' ', "kparts reaches the parts other parts can't", 3) ArrayList contains: "kparts", "reaches", "the parts other parts can't"@param sep is the character to use to delimit s. @param s is the input string @param max is the maximum number of extractions to perform, or 0. @return An ArrayList containing tokens extracted from s. @short Split a String into an ArrayList in a similar fashion to the static ArrayList function in Qt, except you can specify a maximum number of tokens. */ public static native ArrayList perlSplit(char sep, String s, int max); public static native ArrayList perlSplit(char sep, String s); /** Split a String into an ArrayList in a similar fashion to the static ArrayList function in Qt, except you can specify a maximum number of tokens. If max is specified (!= 0) then only that number of tokens will be extracted. The final token will be the remainder of the string. Example:
perlSplit(QRegExp("[! ]", "Split me up ! I'm bored ! OK ?", 3) ArrayList contains: "Split", "me", "up ! I'm bored, OK ?"@param sep is the regular expression to use to delimit s. @param s is the input string @param max is the maximum number of extractions to perform, or 0. @return An ArrayList containing tokens extracted from s. @short Split a String into an ArrayList in a similar fashion to the static ArrayList function in Qt, except you can specify a maximum number of tokens. */ public static native ArrayList perlSplit(QRegExp sep, String s, int max); public static native ArrayList perlSplit(QRegExp sep, String s); /** This method auto-detects URLs in strings, and adds HTML markup to them so that richtext or HTML-enabled widgets (such as KActiveLabel) will display the URL correctly. @param text the string which may contain URLs @return the resulting text @short This method auto-detects URLs in strings, and adds HTML markup to them so that richtext or HTML-enabled widgets (such as KActiveLabel) will display the URL correctly. */ public static native String tagURLs(String text); /** Obscure string by using a simple symmetric encryption. Applying the function to a string obscured by this function will result in the original string. The function can be used to obscure passwords stored to configuration files. Note that this won't give you any more security than preventing that the password is directly copied and pasted. @param str string to be obscured @return obscured string @short Obscure string by using a simple symmetric encryption. */ public static native String obscure(String str); /** Guess whether a string is UTF8 encoded. @param str the string to check @return true if UTF8. If false, the string is probably in Local8Bit. @short Guess whether a string is UTF8 encoded. */ public static native boolean isUtf8(String str); /** Construct String from a c string, guessing whether it is UTF8- or Local8Bit-encoded. @param str the input string @return the (hopefully correctly guessed) String representation of
str
@short Construct String from a c string, guessing whether it is UTF8- or Local8Bit-encoded.
*/
public static native String from8Bit(String str);
/** Deletes the wrapped C++ instance */
protected native void finalize() throws InternalError;
/** Delete the wrapped C++ instance ahead of finalize() */
public native void dispose();
/** Has the wrapped C++ instance been deleted? */
public native boolean isDisposed();
}