package org.insightech.er.editor.controller.command.common; import org.insightech.er.editor.controller.command.AbstractCommand; import org.insightech.er.editor.model.ViewableModel; import org.insightech.er.editor.model.diagram_contents.element.node.ermodel.ERModel; import org.insightech.er.editor.model.diagram_contents.element.node.table.ERTable; import org.insightech.er.editor.model.diagram_contents.element.node.table.ERVirtualTable; public class ChangeFontCommand extends AbstractCommand { private ViewableModel viewableModel; private String oldFontName; private String newFontName; private int oldFontSize; private int newFontSize; public ChangeFontCommand(ViewableModel viewableModel, String fontName, int fontSize) { this.viewableModel = viewableModel; this.oldFontName = viewableModel.getFontName(); this.oldFontSize = viewableModel.getFontSize(); this.newFontName = fontName; this.newFontSize = fontSize; } /** * {@inheritDoc} */ @Override protected void doExecute() { this.viewableModel.setFontName(this.newFontName); this.viewableModel.setFontSize(this.newFontSize); // if (viewableModel instanceof ERVirtualTable) { // ERTable table = ((ERVirtualTable)viewableModel).getRawTable(); // for (ERModel model : ((ERVirtualTable) viewableModel).getDiagram().getDiagramContents().getModelSet()) { // ERVirtualTable vtable = model.findVirtualTable(table); // if (!vtable.equals(viewableModel)) { // vtable.setFontName(fontName) //// vtable.firePropertyChange(vtable.PROPERTY_CHANGE_FONT, null, null); // } // } // } } /** * {@inheritDoc} */ @Override protected void doUndo() { this.viewableModel.setFontName(this.oldFontName); this.viewableModel.setFontSize(this.oldFontSize); } }