Package com.cburch.logisim.gui.appear

Source Code of com.cburch.logisim.gui.appear.RevertAppearanceAction

/* Copyright (c) 2010, Carl Burch. License information is located in the
* com.cburch.logisim.Main source code and at www.cburch.com/logisim/. */

package com.cburch.logisim.gui.appear;

import java.util.ArrayList;

import com.cburch.draw.model.CanvasObject;
import com.cburch.logisim.circuit.Circuit;
import com.cburch.logisim.circuit.appear.CircuitAppearance;
import com.cburch.logisim.proj.Action;
import com.cburch.logisim.proj.Project;
import static com.cburch.logisim.util.LocaleString.*;

public class RevertAppearanceAction extends Action {
    private Circuit circuit;
    private ArrayList<CanvasObject> old;
    private boolean wasDefault;

    public RevertAppearanceAction(Circuit circuit) {
        this.circuit = circuit;
    }

    @Override
    public String getName() {
        return getFromLocale("revertAppearanceAction");
    }

    @Override
    public void doIt(Project proj) {
        CircuitAppearance appear = circuit.getAppearance();
        wasDefault = appear.isDefaultAppearance();
        old = new ArrayList<CanvasObject>(appear.getObjectsFromBottom());
        appear.setDefaultAppearance(true);
    }

    @Override
    public void undo(Project proj) {
        CircuitAppearance appear = circuit.getAppearance();
        appear.setObjectsForce(old);
        appear.setDefaultAppearance(wasDefault);
    }
}
TOP

Related Classes of com.cburch.logisim.gui.appear.RevertAppearanceAction

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.