MCPcopy Create free account
hub / github.com/ZDoom/Raze / M_ParseMenuDefs

Function M_ParseMenuDefs

source/common/menu/menudef.cpp:1516–1597  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1514//=============================================================================
1515
1516void M_ParseMenuDefs()
1517{
1518 int lump, lastlump = 0;
1519
1520 // these are supposed to get GC'd after parsing is complete.
1521 DefaultListMenuSettings = Create<DListMenuDescriptor>();
1522 DefaultOptionMenuSettings = Create<DOptionMenuDescriptor>();
1523 DefaultListMenuSettings->Reset();
1524 DefaultOptionMenuSettings->Reset();
1525 OptionSettings.mLinespacing = 17;
1526
1527 int IWADMenu = fileSystem.CheckNumForName("MENUDEF", FileSys::ns_global, fileSystem.GetIwadNum());
1528
1529 while ((lump = fileSystem.FindLump ("MENUDEF", &lastlump)) != -1)
1530 {
1531 FScanner sc(lump);
1532
1533 mustPrintErrors = lump >= IWADMenu;
1534 sc.SetCMode(true);
1535 while (sc.GetString())
1536 {
1537 if (sc.Compare("LISTMENU"))
1538 {
1539 ParseListMenu(sc);
1540 }
1541 else if (sc.Compare("DEFAULTLISTMENU"))
1542 {
1543 bool s = false;
1544 DoParseListMenuBody(sc, DefaultListMenuSettings, s, -1);
1545 if (DefaultListMenuSettings->mItems.Size() > 0)
1546 {
1547 I_FatalError("You cannot add menu items to the menu default settings.");
1548 }
1549 }
1550 else if (sc.Compare("ADDLISTMENU"))
1551 {
1552 ParseAddListMenu(sc);
1553 }
1554 else if (sc.Compare("OPTIONVALUE"))
1555 {
1556 ParseOptionValue(sc);
1557 }
1558 else if (sc.Compare("OPTIONSTRING"))
1559 {
1560 ParseOptionString(sc);
1561 }
1562 else if (sc.Compare("OPTIONMENUSETTINGS"))
1563 {
1564 ParseOptionSettings(sc);
1565 }
1566 else if (sc.Compare("OPTIONMENU"))
1567 {
1568 ParseOptionMenu(sc);
1569 }
1570 else if (sc.Compare("ADDOPTIONMENU"))
1571 {
1572 ParseAddOptionMenu(sc);
1573 }

Callers 1

M_InitFunction · 0.85

Calls 15

ParseListMenuFunction · 0.85
DoParseListMenuBodyFunction · 0.85
I_FatalErrorFunction · 0.85
ParseAddListMenuFunction · 0.85
ParseOptionValueFunction · 0.85
ParseOptionStringFunction · 0.85
ParseOptionSettingsFunction · 0.85
ParseOptionMenuFunction · 0.85
ParseAddOptionMenuFunction · 0.85
ParseOptionMenuBodyFunction · 0.85
ParseImageScrollerFunction · 0.85
GetIwadNumMethod · 0.80

Tested by

no test coverage detected