From d912ee10b79e3ed34bba8c60274e3fb0adc2aa45 Mon Sep 17 00:00:00 2001 From: Vhati Date: Mon, 11 Dec 2017 15:54:59 -0500 Subject: [PATCH] Added advanced removeAttributes tag --- skel_common/readme_modders.txt | 4 ++++ src/main/java/net/vhati/modmanager/core/XMLPatcher.java | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/skel_common/readme_modders.txt b/skel_common/readme_modders.txt index b98b004..d8ca824 100644 --- a/skel_common/readme_modders.txt +++ b/skel_common/readme_modders.txt @@ -184,6 +184,10 @@ Advanced XML Sets/adds one or more attributes on the context tag. + + Removes one or more attributes on the context tag (the values here + will be ignored). This was introduced in SMM 1.7. + Removes the context tag entirely. diff --git a/src/main/java/net/vhati/modmanager/core/XMLPatcher.java b/src/main/java/net/vhati/modmanager/core/XMLPatcher.java index bdc143f..f58a237 100644 --- a/src/main/java/net/vhati/modmanager/core/XMLPatcher.java +++ b/src/main/java/net/vhati/modmanager/core/XMLPatcher.java @@ -379,6 +379,12 @@ public class XMLPatcher { contextNode.setAttribute( attrib.clone() ); } } + else if ( cmdNode.getName().equals( "removeAttributes" ) ) { + handled = true; + for ( Attribute attrib : cmdNode.getAttributes() ) { + contextNode.removeAttribute( attrib.getName() ); + } + } else if ( cmdNode.getName().equals( "setValue" ) ) { handled = true; contextNode.setText( cmdNode.getTextTrim() );