MCPcopy Create free account
hub / github.com/SOUI2/soui / ParseLayout

Function ParseLayout

tools/src/uiresbuilder/residbuilder.cpp:339–409  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

337}
338
339void ParseLayout(TiXmlElement *xmlNode,map<wstring,int> &vecName2ID,int & nStartId)
340{
341 if(!xmlNode) return;
342
343 const char * pszAttrName = xmlNode->Attribute("name");
344
345 if(pszAttrName)
346 {//��name���ԲŽ���id
347 wchar_t szName[100]={0};
348 int nID = nStartId;
349
350 MultiByteToWideChar(CP_ACP,0,pszAttrName,-1,szName,100);
351 bool isNameEmpty=true;
352 for(wchar_t *p=szName;*p;p++)
353 {
354 if(*p != L' ' && *p != L'\t')
355 {
356 isNameEmpty = false;
357 break;
358 }
359 }
360 if(!isNameEmpty)
361 {
362 if(vecName2ID.find(szName) == vecName2ID.end())
363 {
364 const char *pszID = xmlNode->Attribute("id");
365 if(!pszID)
366 {
367 nStartId++;
368 }else if(strnicmp(pszID,"ID",2) == 0)
369 {//ID����ID����IDOK��IDCANCEL
370 if(stricmp(pszID,"IDOK")==0)
371 nID = IDOK;
372 if(stricmp(pszID,"IDCANCEL")==0)
373 nID = IDCANCEL;
374 if(stricmp(pszID,"IDABORT")==0)
375 nID = IDABORT;
376 if(stricmp(pszID,"IDRETRY")==0)
377 nID = IDRETRY;
378 if(stricmp(pszID,"IDIGNORE")==0)
379 nID = IDIGNORE;
380 if(stricmp(pszID,"IDYES")==0)
381 nID = IDYES;
382 if(stricmp(pszID,"IDNO")==0)
383 nID = IDNO;
384 if(stricmp(pszID,"IDCLOSE")==0)
385 nID = IDCLOSE;
386 if(stricmp(pszID,"IDHELP")==0)
387 nID = IDHELP;
388 if(stricmp(pszID,"IDTRYAGAIN")==0)
389 nID = IDTRYAGAIN;
390 if(stricmp(pszID,"IDCONTINUE")==0)
391 nID = IDCONTINUE;
392 }else
393 {
394 nID = atoi(pszID);
395 }
396 vecName2ID[szName] = nID;

Callers 1

ParseLayoutFileFunction · 0.85

Calls 5

AttributeMethod · 0.80
findMethod · 0.45
endMethod · 0.45
FirstChildElementMethod · 0.45
NextSiblingElementMethod · 0.45

Tested by

no test coverage detected