package org.insightech.er.editor.controller.command.category; import org.insightech.er.editor.controller.command.AbstractCommand; import org.insightech.er.editor.model.ERDiagram; import org.insightech.er.editor.model.settings.CategorySetting; public class ChangeShowReferredTablesCommand extends AbstractCommand { private ERDiagram diagram; private boolean oldShowReferredTables; private boolean newShowReferredTables; private CategorySetting categorySettings; public ChangeShowReferredTablesCommand(ERDiagram diagram, boolean isShowReferredTables) { this.diagram = diagram; this.categorySettings = this.diagram.getDiagramContents().getSettings() .getCategorySetting(); this.newShowReferredTables = isShowReferredTables; this.oldShowReferredTables = this.categorySettings.isFreeLayout(); } /** * {@inheritDoc} */ @Override protected void doExecute() { this.categorySettings.setShowReferredTables(this.newShowReferredTables); this.diagram.changeAll(); } /** * {@inheritDoc} */ @Override protected void doUndo() { this.categorySettings.setShowReferredTables(this.oldShowReferredTables); this.diagram.changeAll(); } }