/* entityproperties.cc This file is part of the Project::OSiRiON world editor and is distributed under the terms and conditions of the GNU General Public License version 2 */ #include "entityproperties.h" namespace editor { EntityProperties::EntityProperties() { } EntityProperties::~EntityProperties() { } void EntityProperties::add_subsection(const QString &name) { if (properties_subsections.size()) { properties_subsections += '\n'; } properties_subsections += '['; properties_subsections += name; properties_subsections += ']'; properties_subsections += '\n'; } void EntityProperties::add_subsection_value(const QString &key, const QString &value) { properties_subsections += key; properties_subsections += '='; properties_subsections += value; properties_subsections += '\n'; } void EntityProperties::save(QTextStream &textstream) { textstream << "[" << type() << "]" << '\n'; if (label().size()) textstream << "label=" << label() << '\n'; if (name().size()) textstream << "name=" << name() << '\n'; // other values if (values().size()) { textstream << values(); } // info string if (info().size()) { textstream << '\n'; // QTextStream operates on QString, not on QString const QString infobuffer = info(); QTextStream infostream(&infobuffer); QString line; while (!infostream.atEnd()) { line = infostream.readLine(1024); textstream << "info=" << line << '\n'; } } if (subsections().size()) { textstream << '\n'; QString subsectionbuffer = subsections(); QTextStream subsectionstream(&subsectionbuffer); QString line; while (!subsectionstream.atEnd()) { line = subsectionstream.readLine(1024); if (line.size()) textstream << '\t' << line << '\n'; else textstream << '\n'; } } textstream << '\n'; } } // namespace editor