public VisualScene() {
    addChild(backgroundLayer);
    addChild(mainLayer);
    addChild(connectionLayer);
    addChild(interactionLayer);
    addChild(forgroundLayer);

    // set the initial tool
    this.setActiveTool(EDIT);

    getActions().addAction(ActionFactory.createZoomAction());
    getActions().addAction(ActionFactory.createPanAction());
    getActions()
        .addAction(
            hoverAction); // this hover action is needed for port highlights to turn them off(the
    // scene takes over the mosue)
    getActions().addAction(new SceneMouseAction());
    getActions().addAction(ActionFactory.createRectangularSelectAction(this, backgroundLayer));

    getPriorActions().addAction(new KeyEventAction()); // add the scene key event listener
  }