title: How to draw some figures on a editor with draw2d in a eclipse RCP?
body: <p>I mean drawing somg simple shape like circle,rectangleFigure,and polylineConnectistrong.It seems that a LightweightSystem has to been constructed on a Canvas such as a Shell.And in a RCP application when I add an extension of an editor,the editor extends org.eclipse.ui.part.EditorPart by default.It has a method called <strong>createPartControl</strong>.This method has a parameter (Composite parent).</p>
  
  <p>So I write the following code and it give me a <strong>Unhandled event loop exception</strong></p>
  
  <pre class="lang-java prettyprint-override"><code>public void createPartControl(Composite parent) {
      Shell shell = parent.getShell();
      shell.open();
      Display display = shell.getDisplay();
      LightweightSystem lws = new LightweightSystem(shell);
      IFigure panel = new Figure();
      lws.setContents(panel);
      RectangleFigure node1 = new RectangleFigure();
      RectangleFigure node2 = new RectangleFigure();
      node1.setBackgroundColor(ColorConstants.red);
      node1.setBounds(new Rectangle(30, 30, 64, 36));
      node2.setBackgroundColor(ColorConstants.blue);
      node2.setBounds(new Rectangle(100, 100, 64, 36));
      PolylineConnection conn = new PolylineConnection();
      conn.setSourceAnchor(new ChopboxAnchor(node1));
      conn.setTargetAnchor(new ChopboxAnchor(node2));
      conn.setTargetDecoration(new PolygonDecoration());
      Label label = new Label("Midpoint");
      label.setOpaque(true);
      label.setBackgroundColor(ColorConstants.buttonLightest);
      label.setBorder(new LineBorder());
      conn.add(label, new MidpointLocator(conn, 0));
      panel.add(node1);
      panel.add(node2);
      panel.add(conn);
      while (!shell.isDisposed ()) { 
          if (!display.readAndDispatch ()) 
             display.sleep (); 
      }
  }
  </code></pre>
  
  <p>So how to solve this problem and how to draw these figures on the editor?</p>