104 lines
2.8 KiB
C++
104 lines
2.8 KiB
C++
#include "recipexmlcontrol.h"
|
|
#include <QFile>
|
|
#include <QDebug>
|
|
#include <QDomDocument>
|
|
RecipeXmlControl::RecipeXmlControl(QObject *parent)
|
|
: QObject{parent}
|
|
{
|
|
readRecipeXml();
|
|
}
|
|
|
|
QList<ST_RecipeParam> RecipeXmlControl::getFESRecipes()
|
|
{
|
|
return recipeParamList;
|
|
}
|
|
|
|
QList<ST_RecipeParam> RecipeXmlControl::getFESRecipesReverse()
|
|
{
|
|
return recipeParamReverseList;
|
|
}
|
|
|
|
bool RecipeXmlControl::readRecipeXml()
|
|
{
|
|
QFile file("./DependFile/ConfigFile/FESRecipeList.xml");
|
|
|
|
if(!file.open(QIODevice::ReadOnly))
|
|
{
|
|
qDebug()<<"read FESRecipeList failed";
|
|
return false;
|
|
}
|
|
|
|
QDomDocument doc;
|
|
QString error;
|
|
int row,colum;
|
|
if(!doc.setContent(&file,&error,&row,&colum))
|
|
{
|
|
qDebug()<<"gameList error"<<error<<row<<colum;
|
|
file.close();
|
|
return false;
|
|
}
|
|
file.close();
|
|
|
|
QDomElement root=doc.documentElement(); //返回根节点
|
|
QDomNode node=root.firstChild(); //获得第一个子节点
|
|
|
|
while(!node.isNull())
|
|
{
|
|
if(node.isElement()) //如果节点是元素
|
|
{
|
|
ST_RecipeParam st_recipeMsg;
|
|
QDomElement e=node.toElement();
|
|
st_recipeMsg.muscleId = e.attribute("ID").toInt();
|
|
st_recipeMsg.muscleName = e.attribute("name");
|
|
st_recipeMsg.startAngle = e.attribute("startAngle").toInt();
|
|
st_recipeMsg.stopAngle = e.attribute("stopAngle").toInt();
|
|
recipeParamList.append(st_recipeMsg);
|
|
}
|
|
node = node.nextSibling();
|
|
}
|
|
qDebug()<<"recipeParamList.count()"<<recipeParamList.count();
|
|
|
|
|
|
|
|
|
|
QFile file2("./DependFile/ConfigFile/FESRecipeListReverse.xml");
|
|
|
|
if(!file2.open(QIODevice::ReadOnly))
|
|
{
|
|
qDebug()<<"read FESRecipeListReverse failed";
|
|
return false;
|
|
}
|
|
|
|
QDomDocument doc2;
|
|
QString error2;
|
|
int row2,colum2;
|
|
if(!doc2.setContent(&file2,&error2,&row2,&colum2))
|
|
{
|
|
qDebug()<<"gameList2 error"<<error2<<row2<<colum2;
|
|
file2.close();
|
|
return false;
|
|
}
|
|
file2.close();
|
|
|
|
QDomElement root2=doc2.documentElement(); //返回根节点
|
|
QDomNode node2=root2.firstChild(); //获得第一个子节点
|
|
|
|
while(!node2.isNull())
|
|
{
|
|
if(node2.isElement()) //如果节点是元素
|
|
{
|
|
ST_RecipeParam st_recipeMsg;
|
|
QDomElement e=node2.toElement();
|
|
st_recipeMsg.muscleId = e.attribute("ID").toInt();
|
|
st_recipeMsg.muscleName = e.attribute("name");
|
|
st_recipeMsg.startAngle = e.attribute("startAngle").toInt();
|
|
st_recipeMsg.stopAngle = e.attribute("stopAngle").toInt();
|
|
recipeParamReverseList.append(st_recipeMsg);
|
|
}
|
|
node2 = node2.nextSibling();
|
|
}
|
|
qDebug()<<"recipeParamReverseList.count()"<<recipeParamReverseList.count();
|
|
|
|
return true;
|
|
}
|