您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ wgettext函数代码示例

51自学网 2021-06-03 09:55:29
  C++
这篇教程C++ wgettext函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中wgettext函数的典型用法代码示例。如果您正苦于以下问题:C++ wgettext函数的具体用法?C++ wgettext怎么用?C++ wgettext使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了wgettext函数的29个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: removeChildren

void GUIVolumeChange::regenerateGui(v2u32 screensize){	/*		Remove stuff	*/	removeChildren();		/*		Calculate new sizes and positions	*/	core::rect<s32> rect(			screensize.X/2 - 380/2,			screensize.Y/2 - 200/2,			screensize.X/2 + 380/2,			screensize.Y/2 + 200/2	);		DesiredRect = rect;	recalculateAbsolutePosition(false);	v2s32 size = rect.getSize();	v2s32 topleft_client(40, 0);	v2s32 size_client = size - v2s32(40, 0);	int volume=(int)(g_settings->getFloat("sound_volume")*100);	/*		Add stuff	*/	changeCtype("");	{		core::rect<s32> rect(0, 0, 120, 20);		rect = rect + v2s32(size.X/2-60, size.Y/2-35);		wchar_t* text = wgettext("Sound Volume: ");		Environment->addStaticText(text, rect, false,				true, this, ID_soundText1);		delete[] text;	}	{		core::rect<s32> rect(0, 0, 30, 20);		rect = rect + v2s32(size.X/2+40, size.Y/2-35);		Environment->addStaticText(core::stringw(volume).c_str(), rect, false,				true, this, ID_soundText2);	}	{		core::rect<s32> rect(0, 0, 80, 30);		rect = rect + v2s32(size.X/2-80/2, size.Y/2+55);		wchar_t* text = wgettext("Exit");		Environment->addButton(rect, this, ID_soundExitButton,			text);		delete[] text;	}	{		core::rect<s32> rect(0, 0, 300, 20);		rect = rect + v2s32(size.X/2-150, size.Y/2);		gui::IGUIScrollBar *e = Environment->addScrollBar(true,			rect, this, ID_soundSlider);		e->setMax(100);		e->setPos(volume);	}	changeCtype("");}
开发者ID:0gb-us,项目名称:minetest,代码行数:60,


示例2: removeChildren

void GUIConfirmMenu::regenerateGui(v2u32 screensize){	/*		Remove stuff	*/	removeChildren();		/*		Calculate new sizes and positions	*/	core::rect<s32> rect(			screensize.X/2 - 580/2,			screensize.Y/2 - 300/2,			screensize.X/2 + 580/2,			screensize.Y/2 + 300/2	);		DesiredRect = rect;	recalculateAbsolutePosition(false);	v2s32 size = rect.getSize();	/*		Add stuff	*/	{		core::rect<s32> rect(0, 0, 300, 20);		rect += v2s32(size.X/2-300/2, size.Y/2-30/2-25);		Environment->addStaticText(m_message_text.c_str(),			rect, false, true, this, -1);	}	changeCtype("");	int bw = 100;	{		core::rect<s32> rect(0, 0, bw, 30);		rect = rect + v2s32(size.X/2-bw/2-(bw/2+5), size.Y/2-30/2+25);		Environment->addButton(rect, this, GUI_ID_YES,			wgettext("Yes"));	}	{		core::rect<s32> rect(0, 0, bw, 30);		rect = rect + v2s32(size.X/2-bw/2+(bw/2+5), size.Y/2-30/2+25);		Environment->addButton(rect, this, GUI_ID_NO,			wgettext("No"));	}	changeCtype("C");}
开发者ID:fusionlightcat,项目名称:minetest,代码行数:47,


示例3: removeChildren

void GUIDeathScreen::regenerateGui(v2u32 screensize){  m_screensize = screensize;    /*    Remove stuff  */  removeChildren();    /*    Calculate new sizes and positions  */  core::rect<s32> rect(		       screensize.X/2 - 500/2,		       screensize.Y/2 - 200/2,		       screensize.X/2 + 500/2,		       screensize.Y/2 + 200/2		       );    DesiredRect = rect;  recalculateAbsolutePosition(false);    v2s32 size = rect.getSize();    /*    Add stuff  */    {    core::rect<s32> rect(0, 0, 400, 50);    rect = rect + v2s32(size.X/2-400/2, size.Y/2-50/2-25);    wchar_t* text = wgettext("Death has overcome you! D:");    Environment->addStaticText(text, rect, false,			       true, this, 256);    delete[] text;  }  {    core::rect<s32> rect(0, 0, 140, 30);    rect = rect + v2s32(size.X/2-140/2, size.Y/2-30/2+25);    wchar_t* text = wgettext("Respawn");    gui::IGUIElement *e =       Environment->addButton(rect, this, 257,			     text);    delete[] text;    Environment->setFocus(e);  }}
开发者ID:whiskers75,项目名称:minetest-mac,代码行数:47,


示例4: GUIMessageMenu

void GUIMainMenu::deleteWorld(const std::vector<std::string> &paths){	// Delete files	bool did = fs::DeletePaths(paths);	if(!did){		GUIMessageMenu *menu = new GUIMessageMenu(env, parent,				-1, menumgr, wgettext("Failed to delete all world files"));		menu->drop();	}	// Quit menu to refresh it	acceptInput();	m_data->only_refresh = true;	quitMenu();}
开发者ID:Anchakor,项目名称:minetest,代码行数:14,


示例5: accepted

	void accepted(std::wstring name, std::string gameid)	{		std::string name_narrow = wide_to_narrow(name);		if(!string_allowed_blacklist(name_narrow, WORLDNAME_BLACKLISTED_CHARS))		{			wchar_t* text = wgettext("Cannot create world: Name contains invalid characters");			m_menu->displayMessageMenu(text);			delete[] text;			return;		}		std::vector<WorldSpec> worlds = getAvailableWorlds();		for(std::vector<WorldSpec>::iterator i = worlds.begin();		    i != worlds.end(); i++)		{			if((*i).name == name_narrow)			{				wchar_t* text = wgettext("Cannot create world: A world by this name already exists");				m_menu->displayMessageMenu(text);				delete[] text;				return;			}		}		m_menu->createNewWorld(name, gameid);	}
开发者ID:Imberflur,项目名称:minetest,代码行数:24,


示例6: updateProfiler

void GameUI::toggleProfiler(){	m_profiler_current_page = (m_profiler_current_page + 1) % (m_profiler_max_page + 1);	// FIXME: This updates the profiler with incomplete values	updateProfiler();	if (m_profiler_current_page != 0) {		wchar_t buf[255];		const wchar_t* str = wgettext("Profiler shown (page %d of %d)");		swprintf(buf, sizeof(buf) / sizeof(wchar_t), str,			m_profiler_current_page, m_profiler_max_page);		delete[] str;		showStatusText(buf);	} else {		showTranslatedStatusText("Profiler hidden");	}}
开发者ID:GottfriedSp,项目名称:minetest,代码行数:18,


示例7: removeChildren

void GUIMessage::regenerateGui(v2u32 screensize){	m_screensize = screensize;	/*		Remove stuff	*/	removeChildren();		/*		Calculate new sizes and positions	*/	core::rect<s32> rect(			screensize.X - screensize.X/4,			0,			screensize.X,			screensize.Y/4	);		DesiredRect = rect;	recalculateAbsolutePosition(false);	v2s32 size = rect.getSize();	const s32 btn_height = 30;	const s32 btn_gap = 50;	const s32 btn_gap_hor = 50;	const s32 btn_num = 2;	const s32 btn_width = 140;	/*		Add stuff	*/	changeCtype("");	{		core::rect<s32> rect(0, 0, size.X, size.Y);		rect = rect + v2s32(size.X/2-400/2, size.Y/2-50/2-25);		gui::IGUIStaticText *e = 		Environment->addStaticText(wgettext(m_text.c_str()), rect, false,				true, this, 256);		e->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_CENTER);	}	changeCtype("C");}
开发者ID:Jeija,项目名称:BlockPlanet,代码行数:43,


示例8: removeChildren

void GUIMessageMenu::regenerateGui(v2u32 screensize){	/*		Remove stuff	*/	removeChildren();		/*		Calculate new sizes and positions	*/	core::rect<s32> rect(			screensize.X/2 - 580/2,			screensize.Y/2 - 300/2,			screensize.X/2 + 580/2,			screensize.Y/2 + 300/2	);		DesiredRect = rect;	recalculateAbsolutePosition(false);	v2s32 size = rect.getSize();	/*		Add stuff	*/	{		core::rect<s32> rect(0, 0, 400, 50);		rect = rect + v2s32(size.X/2-400/2, size.Y/2-50/2-25);		Environment->addStaticText(m_message_text.c_str(), rect, false,				true, this, 256);	}	changeCtype("");	{		core::rect<s32> rect(0, 0, 140, 30);		rect = rect + v2s32(size.X/2-140/2, size.Y/2-30/2+25);		gui::IGUIElement *e = 		Environment->addButton(rect, this, 257,			wgettext("Proceed"));		Environment->setFocus(e);	}	changeCtype("C");}
开发者ID:Jordach,项目名称:Minetest-Classic,代码行数:42,


示例9: wgettext

bool GUIKeyChangeMenu::resetMenu(){	if (activeKey >= 0)	{		for(size_t i = 0; i < key_settings.size(); i++)		{			key_setting *k = key_settings.at(i);			if(k->id == activeKey)			{				const wchar_t *text = wgettext(k->key.name());				k->button->setText(text);				delete[] text;				break;			}		}		activeKey = -1;		return false;	}	return true;}
开发者ID:proller,项目名称:minetest,代码行数:20,


示例10: getElementFromId

void GUITextInputMenu::regenerateGui(v2u32 screensize){	std::wstring text;	{		gui::IGUIElement *e = getElementFromId(256);		if(e != NULL)		{			text = e->getText();		}		else		{			text = m_initial_text;			m_initial_text = L"";		}	}	/*		Remove stuff	*/	removeChildren();		/*		Calculate new sizes and positions	*/	core::rect<s32> rect(			screensize.X/2 - 580/2,			screensize.Y/2 - 300/2,			screensize.X/2 + 580/2,			screensize.Y/2 + 300/2	);		DesiredRect = rect;	recalculateAbsolutePosition(false);	v2s32 size = rect.getSize();	/*		Add stuff	*/	{		core::rect<s32> rect(0, 0, 300, 30);		rect = rect + v2s32(size.X/2-300/2, size.Y/2-30/2-25);		#if USE_FREETYPE		gui::IGUIElement *e = (gui::IGUIElement *) new gui::intlGUIEditBox(text.c_str(), true, Environment, this, 256, rect);		e->drop();		#else		gui::IGUIElement *e = Environment->addEditBox(text.c_str(), rect, true, this, 256);		#endif		Environment->setFocus(e);		irr::SEvent evt;		evt.EventType = EET_KEY_INPUT_EVENT;		evt.KeyInput.Key = KEY_END;		evt.KeyInput.PressedDown = true;		e->OnEvent(evt);	}	changeCtype("");	{		core::rect<s32> rect(0, 0, 140, 30);		rect = rect + v2s32(size.X/2-140/2, size.Y/2-30/2+25);		wchar_t* text = wgettext("Proceed");		Environment->addButton(rect, this, 257,			text);		delete[] text;	}	changeCtype("C");}
开发者ID:0gb-us,项目名称:minetest,代码行数:68,


示例11: kp

bool GUIKeyChangeMenu::OnEvent(const SEvent& event){	if (event.EventType == EET_KEY_INPUT_EVENT && activeKey >= 0		&& event.KeyInput.PressedDown)	{				bool prefer_character = shift_down;		KeyPress kp(event.KeyInput, prefer_character);				bool shift_went_down = false;		if(!shift_down &&				(event.KeyInput.Key == irr::KEY_SHIFT ||				event.KeyInput.Key == irr::KEY_LSHIFT ||				event.KeyInput.Key == irr::KEY_RSHIFT))			shift_went_down = true;		// Remove Key already in use message		if(this->key_used_text)		{			this->key_used_text->remove();			this->key_used_text = NULL;		}		// Display Key already in use message		if (std::find(this->key_used.begin(), this->key_used.end(), kp) != this->key_used.end())		{			core::rect < s32 > rect(0, 0, 600, 40);			rect += v2s32(0, 0) + v2s32(25, 30);			const wchar_t *text = wgettext("Key already in use");			this->key_used_text = Environment->addStaticText(text,					rect, false, true, this, -1);			delete[] text;			//infostream << "Key already in use" << std::endl;		}		// But go on		{			key_setting *k = NULL;			for(size_t i = 0; i < key_settings.size(); i++)			{				if(key_settings.at(i)->id == activeKey)				{					k = key_settings.at(i);					break;				}			}			FATAL_ERROR_IF(k == NULL, "Key setting not found");			k->key = kp;			const wchar_t *text = wgettext(k->key.name());			k->button->setText(text);			delete[] text;			this->key_used.push_back(kp);			// Allow characters made with shift			if(shift_went_down){				shift_down = true;				return false;			}else{				activeKey = -1;				return true;			}		}	}	if (event.EventType == EET_GUI_EVENT)	{		if (event.GUIEvent.EventType == gui::EGET_ELEMENT_FOCUS_LOST			&& isVisible())		{			if (!canTakeFocus(event.GUIEvent.Element))			{				dstream << "GUIMainMenu: Not allowing focus change."				<< std::endl;				// Returning true disables focus change				return true;			}		}		if (event.GUIEvent.EventType == gui::EGET_BUTTON_CLICKED)		{			switch (event.GUIEvent.Caller->getID())			{				case GUI_ID_BACK_BUTTON: //back					acceptInput();					quitMenu();					return true;				case GUI_ID_ABORT_BUTTON: //abort					quitMenu();					return true;				default:					key_setting *k = NULL;					for(size_t i = 0; i < key_settings.size(); i++)					{						if(key_settings.at(i)->id == event.GUIEvent.Caller->getID())						{							k = key_settings.at(i);							break;						}					}					FATAL_ERROR_IF(k == NULL, "Key setting not found");					resetMenu();//.........这里部分代码省略.........
开发者ID:proller,项目名称:minetest,代码行数:101,


示例12: removeChildren

void GUIKeyChangeMenu::regenerateGui(v2u32 screensize){	removeChildren();	v2s32 size(620, 430);		core::rect < s32 > rect(screensize.X / 2 - size.X / 2,							screensize.Y / 2 - size.Y / 2, screensize.X / 2 + size.X / 2,							screensize.Y / 2 + size.Y / 2);	DesiredRect = rect;	recalculateAbsolutePosition(false);	v2s32 topleft(0, 0);		{		core::rect < s32 > rect(0, 0, 600, 40);		rect += topleft + v2s32(25, 3);		//gui::IGUIStaticText *t =		const wchar_t *text = wgettext("Keybindings. (If this menu screws up, remove stuff from minetest.conf)");		Environment->addStaticText(text,								   rect, false, true, this, -1);		delete[] text;		//t->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT);	}	// Build buttons	v2s32 offset(25, 60);	for(size_t i = 0; i < key_settings.size(); i++)	{		key_setting *k = key_settings.at(i);		{			core::rect < s32 > rect(0, 0, 110, 20);			rect += topleft + v2s32(offset.X, offset.Y);			Environment->addStaticText(k->button_name, rect, false, true, this, -1);		}		{			core::rect < s32 > rect(0, 0, 100, 30);			rect += topleft + v2s32(offset.X + 115, offset.Y - 5);			const wchar_t *text = wgettext(k->key.name());			k->button = Environment->addButton(rect, this, k->id, text);			delete[] text;		}		if(i + 1 == KMaxButtonPerColumns)			offset = v2s32(260, 60);		else			offset += v2s32(0, 25);	}		{		s32 option_x = offset.X;		s32 option_y = offset.Y + 5;		u32 option_w = 180;		{			core::rect<s32> rect(0, 0, option_w, 30);			rect += topleft + v2s32(option_x, option_y);			const wchar_t *text = wgettext("/"Use/" = climb down");			Environment->addCheckBox(g_settings->getBool("aux1_descends"), rect, this,					GUI_ID_CB_AUX1_DESCENDS, text);			delete[] text;		}		offset += v2s32(0, 25);	}	{		s32 option_x = offset.X;		s32 option_y = offset.Y + 5;		u32 option_w = 280;		{			core::rect<s32> rect(0, 0, option_w, 30);			rect += topleft + v2s32(option_x, option_y);			const wchar_t *text = wgettext("Double tap /"jump/" to toggle fly");			Environment->addCheckBox(g_settings->getBool("doubletap_jump"), rect, this,					GUI_ID_CB_DOUBLETAP_JUMP, text);			delete[] text;		}		offset += v2s32(0, 25);	}	{		core::rect < s32 > rect(0, 0, 100, 30);		rect += topleft + v2s32(size.X - 100 - 20, size.Y - 40);		const wchar_t *text =  wgettext("Save");		Environment->addButton(rect, this, GUI_ID_BACK_BUTTON,				 text);		delete[] text;	}	{		core::rect < s32 > rect(0, 0, 100, 30);		rect += topleft + v2s32(size.X - 100 - 20 - 100 - 20, size.Y - 40);		const wchar_t *text = wgettext("Cancel");		Environment->addButton(rect, this, GUI_ID_ABORT_BUTTON,				text);		delete[] text;	}	}
开发者ID:proller,项目名称:minetest,代码行数:98,


示例13: kp

bool GUISettingsMenu::OnEvent(const SEvent& event){	if (event.EventType == EET_KEY_INPUT_EVENT && activeKey >= 0 && event.KeyInput.PressedDown) {		KeyPress kp(event.KeyInput);		gui::IGUIElement *e = getElementFromId(activeKey);		if (e != NULL && e->getType() == gui::EGUIET_BUTTON) {			e->setEnabled(true);			e->setText(kp.guiName().c_str());			keys[activeKey-GUI_ID_KEYSETTINGS_BASE] = kp;		}		activeKey = -1;		return true;	}	if (event.EventType == EET_GUI_EVENT) {		if (event.GUIEvent.EventType == gui::EGET_ELEMENT_FOCUS_LOST && isVisible()) {			if (!canTakeFocus(event.GUIEvent.Element)) {				dstream << "GUIMainMenu: Not allowing focus change."						<< std::endl;				// Returning true disables focus change				return true;			}		}		if (event.GUIEvent.EventType==gui::EGET_CHECKBOX_CHANGED) {			acceptInput();			m_accepted = false;			regenerateGui(m_screensize);		}		if (event.GUIEvent.EventType == gui::EGET_BUTTON_CLICKED) {			s32 id = event.GUIEvent.Caller->getID();			if (id >= GUI_ID_KEYSETTINGS_BASE) {				resetMenu();				activeKey = id;				gui::IGUIElement *e = getElementFromId(id);				if (e != NULL && e->getType() == gui::EGUIET_BUTTON) {					e->setText(wgettext("press Key"));					e->setEnabled(false);					return true;				}			}else{				switch (event.GUIEvent.Caller->getID()) {				case GUI_ID_TAB_SETTINGS_CONTROLS:					acceptInput();					m_accepted = false;					m_data.selected_tab = TAB_SETTINGS_CONTROLS;					regenerateGui(m_screensize);					return true;				case GUI_ID_TAB_SETTINGS_GRAPHICS:					acceptInput();					m_accepted = false;					m_data.selected_tab = TAB_SETTINGS_GRAPHICS;					regenerateGui(m_screensize);					return true;				case GUI_ID_TAB_SETTINGS_VIDEO:					acceptInput();					m_accepted = false;					m_data.selected_tab = TAB_SETTINGS_VIDEO;					regenerateGui(m_screensize);					return true;				case GUI_ID_TAB_SETTINGS_SOUND:					acceptInput();					m_accepted = false;					m_data.selected_tab = TAB_SETTINGS_SOUND;					regenerateGui(m_screensize);					return true;				case GUI_ID_TAB_MAINMENU: //back					acceptInput();					save();					quitMenu();					return true;				}			}		}		if (event.GUIEvent.EventType == gui::EGET_SCROLL_BAR_CHANGED) {			switch (event.GUIEvent.Caller->getID()) {			case GUI_ID_VOLUME_SB:				gui::IGUIElement *vsb = getElementFromId(GUI_ID_VOLUME_SB);				if(vsb != NULL && vsb->getType() == gui::EGUIET_SCROLL_BAR) {					m_data.volume = (float)((gui::IGUIScrollBar*)vsb)->getPos();					if (g_sound)						g_sound->setListenerGain(m_data.volume/100.0);				}				return true;			}		}	}	return Parent ? Parent->OnEvent(event) : false;}
开发者ID:Jobava,项目名称:Voxelands,代码行数:87,


示例14: content_mapnode_plants

void content_mapnode_plants(bool repeat){	bool new_style_leaves = g_settings->getBool("new_style_leaves");	content_t i;	ContentFeatures *f = NULL;	i = CONTENT_TREE;	f = &content_features(i);	f->description = wgettext("Tree");	f->setAllTextures("tree.png");	f->setTexture(0, "tree_top.png");	f->setTexture(1, "tree_top.png");	f->setInventoryTextureCube("tree_top.png", "tree.png", "tree.png");	f->draw_type = CDT_TRUNKLIKE;	f->is_ground_content = true;	f->flammable = 2; // can be set on fire	f->dug_item = std::string("MaterialItem2 ")+itos(i)+" 1";	f->cook_result = std::string("CraftItem lump_of_charcoal 1");	f->fuel_time = 30;	f->type = CMT_TREE;	f->hardness = 1.0;	f->ondig_special_drop = CONTENT_WOOD;	f->ondig_special_drop_count = 6;	f->ondig_special_tool = TT_AXE;	lists::add("creative",i);	lists::add("cooking",i);	i = CONTENT_APPLE_TREE;	f = &content_features(i);	f->description = wgettext("Apple Tree");	f->setAllTextures("apple_tree.png");	f->setTexture(0, "apple_tree_top.png");	f->setTexture(1, "apple_tree_top.png");	f->setInventoryTextureCube("apple_tree_top.png", "apple_tree.png", "apple_tree.png");	f->draw_type = CDT_TRUNKLIKE;	f->is_ground_content = true;	f->flammable = 2; // can be set on fire	f->dug_item = std::string("MaterialItem2 ")+itos(i)+" 1";	f->cook_result = std::string("CraftItem lump_of_charcoal 1");	f->fuel_time = 30;	f->type = CMT_TREE;	f->hardness = 1.0;	f->ondig_special_drop = CONTENT_WOOD;	f->ondig_special_drop_count = 6;	f->ondig_special_tool = TT_AXE;	lists::add("creative",i);	lists::add("cooking",i);	i = CONTENT_JUNGLETREE;	f = &content_features(i);	f->description = wgettext("Jungle Tree");	f->setAllTextures("jungletree.png");	f->setTexture(0, "jungletree_top.png");	f->setTexture(1, "jungletree_top.png");	f->setInventoryTextureCube("jungletree_top.png", "jungletree.png", "jungletree.png");	f->draw_type = CDT_TRUNKLIKE;	//f->is_ground_content = true;	f->flammable = 2; // can be set on fire	f->dug_item = std::string("MaterialItem2 ")+itos(i)+" 1";	f->cook_result = std::string("CraftItem lump_of_charcoal 1");	f->fuel_time = 30;	f->type = CMT_TREE;	f->hardness = 1.0;	f->ondig_special_drop = CONTENT_JUNGLEWOOD;	f->ondig_special_drop_count = 6;	f->ondig_special_tool = TT_AXE;	lists::add("creative",i);	i = CONTENT_CONIFER_TREE;	f = &content_features(i);	f->description = wgettext("Conifer Tree");	f->setAllTextures("conifer_tree.png");	f->setTexture(0, "conifer_tree_top.png");	f->setTexture(1, "conifer_tree_top.png");	f->setInventoryTextureCube("conifer_tree_top.png", "conifer_tree.png", "conifer_tree.png");	f->draw_type = CDT_TRUNKLIKE;	f->is_ground_content = true;	f->flammable = 2; // can be set on fire	f->dug_item = std::string("MaterialItem2 ")+itos(i)+" 1";	f->cook_result = std::string("CraftItem lump_of_charcoal 1");	f->fuel_time = 25;	f->type = CMT_TREE;	f->hardness = 0.8;	f->ondig_special_drop = CONTENT_WOOD_PINE;	f->ondig_special_drop_count = 6;	f->ondig_special_tool = TT_AXE;	lists::add("creative",i);	lists::add("cooking",i);	i = CONTENT_YOUNG_TREE;	f = &content_features(i);	f->description = wgettext("Young Tree");	f->setAllTextures("tree.png");	f->setTexture(0, "tree_top.png");	f->setTexture(1, "tree_top.png");	f->draw_type = CDT_NODEBOX;	f->solidness = 0; // drawn separately, makes no faces	f->param_type = CPT_LIGHT;	f->light_propagates = true;//.........这里部分代码省略.........
开发者ID:Jobava,项目名称:Voxelands,代码行数:101,


示例15: removeChildren

void GUIKeyChangeMenu::regenerateGui(v2u32 screensize){	/*	 Remove stuff	 */	removeChildren();	/*	 Calculate new sizes and positions	 */	v2s32 size(620, 430);	core::rect < s32 > rect(screensize.X / 2 - size.X / 2,			screensize.Y / 2 - size.Y / 2, screensize.X / 2 + size.X / 2,			screensize.Y / 2 + size.Y / 2);	DesiredRect = rect;	recalculateAbsolutePosition(false);	v2s32 topleft(0, 0);	changeCtype("");	{		core::rect < s32 > rect(0, 0, 500, 20);		rect += topleft + v2s32(25, 3);		//gui::IGUIStaticText *t =		Environment->addStaticText(wgettext("KEYBINDINGS (If this menu screws up, see minetest.conf)"),				rect, false, true, this, -1);		//t->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT);	}	v2s32 offset(25, 40);	// buttons	{		core::rect < s32 > rect(0, 0, 100, 20);		rect += topleft + v2s32(offset.X, offset.Y);		Environment->addStaticText(wgettext("Forward"),				rect, false, true, this, -1);		//t->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT);	}	{		core::rect < s32 > rect(0, 0, 100, 30);		rect += topleft + v2s32(offset.X + 105, offset.Y - 5);		this->forward = Environment->addButton(rect, this,				GUI_ID_KEY_FORWARD_BUTTON,				wgettext(key_forward.name()));	}	offset += v2s32(0, 25);	{		core::rect < s32 > rect(0, 0, 100, 20);		rect += topleft + v2s32(offset.X, offset.Y);		Environment->addStaticText(wgettext("Backward"),				rect, false, true, this, -1);		//t->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT);	}	{		core::rect < s32 > rect(0, 0, 100, 30);		rect += topleft + v2s32(offset.X + 105, offset.Y - 5);		this->backward = Environment->addButton(rect, this,				GUI_ID_KEY_BACKWARD_BUTTON,				wgettext(key_backward.name()));	}	offset += v2s32(0, 25);	{		core::rect < s32 > rect(0, 0, 100, 20);		rect += topleft + v2s32(offset.X, offset.Y);		Environment->addStaticText(wgettext("Left"),				rect, false, true, this, -1);		//t->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT);	}	{		core::rect < s32 > rect(0, 0, 100, 30);		rect += topleft + v2s32(offset.X + 105, offset.Y - 5);		this->left = Environment->addButton(rect, this, GUI_ID_KEY_LEFT_BUTTON,				wgettext(key_left.name()));	}	offset += v2s32(0, 25);	{		core::rect < s32 > rect(0, 0, 100, 20);		rect += topleft + v2s32(offset.X, offset.Y);		Environment->addStaticText(wgettext("Right"),				rect, false, true, this, -1);		//t->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT);	}	{		core::rect < s32 > rect(0, 0, 100, 30);		rect += topleft + v2s32(offset.X + 105, offset.Y - 5);		this->right = Environment->addButton(rect, this,				GUI_ID_KEY_RIGHT_BUTTON,				wgettext(key_right.name()));	}	offset += v2s32(0, 25);	{		core::rect < s32 > rect(0, 0, 100, 20);		rect += topleft + v2s32(offset.X, offset.Y);//.........这里部分代码省略.........
开发者ID:Jeija,项目名称:BlockPlanet,代码行数:101,


示例16: GUIModalMenu

GUISettingsMenu::GUISettingsMenu(	gui::IGUIEnvironment* env,	gui::IGUIElement*	parent,	s32 id,	IMenuManager *menumgr,	bool is_ingame):	GUIModalMenu(env, parent, id, menumgr),	m_accepted(false),	m_is_ingame(is_ingame){	activeKey = -1;	init_keys();	m_data.fancy_trees = g_settings->getBool("new_style_leaves");	m_data.smooth_lighting = g_settings->getBool("smooth_lighting");	m_data.clouds_3d = g_settings->getBool("enable_3d_clouds");	m_data.opaque_water = g_settings->getBool("opaque_water");	m_data.fullscreen = g_settings->getBool("fullscreen");	m_data.particles = g_settings->getBool("enable_particles");	m_data.mip_map = g_settings->getBool("mip_map");	m_data.anisotropic_filter = g_settings->getBool("anisotropic_filter");	m_data.bilinear_filter = g_settings->getBool("bilinear_filter");	m_data.trilinear_filter = g_settings->getBool("trilinear_filter");	m_data.hotbar = g_settings->getBool("old_hotbar");	m_data.wield_index = g_settings->getBool("enable_wieldindex");	m_data.volume = g_settings->getFloat("sound_volume");	keynames[VLKC_FORWARD] = wgettext("Forward");	keynames[VLKC_BACKWARD] = wgettext("Backward");	keynames[VLKC_LEFT] = wgettext("Left");	keynames[VLKC_RIGHT] = wgettext("Right");	keynames[VLKC_JUMP] = wgettext("Jump");	keynames[VLKC_SNEAK] = wgettext("Sneak");	keynames[VLKC_INVENTORY] = wgettext("Inventory");	keynames[VLKC_USE] = wgettext("Use Item");	keynames[VLKC_CHAT] = wgettext("Chat");	keynames[VLKC_COMMAND] = wgettext("Command");	keynames[VLKC_RANGE] = wgettext("Range Select");	keynames[VLKC_FREEMOVE] = wgettext("Toggle Fly");	keynames[VLKC_UP] = wgettext("Up");	keynames[VLKC_DOWN] = wgettext("Down");	keynames[VLKC_RUN] = wgettext("Run");	keynames[VLKC_EXAMINE] = wgettext("Examine/Open");	keynames[VLKC_SCREENSHOT] = wgettext("Take Screenshot");	keynames[VLKC_TOGGLE_HUD] = wgettext("Show/Hide HUD");	keynames[VLKC_TOGGLE_CHAT] = wgettext("Show/Hide Chat");	keynames[VLKC_TOGGLE_FOG] = wgettext("Toggle Fog");	keynames[VLKC_TOGGLE_CAMERA] = NULL;	keynames[VLKC_TOGGLE_DEBUG] = NULL;	keynames[VLKC_TOGGLE_PROFILER] = NULL;	keynames[VLKC_RANGE_PLUS] = wgettext("Increase Viewing Range");	keynames[VLKC_RANGE_MINUS] = wgettext("Decrease Viewing Range");	keynames[VLKC_PRINT_DEBUG] = NULL;	keynames[VLKC_SELECT_PREV] = wgettext("Previous Item");	keynames[VLKC_SELECT_NEXT] = wgettext("Next Item");}
开发者ID:Jobava,项目名称:Voxelands,代码行数:57,


示例17: removeChildren

void GUIPauseMenu::regenerateGui(v2u32 screensize){	/*		Remove stuff	*/	removeChildren();		/*		Calculate new sizes and positions	*/	core::rect<s32> rect(			screensize.X/2 - 580/2,			screensize.Y/2 - 300/2,			screensize.X/2 + 580/2,			screensize.Y/2 + 300/2	);		DesiredRect = rect;	recalculateAbsolutePosition(false);	v2s32 size = rect.getSize();	/*		Add stuff	*/	const s32 btn_height = 30;	const s32 btn_gap = 20;	const s32 btn_num = 4;	s32 btn_y = size.Y/2-((btn_num*btn_height+(btn_num-1)*btn_gap))/2;	changeCtype("");	{		core::rect<s32> rect(0, 0, 140, btn_height);		rect = rect + v2s32(size.X/2-140/2, btn_y);		Environment->addButton(rect, this, 256,			wgettext("Continue"));	}	btn_y += btn_height + btn_gap;	{		core::rect<s32> rect(0, 0, 140, btn_height);		rect = rect + v2s32(size.X/2-140/2, btn_y);		Environment->addButton(rect, this, 261,			wgettext("Change Password"));	}	btn_y += btn_height + btn_gap;	{		core::rect<s32> rect(0, 0, 140, btn_height);		rect = rect + v2s32(size.X/2-140/2, btn_y);		Environment->addButton(rect, this, 260,			wgettext("Disconnect"));	}	btn_y += btn_height + btn_gap;	{		core::rect<s32> rect(0, 0, 140, btn_height);		rect = rect + v2s32(size.X/2-140/2, btn_y);		Environment->addButton(rect, this, 257,			wgettext("Exit to OS"));	}	{		core::rect<s32> rect(0, 0, 180, 240);		rect = rect + v2s32(size.X/2 + 90, size.Y/2-rect.getHeight()/2);		Environment->addStaticText(chartowchar_t(gettext(		"Default Controls:/n"		"- WASD: Walk/n"		"- Mouse left: dig/hit/n"		"- Mouse right: place/use/n"		"- Mouse wheel: select item/n"		"- 0...9: select item/n"		"- Shift: sneak/n"		"- R: Toggle viewing all loaded chunks/n"		"- I: Inventory menu/n"		"- ESC: This menu/n"		"- T: Chat/n"		)), rect, false, true, this, 258);	}	{		core::rect<s32> rect(0, 0, 180, 220);		rect = rect + v2s32(size.X/2 - 90 - rect.getWidth(), size.Y/2-rect.getHeight()/2);			v2u32 max_texture_size;		{			video::IVideoDriver* driver = Environment->getVideoDriver();			max_texture_size = driver->getMaxTextureSize();		}		/*wchar_t text[200];		swprintf(text, 200,				L"Minetest-c55/n"				L"by Perttu Ahola/n"				L"[email
C++ wglCreateContextAttribsARB函数代码示例
C++ wgetnstr函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。