EScope4: Adding Zoom and Grab Options Using the Decorator Pattern
This refactoring step marks a milestone inthe development of EScope. From now, the
preparatory work in refactoring carried out in the previous EScope versions, starts
producing its effects. This version, in fact, provides a much more sophisticated
interaction with the displayed waveform. When a waveform is displayed, it is possible now
to:
- drag a crosshair over the waveform, as for the older versions
- zoom a portion of the waveform by dragging the mouse to define a rectangle of interest.
When the mouse is released, the enlarged portion of the waveform is displayed
- grab the entire waveform. Thism option is especially useful after enlarging a portion of
the waveform to bring into view portions of the waveform which lie outside the display
window.
A double click restores the default confition, i.e. the whole waveform matted into the
display window.
This application defines three panels. At the left side, when a database is open, the
hierarchical structure is displayed and it is possible to navigate in the tree. When a
node containing a valid signal is clicked, the corresponding waveform is displayed in the
central panel.
The File Menu Bar option allows to:
- connect to a MDSplus server. The default server and port is localhost
and 8000, i.e. a MDSplus data server running locally on port 8000 (the
default configuration)
- open an experiment and shot. The default experiment and port is edam
and 17615, respectively. They correspond to a database which is provided
by the installer.
- exit from the application
The Graph Menu Bar option activates a pop-up panel which allows to
- associte a separate color to the graph title, the background and the plot line.
- define whether a border is defined arould the signal plot
- define which algorithm to use for computing tick numbers.
- define the current waveform interaction (crosshair, Zoom or Grab)
The changes are applied when either Ok or Apply button is pressed.
To exercise this program the following steps are required:
- If not already running, start a MDSplus data server. On windows, click on start->programs->MDSplus->MDSDataserver.
On Linux, run script start_mdsip.
- Change directory in <source root>/escopes/escope4, where <source
root> is the directory where you copied the source directory
in the CD.
- Include the current directory in your CLASSPATH environmante variable. On Windows this
can be done by changing the CLASSPATH definition in Control Panel/System setting, or by
the command
set CLASSPATH=.;%CLASSPATH%
On Linux (bash shell) this can be done by the command
export CLASSPATH=.:$CLASSPATH
- Compile the java source files with the command
javac *.java
- Run the program with no arguments.
java EScope4
When the edam database is open, valid signals are listed in the SIGNALS.PB
subtree.
View Source