MCPcopy Create free account
hub / github.com/OpenXcom/OpenXcom / NewPossibleManufactureState

Method NewPossibleManufactureState

src/Geoscape/NewPossibleManufactureState.cpp:40–87  ·  view source on GitHub ↗

* Initializes all the elements in the EndManufacture screen. * @param game Pointer to the core game. * @param base Pointer to the base to get info from. * @param possibilities List of newly possible ManufactureProject */

Source from the content-addressed store, hash-verified

38 * @param possibilities List of newly possible ManufactureProject
39 */
40NewPossibleManufactureState::NewPossibleManufactureState(Game * game, Base * base, const std::vector<RuleManufacture *> & possibilities) : State (game), _base(base)
41{
42 _screen = false;
43
44 // Create objects
45 _window = new Window(this, 288, 180, 16, 10);
46 _btnOk = new TextButton(160, 14, 80, 149);
47 _btnManufacture = new TextButton(160, 14, 80, 165);
48 _txtTitle = new Text(288, 40, 16, 20);
49 _lstPossibilities = new TextList(288, 80, 16, 56);
50
51 // Set palette
52 setPalette("PAL_GEOSCAPE", 6);
53
54 add(_window);
55 add(_btnOk);
56 add(_btnManufacture);
57 add(_txtTitle);
58 add(_lstPossibilities);
59
60 centerAllSurfaces();
61
62 // Set up objects
63 _window->setColor(Palette::blockOffset(15)-1);
64 _window->setBackground(_game->getResourcePack()->getSurface("BACK17.SCR"));
65
66 _btnOk->setColor(Palette::blockOffset(8)+5);
67 _btnOk->setText(tr("STR_OK"));
68 _btnOk->onMouseClick((ActionHandler)&NewPossibleManufactureState::btnOkClick);
69 _btnOk->onKeyboardPress((ActionHandler)&NewPossibleManufactureState::btnOkClick, Options::keyCancel);
70 _btnManufacture->setColor(Palette::blockOffset(8)+5);
71 _btnManufacture->setText(tr("STR_ALLOCATE_MANUFACTURE"));
72 _btnManufacture->onMouseClick((ActionHandler)&NewPossibleManufactureState::btnManufactureClick);
73 _btnManufacture->onKeyboardPress((ActionHandler)&NewPossibleManufactureState::btnManufactureClick, Options::keyOk);
74 _txtTitle->setColor(Palette::blockOffset(15)-1);
75 _txtTitle->setBig();
76 _txtTitle->setAlign(ALIGN_CENTER);
77 _txtTitle->setText(tr("STR_WE_CAN_NOW_PRODUCE"));
78
79 _lstPossibilities->setColor(Palette::blockOffset(8)+10);
80 _lstPossibilities->setColumns(1, 288);
81 _lstPossibilities->setBig();
82 _lstPossibilities->setAlign(ALIGN_CENTER);
83 for(std::vector<RuleManufacture *>::const_iterator iter = possibilities.begin (); iter != possibilities.end (); ++iter)
84 {
85 _lstPossibilities->addRow (1, tr((*iter)->getName ()).c_str());
86 }
87}
88
89/**
90 * return to the previous screen

Callers

nothing calls this directly

Calls 12

onMouseClickMethod · 0.80
onKeyboardPressMethod · 0.80
setColumnsMethod · 0.80
addRowMethod · 0.80
setColorMethod · 0.45
setBackgroundMethod · 0.45
getSurfaceMethod · 0.45
getResourcePackMethod · 0.45
setTextMethod · 0.45
setBigMethod · 0.45
setAlignMethod · 0.45
getNameMethod · 0.45

Tested by

no test coverage detected