Ignore:
Timestamp:
Mar 26, 2013, 3:30:48 AM (12 years ago)
Author:
s10k
Message:

0.8

File:
1 edited

Legend:

Unmodified
Added
Removed
  • xmlTools/trunk/posUpdate/XmlTools.cs

    r710 r742  
    1010        private XmlDocument xdoc;
    1111        private string posElement, posParentElement;
    12 
    13         /// <summary>
     12        private bool noBackups;
     13
    1414        /// Our constructor
     15        /// <summary>
    1516        /// </summary>
    1617        /// <param name="file"></param>
    1718        /// <param name="posElement"></param>
    1819        /// <param name="posParentElement"></param>
    19         public XmlTools(string posElement, string posParentElement = "")
     20        public XmlTools(string posElement, string posParentElement = "", bool noBackups = false)
    2021        {
    2122            this.posElement = posElement;
    2223            this.posParentElement = posParentElement;
     24            this.noBackups = noBackups;
    2325        }
    2426
     
    3032        public void replaceAll(string file, string value, string valuePositions = "")
    3133        {
    32             Util.backupFile(file);
    33             loadXmlFile(file);
    34 
    35             List<XmlNode> myElements = new List<XmlNode>();
    36             Util.getAllSpecificElements(xdoc.DocumentElement, ref myElements,this.posElement,this.posParentElement); //Returns all after "Oni" element
     34            if (!this.noBackups)
     35            {
     36                Util.backupFile(file);
     37            }
     38            loadXmlFile(file);
     39
     40            List<XmlNode> myElements = new List<XmlNode>();
     41            Util.getAllSpecificElements(xdoc.DocumentElement, ref myElements, this.posElement, this.posParentElement); //Returns all after "Oni" element
    3742
    3843            if (valuePositions != "")
     
    7176        public void addValues(string file, string values)
    7277        {
    73             Util.backupFile(file);
     78            if (!this.noBackups)
     79            {
     80                Util.backupFile(file);
     81            }
    7482            loadXmlFile(file);
    7583
     
    8997                    XmlTextValue myXmlSubValues = new XmlTextValue(element.InnerText);
    9098
    91                     foreach(String myInputValue in myInputValues.myValues){
     99                    foreach (String myInputValue in myInputValues.myValues)
     100                    {
    92101                        bool alreadyExists = false;
    93102                        foreach (String myXmlSubValue in myXmlSubValues.myValues)
     
    103112                        if (!alreadyExists)
    104113                        {
    105                             element.InnerText += " "+myInputValue;
     114                            element.InnerText += " " + myInputValue;
    106115                        }
    107116                    }
     
    119128        public void replaceValue(string file, string oldValue, string newValue)
    120129        {
    121             Util.backupFile(file);
     130            if (!this.noBackups)
     131            {
     132                Util.backupFile(file);
     133            }
    122134            loadXmlFile(file);
    123135
     
    135147                    XmlTextValue myXmlSubValues = new XmlTextValue(element.InnerText);
    136148
    137                         for(int i=0; i<myXmlSubValues.myValues.Count; i++){
    138                             //Found a match with the old value?
    139                             if (myXmlSubValues.myValues[i] == oldValue)
    140                             {
    141                                //replace with the new match
    142                                 myXmlSubValues.myValues[i] = newValue;
    143                             }
    144                     }
    145                         element.InnerText = myXmlSubValues.ToString();
     149                    for (int i = 0; i < myXmlSubValues.myValues.Count; i++)
     150                    {
     151                        //Found a match with the old value?
     152                        if (myXmlSubValues.myValues[i] == oldValue)
     153                        {
     154                            //replace with the new match
     155                            myXmlSubValues.myValues[i] = newValue;
     156                        }
     157                    }
     158                    element.InnerText = myXmlSubValues.ToString();
    146159                }
    147160            }
     
    157170        public void removeValues(string file, string values)
    158171        {
    159             Util.backupFile(file);
     172            if (!this.noBackups)
     173            {
     174                Util.backupFile(file);
     175            }
    160176            loadXmlFile(file);
    161177
     
    177193                    foreach (String myInputValue in myInputValues.myValues)
    178194                    {
    179                        for(int i=0; i<myXmlSubValues.myValues.Count; i++){
     195                        for (int i = 0; i < myXmlSubValues.myValues.Count; i++)
     196                        {
    180197                            //It already exists in the xml?
    181198                            if (myInputValue == myXmlSubValues.myValues[i])
     
    202219        public void changeValue(string file, string newValue, string valueRelation = "", string valuePositions = "")
    203220        {
    204             Util.backupFile(file);
     221            if (!this.noBackups)
     222            {
     223                Util.backupFile(file);
     224            }
    205225            loadXmlFile(file);
    206226
     
    256276        public void invert(string file)
    257277        {
    258             Util.backupFile(file);
     278            if (!this.noBackups)
     279            {
     280                Util.backupFile(file);
     281            }
    259282            loadXmlFile(file);
    260283
     
    267290            foreach (XmlNode element in myElements) //Returns all after "Oni" element
    268291            {
    269                     invertedOrder.Add(element.InnerText);
     292                invertedOrder.Add(element.InnerText);
    270293            }
    271294
     
    310333                if (pos > testFirstRealValue.myValues.Count - 1 || pos < 0) //Are positions valid for the current values? //-1 because starts at 0
    311334                {
    312                     Program.printAppError(Program.appErrors.INVALID_POSITIONS_RANGE, "The positions values are not in the range of the value to replace (pos index < 0 or > newValueIndexesNumber).",true);
     335                    Program.printAppError(Program.appErrors.INVALID_POSITIONS_RANGE, "The positions values are not in the range of the value to replace (pos index < 0 or > newValueIndexesNumber).", true);
    313336                }
    314337            }
Note: See TracChangeset for help on using the changeset viewer.