{
}
-int ClubXmlHandler::parse(QString &fileName)
+int ClubXmlHandler::parse(QString &fileName, bool readOnly)
{
QFile file(fileName);
QDomElement clubElement = root.firstChildElement("club");
while (!clubElement.isNull()) {
- Club *club = new Club(clubElement);
+ Club *club = new Club(clubElement, readOnly);
QDomElement courseElement = clubElement.firstChildElement("course");
while (!courseElement.isNull()) {
- Course *course = new Course(courseElement);
- club->addCourse(course);
+ Course *course = new Course(courseElement, club);
+ club->addCourse(course);
- QDomElement holeElement = courseElement.firstChildElement("hole");
- while (!holeElement.isNull()) {
- Hole *hole = new Hole(holeElement);
- course->addHole(hole);
+ QDomElement holeElement = courseElement.firstChildElement("hole");
+ while (!holeElement.isNull()) {
+ Hole *hole = new Hole(holeElement);
+ course->addHole(hole);
- holeElement = holeElement.nextSiblingElement("hole");
- }
- courseElement = courseElement.nextSiblingElement("course");
+ holeElement = holeElement.nextSiblingElement("hole");
+ }
+ courseElement = courseElement.nextSiblingElement("course");
}
list << club;
clubElement = clubElement.nextSiblingElement("club");
for (int i = 0; i < list.size(); i++) {
Club *club = list.at(i);
- root.appendChild(club->toElement(doc));
+ if (!club->isReadOnly())
+ root.appendChild(club->toElement(doc));
}
if (!file.open(QFile::WriteOnly))