public void perform() {
    Layer selectedLayer = getSelectedLayer();
    original = selectedLayer.getStyleBlackboard();
    EditorPageManager manager =
        EditorPageManager.loadManager(PrintingPlugin.getDefault(), selectedLayer);
    Shell parentShell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
    StyleEditorDialog dialog =
        StyleEditorDialog.createDialogOn(parentShell, null, selectedLayer, manager);
    dialog.setBlockOnOpen(true);
    int returnCode = dialog.open();

    if (returnCode != Window.OK) {
      selectedLayer.setStyleBlackboard(original);
      original = null;
    }
  }