本文整理汇总了C++中setInterface函数的典型用法代码示例。如果您正苦于以下问题:C++ setInterface函数的具体用法?C++ setInterface怎么用?C++ setInterface使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了setInterface函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: guard
void TreadmillFB303::make_fb303(
std::shared_ptr<std::thread>& server_thread,
int server_port,
Scheduler& scheduler) {
{
folly::SharedMutex::WriteHolder guard(instance_mutex);
if (instance) {
LOG(FATAL) << "Global Treadmill FB303 instance was already set";
}
instance = std::make_shared<TreadmillFB303>(scheduler);
}
auto server = std::make_shared<apache::thrift::ThriftServer>();
LOG(INFO) << "FB303 running on port " << server_port;
server->setPort(server_port);
server->setInterface(getGlobalTreadmillFB303());
TLSConfig::applyDefaultsToThriftServer(*server);
server_thread.reset(
new std::thread([server]() { server->serve(); }),
[server](std::thread* t) {
server->stop();
t->join();
delete t;
});
}
示例2: Window
/**
* Initializes all the elements in the No Containment screen.
* @param game Pointer to the core game.
*/
NoContainmentState::NoContainmentState()
{
// Create objects
_window = new Window(this, 320, 200, 0, 0);
_btnOk = new TextButton(120, 18, 100, 174);
_txtTitle = new Text(220, 64, 50, 8);
// Set palette
setInterface("noContainment");
add(_window, "window", "noContainment");
add(_btnOk, "button", "noContainment");
add(_txtTitle, "text", "noContainment");
centerAllSurfaces();
// Set up objects
_window->setBackground(_game->getResourcePack()->getSurface("BACK01.SCR"));
_btnOk->setText(tr("STR_OK"));
_btnOk->onMouseClick((ActionHandler)&NoContainmentState::btnOkClick);
_btnOk->onKeyboardPress((ActionHandler)&NoContainmentState::btnOkClick, Options::keyOk);
_btnOk->onKeyboardPress((ActionHandler)&NoContainmentState::btnOkClick, Options::keyCancel);
_txtTitle->setText(tr("STR_ALIEN_DIES_NO_ALIEN_CONTAINMENT_FACILITY"));
_txtTitle->setAlign(ALIGN_CENTER);
_txtTitle->setBig();
_txtTitle->setWordWrap(true);
}
示例3: Window
/**
* Initializes all the elements in the Statistics window.
* @param game Pointer to the core game.
*/
StatisticsState::StatisticsState()
{
// Create objects
_window = new Window(this, 320, 200, 0, 0, POPUP_BOTH);
_btnOk = new TextButton(50, 12, 135, 180);
_txtTitle = new Text(310, 25, 5, 8);
_lstStats = new TextList(280, 136, 12, 36);
// Set palette
setInterface("endGameStatistics");
add(_window, "window", "endGameStatistics");
add(_btnOk, "button", "endGameStatistics");
add(_txtTitle, "text", "endGameStatistics");
add(_lstStats, "list", "endGameStatistics");
centerAllSurfaces();
// Set up objects
_window->setBackground(_game->getMod()->getSurface("BACK01.SCR"));
_btnOk->setText(tr("STR_OK"));
_btnOk->onMouseClick((ActionHandler)&StatisticsState::btnOkClick);
_btnOk->onKeyboardPress((ActionHandler)&StatisticsState::btnOkClick, Options::keyOk);
_txtTitle->setBig();
_txtTitle->setAlign(ALIGN_CENTER);
_lstStats->setColumns(2, 200, 80);
_lstStats->setDot(true);
listStats();
}
示例4: ping_no_answer
//There is no answer from the PING.
void ping_no_answer(uint8_t* nbNoAnswer, uint8_t interface){
int8_t neighbor = interface_neighbor(interface);
//There is no neighbor, so it's logical.
if(neighbor == -1 )
return;
//There was someone few seconds ago, so nbNoAnswer increases.
(*nbNoAnswer)++;
//When we have no news for a long time, the module is gone.
if((*nbNoAnswer) == NB_NO_PING){
//the first interface to have no answer will copy the interfaces.
if(!awareOfMissingBlock)
interfaces_copy();
setInterface(interface, -1, -1);
//Throwing away the IrDA queues for this UART.
irda_reset_queues(interface2uart(interface));
//Maybe he has just turned so we check...
if(!ID_in_interfaces(neighbor)) {
network_reset(neighbor, interface);
}
(*nbNoAnswer) = 0;
}
}
示例5: _base
/**
* Initializes all the elements in the EndResearch screen.
* @param game Pointer to the core game.
* @param base Pointer to the base to get info from.
* @param possibilities List of newly possible ResearchProject
*/
NewPossibleResearchState::NewPossibleResearchState(Base * base, const std::vector<RuleResearch *> & possibilities) : _base(base)
{
_screen = false;
// Create objects
_window = new Window(this, 288, 180, 16, 10);
_btnOk = new TextButton(160, 14, 80, 149);
_btnResearch = new TextButton(160, 14, 80, 165);
_txtTitle = new Text(288, 40, 16, 20);
_lstPossibilities = new TextList(250, 96, 35, 50);
// Set palette
setInterface("geoResearch");
add(_window, "window", "geoResearch");
add(_btnOk, "button", "geoResearch");
add(_btnResearch, "button", "geoResearch");
add(_txtTitle, "text1", "geoResearch");
add(_lstPossibilities, "text2", "geoResearch");
centerAllSurfaces();
// Set up objects
_window->setBackground(_game->getMod()->getSurface("BACK05.SCR"));
_btnOk->setText(tr("STR_OK"));
_btnOk->onMouseClick((ActionHandler)&NewPossibleResearchState::btnOkClick);
_btnOk->onKeyboardPress((ActionHandler)&NewPossibleResearchState::btnOkClick, Options::keyCancel);
_btnResearch->setText(tr("STR_ALLOCATE_RESEARCH"));
_btnResearch->onMouseClick((ActionHandler)&NewPossibleResearchState::btnResearchClick);
_btnResearch->onKeyboardPress((ActionHandler)&NewPossibleResearchState::btnResearchClick, Options::keyOk);
_txtTitle->setBig();
_txtTitle->setAlign(ALIGN_CENTER);
_lstPossibilities->setColumns(1, 250);
_lstPossibilities->setBig();
_lstPossibilities->setAlign(ALIGN_CENTER);
_lstPossibilities->setScrolling(true, 0);
size_t tally(0);
for (std::vector<RuleResearch *>::const_iterator iter = possibilities.begin(); iter != possibilities.end(); ++iter)
{
bool liveAlien = (*iter)->needItem() && _game->getMod()->getUnit((*iter)->getName()) != 0;
if (!_game->getSavedGame()->wasResearchPopped(*iter) && (*iter)->getRequirements().empty() && !liveAlien)
{
_game->getSavedGame()->addPoppedResearch((*iter));
_lstPossibilities->addRow (1, tr((*iter)->getName()).c_str());
}
else
{
tally++;
}
}
if (!(tally == possibilities.size() || possibilities.empty()))
{
_txtTitle->setText(tr("STR_WE_CAN_NOW_RESEARCH"));
}
}
示例6: _base
/**
* Initializes all the elements in the Equip Craft screen.
* @param game Pointer to the core game.
* @param base Pointer to the base to get info from.
*/
CraftsState::CraftsState(Base *base) : _base(base)
{
// Create objects
_window = new Window(this, 320, 200, 0, 0);
_btnOk = new TextButton(288, 16, 16, 176);
_txtTitle = new Text(298, 17, 16, 8);
_txtBase = new Text(298, 17, 16, 24);
_txtName = new Text(94, 9, 16, 40);
_txtStatus = new Text(50, 9, 110, 40);
_txtWeapon = new Text(50, 17, 160, 40);
_txtCrew = new Text(58, 9, 210, 40);
_txtHwp = new Text(46, 9, 268, 40);
_lstCrafts = new TextList(288, 118, 8, 58);
// Set palette
setInterface("craftSelect");
add(_window, "window", "craftSelect");
add(_btnOk, "button", "craftSelect");
add(_txtTitle, "text", "craftSelect");
add(_txtBase, "text", "craftSelect");
add(_txtName, "text", "craftSelect");
add(_txtStatus, "text", "craftSelect");
add(_txtWeapon, "text", "craftSelect");
add(_txtCrew, "text", "craftSelect");
add(_txtHwp, "text", "craftSelect");
add(_lstCrafts, "list", "craftSelect");
centerAllSurfaces();
// Set up objects
_window->setBackground(_game->getResourcePack()->getSurface("BACK14.SCR"));
_btnOk->setText(tr("STR_OK"));
_btnOk->onMouseClick((ActionHandler)&CraftsState::btnOkClick);
_btnOk->onKeyboardPress((ActionHandler)&CraftsState::btnOkClick, Options::keyCancel);
_txtTitle->setBig();
_txtTitle->setText(tr("STR_INTERCEPTION_CRAFT"));
_txtBase->setBig();
_txtBase->setText(tr("STR_BASE_").arg(_base->getName()));
_txtName->setText(tr("STR_NAME_UC"));
_txtStatus->setText(tr("STR_STATUS"));
_txtWeapon->setText(tr("STR_WEAPON_SYSTEMS"));
_txtWeapon->setWordWrap(true);
_txtCrew->setText(tr("STR_CREW"));
_txtHwp->setText(tr("STR_HWPS"));
_lstCrafts->setColumns(5, 94, 68, 44, 46, 28);
_lstCrafts->setSelectable(true);
_lstCrafts->setBackground(_window);
_lstCrafts->setMargin(8);
_lstCrafts->onMouseClick((ActionHandler)&CraftsState::lstCraftsClick);
}
示例7: Window
/**
* Initializes all the elements in the Promotions screen.
* @param game Pointer to the core game.
*/
PromotionsState::PromotionsState()
{
// Create objects
_window = new Window(this, 320, 200, 0, 0);
_btnOk = new TextButton(288, 16, 16, 176);
_txtTitle = new Text(300, 17, 10, 8);
_txtName = new Text(114, 9, 16, 32);
_txtRank = new Text(90, 9, 130, 32);
_txtBase = new Text(80, 9, 220, 32);
_lstSoldiers = new TextList(288, 128, 8, 40);
// Set palette
setInterface("promotions");
add(_window, "window", "promotions");
add(_btnOk, "button", "promotions");
add(_txtTitle, "heading", "promotions");
add(_txtName, "text", "promotions");
add(_txtRank, "text", "promotions");
add(_txtBase, "text", "promotions");
add(_lstSoldiers, "list", "promotions");
centerAllSurfaces();
// Set up objects
_window->setBackground(_game->getResourcePack()->getSurface("BACK01.SCR"));
_btnOk->setText(tr("STR_OK"));
_btnOk->onMouseClick((ActionHandler)&PromotionsState::btnOkClick);
_btnOk->onKeyboardPress((ActionHandler)&PromotionsState::btnOkClick, Options::keyOk);
_btnOk->onKeyboardPress((ActionHandler)&PromotionsState::btnOkClick, Options::keyCancel);
_txtTitle->setText(tr("STR_PROMOTIONS"));
_txtTitle->setAlign(ALIGN_CENTER);
_txtTitle->setBig();
_txtName->setText(tr("STR_NAME"));
_txtRank->setText(tr("STR_NEW_RANK"));
_txtBase->setText(tr("STR_BASE"));
_lstSoldiers->setColumns(3, 114, 90, 84);
_lstSoldiers->setSelectable(true);
_lstSoldiers->setBackground(_window);
_lstSoldiers->setMargin(8);
for (std::vector<Base*>::iterator i = _game->getSavedGame()->getBases()->begin(); i != _game->getSavedGame()->getBases()->end(); ++i)
{
for (std::vector<Soldier*>::iterator j = (*i)->getSoldiers()->begin(); j != (*i)->getSoldiers()->end(); ++j)
{
if ((*j)->isPromoted())
{
_lstSoldiers->addRow(3, (*j)->getName().c_str(), tr((*j)->getRankString()).c_str(), (*i)->getName().c_str());
}
}
}
}
示例8: QServiceFilterPrivate
/*!
\fn QServiceFilter::QServiceFilter(const QString& interfaceName, const QString& version, QServiceFilter::VersionMatchRule rule)
Creates a new filter object that matches all service
implementations implementing \a interfaceName that match the specified
\a version using the given \a rule.
*/
QServiceFilter::QServiceFilter(const QString& interfaceName, const QString& version, QServiceFilter::VersionMatchRule rule)
{
d = new QServiceFilterPrivate();
d->majorVersion = -1;
d->minorVersion = -1;
d->matchingRule = QServiceFilter::MinimumVersionMatch;
d->capMatchingRule = QServiceFilter::MatchMinimum;
setInterface(interfaceName, version, rule);
}
示例9: _base
/**
* Initializes all the elements in the Transfers window.
* @param game Pointer to the core game.
* @param base Pointer to the base to get info from.
*/
TransfersState::TransfersState(Base *base) : _base(base)
{
_screen = false;
// Create objects
_window = new Window(this, 320, 184, 0, 8, POPUP_BOTH);
_btnOk = new TextButton(288, 16, 16, 166);
_txtTitle = new Text(278, 17, 21, 18);
_txtItem = new Text(114, 9, 16, 34);
_txtQuantity = new Text(54, 9, 152, 34);
_txtArrivalTime = new Text(112, 9, 212, 34);
_lstTransfers = new TextList(273, 112, 14, 50);
// Set palette
setInterface("transferInfo");
add(_window, "window", "transferInfo");
add(_btnOk, "button", "transferInfo");
add(_txtTitle, "text", "transferInfo");
add(_txtItem, "text", "transferInfo");
add(_txtQuantity, "text", "transferInfo");
add(_txtArrivalTime, "text", "transferInfo");
add(_lstTransfers, "list", "transferInfo");
centerAllSurfaces();
// Set up objects
_window->setBackground(_game->getResourcePack()->getSurface("BACK13.SCR"));
_btnOk->setText(tr("STR_OK"));
_btnOk->onMouseClick((ActionHandler)&TransfersState::btnOkClick);
_btnOk->onKeyboardPress((ActionHandler)&TransfersState::btnOkClick, Options::keyOk);
_btnOk->onKeyboardPress((ActionHandler)&TransfersState::btnOkClick, Options::keyCancel);
_txtTitle->setBig();
_txtTitle->setAlign(ALIGN_CENTER);
_txtTitle->setText(tr("STR_TRANSFERS"));
_txtItem->setText(tr("STR_ITEM"));
_txtQuantity->setText(tr("STR_QUANTITY_UC"));
_txtArrivalTime->setText(tr("STR_ARRIVAL_TIME_HOURS"));
_lstTransfers->setColumns(3, 155, 75, 46);
_lstTransfers->setSelectable(true);
_lstTransfers->setBackground(_window);
_lstTransfers->setMargin(2);
for (std::vector<Transfer*>::iterator i = _base->getTransfers()->begin(); i != _base->getTransfers()->end(); ++i)
{
std::wostringstream ss, ss2;
ss << (*i)->getQuantity();
ss2 << (*i)->getHours();
_lstTransfers->addRow(3, (*i)->getName(_game->getLanguage()).c_str(), ss.str().c_str(), ss2.str().c_str());
}
}
示例10: _parent
/**
* Initializes all the elements in the Load Craft Loadout window.
*/
CraftEquipmentLoadState::CraftEquipmentLoadState(CraftEquipmentState *parent) : _parent(parent)
{
_screen = false;
// Create objects
_window = new Window(this, 240, 136, 40, 36+1, POPUP_BOTH);
_txtTitle = new Text(230, 16, 45, 44+3);
_lstLoadout = new TextList(208, 80, 48, 60);
_btnCancel = new TextButton(120, 16, 90, 148);
// Set palette
setInterface("craftEquipmentLoad");
add(_window, "window", "craftEquipmentLoad");
add(_txtTitle, "text", "craftEquipmentLoad");
add(_lstLoadout, "list", "craftEquipmentLoad");
add(_btnCancel, "button", "craftEquipmentLoad");
centerAllSurfaces();
// Set up objects
_window->setBackground(_game->getMod()->getSurface("BACK04.SCR"));
_txtTitle->setAlign(ALIGN_CENTER);
_txtTitle->setText(tr("STR_LOAD_CRAFT_LOADOUT_TEMPLATE"));
_lstLoadout->setColumns(1, 192);
_lstLoadout->setSelectable(true);
_lstLoadout->setBackground(_window);
_lstLoadout->setMargin(8);
_lstLoadout->onMouseClick((ActionHandler)&CraftEquipmentLoadState::lstLoadoutClick);
_btnCancel->setText(tr("STR_CANCEL_UC"));
_btnCancel->onMouseClick((ActionHandler)&CraftEquipmentLoadState::btnCancelClick);
_btnCancel->onKeyboardPress((ActionHandler)&CraftEquipmentLoadState::btnCancelClick, Options::keyCancel);
for (int i = 0; i < SavedGame::MAX_CRAFT_LOADOUT_TEMPLATES; ++i)
{
ItemContainer *item = _game->getSavedGame()->getGlobalCraftLoadout(i);
if (item->getContents()->empty())
{
_lstLoadout->addRow(1, tr("STR_EMPTY_SLOT_N").arg(i + 1).c_str());
}
else
{
const std::wstring &itemName = _game->getSavedGame()->getGlobalCraftLoadoutName(i);
if (itemName.empty())
{
_lstLoadout->addRow(1, tr("STR_UNNAMED_SLOT_N").arg(i + 1).c_str());
}
else
{
_lstLoadout->addRow(1, itemName.c_str());
}
}
}
}
示例11: Window
/**
* Initializes all the elements in the Cannot Reequip screen.
* @param game Pointer to the core game.
* @param missingItems List of items still needed for reequip.
*/
CannotReequipState::CannotReequipState(std::vector<ReequipStat> missingItems)
{
// Create objects
_window = new Window(this, 320, 200, 0, 0);
_btnOk = new TextButton(120, 18, 100, 174);
_txtTitle = new Text(220, 32, 50, 8);
_txtItem = new Text(142, 9, 10, 50);
_txtQuantity = new Text(88, 9, 152, 50);
_txtCraft = new Text(74, 9, 218, 50);
_lstItems = new TextList(288, 112, 8, 58);
// Set palette
setInterface("cannotReequip");
add(_window, "window", "cannotReequip");
add(_btnOk, "button", "cannotReequip");
add(_txtTitle, "heading", "cannotReequip");
add(_txtItem, "text", "cannotReequip");
add(_txtQuantity, "text", "cannotReequip");
add(_txtCraft, "text", "cannotReequip");
add(_lstItems, "list", "cannotReequip");
centerAllSurfaces();
// Set up objects
_window->setBackground(_game->getMod()->getSurface("BACK01.SCR"));
_btnOk->setText(tr("STR_OK"));
_btnOk->onMouseClick((ActionHandler)&CannotReequipState::btnOkClick);
_btnOk->onKeyboardPress((ActionHandler)&CannotReequipState::btnOkClick, Options::keyOk);
_btnOk->onKeyboardPress((ActionHandler)&CannotReequipState::btnOkClick, Options::keyCancel);
_txtTitle->setText(tr("STR_NOT_ENOUGH_EQUIPMENT_TO_FULLY_RE_EQUIP_SQUAD"));
_txtTitle->setAlign(ALIGN_CENTER);
_txtTitle->setBig();
_txtTitle->setWordWrap(true);
_txtItem->setText(tr("STR_ITEM"));
_txtQuantity->setText(tr("STR_QUANTITY_UC"));
_txtCraft->setText(tr("STR_CRAFT"));
_lstItems->setColumns(3, 162, 46, 80);
_lstItems->setSelectable(true);
_lstItems->setBackground(_window);
_lstItems->setMargin(2);
for (std::vector<ReequipStat>::iterator i = missingItems.begin(); i != missingItems.end(); ++i)
{
std::wostringstream ss;
ss << i->qty;
_lstItems->addRow(3, tr(i->item).c_str(), ss.str().c_str(), i->craft.c_str());
}
}
示例12: _target
/**
* Initializes all the elements in the Target Info window.
* @param game Pointer to the core game.
* @param target Pointer to the target to show info from.
* @param globe Pointer to the Geoscape globe.
*/
TargetInfoState::TargetInfoState(Target *target, Globe *globe) : _target(target), _globe(globe)
{
_screen = false;
// Create objects
_window = new Window(this, 192, 120, 32, 40, POPUP_BOTH);
_btnIntercept = new TextButton(160, 12, 48, 124);
_btnOk = new TextButton(160, 12, 48, 140);
_txtTitle = new Text(182, 32, 37, 46);
_txtTargetted = new Text(182, 9, 37, 78);
_txtFollowers = new Text(182, 40, 37, 88);
// Set palette
setInterface("targetInfo");
add(_window, "window", "targetInfo");
add(_btnIntercept, "button", "targetInfo");
add(_btnOk, "button", "targetInfo");
add(_txtTitle, "text", "targetInfo");
add(_txtTargetted, "text", "targetInfo");
add(_txtFollowers, "text", "targetInfo");
centerAllSurfaces();
// Set up objects
_window->setBackground(_game->getMod()->getSurface("BACK01.SCR"));
_btnIntercept->setText(tr("STR_INTERCEPT"));
_btnIntercept->onMouseClick((ActionHandler)&TargetInfoState::btnInterceptClick);
_btnOk->setText(tr("STR_OK"));
_btnOk->onMouseClick((ActionHandler)&TargetInfoState::btnOkClick);
_btnOk->onKeyboardPress((ActionHandler)&TargetInfoState::btnOkClick, Options::keyCancel);
std::wostringstream ss;
_txtTitle->setBig();
_txtTitle->setAlign(ALIGN_CENTER);
_txtTitle->setVerticalAlign(ALIGN_MIDDLE);
_txtTitle->setWordWrap(true);
ss << L'\x01' << _target->getName(_game->getLanguage());
_txtTitle->setText(ss.str().c_str());
_txtTargetted->setAlign(ALIGN_CENTER);
_txtTargetted->setText(tr("STR_TARGETTED_BY"));
ss.str(L"");
_txtFollowers->setAlign(ALIGN_CENTER);
for (std::vector<Target*>::iterator i = _target->getFollowers()->begin(); i != _target->getFollowers()->end(); ++i)
{
ss << (*i)->getName(_game->getLanguage()) << L'\n';
}
_txtFollowers->setText(ss.str());
}
示例13: _Info
JrServer::~JrServer()
{
_Info("Closing server.");
setInterface(nullptr);
auto devices = d->clients.keys();
for (auto dev : devices) {
dev->close();
removeClient(dev);
}
delete d->transport;
delete d;
}
示例14: Window
/**
* Initializes all the elements in the Main Menu window.
* @param game Pointer to the core game.
*/
MainMenuState::MainMenuState()
{
// Create objects
_window = new Window(this, 256, 160, 32, 20, POPUP_BOTH);
_btnNewGame = new TextButton(92, 20, 64, 90);
_btnNewBattle = new TextButton(92, 20, 164, 90);
_btnLoad = new TextButton(92, 20, 64, 118);
_btnOptions = new TextButton(92, 20, 164, 118);
_btnQuit = new TextButton(192, 20, 64, 146);
_txtTitle = new Text(256, 30, 32, 45);
// Set palette
setInterface("mainMenu");
add(_window, "window", "mainMenu");
add(_btnNewGame, "button", "mainMenu");
add(_btnNewBattle, "button", "mainMenu");
add(_btnLoad, "button", "mainMenu");
add(_btnOptions, "button", "mainMenu");
add(_btnQuit, "button", "mainMenu");
add(_txtTitle, "text", "mainMenu");
centerAllSurfaces();
// Set up objects
_window->setBackground(_game->getResourcePack()->getSurface("BACK01.SCR"));
_btnNewGame->setText(tr("STR_NEW_GAME"));
_btnNewGame->onMouseClick((ActionHandler)&MainMenuState::btnNewGameClick);
_btnNewBattle->setText(tr("STR_NEW_BATTLE"));
_btnNewBattle->onMouseClick((ActionHandler)&MainMenuState::btnNewBattleClick);
_btnLoad->setText(tr("STR_LOAD_SAVED_GAME"));
_btnLoad->onMouseClick((ActionHandler)&MainMenuState::btnLoadClick);
_btnOptions->setText(tr("STR_OPTIONS"));
_btnOptions->onMouseClick((ActionHandler)&MainMenuState::btnOptionsClick);
_btnQuit->setText(tr("STR_QUIT"));
_btnQuit->onMouseClick((ActionHandler)&MainMenuState::btnQuitClick);
_txtTitle->setAlign(ALIGN_CENTER);
_txtTitle->setBig();
std::wostringstream title;
title << tr("STR_OPENXCOM") << L"\x02";
title << Language::utf8ToWstr(OPENXCOM_VERSION_SHORT) << Language::utf8ToWstr(OPENXCOM_VERSION_GIT);
_txtTitle->setText(title.str());
// Set music
_game->getResourcePack()->playMusic("GMSTORY");
}
示例15: system
void Utility::unload() {
if(program->active == nullptr) return;
if(tracerEnable) tracerToggle();
system().unload();
path.reset();
pathname.reset();
setInterface(nullptr);
video.clear();
audio.clear();
presentation->setTitle({Emulator::Name, " ", Emulator::Version});
}