Example #1
0
  @Override
  public ASerializedView getSerializableRepresentation() {
    SerializedRadialHierarchyView serializedForm = new SerializedRadialHierarchyView(this);
    serializedForm.setMaxDisplayedHierarchyDepth(iMaxDisplayedHierarchyDepth);
    serializedForm.setNewSelection(bIsNewSelection);
    serializedForm.setDefaultDrawingStrategyType(
        drawingStrategyManager.getDefaultDrawingStrategy().getDrawingStrategyType());

    ADrawingState currentDrawingState = drawingController.getCurrentDrawingState();

    if (pdCurrentRootElement != null) {
      if ((currentDrawingState.getType() == EDrawingStateType.DRAWING_STATE_DETAIL_OUTSIDE)
          || (currentDrawingState.getType() == EDrawingStateType.DRAWING_STATE_FULL_HIERARCHY)) {

        serializedForm.setDrawingStateType(currentDrawingState.getType());
        serializedForm.setRootElementID(pdCurrentRootElement.getElementID());
        serializedForm.setSelectedElementID(pdCurrentSelectedElement.getElementID());
        serializedForm.setRootElementStartAngle(pdCurrentRootElement.getCurrentStartAngle());
        serializedForm.setSelectedElementStartAngle(
            pdCurrentSelectedElement.getCurrentStartAngle());
      } else {
        HistoryEntry historyEntry = navigationHistory.getCurrentHistoryEntry();
        serializedForm.setDrawingStateType(historyEntry.getDrawingState().getType());
        serializedForm.setRootElementID(historyEntry.getRootElement().getElementID());
        serializedForm.setSelectedElementID(historyEntry.getSelectedElement().getElementID());
        serializedForm.setRootElementStartAngle(historyEntry.getRootElementStartAngle());
        serializedForm.setSelectedElementStartAngle(historyEntry.getSelectedElementStartAngle());
      }
    }

    return serializedForm;
  }