mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-05 19:42:36 +02:00
javadoc html5
This commit is contained in:
parent
3eb130123b
commit
3bdf049d44
136 changed files with 428 additions and 425 deletions
|
@ -28,14 +28,14 @@ import ghidra.util.exception.InvalidInputException;
|
|||
* string. Thus, when providing a namespace string, do not include the name
|
||||
* of anything other than namespaces, such as the name of a symbol.
|
||||
* <p>
|
||||
* <a name="examples"></a>
|
||||
* <a id="examples"></a>
|
||||
* Example strings:
|
||||
* <ul>
|
||||
* <li>global{@link Namespace#NAMESPACE_DELIMITER ::}child1{@link Namespace#NAMESPACE_DELIMITER ::}child2
|
||||
* <li>child1
|
||||
* </ul>
|
||||
* <p>
|
||||
* <a name="assumptions"></a>
|
||||
* <a id="assumptions"></a>
|
||||
* To view the assumptions for creating namespaces from a path string, see
|
||||
* the {@link NamespaceUtils} class.
|
||||
*
|
||||
|
@ -79,7 +79,7 @@ public class CreateNamespacesCmd implements Command {
|
|||
* @param parentNamespace The namespace to be used as the starting parent
|
||||
* of the namespaces that will be created.
|
||||
* @param source the source of the namespace
|
||||
* @throws NullPointerException if <tt>namespaceString</tt> is <tt>null</tt>.
|
||||
* @throws NullPointerException if <code>namespaceString</code> is <code>null</code>.
|
||||
* @see <a href="#examples">example format</a>
|
||||
* @see <a href="#assumptions">assumptions</a>
|
||||
*/
|
||||
|
|
|
@ -950,10 +950,10 @@ public abstract class GhidraScript extends FlatProgramAPI {
|
|||
}
|
||||
|
||||
/**
|
||||
* A convenience method to print a formatted String using Java's <tt>printf</tt>
|
||||
* A convenience method to print a formatted String using Java's <code>printf</code>
|
||||
* feature, which is similar to that of the C programming language.
|
||||
* For a full description on Java's
|
||||
* <tt>printf</tt> usage, see {@link java.util.Formatter}.
|
||||
* <code>printf</code> usage, see {@link java.util.Formatter}.
|
||||
* <p>
|
||||
* For examples, see the included <code>FormatExampleScript</code>.
|
||||
* <p>
|
||||
|
@ -1535,8 +1535,8 @@ public abstract class GhidraScript extends FlatProgramAPI {
|
|||
|
||||
/**
|
||||
* Sets this script's highlight state (both the local variable
|
||||
* <tt>currentHighlight</tt> and the
|
||||
* <tt>GhidraState</tt>'s currentHighlight) to the given address set. Also sets the tool's highlight
|
||||
* <code>currentHighlight</code> and the
|
||||
* <code>GhidraState</code>'s currentHighlight) to the given address set. Also sets the tool's highlight
|
||||
* if the tool exists. (Same as calling setCurrentHightlight(set);
|
||||
* @param set the set of addresses to include in the highlight. May be null.
|
||||
*/
|
||||
|
@ -1859,8 +1859,8 @@ public abstract class GhidraScript extends FlatProgramAPI {
|
|||
/**
|
||||
* Attempts to locate a value from script arguments
|
||||
* or a script properties file using
|
||||
* the given <tt>keys</tt> as the lookup key for the latter. The given <tt>parser</tt> will
|
||||
* be called to turn the String into a <tt>T</tt>.
|
||||
* the given <code>keys</code> as the lookup key for the latter. The given <code>parser</code> will
|
||||
* be called to turn the String into a <code>T</code>.
|
||||
*
|
||||
* @param transformer the function to turn a String into a T
|
||||
* @param key the values used to create a key for lookup in the script properties file
|
||||
|
@ -1883,7 +1883,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
|
|||
* @return null if no value was found in the aforementioned sources
|
||||
*
|
||||
* @throws IllegalArgumentException if the loaded String value cannot be parsed into a
|
||||
* <tt>T</tt>.
|
||||
* <code>T</code>.
|
||||
*/
|
||||
private <T> T loadAskValue(T defaultValue, StringTransformer<T> transformer, String key) {
|
||||
|
||||
|
@ -1936,7 +1936,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
|
|||
/**
|
||||
* A generic method to execute user prompting for a value. This method handles:
|
||||
* <ol>
|
||||
* <li>Checking for a previously chosen value; using the optional <tt>defaultValue</tt> as a fallback</li>
|
||||
* <li>Checking for a previously chosen value; using the optional <code>defaultValue</code> as a fallback</li>
|
||||
* <li>Calling the provided function to execute the client-specific ask UI</li>
|
||||
* <li>Storing the chosen result after the dialog is closed</li>
|
||||
* </ol>
|
||||
|
|
|
@ -144,7 +144,7 @@ public interface DataTypeManagerService extends DataTypeQueryService {
|
|||
throws IOException, DuplicateIdException;
|
||||
|
||||
/**
|
||||
* Selects the given data type in the display of data types. A null <tt>dataType</tt>
|
||||
* Selects the given data type in the display of data types. A null <code>dataType</code>
|
||||
* value will clear the current selection.
|
||||
*
|
||||
* @param dataType The data type to select.
|
||||
|
|
|
@ -37,7 +37,7 @@ public interface DataTypeReferenceFinder extends ExtensionPoint {
|
|||
* implementation.
|
||||
* <p>
|
||||
* Note that this operation is multi-threaded and that results will be delivered as they
|
||||
* are found via the <tt>callback</tt>.
|
||||
* are found via the <code>callback</code>.
|
||||
*
|
||||
* @param program the program to search
|
||||
* @param dataType the type for which to search
|
||||
|
@ -54,7 +54,7 @@ public interface DataTypeReferenceFinder extends ExtensionPoint {
|
|||
* in a manner appropriate with the given implementation.
|
||||
* <p>
|
||||
* Note that this operation is multi-threaded and that results will be delivered as they
|
||||
* are found via the <tt>callback</tt>.
|
||||
* are found via the <code>callback</code>.
|
||||
*
|
||||
* @param program the program to search
|
||||
* @param composite the type containing the field for which to search
|
||||
|
|
|
@ -53,7 +53,7 @@ public interface GoToService {
|
|||
* overloaded version of {@link #goTo(Address)} uses the given program as the program
|
||||
* within which to perform the GoTo. If the given program does not contain the given
|
||||
* address, then the GoTo will not be performed and false will be returned. Passing
|
||||
* <tt>null</tt> as the <tt>program</tt> parameter will cause this method to attempt to find
|
||||
* <code>null</code> as the <code>program</code> parameter will cause this method to attempt to find
|
||||
* a program that contains the given ProgramLocation.
|
||||
*
|
||||
* @param loc location to go to
|
||||
|
@ -91,8 +91,8 @@ public interface GoToService {
|
|||
* Generates a GoTo event to the gotoAddress. This overloaded version of
|
||||
* {@link #goTo(Address)} uses the given program as the program within which to
|
||||
* perform the GoTo. If the given program does not contain the given address, then the
|
||||
* GoTo will not be performed and false will be returned. Passing <tt>null</tt> as the
|
||||
* <tt>program</tt> parameter will cause this method to attempt to find
|
||||
* GoTo will not be performed and false will be returned. Passing <code>null</code> as the
|
||||
* <code>program</code> parameter will cause this method to attempt to find
|
||||
* a program that contains the given ProgramLocation.
|
||||
*
|
||||
* @param goToAddress the address to goto
|
||||
|
|
|
@ -36,7 +36,7 @@ import ghidra.program.model.listing.Program;
|
|||
* the marker/bar will be displayed on the top. Areas will always be lower than
|
||||
* marker priorities.
|
||||
* </p>
|
||||
* <a name="usage"></a>
|
||||
* <a id="usage"></a>
|
||||
* <u>Recommended Usage</u><br>
|
||||
* The service used to work independent of {@link Program}s. In order to work effectively this
|
||||
* service has been changed to associate created markers with individual programs. Thus, it is
|
||||
|
|
|
@ -53,7 +53,7 @@ public class ToolTipUtils {
|
|||
}
|
||||
|
||||
/**
|
||||
* Examines the give <tt>dataType</tt> and creates a tool tip for it,
|
||||
* Examines the give <code>dataType</code> and creates a tool tip for it,
|
||||
* depending upon its actual class type.
|
||||
*
|
||||
* @param dataType The data type from which a tool tip will be
|
||||
|
|
|
@ -57,25 +57,25 @@ public class GhidraRandomAccessFile {
|
|||
* but adds buffering to limit the amount.
|
||||
* <p>
|
||||
*
|
||||
* <a name="mode"></a><p> The <tt>mode</tt> argument specifies the access mode
|
||||
* <a id="mode"></a><p> The <code>mode</code> argument specifies the access mode
|
||||
* in which the file is to be opened. The permitted values and their
|
||||
* meanings are:
|
||||
*
|
||||
* <blockquote><table summary="Access mode permitted values and meanings">
|
||||
* <tr><th><p align="left">Value</p></th><th><p align="left">Meaning</p></th></tr>
|
||||
* <tr><td valign="top"><tt>"r"</tt></td>
|
||||
* <td> Open for reading only. Invoking any of the <tt>write</tt>
|
||||
* <blockquote><table><caption style="visibility:hidden;font-size:0px">Access mode permitted values and meanings</caption>
|
||||
* <tr><th><p style="text-align:left">Value</p></th><th><p style="text-align:left">Meaning</p></th></tr>
|
||||
* <tr><td style="vertical-align:top"><code>"r"</code></td>
|
||||
* <td> Open for reading only. Invoking any of the <code>write</code>
|
||||
* methods of the resulting object will cause an {@link
|
||||
* java.io.IOException} to be thrown. </td></tr>
|
||||
* <tr><td valign="top"><tt>"rw"</tt></td>
|
||||
* <tr><td style="vertical-align:top"><code>"rw"</code></td>
|
||||
* <td> Open for reading and writing. If the file does not already
|
||||
* exist then an attempt will be made to create it. </td></tr>
|
||||
* <tr><td valign="top"><tt>"rws"</tt></td>
|
||||
* <td> Open for reading and writing, as with <tt>"rw"</tt>, and also
|
||||
* <tr><td style="vertical-align:top"><code>"rws"</code></td>
|
||||
* <td> Open for reading and writing, as with <code>"rw"</code>, and also
|
||||
* require that every update to the file's content or metadata be
|
||||
* written synchronously to the underlying storage device. </td></tr>
|
||||
* <tr><td valign="top"><tt>"rwd" </tt></td>
|
||||
* <td> Open for reading and writing, as with <tt>"rw"</tt>, and also
|
||||
* <tr><td style="vertical-align:top"><code>"rwd" </code></td>
|
||||
* <td> Open for reading and writing, as with <code>"rw"</code>, and also
|
||||
* require that every update to the file's content be written
|
||||
* synchronously to the underlying storage device. </td></tr>
|
||||
* </table></blockquote>
|
||||
|
@ -84,8 +84,8 @@ public class GhidraRandomAccessFile {
|
|||
* @param mode the access mode, as described
|
||||
* <a href="#mode">above</a>
|
||||
* @exception IllegalArgumentException if the mode argument is not equal
|
||||
* to one of <tt>"r"</tt>, <tt>"rw"</tt>, <tt>"rws"</tt>, or
|
||||
* <tt>"rwd"</tt>
|
||||
* to one of <code>"r"</code>, <code>"rw"</code>, <code>"rws"</code>, or
|
||||
* <code>"rwd"</code>
|
||||
* @exception FileNotFoundException
|
||||
* that name cannot be created, or if some other error occurs
|
||||
* while opening or creating the file
|
||||
|
|
|
@ -318,7 +318,7 @@ public class HeadlessOptions {
|
|||
|
||||
/**
|
||||
* This method can be used to enable recursive processing of files during
|
||||
* <tt>-import</tt> or <tt>-process</tt> modes. In order for recursive processing of files to
|
||||
* <code>-import</code> or <code>-process</code> modes. In order for recursive processing of files to
|
||||
* occur, the user must have specified a directory (and not a specific file)
|
||||
* for the Headless Analyzer to import or process.
|
||||
*
|
||||
|
|
|
@ -35,28 +35,28 @@ public abstract class HeadlessScript extends GhidraScript {
|
|||
*/
|
||||
public enum HeadlessContinuationOption {
|
||||
/**
|
||||
* Continue running scripts and/or analysis; <tt>-import</tt> and <tt>-process</tt>
|
||||
* Continue running scripts and/or analysis; <code>-import</code> and <code>-process</code>
|
||||
* modes complete normally.
|
||||
*/
|
||||
CONTINUE,
|
||||
|
||||
/**
|
||||
* Continue running scripts and/or analysis;
|
||||
* <tt>-import</tt> mode does not save program,
|
||||
* <tt>-process</tt> mode deletes program.
|
||||
* <code>-import</code> mode does not save program,
|
||||
* <code>-process</code> mode deletes program.
|
||||
*/
|
||||
CONTINUE_THEN_DELETE,
|
||||
|
||||
/**
|
||||
* Abort any scripts or analysis that come after this script;
|
||||
* <tt>-import</tt> mode does not save program, <tt>-process</tt> mode deletes program.
|
||||
* <code>-import</code> mode does not save program, <code>-process</code> mode deletes program.
|
||||
*/
|
||||
ABORT_AND_DELETE,
|
||||
|
||||
/**
|
||||
* Abort any scripts or analysis that come after this script; <tt>-import</tt> mode does
|
||||
* Abort any scripts or analysis that come after this script; <code>-import</code> mode does
|
||||
* save program (but it may not be processed completely),
|
||||
* <tt>-process</tt> mode completes normally, minus scripts or analysis that
|
||||
* <code>-process</code> mode completes normally, minus scripts or analysis that
|
||||
* runs after the ABORT request.
|
||||
*/
|
||||
ABORT
|
||||
|
@ -285,7 +285,7 @@ public abstract class HeadlessScript extends GhidraScript {
|
|||
* </pre>
|
||||
*
|
||||
* Then the following usage would ensure that any files imported after this call would
|
||||
* be saved in the <tt>MyGhidraProject:/dir1/innerDir2</tt> folder.
|
||||
* be saved in the <code>MyGhidraProject:/dir1/innerDir2</code> folder.
|
||||
* <pre>
|
||||
* setHeadlessImportDirectory("dir1/innerDir2");
|
||||
* </pre>
|
||||
|
@ -330,8 +330,8 @@ public abstract class HeadlessScript extends GhidraScript {
|
|||
* If a file with the same name already exists in the desired location, it will only be
|
||||
* overwritten if "-overwrite" is true.
|
||||
* <p>
|
||||
* This method is only applicable when using the HeadlessAnalyzer <tt>-import</tt> mode and
|
||||
* is ineffective in <tt>-process</tt> mode.
|
||||
* This method is only applicable when using the HeadlessAnalyzer <code>-import</code> mode and
|
||||
* is ineffective in <code>-process</code> mode.
|
||||
*
|
||||
* @param importDir the absolute path (relative to root) where inputs will be saved
|
||||
* @throws ImproperUseException if not in headless mode or headless instance not set
|
||||
|
@ -372,7 +372,7 @@ public abstract class HeadlessScript extends GhidraScript {
|
|||
* <p>
|
||||
* Analysis will time out only in the case where:
|
||||
* <ol>
|
||||
* <li>the users has set an analysis timeout period using the <tt>-analysisTimeoutPerFile</tt>
|
||||
* <li>the users has set an analysis timeout period using the <code>-analysisTimeoutPerFile</code>
|
||||
* parameter</li>
|
||||
* <li>analysis is enabled and has completed</li>
|
||||
* <li>the current script is being run as a postScript (since postScripts run after
|
||||
|
|
|
@ -559,9 +559,9 @@ public class GoToQuery {
|
|||
//==================================================================================================
|
||||
|
||||
/**
|
||||
* A class to maintain our collection of open programs and to provide an <tt>Iterator</tt>
|
||||
* A class to maintain our collection of open programs and to provide an <code>Iterator</code>
|
||||
* when we need to process the collection. The {@link #iterator()} method has a side-effect
|
||||
* of putting the current program at the front of the <tt>Iterator</tt> so that the current
|
||||
* of putting the current program at the front of the <code>Iterator</code> so that the current
|
||||
* program is always searched first when processing the collection of programs.
|
||||
*/
|
||||
protected class ProgramGroup implements Iterable<Program> {
|
||||
|
|
|
@ -125,7 +125,7 @@ public class BoundedBufferedReader extends Reader {
|
|||
* Reads a single character.
|
||||
*
|
||||
* @return The character read, as an integer in the range 0 to 65535 (
|
||||
* <tt>0x00-0xffff</tt>), or -1 if the end of the stream has been
|
||||
* <code>0x00-0xffff</code>), or -1 if the end of the stream has been
|
||||
* reached
|
||||
* @exception IOException
|
||||
* If an I/O error occurs
|
||||
|
|
|
@ -38,7 +38,7 @@ public interface FieldMouseHandler {
|
|||
* @param mouseEvent The mouse event that triggered the click
|
||||
* @param serviceProvider A service provider used to access system resources.
|
||||
* @return true if this handler wishes to have exclusive handling rights to processing the
|
||||
* <tt>clickedObject</tt>
|
||||
* <code>clickedObject</code>
|
||||
* @see ListingField#getClickedObject(ghidra.util.bean.field.FieldLocation)
|
||||
*/
|
||||
public boolean fieldElementClicked(Object clickedObject, Navigatable sourceNavigatable,
|
||||
|
|
|
@ -39,10 +39,10 @@ import ghidra.util.SystemUtilities;
|
|||
* Examples (pipes shown in red since they are hard to see):
|
||||
* <ul>
|
||||
* <li><b>file://dir/subdir</b> -- simplest example, locates a file on local computer filesystem.
|
||||
* <li><b>file://dir/subdir/example.zip<font color="red">|</font>zip://readme.txt</b> -- points to a file named "readme.txt" in a zip file.
|
||||
* <li><b>file://dir/subdir/example.zip<font color="red">|</font>zip://dir/nested.tar<font color="red">|</font>tar://file.txt</b> -- points to
|
||||
* <li><b>file://dir/subdir/example.zip<span style="color:red">|</span>zip://readme.txt</b> -- points to a file named "readme.txt" in a zip file.
|
||||
* <li><b>file://dir/subdir/example.zip<span style="color:red">|</span>zip://dir/nested.tar<span style="color:red">|</span>tar://file.txt</b> -- points to
|
||||
* a file inside a TAR archive, which is inside a ZIP archive, which is on the local filesystem.
|
||||
* <li><b>file://dir/subdir/example.zip?MD5=1234567<font color="red">|</font>zip://readme.txt?MD5=987654</b> --
|
||||
* <li><b>file://dir/subdir/example.zip?MD5=1234567<span style="color:red">|</span>zip://readme.txt?MD5=987654</b> --
|
||||
* points to a file named "readme.txt" (with a MD5 hash) in a zip file (that has another
|
||||
* MD5 hash).
|
||||
* </ul>
|
||||
|
|
|
@ -600,7 +600,7 @@ public class FlatProgramAPI {
|
|||
* starting from the address. If the start address is null, then the find will start
|
||||
* from the minimum address of the program.
|
||||
* <p>
|
||||
* The <tt>byteString</tt> may contain regular expressions. The following
|
||||
* The <code>byteString</code> may contain regular expressions. The following
|
||||
* highlights some example search strings (note the use of double backslashes ("\\")):
|
||||
* <pre>
|
||||
* "\\x80" - A basic search pattern for a byte value of 0x80
|
||||
|
@ -629,7 +629,7 @@ public class FlatProgramAPI {
|
|||
* the given byte string, starting from the address. If the start address is null, then the
|
||||
* find will start from the minimum address of the program.
|
||||
* <p>
|
||||
* The <tt>byteString</tt> may contain regular expressions. The following
|
||||
* The <code>byteString</code> may contain regular expressions. The following
|
||||
* highlights some example search strings (note the use of double backslashes ("\\")):
|
||||
* <pre>
|
||||
* "\\x80" - A basic search pattern for a byte value of 0x80
|
||||
|
@ -655,7 +655,7 @@ public class FlatProgramAPI {
|
|||
* the given byte string, starting from the address. If the start address is null, then the
|
||||
* find will start from the minimum address of the program.
|
||||
* <p>
|
||||
* The <tt>byteString</tt> may contain regular expressions. The following
|
||||
* The <code>byteString</code> may contain regular expressions. The following
|
||||
* highlights some example search strings (note the use of double backslashes ("\\")):
|
||||
* <pre>
|
||||
* "\\x80" - A basic search pattern for a byte value of 0x80
|
||||
|
@ -699,7 +699,7 @@ public class FlatProgramAPI {
|
|||
*
|
||||
* Note: The ranges within the addressSet are NOT treated as a contiguous set when searching
|
||||
* <p>
|
||||
* The <tt>byteString</tt> may contain regular expressions. The following
|
||||
* The <code>byteString</code> may contain regular expressions. The following
|
||||
* highlights some example search strings (note the use of double backslashes ("\\")):
|
||||
* <pre>
|
||||
* "\\x80" - A basic search pattern for a byte value of 0x80
|
||||
|
@ -731,7 +731,7 @@ public class FlatProgramAPI {
|
|||
* treated as a contiguous set when searching.
|
||||
*
|
||||
* <p>
|
||||
* The <tt>byteString</tt> may contain regular expressions. The following
|
||||
* The <code>byteString</code> may contain regular expressions. The following
|
||||
* highlights some example search strings (note the use of double backslashes ("\\")):
|
||||
* <pre>
|
||||
* "\\x80" - A basic search pattern for a byte value of 0x80
|
||||
|
|
|
@ -130,7 +130,7 @@ public abstract class AbstractGhidraHeadlessIntegrationTest extends AbstractDock
|
|||
/**
|
||||
* Creates an in-memory program with the given language
|
||||
* @param name the program name
|
||||
* @param languageString a language string of the format <tt>x86:LE:32:default</tt>
|
||||
* @param languageString a language string of the format <code>x86:LE:32:default</code>
|
||||
* @param consumer a consumer for the program
|
||||
* @return a new program
|
||||
* @throws Exception if there is any issue creating the language
|
||||
|
@ -148,7 +148,7 @@ public abstract class AbstractGhidraHeadlessIntegrationTest extends AbstractDock
|
|||
/**
|
||||
* Creates an in-memory program with the given language
|
||||
* @param name the program name
|
||||
* @param languageString a language string of the format <tt>x86:LE:32:default</tt>
|
||||
* @param languageString a language string of the format <code>x86:LE:32:default</code>
|
||||
* @param compilerSpecID the ID
|
||||
* @param consumer a consumer for the program
|
||||
* @return a new program
|
||||
|
|
|
@ -38,7 +38,7 @@ import utility.function.ExceptionalFunction;
|
|||
* This class will create for you a tool, a {@link TestEnv} and will open the program
|
||||
* specified by {@link #getProgramName()}.
|
||||
*
|
||||
* <P>To use this class, you must call {@link #initialize()} from your test or <tt>setUp</tt>
|
||||
* <P>To use this class, you must call {@link #initialize()} from your test or <code>setUp</code>
|
||||
* method.
|
||||
*
|
||||
* <P>Note: if you are loading a pre-existing program, then simply override
|
||||
|
|
|
@ -67,7 +67,7 @@ public class TestEnv {
|
|||
|
||||
/**
|
||||
* Used to perform emergency cleanup. Tests are expected to call {@link #dispose()} in
|
||||
* their <tt>tearDown</tt> method. This is here to catch the case where the is some fatal
|
||||
* their <code>tearDown</code> method. This is here to catch the case where the is some fatal
|
||||
* error that prevents that from taking place.
|
||||
*/
|
||||
private static Set<TestEnv> instances = new HashSet<>();
|
||||
|
@ -362,7 +362,7 @@ public class TestEnv {
|
|||
* @param ghidraClass The class of the dialog the user desires
|
||||
* @param maxTimeMS The max amount of time in milliseconds to wait for the requested dialog
|
||||
* to appear.
|
||||
* @return The first occurrence of a dialog that extends the given <tt>ghirdraClass</tt>
|
||||
* @return The first occurrence of a dialog that extends the given <code>ghirdraClass</code>
|
||||
* @deprecated use instead {@link AbstractDockingTest#waitForDialogComponent(Class)}
|
||||
*/
|
||||
@Deprecated
|
||||
|
@ -480,7 +480,7 @@ public class TestEnv {
|
|||
|
||||
/**
|
||||
* This method differs from {@link #launchDefaultTool()} in that this method does not set the
|
||||
* <tt>tool</tt> variable in of this <tt>TestEnv</tt> instance.
|
||||
* <code>tool</code> variable in of this <code>TestEnv</code> instance.
|
||||
* @return the tool
|
||||
*/
|
||||
public PluginTool createDefaultTool() {
|
||||
|
|
|
@ -32,7 +32,7 @@ import ghidra.util.HelpLocation;
|
|||
import resources.Icons;
|
||||
|
||||
/**
|
||||
* <a name="description"></a>
|
||||
* <a id="description"></a>
|
||||
* An action used to trigger navigation callback on instances of {@link JTable}. Users can
|
||||
* toggle this action to control navigation that is based upon selection.
|
||||
* <p>
|
||||
|
|
|
@ -34,7 +34,7 @@ import ghidra.program.util.ProgramSelection;
|
|||
* Navigation is only supported if the underlying table model
|
||||
* implements <code>ProgramTableModel</code> and the <code>setGoToService()</code> method
|
||||
* has been called with a valid reference. When both of these conditions are met, then the
|
||||
* table will navigate on a user's double-click or on an <tt>Enter</tt> key press. Also, if
|
||||
* table will navigate on a user's double-click or on an <code>Enter</code> key press. Also, if
|
||||
* selection navigation is enabled, then this table will navigate <b>any time the selection of
|
||||
* the table changes</b>. To prevent this feature call
|
||||
* {@link #setNavigateOnSelectionEnabled(boolean)} with a value of false.
|
||||
|
@ -175,7 +175,7 @@ public class GhidraTable extends GTable {
|
|||
/**
|
||||
* Does nothing if no {@link GoToService} has been installed from
|
||||
* {@link #installNavigation(GoToService, Navigatable)}. Also, this method will do
|
||||
* nothing if this table's <tt>TableModel</tt> is not an instance of {@link ProgramTableModel}.
|
||||
* nothing if this table's <code>TableModel</code> is not an instance of {@link ProgramTableModel}.
|
||||
* Otherwise, this method will attempt to go to the program location denoted by the
|
||||
* given row and column.
|
||||
*
|
||||
|
@ -212,7 +212,7 @@ public class GhidraTable extends GTable {
|
|||
* to go to the program location denoted by the given row and column.
|
||||
* <p>
|
||||
* This method differs from {@link #navigate(int, int)} in that this method will not
|
||||
* navigate if {@link #navigateOnSelection} is <tt>false</tt>.
|
||||
* navigate if {@link #navigateOnSelection} is <code>false</code>.
|
||||
*/
|
||||
private void navigateOnCurrentSelection(int row, int column) {
|
||||
if (!navigateOnSelection) {
|
||||
|
|
|
@ -34,7 +34,7 @@ import docking.widgets.table.*;
|
|||
* <p>
|
||||
* This interface is an ExtensionPoint so that once created, they will be ingested automatically
|
||||
* by Ghidra. Once discovered, these mappers will be used to provide dynamic columns to to
|
||||
* tables with row types that match <tt>ROW_TYPE</tt>.
|
||||
* tables with row types that match <code>ROW_TYPE</code>.
|
||||
* <p>
|
||||
* This column is an extension of {@link TableRowMapper} that has knowledge of
|
||||
* {@link ProgramLocationTableColumn}s, which means that it knows how to generate
|
||||
|
|
|
@ -1364,7 +1364,7 @@ public abstract class AbstractScreenShotGenerator extends AbstractGhidraHeadedIn
|
|||
* screen coordinates. This allows you to capture a sub-component of a UI, drawing
|
||||
* rectangles around children of said sub-component.
|
||||
*
|
||||
* <P>If you are unsure of what to pass for <tt>root</tt>, the call
|
||||
* <P>If you are unsure of what to pass for <code>root</code>, the call
|
||||
* {@link #drawRectangleAround(JComponent, Color, int)} instead.
|
||||
*
|
||||
* @param component the component to be en-rectangled
|
||||
|
|
|
@ -28,7 +28,7 @@ import docking.action.DockingActionIf;
|
|||
* <b>toolbar buttons and menu items will enable and disable as the user interacts with the system.
|
||||
* Further, popup menu items will not be added to popup menus when they report false for
|
||||
* {@link DockingActionIf#isAddToPopup(ActionContext)}; they will appear in the popup, but be
|
||||
* disabled if they report <tt>true</tt> for the above call, but <tt>false</tt> for
|
||||
* disabled if they report <code>true</code> for the above call, but <code>false</code> for
|
||||
* {@link DockingActionIf#isEnabledForContext(ActionContext)}.</b>
|
||||
* When the user executes an action, the current context will be passed to the backing
|
||||
* {@link DockingActionIf}. Ultimately, context serves to control action enablement and to
|
||||
|
|
|
@ -175,7 +175,7 @@ public abstract class ComponentProvider implements HelpDescriptor, ActionContext
|
|||
public abstract JComponent getComponent();
|
||||
|
||||
/**
|
||||
* A method that allows children to set the <tt>instanceID</tt> to a desired value (useful for
|
||||
* A method that allows children to set the <code>instanceID</code> to a desired value (useful for
|
||||
* restoring saved IDs).
|
||||
* <p>
|
||||
* Note: this can be called only once during the lifetime of the calling instance; otherwise, an
|
||||
|
|
|
@ -1002,7 +1002,7 @@ public class DialogComponentProvider
|
|||
|
||||
/**
|
||||
* Sets the button to make "Default" when the dialog is shown. If no default button is
|
||||
* desired, then pass <tt>null</tt> as the <tt>button</tt> value.
|
||||
* desired, then pass <code>null</code> as the <code>button</code> value.
|
||||
* @param button the button to make default enabled.
|
||||
*/
|
||||
public void setDefaultButton(JButton button) {
|
||||
|
|
|
@ -148,7 +148,7 @@ public class DockingUtils {
|
|||
|
||||
/**
|
||||
* Checks if the mouseEvent has the "control" key down. On windows, this is actually
|
||||
* the <tt>control</tt> key. On Mac, it is the <tt>command</tt> key.
|
||||
* the <code>control</code> key. On Mac, it is the <code>command</code> key.
|
||||
*
|
||||
* @param mouseEvent the event to check
|
||||
* @return true if the control key is pressed
|
||||
|
@ -161,7 +161,7 @@ public class DockingUtils {
|
|||
|
||||
/**
|
||||
* Checks if the mouseEvent has the "control" key down. On windows, this is actually
|
||||
* the <tt>control</tt> key. On Mac, it is the <tt>command</tt> key.
|
||||
* the <code>control</code> key. On Mac, it is the <code>command</code> key.
|
||||
*
|
||||
* @param keyEvent the event to check
|
||||
* @return true if the control key is pressed
|
||||
|
@ -307,16 +307,16 @@ public class DockingUtils {
|
|||
* <p>
|
||||
* <u>Notes</u>
|
||||
* Historically, to make a component transparent you would call
|
||||
* {@link JComponent#setOpaque(boolean)} with a <tt>false</tt> value. However, it turns out
|
||||
* that the definition and the implementation of this method are at odds. <tt>setOpaque(false)</tt>
|
||||
* {@link JComponent#setOpaque(boolean)} with a <code>false</code> value. However, it turns out
|
||||
* that the definition and the implementation of this method are at odds. <code>setOpaque(false)</code>
|
||||
* is meant to signal that some part of the component is transparent, so the parent component
|
||||
* needs to be painted. Most LaFs implemented this by not painting the background of the
|
||||
* component, but used the parent's color instead. The Nimbus LaF actually honors the
|
||||
* contract of <tt>setOpaque()</tt>, which has the effect of painting the components
|
||||
* contract of <code>setOpaque()</code>, which has the effect of painting the components
|
||||
* background by default.
|
||||
* <p>
|
||||
* This method allows components to achieve transparency when they used to
|
||||
* rely on <tt>setOpaque(false)</tt>.
|
||||
* rely on <code>setOpaque(false)</code>.
|
||||
*
|
||||
* @param c the component to be made transparent
|
||||
*/
|
||||
|
|
|
@ -219,11 +219,11 @@ public class DockingWindowManager implements PropertyChangeListener, Placeholder
|
|||
}
|
||||
|
||||
/**
|
||||
* A convenience method for getting the window for <tt>component</tt> and then calling
|
||||
* A convenience method for getting the window for <code>component</code> and then calling
|
||||
* {@link #getInstanceForWindow(Window)}.
|
||||
* @param component The component for which to get the associated {@link DockingWindowManager}
|
||||
* instance.
|
||||
* @return The {@link DockingWindowManager} instance associated with <tt>component</tt>
|
||||
* @return The {@link DockingWindowManager} instance associated with <code>component</code>
|
||||
*/
|
||||
public static synchronized DockingWindowManager getInstance(Component component) {
|
||||
Window window = WindowUtilities.windowForComponent(component);
|
||||
|
@ -726,7 +726,7 @@ public class DockingWindowManager implements PropertyChangeListener, Placeholder
|
|||
* Hides or shows the component associated with the given provider.
|
||||
* <p><br>
|
||||
* <b>Note: </b> This method will not show the given provider if it has not previously been
|
||||
* added via <tt>addComponent(...)</tt>.
|
||||
* added via <code>addComponent(...)</code>.
|
||||
*
|
||||
* @param provider the provider of the component to be hidden or shown.
|
||||
* @param visibleState true to show the component, false to hide it.
|
||||
|
|
|
@ -33,7 +33,7 @@ import ghidra.util.exception.AssertException;
|
|||
* processing. See {@link #dispatchKeyEvent(KeyEvent)} for a more detailed explanation of how
|
||||
* Ghidra processes key events.
|
||||
* <p>
|
||||
* {@link #install()} must be called in order to install this <tt>Singleton</tt> into Java's
|
||||
* {@link #install()} must be called in order to install this <code>Singleton</code> into Java's
|
||||
* key event processing system.
|
||||
*/
|
||||
public class KeyBindingOverrideKeyEventDispatcher implements KeyEventDispatcher {
|
||||
|
@ -98,9 +98,9 @@ public class KeyBindingOverrideKeyEventDispatcher implements KeyEventDispatcher
|
|||
* There are some exceptions to this processing chain:
|
||||
* <ol>
|
||||
* <li>We don't do any processing when the focused component is an instance of
|
||||
* <tt>JTextComponent</tt>.</li>
|
||||
* <code>JTextComponent</code>.</li>
|
||||
* <li>We don't do any processing if the active window is an instance of
|
||||
* <tt>DockingDialog</tt>.</li>
|
||||
* <code>DockingDialog</code>.</li>
|
||||
* </ol>
|
||||
*
|
||||
* @see java.awt.KeyEventDispatcher#dispatchKeyEvent(java.awt.event.KeyEvent)
|
||||
|
|
|
@ -19,7 +19,7 @@ package docking;
|
|||
/**
|
||||
* An enum that holds the values for order of keybinding precedence, in order from
|
||||
* highest priority to lowest. For a more detailed description of how Ghidra processes
|
||||
* key events see <tt>ghidra.KeyBindingOverrideKeyDispatcher.dispatchKeyEvent(KeyEvent)</tt>
|
||||
* key events see <code>ghidra.KeyBindingOverrideKeyDispatcher.dispatchKeyEvent(KeyEvent)</code>
|
||||
*/
|
||||
public enum KeyBindingPrecedence {
|
||||
|
||||
|
|
|
@ -75,7 +75,7 @@ public class KeyBindingData {
|
|||
|
||||
/**
|
||||
* Updates the given data with system-independent versions of key modifiers. For example,
|
||||
* the <tt>control</tt> key will be converted to the <tt>command</tt> key on the Mac.
|
||||
* the <code>control</code> key will be converted to the <code>command</code> key on the Mac.
|
||||
* @param newKeyBindingData the data to validate
|
||||
* @return the potentially changed data
|
||||
*/
|
||||
|
|
|
@ -573,7 +573,7 @@ public class KeyBindingUtils {
|
|||
|
||||
/**
|
||||
* Updates the given data with system-independent versions of key modifiers. For example,
|
||||
* the <tt>control</tt> key will be converted to the <tt>command</tt> key on the Mac.
|
||||
* the <code>control</code> key will be converted to the <code>command</code> key on the Mac.
|
||||
*
|
||||
* @param keyStroke the keystroke to validate
|
||||
* @return the potentially changed keystroke
|
||||
|
|
|
@ -25,7 +25,7 @@ import java.awt.event.InputEvent;
|
|||
/**
|
||||
* This class receives notification when the user intitiates a
|
||||
* drag and drop operation; it is responsible for getting the
|
||||
* <tt>Transferable</tt> and telling the <TT>DragSource</TT> to
|
||||
* <code>Transferable</code> and telling the <code>DragSource</code> to
|
||||
* start the drag.
|
||||
*/
|
||||
public class DragGestureAdapter implements DragGestureListener {
|
||||
|
@ -44,11 +44,11 @@ public class DragGestureAdapter implements DragGestureListener {
|
|||
}
|
||||
|
||||
/**
|
||||
* A <tt>DragGestureRecognizer</tt> has detected a
|
||||
* A <code>DragGestureRecognizer</code> has detected a
|
||||
* platform-dependent Drag and Drop action initiating gesture
|
||||
* and is notifying this Listener in order for it to initiate
|
||||
* the action for the user.
|
||||
* <p>The <tt>DragGestureRecognizer</tt> hides the platform-specific
|
||||
* <p>The <code>DragGestureRecognizer</code> hides the platform-specific
|
||||
* events that initate a drag and drop operation.
|
||||
*
|
||||
* @param e event describing the gesture that has just occurred
|
||||
|
|
|
@ -23,7 +23,7 @@ import java.awt.dnd.*;
|
|||
* Adapter class that receives notifications in order to
|
||||
* provide drag over effects.
|
||||
* <p> When the operation ends, this class receives a
|
||||
* <tt>dragDropEnd</tt> message, and is responsible for
|
||||
* <code>dragDropEnd</code> message, and is responsible for
|
||||
* checking the success of the operation. If the operation was
|
||||
* successful, and if it was a Move, then
|
||||
* this class will remove the source data.
|
||||
|
|
|
@ -26,7 +26,7 @@ import java.util.ArrayList;
|
|||
/**
|
||||
* Class to handle notifications of drag and drop operations that occur
|
||||
* on the DropTarget object. The DropTarget is the component that accepts
|
||||
* drops during a drag and drop operation. The <tt>drop</tt>
|
||||
* drops during a drag and drop operation. The <code>drop</code>
|
||||
* method actually transfers the data.
|
||||
*/
|
||||
public class DropTgtAdapter implements DropTargetListener {
|
||||
|
|
|
@ -70,7 +70,7 @@ public interface HelpService {
|
|||
/**
|
||||
* Register help for a specific object.
|
||||
*
|
||||
* <P>Do not call this method will a <tt>null</tt> help location. Instead, to signal that
|
||||
* <P>Do not call this method will a <code>null</code> help location. Instead, to signal that
|
||||
* an item has no help, call {@link #excludeFromHelp(Object)}.
|
||||
*
|
||||
* @param helpObject the object to associate the specified help location with
|
||||
|
|
|
@ -21,9 +21,9 @@ import ghidra.util.HelpLocation;
|
|||
import ghidra.util.SystemUtilities;
|
||||
|
||||
/**
|
||||
* Note: this class overrides the <tt>equals(Object)</tt> and relies upon the <tt>equals</tt>
|
||||
* method of the <tt>userData</tt> object. Thus, if it is important that equals work for you in
|
||||
* the non-standard identity way, then you must override <tt>equals</tt> in your user data objects.
|
||||
* Note: this class overrides the <code>equals(Object)</code> and relies upon the <code>equals</code>
|
||||
* method of the <code>userData</code> object. Thus, if it is important that equals work for you in
|
||||
* the non-standard identity way, then you must override <code>equals</code> in your user data objects.
|
||||
*
|
||||
* @param <T> the type of the action state
|
||||
*/
|
||||
|
|
|
@ -44,7 +44,7 @@ import docking.util.GraphicsUtils;
|
|||
* <pre>
|
||||
* [Checkbox][Icon][Menu Item Content][Menu Pull-right/Accelerator Text]
|
||||
* </pre>
|
||||
* To display the <b>Menu Item Content</b> in a tabular fashion, use the <tt>'\t'</tt> character
|
||||
* To display the <b>Menu Item Content</b> in a tabular fashion, use the <code>'\t'</code> character
|
||||
* to delimit the data into columns. This class will align all menu items in the given menu
|
||||
* based upon the largest number of columns in the group and the largest width for each column.
|
||||
*/
|
||||
|
|
|
@ -31,7 +31,7 @@ public class MenuGroupMap {
|
|||
* Sets the group for the given menuPath
|
||||
* @param menuPath the menuPath for which to assign a group
|
||||
* @param group the name of the group for the action with the given menu path
|
||||
* @param menuSubGroup the name used for sorting items in the same <tt>group</tt>. If this
|
||||
* @param menuSubGroup the name used for sorting items in the same <code>group</code>. If this
|
||||
* value is {@link MenuData#NO_SUBGROUP}, then sorting is based upon the name of the
|
||||
* menu item.
|
||||
*/
|
||||
|
|
|
@ -75,8 +75,8 @@ public abstract class MultiActionDockingAction extends DockingAction
|
|||
}
|
||||
|
||||
/**
|
||||
* By default a click on this action will trigger <tt>actionPerformed()</tt> to be called.
|
||||
* You can call this method to disable that feature. When called with <tt>false</tt>, this
|
||||
* By default a click on this action will trigger <code>actionPerformed()</code> to be called.
|
||||
* You can call this method to disable that feature. When called with <code>false</code>, this
|
||||
* method will effectively let the user click anywhere on the button or its drop-down arrow
|
||||
* to show the popup menu. During normal operation, the user can only show the popup by
|
||||
* clicking the drop-down arrow.
|
||||
|
|
|
@ -99,9 +99,9 @@ public abstract class MultiStateDockingAction<T> extends DockingAction {
|
|||
public abstract void actionStateChanged(ActionState<T> newActionState, EventTrigger trigger);
|
||||
|
||||
/**
|
||||
* If <tt>doPerformAction</tt> is <tt>true</tt>, then, when the user clicks the
|
||||
* If <code>doPerformAction</code> is <code>true</code>, then, when the user clicks the
|
||||
* button and not the drop-down arrow, the {@link #doActionPerformed(ActionContext)}
|
||||
* method will be called. If <tt>doPerformAction</tt> is <tt>false</tt>, then, when
|
||||
* method will be called. If <code>doPerformAction</code> is <code>false</code>, then, when
|
||||
* the user clicks the button and not the drop-down arrow, the popup menu will be shown, just
|
||||
* as if the user had clicked the drop-down arrow.
|
||||
* <p>
|
||||
|
|
|
@ -75,8 +75,8 @@ public class MultipleActionDockingToolbarButton extends EmptyBorderButton {
|
|||
}
|
||||
|
||||
/**
|
||||
* By default a click on this button will trigger <tt>actionPerformed()</tt> to be called.
|
||||
* You can call this method to disable that feature. When called with <tt>false</tt>, this
|
||||
* By default a click on this button will trigger <code>actionPerformed()</code> to be called.
|
||||
* You can call this method to disable that feature. When called with <code>false</code>, this
|
||||
* method will effectively let the user click anywhere on the button or its drop-down arrow
|
||||
* to show the popup menu. During normal operation, the user can only show the popup by
|
||||
* clicking the drop-down arrow.
|
||||
|
|
|
@ -258,8 +258,8 @@ public abstract class AbstractDockingTest extends AbstractGenericTest {
|
|||
}
|
||||
|
||||
/**
|
||||
* Waits for a window with the given name. If <tt>parentWindow</tt> is not null, then it
|
||||
* will be used to find subordinate windows. If <tt>parentWindow</tt> is null, then all
|
||||
* Waits for a window with the given name. If <code>parentWindow</code> is not null, then it
|
||||
* will be used to find subordinate windows. If <code>parentWindow</code> is null, then all
|
||||
* existing frames will be searched.
|
||||
*
|
||||
* @param parentWindow The parent of the window for which to search, or null to search all
|
||||
|
@ -364,7 +364,7 @@ public abstract class AbstractDockingTest extends AbstractGenericTest {
|
|||
* Check for and display message component text associated with
|
||||
* ErrLogDialog and OptionDialog windows.
|
||||
* @param w any window
|
||||
* @return the message string if one can be found; <tt>null</tt> otherwise
|
||||
* @return the message string if one can be found; <code>null</code> otherwise
|
||||
*/
|
||||
public static String checkMessageDisplay(Window w) {
|
||||
Component c = findComponentByName(w, "MESSAGE-COMPONENT");
|
||||
|
@ -634,7 +634,7 @@ public abstract class AbstractDockingTest extends AbstractGenericTest {
|
|||
* Waits for the first window of the given class.
|
||||
*
|
||||
* @param ghidraClass The class of the dialog the user desires
|
||||
* @return The first occurrence of a dialog that extends the given <tt>ghirdraClass</tt>
|
||||
* @return The first occurrence of a dialog that extends the given <code>ghirdraClass</code>
|
||||
* @see #waitForDialogComponent(Window, Class, int)
|
||||
*/
|
||||
public static <T extends DialogComponentProvider> T waitForDialogComponent(
|
||||
|
@ -644,13 +644,13 @@ public abstract class AbstractDockingTest extends AbstractGenericTest {
|
|||
|
||||
/**
|
||||
* Waits for the first window of the given class. This method assumes that the desired dialog
|
||||
* is parented by <tt>parentWindow</tt>.
|
||||
* is parented by <code>parentWindow</code>.
|
||||
*
|
||||
* @param parentWindow The parent of the desired dialog; may be null
|
||||
* @param clazz The class of the dialog the user desires
|
||||
* @param timeoutMS The max amount of time in milliseconds to wait for the requested dialog
|
||||
* to appear.
|
||||
* @return The first occurrence of a dialog that extends the given <tt>ghirdraClass</tt>
|
||||
* @return The first occurrence of a dialog that extends the given <code>ghirdraClass</code>
|
||||
* @deprecated Instead call one of the methods that does not take a timeout
|
||||
* (we are standardizing timeouts). The timeouts passed to this method will
|
||||
* be ignored in favor of the standard value.
|
||||
|
@ -748,7 +748,7 @@ public abstract class AbstractDockingTest extends AbstractGenericTest {
|
|||
|
||||
/**
|
||||
* Searches for the first occurrence of a {@link ComponentProvider} that is an instance of
|
||||
* the given <tt>providerClass</tt>.
|
||||
* the given <code>providerClass</code>.
|
||||
*
|
||||
* @param clazz The class of the ComponentProvider to locate
|
||||
* @return The component provider, or null if one cannot be found
|
||||
|
@ -778,10 +778,10 @@ public abstract class AbstractDockingTest extends AbstractGenericTest {
|
|||
|
||||
/**
|
||||
* Searches for the first occurrence of a {@link ComponentProvider} that is an instance of
|
||||
* the given <tt>providerClass</tt>. This method will repeat the search every
|
||||
* the given <code>providerClass</code>. This method will repeat the search every
|
||||
* {@link #DEFAULT_WAIT_DELAY} milliseconds
|
||||
* until the provider is found, or the maximum number of searches has been reached, where
|
||||
* <tt>maximum number of searches = MaxTimeMS / {@link #DEFAULT_WAIT_DELAY} </tt>
|
||||
* <code>maximum number of searches = MaxTimeMS / {@link #DEFAULT_WAIT_DELAY} </code>
|
||||
*
|
||||
* @param clazz The class of the ComponentProvider to locate
|
||||
* @return The component provider, or null if one cannot be found
|
||||
|
@ -867,9 +867,9 @@ public abstract class AbstractDockingTest extends AbstractGenericTest {
|
|||
* <p>
|
||||
* Note: this method assumes the given node is not a RootNode, but a child thereof
|
||||
*
|
||||
* @param node The <tt>Node</tt> instance that contains the desired <tt>ComponentProvider</tt>
|
||||
* @param node The <code>Node</code> instance that contains the desired <code>ComponentProvider</code>
|
||||
* or other nodes.
|
||||
* @param providerClass The <tt>ComponentProvider</tt> class for which to search.
|
||||
* @param providerClass The <code>ComponentProvider</code> class for which to search.
|
||||
*/
|
||||
private static ComponentProvider getComponentProviderFromNode(Object node,
|
||||
Class<? extends ComponentProvider> providerClass) {
|
||||
|
@ -906,10 +906,10 @@ public abstract class AbstractDockingTest extends AbstractGenericTest {
|
|||
|
||||
/**
|
||||
* Searches for the first occurrence of a {@link ComponentProvider} that is an instance of
|
||||
* the given <tt>providerClass</tt>. This method will repeat the search every
|
||||
* the given <code>providerClass</code>. This method will repeat the search every
|
||||
* {@link #DEFAULT_WAIT_DELAY} milliseconds
|
||||
* until the provider is found, or the maximum number of searches has been reached, where
|
||||
* <tt>maximum number of searches = MaxTimeMS / {@link #DEFAULT_WAIT_DELAY} </tt>
|
||||
* <code>maximum number of searches = MaxTimeMS / {@link #DEFAULT_WAIT_DELAY} </code>
|
||||
*
|
||||
* @param parentWindow The window that will become the parent window of the provider (this is
|
||||
* typically the tool's frame).
|
||||
|
@ -1012,7 +1012,7 @@ public abstract class AbstractDockingTest extends AbstractGenericTest {
|
|||
|
||||
/**
|
||||
* Finds the toggle button with the given name inside of the given container and then
|
||||
* ensures that the selected state of the button matches <tt>selected</tt>.
|
||||
* ensures that the selected state of the button matches <code>selected</code>.
|
||||
* <p>
|
||||
* Note: this works for any instanceof {@link JToggleButton}, such as:
|
||||
* <ul>
|
||||
|
@ -1049,7 +1049,7 @@ public abstract class AbstractDockingTest extends AbstractGenericTest {
|
|||
}
|
||||
|
||||
/**
|
||||
* Ensures that the selected state of the button matches <tt>selected</tt>.
|
||||
* Ensures that the selected state of the button matches <code>selected</code>.
|
||||
* <p>
|
||||
* Note: this works for most toggle button implementations which are derived from
|
||||
* AbstractButton and relay on {@link AbstractButton#isSelected()} and
|
||||
|
|
|
@ -25,9 +25,9 @@ import javax.swing.ListSelectionModel;
|
|||
*
|
||||
* <P><b>Usage note:</b> Typically this text field will not be used directly, but will
|
||||
* instead be used indirectly by way of an editor.
|
||||
* If this field is used directly, then the user should use {@link #setSelectedValue(Object)} and
|
||||
* {@link #getSelectedValue()} to get and set data on this field, rather than calling
|
||||
* <strike>{@link #setText(String)}</strike> and <strike>{@link #getText()}</strike>.
|
||||
* If this field is used directly, then the user should use <ins>{@link #setSelectedValue(Object)}</ins> and
|
||||
* <ins>{@link #getSelectedValue()}</ins> to get and set data on this field, rather than calling
|
||||
* <del>{@link #setText(String)}</del> and <del>{@link #getText()}</del>.
|
||||
*
|
||||
* <P>Usage notes:
|
||||
* <UL>
|
||||
|
|
|
@ -28,7 +28,7 @@ import javax.swing.ListCellRenderer;
|
|||
public interface DropDownTextFieldDataModel<T> {
|
||||
|
||||
/**
|
||||
* Returns a list of data that matches the given <tt>searchText</tt>. A match typically
|
||||
* Returns a list of data that matches the given <code>searchText</code>. A match typically
|
||||
* means a "startsWith" match. A list is returned to allow for multiple matches.
|
||||
*
|
||||
* @param searchText The text used to find matches.
|
||||
|
|
|
@ -89,8 +89,8 @@ public class HyperlinkComponent extends JPanel {
|
|||
/**
|
||||
* Add a listener that will be called whenever hyperlink updates happen (hover, activate, etc).
|
||||
*
|
||||
* @param anchorName The value in the <tt>href</tt> attribute of the anchor tag.
|
||||
* @param listener The listener to be called when the anchor(s) with a matching <tt>href</tt> is
|
||||
* @param anchorName The value in the <code>href</code> attribute of the anchor tag.
|
||||
* @param listener The listener to be called when the anchor(s) with a matching <code>href</code> is
|
||||
* manipulated by the user.
|
||||
*/
|
||||
public void addHyperlinkListener(String anchorName, HyperlinkListener listener) {
|
||||
|
|
|
@ -41,10 +41,10 @@ import ghidra.util.exception.AssertException;
|
|||
* The primary type of
|
||||
* dialog provided herein is the basic option dialog that allows the user to specify the buttons
|
||||
* that appear on the dialog. By default, the given option text will appear as a button(s),
|
||||
* followed by a <tt>Cancel</tt> button (you can call the
|
||||
* followed by a <code>Cancel</code> button (you can call the
|
||||
* {@link #showOptionNoCancelDialog(Component, String, String, String, String, int)} methods if
|
||||
* you do not want a <tt>Cancel</tt> button. To use this type of dialog you can use the
|
||||
* various <b><tt>showOptionDialog*</tt></b> methods.
|
||||
* you do not want a <code>Cancel</code> button. To use this type of dialog you can use the
|
||||
* various <b><code>showOptionDialog*</code></b> methods.
|
||||
* </p>
|
||||
* <p>
|
||||
* Each of the option dialog methods will return a result, which is a number indicating the
|
||||
|
@ -70,8 +70,8 @@ import ghidra.util.exception.AssertException;
|
|||
* <h3>Yes/No Dialogs</h3><br>
|
||||
* <blockquote>
|
||||
* <p>
|
||||
* Finally, there are a series of methods that present <tt>Yes</tt> and <tt>No</tt> buttons in
|
||||
* a dialog. There are versions that do and do not have a <tt>Cancel</tt> button.
|
||||
* Finally, there are a series of methods that present <code>Yes</code> and <code>No</code> buttons in
|
||||
* a dialog. There are versions that do and do not have a <code>Cancel</code> button.
|
||||
* </p>
|
||||
* </blockquote>
|
||||
*
|
||||
|
@ -789,8 +789,8 @@ public class OptionDialog extends DialogComponentProvider {
|
|||
/**
|
||||
* Dialog with only YES/NO options, <b>no CANCEL</b>
|
||||
* <p>
|
||||
* The dialog shown by this method will have the <tt>No</tt> button set as the default button so
|
||||
* that an Enter key press will trigger a <tt>No</tt> action.
|
||||
* The dialog shown by this method will have the <code>No</code> button set as the default button so
|
||||
* that an Enter key press will trigger a <code>No</code> action.
|
||||
*
|
||||
* @param parent The parent component of this dialog. If the given component is
|
||||
* a frame or dialog, then the component will be used to parent the option dialog.
|
||||
|
|
|
@ -50,7 +50,7 @@ import ghidra.util.Swing;
|
|||
* is different than adding an option named "Cancel" which would return a result greater than
|
||||
* <code>0</code>, depending on where in the order it was added.
|
||||
*
|
||||
* <P><a name="RememberOption"></a>A "Remember Option" can be added to OptionDialog to
|
||||
* <P><a id="RememberOption"></a>A "Remember Option" can be added to OptionDialog to
|
||||
* present the user with a choice for remembering a dialog result and automatically
|
||||
* returning that result instead of showing the dialog or similar dialogs in the future.
|
||||
* Note that for simple OK dialogs, there really isn't a meaningful result to remember, other
|
||||
|
|
|
@ -163,7 +163,7 @@ public class GhidraComboBox<E> extends JComboBox<E> implements GComponent {
|
|||
* By default Ghidra disables the forwarding altogether, since most users of
|
||||
* {@link GhidraComboBox} will add an action listener to handle <Enter> actions.
|
||||
* <p>
|
||||
* To re-enable the default behavior, set the <tt>forwardEnter</tt> value to true.
|
||||
* To re-enable the default behavior, set the <code>forwardEnter</code> value to true.
|
||||
*
|
||||
* @param forwardEnter true to enable default <Enter> key handling.
|
||||
*/
|
||||
|
|
|
@ -41,7 +41,7 @@ public class InputWithChoicesDialog extends DialogComponentProvider {
|
|||
* can check the value of {@link #isCanceled()} to know whether or not
|
||||
* the user canceled the operation. To get the user selected value use the
|
||||
* {@link #getValue()} value(s) entered by the user. If the user cancelled the operation, then
|
||||
* null will be returned from <tt>getValue()</tt>.
|
||||
* null will be returned from <code>getValue()</code>.
|
||||
* <P>
|
||||
*
|
||||
* @param dialogTitle used as the name of the dialog's title bar
|
||||
|
@ -70,7 +70,7 @@ public class InputWithChoicesDialog extends DialogComponentProvider {
|
|||
* can check the value of {@link #isCanceled()} to know whether or not
|
||||
* the user canceled the operation. To get the user selected value use the
|
||||
* {@link #getValue()} value(s) entered by the user. If the user cancelled the operation, then
|
||||
* null will be returned from <tt>getValue()</tt>.
|
||||
* null will be returned from <code>getValue()</code>.
|
||||
* <P>
|
||||
*
|
||||
* @param dialogTitle used as the name of the dialog's title bar
|
||||
|
|
|
@ -39,7 +39,7 @@ public interface FieldElement {
|
|||
|
||||
/**
|
||||
* Returns the length of the text within this element. This is a convenience method for
|
||||
* calling <tt>getText().length()</tt>.
|
||||
* calling <code>getText().length()</code>.
|
||||
* @return the length of the text within this element.
|
||||
*/
|
||||
public int length();
|
||||
|
|
|
@ -26,8 +26,8 @@ import org.jdom.Element;
|
|||
* end row (exclusive).
|
||||
* <p>
|
||||
* Conceptually, this class can be thought of as a range of rows (defined by
|
||||
* <tt>startIndex</tt> and <tt>endindex</tt>) with sub-positions within those rows (defined by
|
||||
* <tt>startField</tt> and <tt>endField</tt>). As an example, consider a text select that begins on
|
||||
* <code>startIndex</code> and <code>endindex</code>) with sub-positions within those rows (defined by
|
||||
* <code>startField</code> and <code>endField</code>). As an example, consider a text select that begins on
|
||||
* some word in a row and ends on another word in a different row.
|
||||
*/
|
||||
public class FieldRange implements Comparable<FieldRange> {
|
||||
|
|
|
@ -63,7 +63,7 @@ public class FilterTextField extends JPanel {
|
|||
private WeakSet<Callback> enterListeners = WeakDataStructureFactory.createCopyOnWriteWeakSet();
|
||||
|
||||
/**
|
||||
* Constructs this text field with the given component. <tt>component</tt> may be null, but
|
||||
* Constructs this text field with the given component. <code>component</code> may be null, but
|
||||
* then this field will be unable to flash in response to focus events (see the header
|
||||
* documentation).
|
||||
*
|
||||
|
@ -75,7 +75,7 @@ public class FilterTextField extends JPanel {
|
|||
|
||||
/**
|
||||
* Constructs this text field with the given component and the preferred visible column
|
||||
* width. <tt>component</tt> may be null, but then this field will be able to flash in
|
||||
* width. <code>component</code> may be null, but then this field will be able to flash in
|
||||
* response to focus events (see the header documentation).
|
||||
* @param component The component needed to listen for focus changes, may be null.
|
||||
* @param columns The number of preferred visible columns (see JTextField)
|
||||
|
@ -164,15 +164,15 @@ public class FilterTextField extends JPanel {
|
|||
* <p>
|
||||
* Note: this method will not perform the alert if the minimum time between alerts
|
||||
* has not passed. To force the alter to take place, call {@link #alert(boolean)} with a
|
||||
* value of <tt>true</tt>.
|
||||
* value of <code>true</code>.
|
||||
*/
|
||||
public void alert() {
|
||||
alert(false);
|
||||
}
|
||||
|
||||
/**
|
||||
* This is the same as {@link #alert()} with the exception that a <tt>true</tt> value for
|
||||
* <tt>forceAlter</tt> will guarantee that the alert will happen. A <tt>false</tt> value
|
||||
* This is the same as {@link #alert()} with the exception that a <code>true</code> value for
|
||||
* <code>forceAlter</code> will guarantee that the alert will happen. A <code>false</code> value
|
||||
* will not perform the alert if the minimum time between alerts has not passed.
|
||||
* @param forceAlert true signals to force the alter to take place.
|
||||
* @see #alert()
|
||||
|
|
|
@ -270,7 +270,7 @@ public abstract class AbstractSortedTableModel<T> extends AbstractGTableModel<T>
|
|||
/**
|
||||
* A default sort method that uses the {@link Collections#sort(List, Comparator)} method for
|
||||
* sorting. Implementors with reasonably sized data sets can rely on this method. For data
|
||||
* sets that can become large, the <tt>ThreadedTableModel</tt> is the recommended base class,
|
||||
* sets that can become large, the <code>ThreadedTableModel</code> is the recommended base class,
|
||||
* as it handles loading/sorting/filtering in a threaded way.
|
||||
*
|
||||
* @param data The data to be sorted
|
||||
|
@ -303,7 +303,7 @@ public abstract class AbstractSortedTableModel<T> extends AbstractGTableModel<T>
|
|||
|
||||
/**
|
||||
* Fires an event to let the listeners (like JTable) know that things have been changed.
|
||||
* This method exists so that subclasses have a way to call the various <tt>tableChanged()</tt>
|
||||
* This method exists so that subclasses have a way to call the various <code>tableChanged()</code>
|
||||
* methods without triggering this class's overridden version.
|
||||
* @param dataChanged True signals that the actual data has changed; false signals that the
|
||||
* data is the same, with exception that attributes of that data may be different.
|
||||
|
|
|
@ -81,23 +81,23 @@ public class DiscoverableTableUtils {
|
|||
/**
|
||||
* Returns all "discovered" {@link AbstractDynamicTableColumn} classes that are compatible with the
|
||||
* given class, which represents the object for a table's row. For example, many tables use
|
||||
* <tt>Address</tt> as the row type. In this case, passing <tt>Address.class</tt> as the
|
||||
* <code>Address</code> as the row type. In this case, passing <code>Address.class</code> as the
|
||||
* parameter to this method will return all {@link AbstractDynamicTableColumn}s that can provide column
|
||||
* data by working with <tt>Address</tt> instances.
|
||||
* data by working with <code>Address</code> instances.
|
||||
*
|
||||
* <p><u>Usage Notes:</u> This class will not only discover {@link AbstractDynamicTableColumn}s
|
||||
* that directly support the given class type, but will also use discovered
|
||||
* {@link TableRowMapper} objects to create adapters that allow the
|
||||
* use of table row data that does not exactly match the supported type of discovered
|
||||
* {@link AbstractDynamicTableColumn} classes. For example, suppose that a table's row type is
|
||||
* <tt>Address</tt>. This methods will return at least all {@link AbstractDynamicTableColumn}s
|
||||
* that support <tt>Address</tt> data. In order to support extra columns, Ghidra has
|
||||
* created a {@link TableRowMapper} that can convert a <tt>ProgramLocation</tt> into an
|
||||
* <tt>Address</tt>. This method will find and use this mapper to return a
|
||||
* <code>Address</code>. This methods will return at least all {@link AbstractDynamicTableColumn}s
|
||||
* that support <code>Address</code> data. In order to support extra columns, Ghidra has
|
||||
* created a {@link TableRowMapper} that can convert a <code>ProgramLocation</code> into an
|
||||
* <code>Address</code>. This method will find and use this mapper to return a
|
||||
* {@link MappedTableColumn} instance (which is an {@link AbstractDynamicTableColumn}). By doing
|
||||
* this, any table that has <tt>Address</tt> objects as its row type can now use
|
||||
* {@link AbstractDynamicTableColumn}s that support <tt>ProgramLocations</tt> in addition to
|
||||
* <tt>Address</tt> objects. These mappers provide a way for tables that have non-standard
|
||||
* this, any table that has <code>Address</code> objects as its row type can now use
|
||||
* {@link AbstractDynamicTableColumn}s that support <code>ProgramLocations</code> in addition to
|
||||
* <code>Address</code> objects. These mappers provide a way for tables that have non-standard
|
||||
* Ghidra data as their row type to take advantage of existing dynamic columns for standard
|
||||
* Ghidra data (like ProgramLocations and Addresses).
|
||||
*
|
||||
|
@ -129,7 +129,7 @@ public class DiscoverableTableUtils {
|
|||
}
|
||||
|
||||
/**
|
||||
* If the given <tt>DynamicTableColumn</tt> is a match for the given <tt>rowTypeClass</tt>, then
|
||||
* If the given <code>DynamicTableColumn</code> is a match for the given <code>rowTypeClass</code>, then
|
||||
* it will be added to the given list.
|
||||
* <p>
|
||||
* <u>Implementation Notes:</u>
|
||||
|
@ -149,7 +149,7 @@ public class DiscoverableTableUtils {
|
|||
* @param rowTypeClass The class of the table's row data (with the same type as
|
||||
* COLUMN_ROW_TYPE)
|
||||
* @param tableColumn The column to add to the given collection if it supports the
|
||||
* given <tt>rowTypeClass</tt>.
|
||||
* given <code>rowTypeClass</code>.
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
// Each cast is checked below (see notes)
|
||||
|
@ -192,13 +192,13 @@ public class DiscoverableTableUtils {
|
|||
|
||||
/**
|
||||
* Returns a {@link TableRowMapper} for the given class types if one is found. The
|
||||
* returned mapper will know how to translate instances of <tt>fromType</tt> to
|
||||
* <tt>toType</tt>.
|
||||
* returned mapper will know how to translate instances of <code>fromType</code> to
|
||||
* <code>toType</code>.
|
||||
*
|
||||
* @param <ROW_TYPE> The type of row that is defined by the table
|
||||
* @param <EXPECTED_TYPE> The type of row object that is desired
|
||||
* @param fromType The <tt>Class</tt> object of the given row type
|
||||
* @param toType The <tt>Class</tt> object of the desired row type
|
||||
* @param fromType The <code>Class</code> object of the given row type
|
||||
* @param toType The <code>Class</code> object of the desired row type
|
||||
* @return a new TableRowMapper
|
||||
*/
|
||||
@SuppressWarnings({ "unchecked" }) // we verified before casting
|
||||
|
|
|
@ -38,7 +38,7 @@ import utilities.util.reflection.ReflectionUtilities;
|
|||
* made visible through the UI.
|
||||
* <p>
|
||||
* This model will also discover other system columns that understand how to render
|
||||
* <tt>ROW_TYPE</tt> data directly. Also, if you create a {@link TableRowMapper mapper}(s) for
|
||||
* <code>ROW_TYPE</code> data directly. Also, if you create a {@link TableRowMapper mapper}(s) for
|
||||
* your row type, then this model will load columns for each type for which a mapper was created,
|
||||
* all as optional, hidden columns.
|
||||
* <p>
|
||||
|
|
|
@ -236,7 +236,7 @@ public class GTable extends JTable {
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns the {@link SelectionManager} in use by this GTable. <tt>null</tt> is returned
|
||||
* Returns the {@link SelectionManager} in use by this GTable. <code>null</code> is returned
|
||||
* if the user has installed their own {@link ListSelectionModel}.
|
||||
*
|
||||
* @return the selection manager
|
||||
|
@ -880,7 +880,7 @@ public class GTable extends JTable {
|
|||
* <ul>
|
||||
* <li>Wrap tooltip text content with an <html> tag so that it is possible for
|
||||
* the content to be formatted in a manner that is easier for the user read, and</li>
|
||||
* <li>Enable any <tt>default</tt> {@link GTableCellRenderer} instances to render
|
||||
* <li>Enable any <code>default</code> {@link GTableCellRenderer} instances to render
|
||||
* HTML content, which they do not do by default.</li>
|
||||
* </ul>
|
||||
* <p>
|
||||
|
|
|
@ -62,7 +62,7 @@ import utility.function.Callback;
|
|||
* <u>Filter Reminder</u><br>
|
||||
* The filter text will flash as the table (by default) gains focus. This is done to remind the
|
||||
* user that the data has been filtered. To change the component that triggers the flashing use
|
||||
* {@link #setFocusComponent(Component)}, where the <tt>Component</tt> parameter is the
|
||||
* {@link #setFocusComponent(Component)}, where the <code>Component</code> parameter is the
|
||||
* component that will trigger focus flashing when it gains focus. To disable focus flashing,
|
||||
* pass in null to {@link #setFocusComponent(Component)}.
|
||||
* <p>
|
||||
|
@ -74,7 +74,7 @@ import utility.function.Callback;
|
|||
*
|
||||
* <b><u>Important Usage Notes</u></b>
|
||||
* <ul>
|
||||
* <li><b><a name="translation"></a>You must translate row values retrieved from the table using
|
||||
* <li><b><a id="translation"></a>You must translate row values retrieved from the table using
|
||||
* this panel.</b>
|
||||
* <p>
|
||||
* Since this class wraps the given table with a new model, you must use this class to
|
||||
|
@ -82,15 +82,15 @@ import utility.function.Callback;
|
|||
* code snippet below will give the incorrect value:
|
||||
* <pre>
|
||||
* JTable table = ...
|
||||
* <font color="red">int selectedRowNumber = table.getSelectedRow();</font>
|
||||
* <span style="color:red">int selectedRowNumber = table.getSelectedRow();</span>
|
||||
* </pre>
|
||||
* Instead, you must translate the returned value from above, as in the following snippet:
|
||||
* <pre>
|
||||
* JTable table = ...
|
||||
* <font color="green">
|
||||
* <span style="color:green">
|
||||
* int selectedRowNumber = table.getSelectedRow();
|
||||
* int modelRowNumber = tableFilterPanel.getModelRow( selectedRowNumber ); // see {@link #getModelRow(int)}
|
||||
* </font>
|
||||
* </span>
|
||||
* </pre>
|
||||
*
|
||||
* <li><b>This class may set a new model on the given table, which can affect how tables are sized.</b>
|
||||
|
@ -904,7 +904,7 @@ public class GTableFilterPanel<ROW_OBJECT> extends JPanel {
|
|||
* multiple instances created in the same place will cause them all to share the same key and
|
||||
* thus to have the same filter settings when they are created initially.
|
||||
* <p>
|
||||
* As an example, consider a plugin that creates <tt>n</tt> providers. If each provider uses
|
||||
* As an example, consider a plugin that creates <code>n</code> providers. If each provider uses
|
||||
* a filter panel, then each provider will share the same filter settings when that provider
|
||||
* is created. If this is not what you want, then you need to override this method to
|
||||
* generate a unique key for each provider.
|
||||
|
|
|
@ -28,7 +28,7 @@ import javax.swing.table.TableColumnModel;
|
|||
|
||||
/**
|
||||
* A GUI that provides a filterable table. You are required to provide the method names
|
||||
* of <TT>T</TT> that should be used to create columns in the table.
|
||||
* of <code>T</code> that should be used to create columns in the table.
|
||||
*
|
||||
* @param <T> the row object type that will be in the table
|
||||
*/
|
||||
|
|
|
@ -36,7 +36,7 @@ public interface RowObjectFilterModel<ROW_OBJECT> extends RowObjectTableModel<RO
|
|||
* <p>The downside of this is that we cache data for every completed filter. So, in a
|
||||
* degenerate case, with a large dataset, with many incremental filtering steps, where each
|
||||
* did not significantly reduce the previous set of data, the table could then consume
|
||||
* a large amount of memory, roughly equal to <tt>allData.size() * numberOfFilterSteps</tt>
|
||||
* a large amount of memory, roughly equal to <code>allData.size() * numberOfFilterSteps</code>
|
||||
*
|
||||
* <p>Most tables do not have enough data for this to have a significant impact.
|
||||
*/
|
||||
|
|
|
@ -59,7 +59,7 @@ public interface RowObjectTableModel<T> extends TableModel {
|
|||
* <b>Note: the index returned is always the 'view' index. For non-filtering table models,
|
||||
* the 'view' and the 'model' index are the same. However, for filtering table models,
|
||||
* the 'view' may be a subset of the 'model' index. Thus, it is possible, if this model
|
||||
* is a filtering model, that the given <tt>t</tt> may not have a row value for the current
|
||||
* is a filtering model, that the given <code>t</code> may not have a row value for the current
|
||||
* state of the model (i.e., when the model is filtered in the view. If you really need to
|
||||
* get the model index in such a situation, see {@link RowObjectFilterModel}.
|
||||
* </b>
|
||||
|
@ -74,7 +74,7 @@ public interface RowObjectTableModel<T> extends TableModel {
|
|||
* filtering, this will be the filtered version of the data. Furthermore, the data should be
|
||||
* the underlying data and not a copy, as this method will potentially sort the given data.
|
||||
* <p>
|
||||
* For those subclasses using an array, you may use the <tt>Arrays</tt> class to create
|
||||
* For those subclasses using an array, you may use the <code>Arrays</code> class to create
|
||||
* a list backed by the array ({@link Arrays#asList(Object...)}).
|
||||
* @return the model data.
|
||||
*/
|
||||
|
|
|
@ -30,7 +30,7 @@ import utilities.util.reflection.ReflectionUtilities;
|
|||
* <p>
|
||||
* This interface is an ExtensionPoint so that once created, they will be ingested automatically
|
||||
* by Ghidra. Once discovered, these mappers will be used to provide dynamic columns to to
|
||||
* tables with row types that match <tt>ROW_TYPE</tt>.
|
||||
* tables with row types that match <code>ROW_TYPE</code>.
|
||||
*
|
||||
* @param <ROW_TYPE> The row type of a given table model
|
||||
* @param <EXPECTED_ROW_TYPE> The row type expected by dynamic columns.
|
||||
|
|
|
@ -52,7 +52,7 @@ public interface VariableColumnTableModel extends TableModel {
|
|||
* Gets the count of the default columns for this model. This model may have non-default
|
||||
* columns added. This method will return the count of columns that have been setup
|
||||
* specifically by the table model. This method can be used to iterate of the first
|
||||
* <tt>n</tt> columns of this model in order to get information for the default columns by
|
||||
* <code>n</code> columns of this model in order to get information for the default columns by
|
||||
* calling methods like {@link #getColumnName(int)}.
|
||||
*
|
||||
* @return Gets the count of the default columns for this model.
|
||||
|
|
|
@ -85,7 +85,7 @@ public abstract class AbstractColumnConstraintEditor<T> implements ColumnConstra
|
|||
* <p>
|
||||
* Subclasses should override this method if they choose to provide a
|
||||
* detailed constraint editor. This is an optional feature, and this implementation
|
||||
* returns null to satisfy the <tt>ColumnConstraintEditor</tt> contract.
|
||||
* returns null to satisfy the <code>ColumnConstraintEditor</code> contract.
|
||||
*
|
||||
* @see #getDetailComponent()
|
||||
* @return the editors detail component; null in this implementation
|
||||
|
|
|
@ -73,7 +73,7 @@ public interface ColumnConstraintEditor<T> {
|
|||
|
||||
/**
|
||||
* If the editor contains and invalid value, this message should indicate
|
||||
* why the value is invalid. Only called if <tt>hasValidValue()</tt> returns false.
|
||||
* why the value is invalid. Only called if <code>hasValidValue()</code> returns false.
|
||||
* @return an error message, or an empty string if no error
|
||||
*/
|
||||
public String getErrorMessage();
|
||||
|
|
|
@ -93,8 +93,8 @@ public class EnumConstraintEditor<T extends Enum<T>> extends AbstractColumnConst
|
|||
* name for a value; this attempts to locate one such function within the Enum class.
|
||||
* <p>
|
||||
* This searches the enum class for a zero-argument, String-returning method called
|
||||
* <tt>getName()</tt>, <tt>getDisplayName()</tt>, or <tt>getDisplayString()</tt>
|
||||
* before falling back to <tt>toString()</tt>.
|
||||
* <code>getName()</code>, <code>getDisplayName()</code>, or <code>getDisplayString()</code>
|
||||
* before falling back to <code>toString()</code>.
|
||||
*
|
||||
* @return a more user-friendly name for the value
|
||||
*/
|
||||
|
|
|
@ -66,7 +66,7 @@ public class MappedColumnConstraintEditor<T, M> implements ColumnConstraintEdito
|
|||
}
|
||||
|
||||
/**
|
||||
* Sets the <tt>T</tt>-converted-to-<tt>W</tt> type in the delegate editor
|
||||
* Sets the <code>T</code>-converted-to-<code>W</code> type in the delegate editor
|
||||
* <p>
|
||||
* {@inheritDoc}
|
||||
*
|
||||
|
|
|
@ -19,7 +19,7 @@ import docking.widgets.table.TableFilter;
|
|||
|
||||
/**
|
||||
* A table filter that represents the state of having no filter. This allows us to not have to
|
||||
* use <tt>null</tt> to have multiple meanings.
|
||||
* use <code>null</code> to have multiple meanings.
|
||||
*
|
||||
* @param <ROW_OBJECT> the type of the row of the table model using this filter
|
||||
*/
|
||||
|
|
|
@ -46,7 +46,7 @@ import ghidra.util.task.TaskMonitor;
|
|||
* are no add/removes in the list, then that step does nothing.
|
||||
* <p>
|
||||
* Before the job completes, new calls to sort and filter can be called. If the job is past the
|
||||
* stage of the new call, the <tt>monitor</tt> is cancelled, causing the current stage to abort.
|
||||
* stage of the new call, the <code>monitor</code> is cancelled, causing the current stage to abort.
|
||||
* The next state of this job is set to the appropriate state for the call, the monitor is
|
||||
* reset, and the job begins executing the next stage, based upon the new call.
|
||||
*
|
||||
|
|
|
@ -74,9 +74,9 @@ public abstract class ThreadedTableModel<ROW_OBJECT, DATA_SOURCE>
|
|||
* This variable can be in one of three states:
|
||||
* <ul>
|
||||
* <li>null - signals that there is no filter change taking place</li>
|
||||
* <li>An instance of <tt>NullTableFitler</tt> - the client has removed the current
|
||||
* <li>An instance of <code>NullTableFitler</code> - the client has removed the current
|
||||
* filter by calling {@link #setTableFilter(TableFilter)} with a null value</li>
|
||||
* <li>An instance of a custom <tt>TableFitler</tt> - the client has changed the
|
||||
* <li>An instance of a custom <code>TableFitler</code> - the client has changed the
|
||||
* filter to a non-null value by calling {@link #setTableFilter(TableFilter)}</li>
|
||||
* </ul>
|
||||
*/
|
||||
|
@ -406,7 +406,7 @@ public abstract class ThreadedTableModel<ROW_OBJECT, DATA_SOURCE>
|
|||
|
||||
/**
|
||||
* Override this to change how filtering is performed. This implementation will do nothing
|
||||
* if a <tt>TableFilter</tt> has not been set via a call to {@link #setTableFilter(TableFilter)}.
|
||||
* if a <code>TableFilter</code> has not been set via a call to {@link #setTableFilter(TableFilter)}.
|
||||
*
|
||||
*
|
||||
* @param data The list of data to be filtered.
|
||||
|
@ -463,7 +463,7 @@ public abstract class ThreadedTableModel<ROW_OBJECT, DATA_SOURCE>
|
|||
}
|
||||
|
||||
/**
|
||||
* Sets the given <tt>TableFitler</tt> on this model. This table filter will then be used
|
||||
* Sets the given <code>TableFitler</code> on this model. This table filter will then be used
|
||||
* by this model in the default {@link #doFilter(List, TableSortingContext, TaskMonitor)}
|
||||
* method.
|
||||
* @param tableFitler The filter to use for table filtering.
|
||||
|
|
|
@ -23,7 +23,7 @@ import ghidra.util.task.TaskMonitor;
|
|||
* A version of {@link ThreadedTableModel} for clients that do not need a DATA_SOURCE.
|
||||
* <p>
|
||||
* <b>
|
||||
* Note: this class will change a <tt>null</tt> value for the {@link ServiceProvider} parameter
|
||||
* Note: this class will change a <code>null</code> value for the {@link ServiceProvider} parameter
|
||||
* to a stubbed version. If your model needs a real service provider, then you can pass a
|
||||
* non-null value.
|
||||
* </b>
|
||||
|
|
|
@ -319,7 +319,7 @@ public class GTree extends JPanel implements BusyListener {
|
|||
* state.
|
||||
* <p>
|
||||
* <b>Note: </b>See the usage note at the header of this class concerning how tree state
|
||||
* is used relative to the <tt>equals()</tt> method.
|
||||
* is used relative to the <code>equals()</code> method.
|
||||
* @return the saved state
|
||||
*/
|
||||
public GTreeState getTreeState() {
|
||||
|
@ -335,7 +335,7 @@ public class GTree extends JPanel implements BusyListener {
|
|||
* state object.
|
||||
* <p>
|
||||
* <b>Note: </b>See the usage note at the header of this class concerning how tree state
|
||||
* is used relative to the <tt>equals()</tt> method.
|
||||
* is used relative to the <code>equals()</code> method.
|
||||
*
|
||||
* @param state the state to restore
|
||||
*
|
||||
|
@ -1025,7 +1025,7 @@ public class GTree extends JPanel implements BusyListener {
|
|||
}
|
||||
|
||||
/**
|
||||
* Passing a value of <tt>false</tt> signals to disable the {@link JTree}'s default behavior
|
||||
* Passing a value of <code>false</code> signals to disable the {@link JTree}'s default behavior
|
||||
* of showing handles for leaf nodes until they are opened.
|
||||
*
|
||||
* @param enable False to disable the default JTree behavior
|
||||
|
|
|
@ -45,15 +45,15 @@ import util.CollectionUtils;
|
|||
* <li>getIcon()</li>
|
||||
* </ul>
|
||||
*
|
||||
* <a name="usage"></a>Usage Notes:
|
||||
* <a id="usage"></a>Usage Notes:
|
||||
* <ul>
|
||||
* <li>The <b><tt>equals()</tt></b> method: The <tt>GTree</tt> has the ability to remember expanded and
|
||||
* <li>The <b><code>equals()</code></b> method: The <code>GTree</code> has the ability to remember expanded and
|
||||
* selected states. This will only work if the nodes in the saved state can be matched
|
||||
* with the nodes in the <tt>GTree</tt>. Java will do this by using the <tt>equals()</tt> method.
|
||||
* There is a potential problem with this usage. If nodes within the <tt>GTree</tt> get rebuilt (
|
||||
* with the nodes in the <code>GTree</code>. Java will do this by using the <code>equals()</code> method.
|
||||
* There is a potential problem with this usage. If nodes within the <code>GTree</code> get rebuilt (
|
||||
* i.e., new nodes are created), then, by default, the expanded and selected state
|
||||
* feature will be unable to find the correct nodes, since the default <tt>equals()</tt>
|
||||
* method on <tt>GTreeNode</tt> performs a comparison based upon instances. To fix this problem,
|
||||
* feature will be unable to find the correct nodes, since the default <code>equals()</code>
|
||||
* method on <code>GTreeNode</code> performs a comparison based upon instances. To fix this problem,
|
||||
* the {@link #equals(Object)} method has been implemented such that nodes are considered equal if they have
|
||||
* the same name. The {@link #hashCode()} method will return the hash of the name. The name
|
||||
* attribute was chosen because it should be the most unique and descriptive piece of information
|
||||
|
|
|
@ -73,7 +73,7 @@ public class IntegerSignednessFormattingModeSettingsDefinition implements EnumSe
|
|||
}
|
||||
|
||||
/**
|
||||
* Set, or clear if <tt>mode</tt> is null, the new mode in the provided settings
|
||||
* Set, or clear if <code>mode</code> is null, the new mode in the provided settings
|
||||
* @param settings settings object
|
||||
* @param mode new value to assign, or null to clear
|
||||
*/
|
||||
|
|
|
@ -112,8 +112,8 @@ public class DockingWindowsLookAndFeelUtils {
|
|||
/**
|
||||
* Set the look and feel (LAF) indicated by the string passed in as a parameter.
|
||||
* The string value can be either the class name of the LAF, as returned by
|
||||
* <tt>LookAndFeelInfo.getClassName()</tt> or the name as returned by
|
||||
* <tt>LookAndFeelInfo.getName()</tt>.
|
||||
* <code>LookAndFeelInfo.getClassName()</code> or the name as returned by
|
||||
* <code>LookAndFeelInfo.getName()</code>.
|
||||
* <p>
|
||||
* Note: to be effective, this call needs to be made before any components have been created
|
||||
* and shown.
|
||||
|
|
|
@ -141,7 +141,7 @@ public class TaskBuilder {
|
|||
}
|
||||
|
||||
/**
|
||||
* Sets whether this task reports progress. The default is <tt>true</tt>.
|
||||
* Sets whether this task reports progress. The default is <code>true</code>.
|
||||
*
|
||||
* @param hasProgress true if the task reports progress
|
||||
* @return this builder
|
||||
|
@ -152,7 +152,7 @@ public class TaskBuilder {
|
|||
}
|
||||
|
||||
/**
|
||||
* Sets whether the task can be cancelled. The default is <tt>true</tt>.
|
||||
* Sets whether the task can be cancelled. The default is <code>true</code>.
|
||||
*
|
||||
* @param canCancel true if the task can be cancelled.
|
||||
* @return this builder
|
||||
|
@ -163,7 +163,7 @@ public class TaskBuilder {
|
|||
}
|
||||
|
||||
/**
|
||||
* Sets the component over which the task dialog will be shown. The default is <tt>null</tt>,
|
||||
* Sets the component over which the task dialog will be shown. The default is <code>null</code>,
|
||||
* which shows the dialog over the active window.
|
||||
*
|
||||
* @param parent the parent
|
||||
|
|
|
@ -28,7 +28,7 @@ import ghidra.util.Swing;
|
|||
* {@link #TaskLauncher(Task, Component, int, int)}. Alternatively, for simpler uses,
|
||||
* see one of the many static convenience methods.
|
||||
*
|
||||
* <p><b><a name="modal_usage">Modal Usage</a></b><br>
|
||||
* <p><b><a id="modal_usage">Modal Usage</a></b><br>
|
||||
* Most clients of this class should not be concerned with where
|
||||
* the dialog used by this class will appear. By default, it will be shown over
|
||||
* the active window, which is the desired
|
||||
|
|
|
@ -267,10 +267,10 @@ public class TaskMonitorComponent extends JPanel implements TaskMonitor {
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns true if {@link #setIndeterminate(boolean)} with a value of <tt>true</tt> has
|
||||
* Returns true if {@link #setIndeterminate(boolean)} with a value of <code>true</code> has
|
||||
* been called.
|
||||
*
|
||||
* @return true if {@link #setIndeterminate(boolean)} with a value of <tt>true</tt> has
|
||||
* @return true if {@link #setIndeterminate(boolean)} with a value of <code>true</code> has
|
||||
* been called.
|
||||
*/
|
||||
public boolean isIndeterminate() {
|
||||
|
|
|
@ -41,8 +41,8 @@ public abstract class CountingBasicFactory<T> implements BasicFactory<T> {
|
|||
* The method subclass use to create {@link T}s.
|
||||
*
|
||||
* @param itemNumber the number of the item being created--
|
||||
* <font size="5"><b>one-based</b></font>; the first item
|
||||
* is item <tt>1</tt>.
|
||||
* <span style="font-size:24px"><b>one-based</b></span>; the first item
|
||||
* is item <code>1</code>.
|
||||
* @return a new instance of {@link T}.
|
||||
* @throws Exception any Exception encountered during creation
|
||||
*/
|
||||
|
|
|
@ -53,23 +53,23 @@ import ghidra.util.task.TaskMonitor;
|
|||
* <hr>
|
||||
* <p>
|
||||
* <u>Put Items and Handle Results in Any Order as They Available:</u>
|
||||
* <pre>{@literal
|
||||
* QCallback<ITEM, RESULT> callback = new AbstractQCallback<ITEM, RESULT>() {
|
||||
* <pre>
|
||||
* {@literal QCallback<ITEM, RESULT> callback = new AbstractQCallback<ITEM, RESULT>()} {
|
||||
* public RESULT process(ITEM item, TaskMonitor monitor) {
|
||||
* // do work here...
|
||||
* }
|
||||
* };
|
||||
*
|
||||
* QItemListener<ITEM, RESULT> itemListener = new QItemListener<ITEM, RESULT>() {
|
||||
* public void itemProcessed(QResult<ITEM, RESULT> result) {
|
||||
* RESULT result = result.getResult();}
|
||||
* <font color="blue"><b>// work on my result...</b></font>{@code
|
||||
* {@literal QItemListener<ITEM, RESULT> itemListener = new QItemListener<ITEM, RESULT>()} {
|
||||
* {@literal public void itemProcessed(QResult<ITEM, RESULT> result)} {
|
||||
* RESULT result = result.getResult();
|
||||
* <span style="color:blue"><b>// work on my result...</b></span>
|
||||
* }
|
||||
* };
|
||||
*
|
||||
* ConcurrentQBuilder<ITEM, RESULT> builder = new ConcurrentQBuilder<ITEM, RESULT>();
|
||||
* {@literal ConcurrentQBuilder<ITEM, RESULT> builder = new ConcurrentQBuilder<ITEM, RESULT>();
|
||||
* builder.setThreadPoolName("Thread Pool Name");
|
||||
* }<font color="blue"><b>builder.setListener(itemListener);</b></font>{@code
|
||||
* }<span style="color:blue"><b>builder.setListener(itemListener);</b></span>
|
||||
* concurrentQ = builder.build(callback);
|
||||
* ...
|
||||
* ...
|
||||
|
@ -77,7 +77,7 @@ import ghidra.util.task.TaskMonitor;
|
|||
* concurrentQ.add(item);
|
||||
* concurrentQ.add(item);
|
||||
*
|
||||
* }</pre>
|
||||
* </pre>
|
||||
*
|
||||
* <hr>
|
||||
* <p>
|
||||
|
@ -91,7 +91,7 @@ import ghidra.util.task.TaskMonitor;
|
|||
*
|
||||
* ConcurrentQBuilder<ITEM, RESULT> builder = new ConcurrentQBuilder<ITEM, RESULT>();
|
||||
* builder.setThreadPoolName("Thread Pool Name");
|
||||
* }<font color="blue"><b>builder.setCollectResults(true);</b></font>{@code
|
||||
* }<span style="color:blue"><b>builder.setCollectResults(true);</b></span>{@code
|
||||
* concurrentQ = builder.getQueue(callback);
|
||||
* ...
|
||||
* ...
|
||||
|
@ -99,7 +99,7 @@ import ghidra.util.task.TaskMonitor;
|
|||
* concurrentQ.add(item);
|
||||
* concurrentQ.add(item);
|
||||
* ...
|
||||
* }<font color="blue"><b>{@literal List<QResult<I, R>> results = concurrentQ.waitForResults();}</b></font>{@literal
|
||||
* }<span style="color:blue"><b>{@literal List<QResult<I, R>> results = concurrentQ.waitForResults();}</b></span>{@literal
|
||||
* // process the results...
|
||||
*
|
||||
* }</pre>
|
||||
|
@ -122,19 +122,19 @@ import ghidra.util.task.TaskMonitor;
|
|||
*
|
||||
* ConcurrentQBuilder<ITEM, RESULT> builder = new ConcurrentQBuilder<ITEM, RESULT>();
|
||||
* builder.setThreadPoolName("Thread Pool Name");
|
||||
* }<font color="blue"><b>builder.setQueue(new LinkedBlockingQueue(100));</b></font>{@literal
|
||||
* }<span style="color:blue"><b>builder.setQueue(new LinkedBlockingQueue(100));</b></span>{@literal
|
||||
* concurrentQ = builder.getQueue(callback);
|
||||
* ...
|
||||
* ...
|
||||
* Iterator<ITEM> iterator = <get an iterator for 1000s of items somewhere>
|
||||
* }<font color="blue"><b>{@code concurrentQ.offer(iterator); // this call will block when the queue fills up (100 items or more)}</b></font>
|
||||
* }<span style="color:blue"><b>{@code concurrentQ.offer(iterator); // this call will block when the queue fills up (100 items or more)}</b></span>
|
||||
*
|
||||
* </pre>
|
||||
* <hr>
|
||||
*
|
||||
* @param <I> The type of the items to be processed.
|
||||
* @param <R> The type of objects resulting from processing an item; if you don't care about the
|
||||
* return value, then make this value whatever you want, like <tt>Object</tt> or the
|
||||
* return value, then make this value whatever you want, like <code>Object</code> or the
|
||||
* same value as {@link I} and return null from {@link QCallback#process(Object, TaskMonitor)}.
|
||||
*/
|
||||
public class ConcurrentQ<I, R> {
|
||||
|
@ -291,12 +291,12 @@ public class ConcurrentQ<I, R> {
|
|||
|
||||
/**
|
||||
* Allows clients to use a bounded queue (such as a {@link LinkedBlockingQueue} to control
|
||||
* how many items get placed into this queue at one time. Calling the <tt>add</tt> methods
|
||||
* how many items get placed into this queue at one time. Calling the <code>add</code> methods
|
||||
* will place all items into the queue, which for a large number of items, can consume a
|
||||
* large amount of memory. This method will block once the queue at maximum capacity,
|
||||
* continuing to add new items as existing items on the queue are processed.
|
||||
* <p>
|
||||
* To enable blocking on the queue when it is full, construct this <tt>ConcurrentQ</tt>
|
||||
* To enable blocking on the queue when it is full, construct this <code>ConcurrentQ</code>
|
||||
* with an instance of {@link BlockingQueue}.
|
||||
*
|
||||
* @param iterator An iterator from which items will be taken.
|
||||
|
@ -414,7 +414,7 @@ public class ConcurrentQ<I, R> {
|
|||
* exception, then you should instead use {@link #waitForResults()}. That method will return
|
||||
* all results, both with and without exceptions, which you can then process, including
|
||||
* checking for exceptions. Note that to use {@link #waitForResults()} to examine exceptions,
|
||||
* you must have created this queue with <tt>collectResults</tt> as true.
|
||||
* you must have created this queue with <code>collectResults</code> as true.
|
||||
*
|
||||
* @throws InterruptedException if interrupted while waiting for a result
|
||||
* @throws Exception any exception encountered while processing an item (this will cancel all
|
||||
|
|
|
@ -181,7 +181,7 @@ public class ConcurrentQBuilder<I, R> {
|
|||
/**
|
||||
* @see ConcurrentQ#setMonitor(TaskMonitor, boolean)
|
||||
* <p>
|
||||
* The default value is <tt>true</tt>.
|
||||
* The default value is <code>true</code>.
|
||||
*/
|
||||
public ConcurrentQBuilder<I, R> setCancelClearsAllJobs(boolean clearAllJobs) {
|
||||
this.cancelClearsAllJobs = clearAllJobs;
|
||||
|
|
|
@ -24,7 +24,7 @@ import ghidra.util.task.TaskMonitor;
|
|||
*
|
||||
* @param <I> The type of the items to be processed.
|
||||
* @param <R> The type of objects resulting from processing an item; if you don't care about the
|
||||
* return value, then make this value whatever you want, like <tt>Object</tt> or the
|
||||
* return value, then make this value whatever you want, like <code>Object</code> or the
|
||||
* same value as {@link I} and return null from {@link #process(Object, TaskMonitor) process(I, TaskMonitor)}.
|
||||
*/
|
||||
public interface QCallback<I, R> {
|
||||
|
|
|
@ -502,7 +502,7 @@ public abstract class AbstractGenericTest extends AbstractGTest {
|
|||
/**
|
||||
* Sets the instance field by the given name on the given object instance.
|
||||
* <p>
|
||||
* Note: if the field is static, then the <tt>ownerInstance</tt> field can
|
||||
* Note: if the field is static, then the <code>ownerInstance</code> field can
|
||||
* be the class of the object that contains the variable.
|
||||
*
|
||||
* @param fieldName The name of the field to retrieve.
|
||||
|
@ -524,7 +524,7 @@ public abstract class AbstractGenericTest extends AbstractGTest {
|
|||
* Gets the instance field by the given name on the given object instance.
|
||||
* The value is a primitive wrapper if it is a primitive type.
|
||||
* <p>
|
||||
* Note: if the field is static, then the <tt>ownerInstance</tt> field can
|
||||
* Note: if the field is static, then the <code>ownerInstance</code> field can
|
||||
* be the class of the object that contains the variable.
|
||||
*
|
||||
* @param fieldName The name of the field to retrieve.
|
||||
|
@ -570,9 +570,9 @@ public abstract class AbstractGenericTest extends AbstractGTest {
|
|||
/**
|
||||
* Uses reflection to execute the method denoted by the given method name.
|
||||
* If any value is returned from the method execution, then it will be
|
||||
* returned from this method. Otherwise, <tt>null</tt> is returned.
|
||||
* returned from this method. Otherwise, <code>null</code> is returned.
|
||||
* <p>
|
||||
* Note: if the method is static, then the <tt>ownerInstance</tt> field can
|
||||
* Note: if the method is static, then the <code>ownerInstance</code> field can
|
||||
* be the class of the object that contains the method.
|
||||
*
|
||||
* @param methodName The name of the method to execute.
|
||||
|
@ -1775,7 +1775,7 @@ public abstract class AbstractGenericTest extends AbstractGTest {
|
|||
/**
|
||||
* Creates a file path with a filename that is under the system temp
|
||||
* directory. The path returned will not point to an existing file. The
|
||||
* suffix of the file will be <tt>.tmp</tt>.
|
||||
* suffix of the file will be <code>.tmp</code>.
|
||||
*
|
||||
* @param name the filename
|
||||
* @return a new file path
|
||||
|
@ -1839,7 +1839,7 @@ public abstract class AbstractGenericTest extends AbstractGTest {
|
|||
* prefix and the given suffix. The final filename will also include the
|
||||
* current test name, as well as any data added by
|
||||
* {@link File#createTempFile(String, String)}. The file suffix will be
|
||||
* <tt>.tmp</tt>
|
||||
* <code>.tmp</code>
|
||||
* <p>
|
||||
* The file will be marked to delete on JVM exit. This will not work if the
|
||||
* JVM is taken down the hard way, as when pressing the stop button in
|
||||
|
|
|
@ -51,7 +51,7 @@ public class TestUtils {
|
|||
* Sets the instance field by the given name on the given object
|
||||
* instance.
|
||||
* <p>
|
||||
* Note: if the field is static, then the <tt>ownerInstance</tt> field
|
||||
* Note: if the field is static, then the <code>ownerInstance</code> field
|
||||
* can be the class of the object that contains the variable.
|
||||
*
|
||||
* @param fieldName The name of the field to retrieve.
|
||||
|
@ -92,7 +92,7 @@ public class TestUtils {
|
|||
* Gets the instance field by the given name on the given object
|
||||
* instance. The value is a primitive wrapper if it is a primitive type.
|
||||
* <p>
|
||||
* Note: if the field is static, then the <tt>ownerInstance</tt> field
|
||||
* Note: if the field is static, then the <code>ownerInstance</code> field
|
||||
* can be the class of the object that contains the variable.
|
||||
*
|
||||
* @param fieldName The name of the field to retrieve.
|
||||
|
@ -168,9 +168,9 @@ public class TestUtils {
|
|||
/**
|
||||
* Uses reflection to execute the method denoted by the given method
|
||||
* name. If any value is returned from the method execution, then it
|
||||
* will be returned from this method. Otherwise, <tt>null</tt> is returned.
|
||||
* will be returned from this method. Otherwise, <code>null</code> is returned.
|
||||
* <p>
|
||||
* Note: if the method is static, then the <tt>ownerInstance</tt> field
|
||||
* Note: if the method is static, then the <code>ownerInstance</code> field
|
||||
* can be the class of the object that contains the method.
|
||||
*
|
||||
* @param methodName The name of the method to execute.
|
||||
|
@ -226,9 +226,9 @@ public class TestUtils {
|
|||
/**
|
||||
* Uses reflection to execute the method denoted by the given method
|
||||
* name. If any value is returned from the method execution, then it
|
||||
* will be returned from this method. Otherwise, <tt>null</tt> is returned.
|
||||
* will be returned from this method. Otherwise, <code>null</code> is returned.
|
||||
* <p>
|
||||
* Note: if the method is static, then the <tt>ownerInstance</tt> field
|
||||
* Note: if the method is static, then the <code>ownerInstance</code> field
|
||||
* can be the class of the object that contains the method.
|
||||
*
|
||||
* <P>This method is just a convenience for calling
|
||||
|
@ -264,9 +264,9 @@ public class TestUtils {
|
|||
/**
|
||||
* Uses reflection to execute the method denoted by the given method
|
||||
* name. If any value is returned from the method execution, then it
|
||||
* will be returned from this method. Otherwise, <tt>null</tt> is returned.
|
||||
* will be returned from this method. Otherwise, <code>null</code> is returned.
|
||||
* <p>
|
||||
* Note: if the method is static, then the <tt>ownerInstance</tt> field
|
||||
* Note: if the method is static, then the <code>ownerInstance</code> field
|
||||
* can be the class of the object that contains the method.
|
||||
*
|
||||
* <P>If the method you are calling takes no parameters, then call
|
||||
|
@ -305,9 +305,9 @@ public class TestUtils {
|
|||
/**
|
||||
* Uses reflection to execute the method denoted by the given method
|
||||
* name. If any value is returned from the method execution, then it
|
||||
* will be returned from this method. Otherwise, <tt>null</tt> is returned.
|
||||
* will be returned from this method. Otherwise, <code>null</code> is returned.
|
||||
* <p>
|
||||
* Note: if the method is static, then the <tt>ownerInstance</tt> field
|
||||
* Note: if the method is static, then the <code>ownerInstance</code> field
|
||||
* can be the class of the object that contains the method.
|
||||
*
|
||||
* <P><B>Warning: The exact class of each <CODE>arg</CODE> will be used as the class type
|
||||
|
@ -458,9 +458,9 @@ public class TestUtils {
|
|||
}
|
||||
|
||||
/**
|
||||
* Locates the method of the name <tt>methodName</tt> on the given
|
||||
* Locates the method of the name <code>methodName</code> on the given
|
||||
* class. If the given class does not contain the method, then this
|
||||
* method will recursively call up <tt>containingClass</tt>'s
|
||||
* method will recursively call up <code>containingClass</code>'s
|
||||
* implementation tree looking for a parent implementation of the
|
||||
* requested method.
|
||||
*
|
||||
|
|
|
@ -20,7 +20,7 @@ import java.util.*;
|
|||
import ghidra.util.exception.AssertException;
|
||||
|
||||
/**
|
||||
* An iterator that is comprised of one or more {@link PeekableIterator}s. The type <tt>T</tt> of the
|
||||
* An iterator that is comprised of one or more {@link PeekableIterator}s. The type <code>T</code> of the
|
||||
* the iterators must either implement {@link Comparable} directly or you must provide a
|
||||
* {@link Comparator} for comparing the types. Further, it is assumed that the iterators return
|
||||
* values in sorted order. If the sorted order is reversed, then that must be indicated in
|
||||
|
|
|
@ -27,7 +27,7 @@ public interface PeekableIterator<T> extends Iterator<T> {
|
|||
|
||||
/**
|
||||
* Returns the item that would be returned by calling {@link #next()}, but does not
|
||||
* increment the iterator as <tt>next</tt> would.
|
||||
* increment the iterator as <code>next</code> would.
|
||||
*
|
||||
* @return the item that would be returned by calling {@link #next()}
|
||||
*/
|
||||
|
|
|
@ -217,12 +217,12 @@ public class WindowUtilities {
|
|||
}
|
||||
|
||||
/**
|
||||
* Creates a point that is centered over the given <tt>parent</tt> component, based upon
|
||||
* the size of the given <tt>child</tt>.
|
||||
* Creates a point that is centered over the given <code>parent</code> component, based upon
|
||||
* the size of the given <code>child</code>.
|
||||
* @param parent The component over which to center the child.
|
||||
* @param child The component which will be centered over the parent
|
||||
* @return a point that is centered over the given <tt>parent</tt> component, based upon
|
||||
* the size of the given <tt>child</tt>.
|
||||
* @return a point that is centered over the given <code>parent</code> component, based upon
|
||||
* the size of the given <code>child</code>.
|
||||
*/
|
||||
public static Point centerOnComponent(Component parent, Component child) {
|
||||
Dimension parentSize = parent.getSize();
|
||||
|
|
|
@ -269,7 +269,7 @@ public class ImageUtils {
|
|||
}
|
||||
|
||||
/**
|
||||
* Writes the given icon out to the file denoted by <tt>filename</tt> <b> in the PNG format</b>.
|
||||
* Writes the given icon out to the file denoted by <code>filename</code> <b> in the PNG format</b>.
|
||||
*
|
||||
* @param icon the icon to write
|
||||
* @param filename the filename denoting the write destination
|
||||
|
@ -412,13 +412,13 @@ public class ImageUtils {
|
|||
|
||||
/**
|
||||
* Takes in RGB pixel data and then converts the pixel into a gray color with a brightness
|
||||
* based upon <tt>brightnessPercent</tt>.
|
||||
* based upon <code>brightnessPercent</code>.
|
||||
*
|
||||
* @param rgbPixels The RGB pixel data for a given pixel.
|
||||
* @param destination The converted pixel data.
|
||||
* @param brightnessPercent The amount of brightness to include in the gray value, where 100
|
||||
* percent is the brightest possible value.
|
||||
* @return The <tt>destination</tt> array filled with the new pixel data.
|
||||
* @return The <code>destination</code> array filled with the new pixel data.
|
||||
*/
|
||||
private static int[] filterRgbDisabledImage(int[] rgbPixels, int[] destination,
|
||||
int brightnessPercent) {
|
||||
|
|
|
@ -579,7 +579,7 @@ public class Application {
|
|||
* <b>Note: Be sure you understand that there may be multiple application root
|
||||
* directories in development mode.</b> In general you should not be using this method for
|
||||
* searching for files yourself, but instead using
|
||||
* the various <tt>find*</tt> methods of this class.
|
||||
* the various <code>find*</code> methods of this class.
|
||||
*
|
||||
* @return Returns the application root directory.
|
||||
* @see #getApplicationRootDirectories()
|
||||
|
|
|
@ -192,7 +192,7 @@ public class Preferences {
|
|||
/**
|
||||
* Get the property with the given name.
|
||||
* <p>
|
||||
* Note: all <tt>getProperty(...)</tt> methods will first check {@link System#getProperty(String)}
|
||||
* Note: all <code>getProperty(...)</code> methods will first check {@link System#getProperty(String)}
|
||||
* for a value first. This allows users to override preferences from the command-line.
|
||||
*/
|
||||
public static String getProperty(String name) {
|
||||
|
@ -208,7 +208,7 @@ public class Preferences {
|
|||
/**
|
||||
* Get the property with the given name; if there is no property, return the defaultValue.
|
||||
* <p>
|
||||
* Note: all <tt>getProperty(...)</tt> methods will first check {@link System#getProperty(String)}
|
||||
* Note: all <code>getProperty(...)</code> methods will first check {@link System#getProperty(String)}
|
||||
* for a value first. This allows users to override preferences from the command-line.
|
||||
*
|
||||
* @see #getProperty(String, String, boolean)
|
||||
|
@ -226,10 +226,10 @@ public class Preferences {
|
|||
/**
|
||||
* Get the property with the given name; if there is no property, return the defaultValue.
|
||||
* <p>
|
||||
* This version of <tt>getProperty</tt> will, when <tt>useHistoricalValue</tt> is true, look
|
||||
* This version of <code>getProperty</code> will, when <code>useHistoricalValue</code> is true, look
|
||||
* for the given preference value in the last used installation of the application.
|
||||
* <p>
|
||||
* Note: all <tt>getProperty(...)</tt> methods will first check {@link System#getProperty(String)}
|
||||
* Note: all <code>getProperty(...)</code> methods will first check {@link System#getProperty(String)}
|
||||
* for a value first. This allows users to override preferences from the command-line.
|
||||
*
|
||||
* @param name The name of the property for which to get a value
|
||||
|
|
|
@ -117,10 +117,10 @@ public class CascadedDropTarget extends DropTarget {
|
|||
/**
|
||||
* Removes the given drop target from anywhere within the tree of CascadedDropTargets.
|
||||
*
|
||||
* If the given <tt>dropTarget</tt> is an immediate child of this CascadedDropTarget (CDT), then
|
||||
* If the given <code>dropTarget</code> is an immediate child of this CascadedDropTarget (CDT), then
|
||||
* the other child is returned. Otherwise, a reference to this CDT will be returned with the
|
||||
* given <tt>dropTarget</tt> having been removed from one of this CDT's children. This method
|
||||
* effectively removes the given <tt>dropTarget</tt> from the hierarchy and collapses the tree
|
||||
* given <code>dropTarget</code> having been removed from one of this CDT's children. This method
|
||||
* effectively removes the given <code>dropTarget</code> from the hierarchy and collapses the tree
|
||||
* structure as needed.
|
||||
*
|
||||
* @param dropTarget The target to remove
|
||||
|
|
|
@ -34,7 +34,7 @@ import utilities.util.reflection.ReflectionUtilities;
|
|||
*
|
||||
* <P>Many clients use this class to render content as HTML. Below are a few use cases along
|
||||
* with the method that should be used for each.
|
||||
* <TABLE BORDER="1">
|
||||
* <TABLE BORDER="1"><caption></caption>
|
||||
* <TR>
|
||||
* <TH>Use Case</TH><TH>Function</TH><TH>Description</TH>
|
||||
* </TR>
|
||||
|
@ -355,14 +355,14 @@ public class HTMLUtilities {
|
|||
|
||||
/**
|
||||
* Returns the given text wrapped in {@link #LINK_PLACEHOLDER_OPEN} and close tags.
|
||||
* If <tt>foo</tt> is passed for the HTML text, with a content value of <tt>123456</tt>, then
|
||||
* If <code>foo</code> is passed for the HTML text, with a content value of <code>123456</code>, then
|
||||
* the output will look like:
|
||||
* <pre>
|
||||
* <!-- LINK CONTENT="123456" -->foo<!-- /LINK -->
|
||||
* </pre>
|
||||
*
|
||||
* @param htmlText the HTML text to wrap
|
||||
* @param content the value that will be put into the <tt>CONTENT</tt> section of the
|
||||
* @param content the value that will be put into the <code>CONTENT</code> section of the
|
||||
* generated HTML. This can later be retrieved by clients transforming this text.
|
||||
* @return the wrapped text
|
||||
*/
|
||||
|
@ -375,8 +375,8 @@ public class HTMLUtilities {
|
|||
|
||||
/**
|
||||
* Takes HTML text wrapped by {@link #wrapWithLinkPlaceholder(String, String)} and replaces
|
||||
* the custom link comment tags with HTML anchor (<tt>A</tt>) tags, where the <tt>HREF</tt>
|
||||
* value is the value that was in the <tt>CONTENT</tt> attribute.
|
||||
* the custom link comment tags with HTML anchor (<code>A</code>) tags, where the <code>HREF</code>
|
||||
* value is the value that was in the <code>CONTENT</code> attribute.
|
||||
*
|
||||
* @param text the text for which to replace the markup
|
||||
* @return the updated text
|
||||
|
@ -428,9 +428,9 @@ public class HTMLUtilities {
|
|||
/**
|
||||
* Similar to {@link #toHTML(String)} in that it will wrap the given text in
|
||||
* HTML tags and split the content into multiple lines. The difference is that this method
|
||||
* will split lines that pass the given maximum length <b>and</b> on <tt>'\n'</tt>
|
||||
* will split lines that pass the given maximum length <b>and</b> on <code>'\n'</code>
|
||||
* characters. Alternatively, {@link #toHTML(String)} will only split the given
|
||||
* text on <tt>'\n'</tt> characters.
|
||||
* text on <code>'\n'</code> characters.
|
||||
*
|
||||
* @param text The text to convert
|
||||
* @param maxLineLength The maximum number of characters that should appear in a line;
|
||||
|
@ -487,7 +487,7 @@ public class HTMLUtilities {
|
|||
*
|
||||
* <P>For example, consider the following<br><br>
|
||||
*
|
||||
* <table border=1>
|
||||
* <table border=1><caption></caption>
|
||||
* <tr>
|
||||
* <th>Input</th><th>Output</th><th>Rendered as</th><th>(Without Friendly Encoding)</th>
|
||||
* </tr>
|
||||
|
@ -496,10 +496,10 @@ public class HTMLUtilities {
|
|||
* Hi <b>mom </b>
|
||||
* </td>
|
||||
* <td>
|
||||
* Hi<font color="green">
|
||||
* &nbsp;<b>&lt;</b></font>b<font color="green"><b>&gt;</b></font>mom
|
||||
* <font color="green">&nbsp;<b>&lt;</b></font>/b<font color="green"><b>&gt;</b>
|
||||
* </font>
|
||||
* Hi<span style="color:green">
|
||||
* &nbsp;<b>&lt;</b></span>b<span style="color:green"><b>&gt;</b></span>mom
|
||||
* <span style="color:green">&nbsp;<b>&lt;</b></span>/b<span style="color:green"><b>&gt;</b>
|
||||
* </span>
|
||||
* </td>
|
||||
* <td>
|
||||
* Hi <b>mom </b>
|
||||
|
|
|
@ -44,7 +44,7 @@ public class HelpLocation {
|
|||
* An html file contained within the specified help topic directory must have an Anchor
|
||||
* defined using the specified anchor name.
|
||||
* <p>
|
||||
* <b>Note:</b> You can specify a <tt>null</tt> anchor value. In that case, the given topic
|
||||
* <b>Note:</b> You can specify a <code>null</code> anchor value. In that case, the given topic
|
||||
* will be searched for a file with the same name as the topic. If such a file exists,
|
||||
* then that file will be used as the file for this location. If no such file exists, then
|
||||
* the help file to use <b>cannot be resolved</b>. Therefore, it is best to always specify
|
||||
|
@ -62,7 +62,7 @@ public class HelpLocation {
|
|||
* An html file contained within the specified help topic directory must have an Anchor
|
||||
* defined using the specified anchor name.
|
||||
* <p>
|
||||
* <b>Note:</b> You can specify a <tt>null</tt> anchor value. In that case, the given topic
|
||||
* <b>Note:</b> You can specify a <code>null</code> anchor value. In that case, the given topic
|
||||
* will be searched for a file with the same name as the topic. If such a file exists,
|
||||
* then that file will be used as the file for this location. If no such file exists, then
|
||||
* the help file to use <b>cannot be resolved</b>. Therefore, it is best to always specify
|
||||
|
|
|
@ -497,7 +497,7 @@ public final class NumericUtilities {
|
|||
/**
|
||||
* Render <code>number</code> in different bases using the default signedness mode.
|
||||
* <p>This invokes {@linkplain #formatNumber(long, int, SignednessFormatMode)} with a
|
||||
* <tt>mode</tt> parameter of <tt>{@linkplain SignednessFormatMode#DEFAULT}</tt>.
|
||||
* <code>mode</code> parameter of <code>{@linkplain SignednessFormatMode#DEFAULT}</code>.
|
||||
*
|
||||
* @param number The number to represent
|
||||
* @param radix the base in which <code>number</code> is represented
|
||||
|
@ -511,29 +511,29 @@ public final class NumericUtilities {
|
|||
/**
|
||||
* Provide renderings of <code>number</code> in different bases:
|
||||
* <ul>
|
||||
* <li> 0 - renders <code>number</code> as an escaped character sequence</li>
|
||||
* <li> 2 - renders <code>number</code> as a base-2 integer</li>
|
||||
* <li> 8 - renders <code>number</code> as a base-8 integer</li>
|
||||
* <li> 10 - renders <code>number</code> as a base-10 integer</li>
|
||||
* <li> 16 (default) - renders <code>number</code> base-16 integer</li>
|
||||
* <li> <code>0</code> - renders <code>number</code> as an escaped character sequence</li>
|
||||
* <li> <code>2</code> - renders <code>number</code> as a <code>base-2</code> integer</li>
|
||||
* <li> <code>8</code> - renders <code>number</code> as a <code>base-8</code> integer</li>
|
||||
* <li> <code>10</code> - renders <code>number</code> as a <code>base-10</code> integer</li>
|
||||
* <li> <code>16</code> (default) - renders <code>number</code> as a <code>base-16</code> integer</li>
|
||||
* </ul>
|
||||
* <table><caption></caption>
|
||||
* <tr><th>Number</th><th>Radix</th><th>DEFAULT Mode Alias</th><th><i>UNSIGNED</i> Mode Value</th><th><i>SIGNED</i> Mode Value</th></tr>
|
||||
* <tr><th>Number</th><th>Radix</th><th>DEFAULT Mode Alias</th><th style="text-align:center"><i>UNSIGNED</i> Mode Value</th><th><i>SIGNED</i> Mode Value</th></tr>
|
||||
* <tr><td> </td><td></td><td><i></i></td><td></td><td></td></tr>
|
||||
* <tr align=right><td>100</td><td>2</td><td><i>UNSIGNED</i></td><td>1100100b</td><td>1100100b</td></tr>
|
||||
* <tr align=right><td>100</td><td>8</td><td><i>UNSIGNED</i></td><td>144o</td><td>144o</td></tr>
|
||||
* <tr align=right><td>100</td><td>10</td><td><i>SIGNED</i></td><td>100</td><td>100</td></tr>
|
||||
* <tr align=right><td>100</td><td>16</td><td><i>UNSIGNED</i></td><td>64h</td><td>64h</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>100</td><td>2</td><td><i>UNSIGNED</i></td><td>1100100b</td><td>1100100b</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>100</td><td>8</td><td><i>UNSIGNED</i></td><td>144o</td><td>144o</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>100</td><td>10</td><td><i>SIGNED</i></td><td>100</td><td>100</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>100</td><td>16</td><td><i>UNSIGNED</i></td><td>64h</td><td>64h</td></tr>
|
||||
* <tr><td> </td><td></td><td><i></i></td><td></td><td></td></tr>
|
||||
* <tr align=right><td>-1</td><td>2</td><td><i>UNSIGNED</i></td><td>1111111111111111111111111111111111111111111111111111111111111111b</td><td>-1b</td></tr>
|
||||
* <tr align=right><td>-1</td><td>8</td><td><i>UNSIGNED</i></td><td>1777777777777777777777o</td><td>-1o</td></tr>
|
||||
* <tr align=right><td>-1</td><td>10</td><td><i>SIGNED</i></td><td>18446744073709551615</td><td>-1</td></tr>
|
||||
* <tr align=right><td>-1</td><td>16</td><td><i>UNSIGNED</i></td><td>ffffffffffffffffh</td><td>-1h</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>-1</td><td>2</td><td><i>UNSIGNED</i></td><td>1111111111111111111111111111111111111111111111111111111111111111b</td><td>-1b</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>-1</td><td>8</td><td><i>UNSIGNED</i></td><td>1777777777777777777777o</td><td>-1o</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>-1</td><td>10</td><td><i>SIGNED</i></td><td>18446744073709551615</td><td>-1</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>-1</td><td>16</td><td><i>UNSIGNED</i></td><td>ffffffffffffffffh</td><td>-1h</td></tr>
|
||||
*<tr><td> </td><td></td><td><i></i></td><td></td><td></td></tr>
|
||||
* <tr align=right><td>-100</td><td>2</td><td><i>UNSIGNED</i></td><td>1111111111111111111111111111111111111111111111111111111110011100b</td><td>-1100100b</td></tr>
|
||||
* <tr align=right><td>-100</td><td>8</td><td><i>UNSIGNED</i></td><td>1777777777777777777634o</td><td>-144o</td></tr>
|
||||
* <tr align=right><td>-100</td><td>10</td><td><i>SIGNED</i></td><td>18446744073709551516</td><td>-100</td></tr>
|
||||
* <tr align=right><td>-100</td><td>16</td><td><i>UNSIGNED</i></td><td>ffffffffffffff9ch</td><td>-64h</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>-100</td><td>2</td><td><i>UNSIGNED</i></td><td>1111111111111111111111111111111111111111111111111111111110011100b</td><td>-1100100b</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>-100</td><td>8</td><td><i>UNSIGNED</i></td><td>1777777777777777777634o</td><td>-144o</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>-100</td><td>10</td><td><i>SIGNED</i></td><td>18446744073709551516</td><td>-100</td></tr>
|
||||
* <tr style="text-align:right;font-family: monospace"><td>-100</td><td>16</td><td><i>UNSIGNED</i></td><td>ffffffffffffff9ch</td><td>-64h</td></tr>
|
||||
* </table>
|
||||
* @param number The number to represent
|
||||
* @param radix The base in which <code>number</code> is represented
|
||||
|
|
|
@ -48,9 +48,9 @@ public interface Saveable {
|
|||
* Returns the field classes, in Java types, in the same order as used {@link #save} and
|
||||
* {@link #restore}.
|
||||
* <p>
|
||||
* For example, if the save method calls <tt>objStorage.putInt()</tt> and then
|
||||
* <tt>objStorage.putFloat()</tt>, then this method must return
|
||||
* <tt>Class[]{ Integer.class, Float.class }</tt>.
|
||||
* For example, if the save method calls <code>objStorage.putInt()</code> and then
|
||||
* <code>objStorage.putFloat()</code>, then this method must return
|
||||
* <code>Class[]{ Integer.class, Float.class }</code>.
|
||||
* @return
|
||||
*/
|
||||
Class<?>[] getObjectStorageFields();
|
||||
|
|
|
@ -309,7 +309,7 @@ public class StringUtilities {
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns true if the given string starts with <tt>prefix</tt> ignoring case.
|
||||
* Returns true if the given string starts with <code>prefix</code> ignoring case.
|
||||
* <p>
|
||||
* Note: This method is equivalent to calling:
|
||||
* <pre>
|
||||
|
@ -318,7 +318,7 @@ public class StringUtilities {
|
|||
*
|
||||
* @param string the string which may contain the prefix
|
||||
* @param prefix the prefix to test against
|
||||
* @return true if the given string starts with <tt>prefix</tt> ignoring case.
|
||||
* @return true if the given string starts with <code>prefix</code> ignoring case.
|
||||
*/
|
||||
public static boolean startsWithIgnoreCase(String string, String prefix) {
|
||||
if ((string == null) || (prefix == null)) {
|
||||
|
@ -328,7 +328,7 @@ public class StringUtilities {
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns true if the given string ends with <tt>postfix</tt>, ignoring case.
|
||||
* Returns true if the given string ends with <code>postfix</code>, ignoring case.
|
||||
* <p>
|
||||
* Note: This method is equivalent to calling:
|
||||
* <pre>
|
||||
|
@ -336,9 +336,9 @@ public class StringUtilities {
|
|||
* string.regionMatches( true, startOffset, postfix, 0, postfix.length() );
|
||||
* </pre>
|
||||
*
|
||||
* @param string the string which may end with <tt>postfix</tt>
|
||||
* @param string the string which may end with <code>postfix</code>
|
||||
* @param postfix the string for which to test existence
|
||||
* @return true if the given string ends with <tt>postfix</tt>, ignoring case.
|
||||
* @return true if the given string ends with <code>postfix</code>, ignoring case.
|
||||
*/
|
||||
public static boolean endsWithIgnoreCase(String string, String postfix) {
|
||||
if ((string == null) || (postfix == null)) {
|
||||
|
@ -349,11 +349,11 @@ public class StringUtilities {
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns true if all the given <tt>searches</tt> are contained in the given string.
|
||||
* Returns true if all the given <code>searches</code> are contained in the given string.
|
||||
*
|
||||
* @param toSearch the string to search
|
||||
* @param searches the strings to find
|
||||
* @return true if all the given <tt>searches</tt> are contained in the given string.
|
||||
* @return true if all the given <code>searches</code> are contained in the given string.
|
||||
*/
|
||||
public static boolean containsAll(CharSequence toSearch, CharSequence... searches) {
|
||||
if (StringUtils.isEmpty(toSearch) || ArrayUtils.isEmpty(searches)) {
|
||||
|
@ -369,12 +369,12 @@ public class StringUtilities {
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns true if all the given <tt>searches</tt> are contained in the given string,
|
||||
* Returns true if all the given <code>searches</code> are contained in the given string,
|
||||
* ignoring case.
|
||||
*
|
||||
* @param toSearch the string to search
|
||||
* @param searches the strings to find
|
||||
* @return true if all the given <tt>searches</tt> are contained in the given string.
|
||||
* @return true if all the given <code>searches</code> are contained in the given string.
|
||||
*/
|
||||
public static boolean containsAllIgnoreCase(CharSequence toSearch, CharSequence... searches) {
|
||||
if (StringUtils.isEmpty(toSearch) || ArrayUtils.isEmpty(searches)) {
|
||||
|
@ -838,7 +838,7 @@ public class StringUtilities {
|
|||
}
|
||||
|
||||
/**
|
||||
* Limits the given string to the given <tt>max</tt> number of characters. If the string is
|
||||
* Limits the given string to the given <code>max</code> number of characters. If the string is
|
||||
* larger than the given length, then it will be trimmed to fit that length <b>after adding
|
||||
* ellipses</b>
|
||||
*
|
||||
|
|
|
@ -640,7 +640,7 @@ public class RedBlackKeySet implements ShortKeySet, Serializable {
|
|||
}
|
||||
|
||||
/**
|
||||
* Save the state of the <tt>TreeMap</tt> instance to a stream (i.e.,
|
||||
* Save the state of the <code>TreeMap</code> instance to a stream (i.e.,
|
||||
* serialize it).
|
||||
*
|
||||
* @serialData The <i>size</i> of the TreeMap (the number of key-value
|
||||
|
@ -665,7 +665,7 @@ public class RedBlackKeySet implements ShortKeySet, Serializable {
|
|||
}
|
||||
|
||||
/**
|
||||
* Reconstitute the <tt>TreeMap</tt> instance from a stream (i.e.,
|
||||
* Reconstitute the <code>TreeMap</code> instance from a stream (i.e.,
|
||||
* deserialize it).
|
||||
*/
|
||||
private void readObject(final java.io.ObjectInputStream s) throws java.io.IOException,
|
||||
|
|
|
@ -640,7 +640,7 @@ public class RedBlackLongKeySet implements Serializable {
|
|||
|
||||
|
||||
/**
|
||||
* Save the state of the <tt>TreeMap</tt> instance to a stream (i.e.,
|
||||
* Save the state of the <code>TreeMap</code> instance to a stream (i.e.,
|
||||
* serialize it).
|
||||
*
|
||||
* @serialData The <i>size</i> of the TreeMap (the number of key-value
|
||||
|
@ -668,7 +668,7 @@ public class RedBlackLongKeySet implements Serializable {
|
|||
|
||||
|
||||
/**
|
||||
* Reconstitute the <tt>TreeMap</tt> instance from a stream (i.e.,
|
||||
* Reconstitute the <code>TreeMap</code> instance from a stream (i.e.,
|
||||
* deserialize it).
|
||||
*/
|
||||
private void readObject(final java.io.ObjectInputStream s)
|
||||
|
|
|
@ -34,7 +34,7 @@ import utilities.util.reflection.ReflectionUtilities;
|
|||
* <p>
|
||||
* The various methods dictate when the client will get a callback:<p>
|
||||
* <ul>
|
||||
* <li>{@link #update()} - if this is the first call to <tt>update</tt>, then do the work
|
||||
* <li>{@link #update()} - if this is the first call to <code>update</code>, then do the work
|
||||
* immediately; otherwise, buffer the update request until the
|
||||
* timeout has expired.</li>
|
||||
* <li>{@link #updateNow()} - perform the callback now.</li>
|
||||
|
@ -93,7 +93,7 @@ public class SwingUpdateManager {
|
|||
/**
|
||||
* Constructs a new SwingUpdateManager
|
||||
* <p>
|
||||
* <b>Note: </b>The <tt>minDelay</tt> will always be at least {@link #MIN_DELAY_FLOOR}, regardless of
|
||||
* <b>Note: </b>The <code>minDelay</code> will always be at least {@link #MIN_DELAY_FLOOR}, regardless of
|
||||
* the given value.
|
||||
*
|
||||
* @param minDelay the minimum number of milliseconds to wait once the event stream stops
|
||||
|
@ -107,7 +107,7 @@ public class SwingUpdateManager {
|
|||
/**
|
||||
* Constructs a new SwingUpdateManager
|
||||
* <p>
|
||||
* <b>Note: </b>The <tt>minDelay</tt> will always be at least {@link #MIN_DELAY_FLOOR}, regardless of
|
||||
* <b>Note: </b>The <code>minDelay</code> will always be at least {@link #MIN_DELAY_FLOOR}, regardless of
|
||||
* the given value.
|
||||
*
|
||||
* @param minDelay the minimum number of milliseconds to wait once the event stream stops
|
||||
|
@ -122,7 +122,7 @@ public class SwingUpdateManager {
|
|||
/**
|
||||
* Constructs a new SwingUpdateManager
|
||||
* <p>
|
||||
* <b>Note: </b>The <tt>minDelay</tt> will always be at least {@link #MIN_DELAY_FLOOR}, regardless of
|
||||
* <b>Note: </b>The <code>minDelay</code> will always be at least {@link #MIN_DELAY_FLOOR}, regardless of
|
||||
* the given value.
|
||||
*
|
||||
* @param minDelay the minimum number of milliseconds to wait once the event stream stops
|
||||
|
|
|
@ -21,7 +21,7 @@ import org.jdom.output.XMLOutputter;
|
|||
import org.jdom.output.Format.TextMode;
|
||||
|
||||
/**
|
||||
* A simple extension of <tt>XMLOutputter</tt> that sets default settings to fix common bugs.
|
||||
* A simple extension of <code>XMLOutputter</code> that sets default settings to fix common bugs.
|
||||
*/
|
||||
public class GenericXMLOutputter extends XMLOutputter {
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ import utility.module.ModuleUtilities;
|
|||
* General resource management class that provides a convenient
|
||||
* way of accessing external resources used in Ghidra.
|
||||
* <p>
|
||||
* <a name="safe"></a>
|
||||
* <a id="safe"></a>
|
||||
* There is a known problem with Java's {@link MediaTracker} that can cause deadlocks. The various
|
||||
* methods of this class that create {@link ImageIcon}s will do so by loading image bytes directly,
|
||||
* as opposed to using the flawed constructor {@link ImageIcon#ImageIcon(Image)}.
|
||||
|
@ -158,10 +158,10 @@ public class ResourceManager {
|
|||
}
|
||||
|
||||
/**
|
||||
* Search the classpath for files in the <classpath entry>/<tt>dirName</tt>
|
||||
* location that have the given extension. In <tt>null</tt> is passed for the
|
||||
* Search the classpath for files in the <classpath entry>/<code>dirName</code>
|
||||
* location that have the given extension. In <code>null</code> is passed for the
|
||||
* extension, then all files found in the given dir names will be returned. In this
|
||||
* way, <tt>null</tt> is a wildcard.
|
||||
* way, <code>null</code> is a wildcard.
|
||||
*
|
||||
* <P>This method differs from {@link #getResource(String)} in that this method finds
|
||||
* multiple matches.
|
||||
|
@ -181,10 +181,10 @@ public class ResourceManager {
|
|||
}
|
||||
|
||||
/**
|
||||
* Search the classpath for files in the <classpath entry>/<tt>dirName</tt>
|
||||
* location that have the given extension. In <tt>null</tt> is passed for the
|
||||
* Search the classpath for files in the <classpath entry>/<code>dirName</code>
|
||||
* location that have the given extension. In <code>null</code> is passed for the
|
||||
* extension, then all files found in the given dir names will be returned. In this
|
||||
* way, <tt>null</tt> is a wildcard.
|
||||
* way, <code>null</code> is a wildcard.
|
||||
*
|
||||
* <P>The names returned from this method are relative and are meant to be used in a
|
||||
* later callback to this class for methods such as {@link #loadImage(String)} or
|
||||
|
@ -371,7 +371,7 @@ public class ResourceManager {
|
|||
}
|
||||
|
||||
/**
|
||||
* Creates an image icon from the given image. This method will create an <tt>ImageIcon</tt>
|
||||
* Creates an image icon from the given image. This method will create an <code>ImageIcon</code>
|
||||
* the <a href="safe">"safe"</a> way by avoiding the constructor
|
||||
* {@link ImageIcon#ImageIcon(Image)}, which can
|
||||
* trigger problems with Java's {@link MediaTracker}.
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue