MCPcopy Create free account
hub / github.com/OpenApoc/OpenApoc / createLabControl

Method createLabControl

game/ui/components/controlgenerator.cpp:596–614  ·  view source on GitHub ↗

* Create lab icon control with quantity label. * @state - the game state * @facility - lab facility * @return - lab icon control */

Source from the content-addressed store, hash-verified

594 * @return - lab icon control
595 */
596sp<Control> ControlGenerator::createLabControl(sp<GameState> state, sp<Facility> facility)
597{
598 if (!singleton.initialised)
599 {
600 singleton.init(*state);
601 }
602
603 auto graphic = mksp<Graphic>(facility->type->sprite);
604 graphic->AutoSize = true;
605
606 auto spriteSize = facility->type->sprite->size;
607 auto label = graphic->createChild<Label>();
608 label->setFont(singleton.labelFont);
609 label->Size = {20, label->getFont()->getFontHeight()};
610 label->Location = {(spriteSize[0] - label->Size[0]) / 2, (spriteSize[1] - label->Size[1]) / 2};
611 label->TextHAlign = HorizontalAlignment::Centre;
612
613 return graphic;
614}
615
616/**
617 * Control containing two MultilistBox for assignment state.

Callers

nothing calls this directly

Calls 4

initMethod · 0.45
setFontMethod · 0.45
getFontHeightMethod · 0.45
getFontMethod · 0.45

Tested by

no test coverage detected