and a lingering bug in the implementation of FindResults table of
highlight managers. The table was implemented as a Hashtable mapping
document regions to HighlightInfo records. But document regions are
mutable because they can move within a document (just like Positions), so
table lookups failed if the coordinates of the region changed due to
document mutation.
This revision conflicts with the last two updates because it fixes
many of the same problems without sacrificing the efficiency of new
region implementation. This revision reverts the bookmark tests (in
GlobalModelOtherTest.java) back to their former state. We need to add
some unit tests that address the movement of regions when documents
are modified.
The following files were modified, primarily ConcreteRegionManager and
MainFrame:
M src/edu/rice/cs/drjava/model/debug/jpda/JPDADebugger.java
M src/edu/rice/cs/drjava/model/DefaultGlobalModel.java
M src/edu/rice/cs/drjava/model/definitions/indent/Indenter.java
M src/edu/rice/cs/drjava/model/RegionManager.java
M src/edu/rice/cs/drjava/model/ConcreteRegionManager.java
M src/edu/rice/cs/drjava/model/AbstractGlobalModel.java
M src/edu/rice/cs/drjava/model/GlobalModelOtherTest.java
M src/edu/rice/cs/drjava/ui/MainFrame.java
M src/edu/rice/cs/drjava/ui/DefinitionsPane.java
M src/edu/rice/cs/drjava/ui/TabbedPanel.java
M src/edu/rice/cs/drjava/ui/RegionsTreePanel.java
M src/edu/rice/cs/drjava/ui/FindResultsPanel.java
M src/edu/rice/cs/drjava/ui/ReverseHighlighter.java
M src/edu/rice/cs/util/swing/HighlightManager.java
M src/edu/rice/cs/util/CompletionMonitor.java