Procedure

This scenario is to verify that freeform annotations are created, modified, and interpreted correctly by the VE.

Setup

 

Open a new java file with the VE, for a class which subclasses java.lang.Object.
 


Object Subclass Test

Drop several beans on the freeform surface
Verify that proper annotations are created for each as comments on the field declaration line.
       
Move the beans around
Verify that the annotations are properly updated.

Change the annotation parameters in the source code
Verify that the corresponding beans are moved on the graphical canvas.

Create a new line between the end of the field declaration and the annotation comment, so that the entire comment moves to the line below the field.
Verify that position of the bean is still shown properly.

Save, close, and reopen the file
Verify that all of the beans are sized and positioned exactly as they were before.

Drop a JPanel and move one of the other beans(JButton) into it.
Verify that the annotations for the moved bean are removed, then move it back to canvas.

Inheritance Test

Open a new java file with the VE, this time making the class a subclass of javax.swing.JPanel.
When the editor is opened there should be a rectangle on the canvas representing the JPanel.
Resize the rectangle.
Verify that annotations are applied as comments at the end of the code showing the position and that the size is correct with in the initialize method.

Move the panel around
Verify  that its annotations are properly updated.
       
Change the annotation parameters in the source code
Verify  that the panel is moved on the graphical canvas.

Verify that File->Revert properly reverts the code to last saved state, and redraws the canvas.  
       
Repeat Inheritance Test alternating between the default package and other packages with the following containers:

Other

Make a new file with the following contents:

public class Empty {
     private javax.swing.JPanel ivjJPanel = null;        //  @jve:visual-info  decl-index=0 visual-constraint="33,44"
     private javax.swing.JButton ivjJButton = null;
             private javax.swing.JButton ivjJButton1 = null;
     public Empty() {
     }
     private javax.swing.JPanel getIvjJPanel() {
          if (ivjJPanel == null) {
               ivjJPanel = new javax.swing.JPanel();
               ivjJPanel.add(getIvjJButton(), null);
               ivjJPanel.add(getIvjJButton1(), null);
               ivjJPanel.setSize(95, 85);
          }
          return ivjJPanel;
      }
      private javax.swing.JButton getIvjJButton() {
          if (ivjJButton == null) {
               ivjJButton = new javax.swing.JButton();
          }
          return ivjJButton;
      }
      private javax.swing.JButton getIvjJButton1() {
            if (ivjJButton1 == null) {
                  ivjJButton1 = new javax.swing.JButton();
            }
            return ivjJButton1;
      }
}

Move the JButtons from the JPanel onto the freeform. Also create a class extending JFrame, drop a couple of JButtons on the content pane, and then retry the test.
Verify that annotation marks are generated for the JButtons.
Verify that removing the annotations of a bean causes it to be moved immediately.