@@ -0,0 +1,1371 @@
+/*%0A * EditSomeXML is a graphical XML editor%0A * %0A * Copyright (C) 2014  David Jackson%0A * %0A * This program is free software: you can redistribute it and/or modify%0A * it under the terms of the GNU General Public License as published by%0A * the Free Software Foundation, either version 3 of the License, or%0A * (at your option) any later version.%0A * %0A * This program is distributed in the hope that it will be useful,%0A * but WITHOUT ANY WARRANTY; without even the implied warranty of%0A * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the%0A * GNU General Public License for more details.%0A * %0A * You should have received a copy of the GNU General Public License%0A * along with this program.  If not, see %3Chttp://www.gnu.org/licenses/%3E.%0A * %0A */%0A%0Apackage xml.commands;%0A%0Aimport utility.Command;%0Aimport xml.Element;%0A%0Apublic class SetAttributeCommand extends ElementCommand implements Command %7B%0A%09private String attName;%0A%09private String attVal;%0A%09private String oldVal;%0A%0A%09public SetAttributeCommand(Element element, String key, String val) %7B%0A%09%09super(element);%0A%09%09attName = key;%0A%09%09attVal = val;%0A%09%09%0A%09%09oldVal = element.getAttribute(key);%0A%09%7D%0A%09%0A%09@Override%0A%09public void perform() %7B%0A%09%09element.setAttribute(attName, attVal);%0A%09%7D%0A%0A%09@Override%0A%09public void undo() %7B%0A%09%09if (oldVal != null) %7B%0A%09%09%09element.setAttribute(attName, oldVal);%0A%09%09%7D else %7B%0A%09%09%09element.removeAttribute(attName);%0A%09%09%7D%0A%09%7D%0A%0A%7D%0A

Add SetAttributeCommand