本文整理汇总了C++中TupScene::fromXml方法的典型用法代码示例。如果您正苦于以下问题:C++ TupScene::fromXml方法的具体用法?C++ TupScene::fromXml怎么用?C++ TupScene::fromXml使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TupScene
的用法示例。
在下文中一共展示了TupScene::fromXml方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: load
bool TupFileManager::load(const QString &fileName, TupProject *project)
{
#ifdef K_DEBUG
#ifdef Q_OS_WIN32
qDebug() << "[TupFileManager::load()] - fileName: " + fileName;
#else
T_FUNCINFO << fileName;
#endif
#endif
TupPackageHandler packageHandler;
if (packageHandler.importPackage(fileName)) {
QDir projectDir(packageHandler.importedProjectPath());
QFile pfile(projectDir.path() + QDir::separator() + "project.tpp");
if (pfile.open(QIODevice::ReadOnly | QIODevice::Text)) {
project->fromXml(QString::fromLocal8Bit(pfile.readAll()));
pfile.close();
} else {
#ifdef K_DEBUG
QString msg1 = "TupFileManager::load() - Error while open .tpp file. Name: " + pfile.fileName();
QString msg2 = "TupFileManager::load() - Path: " + projectDir.path();
QString msg3 = "TupFileManager::load() - Error Description: " + pfile.errorString();
#ifdef Q_OS_WIN32
qDebug() << msg1;
qDebug() << msg2;
qDebug() << msg3;
#else
tError() << msg1;
tError() << msg2;
tError() << msg3;
#endif
#endif
return false;
}
project->setDataDir(packageHandler.importedProjectPath());
project->loadLibrary(projectDir.path() + QDir::separator() + "library.tpl");
QStringList scenes = projectDir.entryList(QStringList() << "*.tps", QDir::Readable | QDir::Files);
if (scenes.count() > 0) {
int index = 0;
foreach (QString scenePath, scenes) {
scenePath = projectDir.path() + QDir::separator() + scenePath;
QFile file(scenePath);
if (file.open(QIODevice::ReadOnly | QIODevice::Text)) {
QString xml = QString::fromLocal8Bit(file.readAll());
QDomDocument document;
if (! document.setContent(xml))
return false;
QDomElement root = document.documentElement();
TupScene *scene = project->createScene(root.attribute("name"), index, true);
scene->fromXml(xml);
index += 1;
file.close();
} else {
#ifdef K_DEBUG
QString msg = "TupFileManager::load() - Error: Can't open file -> " + scenePath;
#ifdef Q_OS_WIN32
qDebug() << msg;
#else
tError() << msg;
#endif
#endif
return false;
}
}