Utility components Node info class
ConfigFile component uses the Info property of the VarDictionary collection class to store information about the current branch of the data tree. Node info object is used to hold this information. This is the reason to create new branches - sections or records through the CreateSection and CreateRecord methods of the ConfigFile class. These methods prepare and attach properly initialized node info to the created object - thus you don't need to write additional code for it.

Properties:

  Type - Read/write Boolean value. true means the collection is a section, false - means the collection is a record. It is not recommended to change it unless you are not doing some specific tricks.

TypeName - Read only String. Corresponds to the value of the Type property. Returns a readable name for the type - "Section" and respectively "Record".

Class - Read/write String. Corresponds to the class name information for the sections. It is ignored during the save process if the Type is record. This string is important if you are changing a configuration file of a program that uses these class names for automatic class creation over the data structure, but if you are using the corresponding file for your own purposes you can use this property on your decision.

Remarks

When the data structure (tree of collections) is obtained from a Read method of the ConfigFile object you are using the node info (accessible through the VarDictionary's Info property) to determine the type of the branch. I.e. you determine what can be found in this collection - values (if it is a record) or other sections and records (if it is a section). If you know exactly the structure of your file this information will not be important unless you are not writing a little code for consistency checking, but if your code tries to "understand" unknown structure the node info helps you in the navigation.

Type property is read/write but changing it can make impossible to save the structure using the Write method of the TextConfig class. For example changing a section to record will cause write method to issue errors if the record contains items that are sections. But if you are sure the section contains only values - then it is possible and meaning depends only one the purpose of the file and data. Thus if you are going to do such a "tricks" first review all the remarks sections in this documentation in order to avoid errors caused by wrong change of the types. If you are not going to save the data from the structure - there is no problem to change the Type property, but such a change can be of use rarely. 

newObjects Copyright 2001-2005 newObjects [ ]