Synchronized editors
The ultimate goal of this plug-in is to enable developers writing programs in pairs.
In order to achieve this goal, driver and navigator need a common view on the code
in the making. The sequence to open a document to be shared is the following:
- Driver opens a Java source file
- the same file is opened in the navigator's workbench
- the driver's action are reproduced in the navigator's copy of the file, namely
- scrolling the window
- marking text
- moving the text cursor
- line highlighting
- text editing
- Run, Run As...
- Refactoring
Note that the driver's run actions are executed on the systems of the other participants, too.
The driver's respectively the navigator's workbench look as follows after opening a file.
The driver's editor view shows the string (drv) on the tab.
The navigator's editor view shows the (nav) string.
When the driver highlights some text in his editor, the same text is highlighted in the navigator's copy.
Any changes in the driver's source code are reflected in the navigator's source code. The navigator's changes to the
source code are ignored.
If the navigator highlights text in his copy, the same portion of text changes background color in the
driver's editor view. Thus a navigator might give contextual meaning to his chat messages.