コード例 #1
0
ファイル: HelpWindow.cpp プロジェクト: farzadmf/HomeDesigner
void HelpWindow::AddFurnitureManipulationInformation(int column)
{
    auto furnitureManiuplationGrid = new HelpWindowGridLayout();
    furnitureManiuplationGrid->AddHeading("Furniture Object Manipulation");
    furnitureManiuplationGrid->AddTitle("Movement");
    furnitureManiuplationGrid->AddDescription("");
    furnitureManiuplationGrid->AddShortcut("X + Left Click Drag\nY + Left Click Drag\nZ + Left Click Drag");
    furnitureManiuplationGrid->AddDescription(QString("<b>Move mouse up/down:</b> Move object ")
                                              .append("in the positive/negative direction of the axis ")
                                              .append("corresponding to X, Y, and Z"));
    furnitureManiuplationGrid->AddTitle("Rotation");
    furnitureManiuplationGrid->AddDescription("");
    furnitureManiuplationGrid->AddShortcut("X + Left Click Drag\nY + Left Click Drag\nZ + Left Click Drag");
    furnitureManiuplationGrid->AddDescription(QString("<b>Move mouse up/down:</b> rotate object ")
                                              .append("in the positive/negative angle direction of the axis ")
                                              .append("corresponding to X, Y, and Z"));
    furnitureManiuplationGrid->AddTitle("Scale");
    furnitureManiuplationGrid->AddDescription("");
    furnitureManiuplationGrid->AddShortcut("Left Click Drag");
    furnitureManiuplationGrid->AddDescription("<b>Move mouse up/down</b>: uniformly scale the object up/down");
    furnitureManiuplationGrid->AddShortcut("N");
    furnitureManiuplationGrid->AddDescription("Cycle wall-mounted furnitures between the walls");
    furnitureManiuplationGrid->AddShortcut("DELETE");
    furnitureManiuplationGrid->AddDescription("Remove the currently selected object from the scene");
    furnitureManiuplationGrid->AddShortcut("SPACE");
    furnitureManiuplationGrid->AddDescription("Cycle through exising objects");
    furnitureManiuplationGrid->AddShortcut("ESCAPE");
    furnitureManiuplationGrid->AddDescription("De-select the currently selected object");
    AddToColumn(furnitureManiuplationGrid, column);

}
コード例 #2
0
ファイル: HelpWindow.cpp プロジェクト: farzadmf/HomeDesigner
void HelpWindow::AddWallAndFloorInformation(int column)
{
    auto wallFloorControlsGrid = new HelpWindowGridLayout();
    wallFloorControlsGrid->AddHeading("Wall and Floor Controls");
    wallFloorControlsGrid->AddTitle("Change Wall Color");
    wallFloorControlsGrid->AddDescription("Shows a color picker dialog to change wall color");
    wallFloorControlsGrid->AddTitle("Change Wall Texture");
    wallFloorControlsGrid->AddDescription("Shows texture selection to change wall texture");
    wallFloorControlsGrid->AddTitle("Change Floor Texture");
    wallFloorControlsGrid->AddDescription("Shows a color picker dialog to change floor color");
    wallFloorControlsGrid->AddTitle("Change Floor Texture");
    wallFloorControlsGrid->AddDescription("Shows texture selection to change floor texture");
    AddToColumn(wallFloorControlsGrid, column);

}
コード例 #3
0
void Dlg_GameLibrary::RefreshList()
{
	std::map<std::string, std::string>::iterator iter = Results.begin();
	while (iter != Results.end())
	{
		const std::string& filepath = iter->first;
		const std::string& md5 = iter->second;

		if (VisibleResults.find(filepath) == VisibleResults.end())
		{
			//	Not yet added,
			if (m_GameHashLibrary.find(md5) != m_GameHashLibrary.end())
			{
				//	Found in our hash library!
				const GameID nGameID = m_GameHashLibrary[md5];
				RA_LOG("Found one! Game ID %d (%s)", nGameID, m_GameTitlesLibrary[nGameID].c_str());

				const std::string& sGameTitle = m_GameTitlesLibrary[nGameID];
				AddTitle(sGameTitle, filepath, nGameID);

				SetDlgItemText(m_hDialogBox, IDC_RA_SCANNERFOUNDINFO, NativeStr(sGameTitle).c_str());
				VisibleResults[filepath] = md5;	//	Copy to VisibleResults
			}
		}
		iter++;
	}
}
コード例 #4
0
ファイル: HelpWindow.cpp プロジェクト: farzadmf/HomeDesigner
void HelpWindow::AddFurnitureInformation(int column)
{
    auto furnitureGrid = new HelpWindowGridLayout();
    furnitureGrid->AddHeading("Furniture Controls");
    furnitureGrid->AddTitle("Movement Speed");
    furnitureGrid->AddDescription("Changes speed of furniture movement");
    furnitureGrid->AddTitle("Rotation Speed");
    furnitureGrid->AddDescription("Changes speed of furniture rotation");
    furnitureGrid->AddTitle("Scale Speed");
    furnitureGrid->AddDescription("Changes speed of furniture scaling");
    furnitureGrid->AddTitle("Action Selection Radio Buttons");
    furnitureGrid->AddDescription("Select whether to move, rotate, or scale furniture");
    furnitureGrid->AddTitle("Furniture Model Selection Dropdown");
    furnitureGrid->AddDescription("Select which furniture object to load");
    AddToColumn(furnitureGrid, column);
}
コード例 #5
0
ファイル: HelpWindow.cpp プロジェクト: farzadmf/HomeDesigner
void HelpWindow::AddStatusBarInformation(int column)
{
    auto statusBarGrid = new HelpWindowGridLayout();
    statusBarGrid->AddHeading("Status Bar");
    statusBarGrid->AddTitle("Status Message Text");
    statusBarGrid->AddDescription(QString("Shows program status information such as furniture")
                                  .append("loading status or error messages"));
    statusBarGrid->AddTitle("OBB Status");
    statusBarGrid->AddDescription("Furnitures' oriented bounding box display status");
    statusBarGrid->AddTitle("AABB Status");
    statusBarGrid->AddDescription("Furnitures' axis-aligned bounding box display status");
    statusBarGrid->AddTitle("W-Axis (World Axis)");
    statusBarGrid->AddDescription("Room's center axis display status");
    statusBarGrid->AddTitle("L-Axis (Local Axis)");
    statusBarGrid->AddDescription("Furnitures' axis display status");
    AddToColumn(statusBarGrid, column);
}
コード例 #6
0
ファイル: HelpWindow.cpp プロジェクト: farzadmf/HomeDesigner
void HelpWindow::AddWorldAxisInformation(int column)
{
    auto worldAxisGrid = new HelpWindowGridLayout();
    worldAxisGrid->AddHeading("World (room) Axis/Pivot Controls");
    worldAxisGrid->AddTitle("");
    worldAxisGrid->AddDescription("(only when the axis is being displayed)");
    worldAxisGrid->AddShortcut("SHIFT + L");
    worldAxisGrid->AddDescription("Display room's pivot");
    worldAxisGrid->AddShortcut("{");
    worldAxisGrid->AddDescription("Move axis up");
    worldAxisGrid->AddShortcut("/");
    worldAxisGrid->AddDescription("Move axis down");
    worldAxisGrid->AddShortcut("'");
    worldAxisGrid->AddDescription("Move axis to the right");
    worldAxisGrid->AddShortcut(";");
    worldAxisGrid->AddDescription("Move axis to the left");
    worldAxisGrid->AddShortcut("SHIFT + /");
    worldAxisGrid->AddDescription("Reset axis' location to its original position");
    AddToColumn(worldAxisGrid, column);
}
コード例 #7
0
void Dlg_GameLibrary::ScanAndAddRomsRecursive(const std::string& sBaseDir)
{
	char sSearchDir[2048];
	sprintf_s(sSearchDir, 2048, "%s\\*.*", sBaseDir.c_str());

	WIN32_FIND_DATA ffd;
	HANDLE hFind = FindFirstFile(NativeStr(sSearchDir).c_str(), &ffd);
	if (hFind != INVALID_HANDLE_VALUE)
	{
		unsigned int ROM_MAX_SIZE = 6 * 1024 * 1024;
		unsigned char* sROMRawData = new unsigned char[ROM_MAX_SIZE];

		do
		{
			if (KEYDOWN(VK_ESCAPE))
				break;

			memset(sROMRawData, 0, ROM_MAX_SIZE);	//?!??

			const std::string sFilename = Narrow(ffd.cFileName);
			if (strcmp(sFilename.c_str(), ".") == 0 ||
				strcmp(sFilename.c_str(), "..") == 0)
			{
				//	Ignore 'this'
			}
			else if (ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
			{
				RA_LOG("Directory found: %s\n", ffd.cFileName);
				std::string sRecurseDir = sBaseDir + "\\" + sFilename.c_str();
				ScanAndAddRomsRecursive(sRecurseDir);
			}
			else
			{
				LARGE_INTEGER filesize;
				filesize.LowPart = ffd.nFileSizeLow;
				filesize.HighPart = ffd.nFileSizeHigh;
				if (filesize.QuadPart < 2048 || filesize.QuadPart > ROM_MAX_SIZE)
				{
					//	Ignore: wrong size
					RA_LOG("Ignoring %s, wrong size\n", sFilename.c_str());
				}
				else
				{
					//	Parse as ROM!
					RA_LOG("%s looks good: parsing!\n", sFilename.c_str());

					char sAbsFileDir[2048];
					sprintf_s(sAbsFileDir, 2048, "%s\\%s", sBaseDir.c_str(), sFilename.c_str());

					HANDLE hROMReader = CreateFile(NativeStr(sAbsFileDir).c_str(), GENERIC_READ, FILE_SHARE_READ,
						NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);

					if (hROMReader != INVALID_HANDLE_VALUE)
					{
						BY_HANDLE_FILE_INFORMATION File_Inf;
						int nSize = 0;
						if (GetFileInformationByHandle(hROMReader, &File_Inf))
							nSize = (File_Inf.nFileSizeHigh << 16) + File_Inf.nFileSizeLow;

						DWORD nBytes = 0;
						BOOL bResult = ReadFile(hROMReader, sROMRawData, nSize, &nBytes, NULL);
						const std::string sHashOut = RAGenerateMD5(sROMRawData, nSize);

						if (m_GameHashLibrary.find(sHashOut) != m_GameHashLibrary.end())
						{
							const unsigned int nGameID = m_GameHashLibrary[std::string(sHashOut)];
							RA_LOG("Found one! Game ID %d (%s)", nGameID, m_GameTitlesLibrary[nGameID].c_str());

							const std::string& sGameTitle = m_GameTitlesLibrary[nGameID];
							AddTitle(sGameTitle, sAbsFileDir, nGameID);
							SetDlgItemText(m_hDialogBox, IDC_RA_GLIB_NAME, NativeStr(sGameTitle).c_str());
							InvalidateRect(m_hDialogBox, nullptr, TRUE);
						}

						CloseHandle(hROMReader);
					}
				}
			}
		} while (FindNextFile(hFind, &ffd) != 0);

		delete[](sROMRawData);
		sROMRawData = NULL;

		FindClose(hFind);
	}

	SetDlgItemText(m_hDialogBox, IDC_RA_SCANNERFOUNDINFO, TEXT("Scanning complete"));
}
コード例 #8
0
ファイル: npc_title.cpp プロジェクト: Kaitynlol/LanCore
	bool OnGossipSelect(Player *player, Creature *creature, uint32 sender, uint32 action )
		{
		  if (!player->getAttackers().empty())
	{
		creature->MonsterWhisper(MSG_ERR_INCOMBAT, player->GetGUID());
		player->CLOSE_GOSSIP_MENU();
        return false;
		  }

		  switch (action)
	{
		 case 2:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(144);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 3:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(62);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 4:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(135);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 5:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(141);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 6:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(138);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 7:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(170);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 8:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(28);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 9:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(48);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 10:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(134);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 11:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(72);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 12:
			   player->PlayerTalkClass->ClearMenus();
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_42, GOSSIP_SENDER_MAIN, 13);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_113, GOSSIP_SENDER_MAIN, 14);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_147, GOSSIP_SENDER_MAIN, 15);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_143, GOSSIP_SENDER_MAIN, 16);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_79, GOSSIP_SENDER_MAIN, 17);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_64, GOSSIP_SENDER_MAIN, 18);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_43, GOSSIP_SENDER_MAIN, 19);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_80, GOSSIP_SENDER_MAIN, 20);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_47, GOSSIP_SENDER_MAIN, 21);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_122, GOSSIP_SENDER_MAIN, 22);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, MSG_GOSSIP_TEXT_BACK_1, GOSSIP_SENDER_MAIN, 56);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, MSG_GOSSIP_TEXT_NEXT_3, GOSSIP_SENDER_MAIN, 23);
			   player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,creature->GetGUID());
			   break;
		 case 13:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(42);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
	     case 14:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(113);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
	     case 15:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(147);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 16:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(143);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 17:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(79);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
	     case 18:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(64);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 19:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(43);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
	     case 20:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(80);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 21:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(47);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
	     case 22:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(122);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 23:
			   player->PlayerTalkClass->ClearMenus();
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_81, GOSSIP_SENDER_MAIN, 24);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_78, GOSSIP_SENDER_MAIN, 25);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_156, GOSSIP_SENDER_MAIN, 26);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_83, GOSSIP_SENDER_MAIN, 27);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_71, GOSSIP_SENDER_MAIN, 28);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_142, GOSSIP_SENDER_MAIN, 29);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_146, GOSSIP_SENDER_MAIN, 30);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_150, GOSSIP_SENDER_MAIN, 31);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_46, GOSSIP_SENDER_MAIN, 32);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_278, GOSSIP_SENDER_MAIN, 33);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, MSG_GOSSIP_TEXT_BACK_2, GOSSIP_SENDER_MAIN, 57);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, MSG_GOSSIP_TEXT_NEXT_4, GOSSIP_SENDER_MAIN, 34);
			   player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,creature->GetGUID());
			   break;
		 case 24:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(81);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 25:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(78);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 26:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(156);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 27:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(83);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 28:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(71);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 29:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(142);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 30:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(146);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 31:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(150);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 32:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(46);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 33:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(278);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 34:
			   player->PlayerTalkClass->ClearMenus();
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_139, GOSSIP_SENDER_MAIN, 35);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_77, GOSSIP_SENDER_MAIN, 36);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_74, GOSSIP_SENDER_MAIN, 37);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_45, GOSSIP_SENDER_MAIN, 38);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_177, GOSSIP_SENDER_MAIN, 39);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_151, GOSSIP_SENDER_MAIN, 40);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_171, GOSSIP_SENDER_MAIN, 41);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_131, GOSSIP_SENDER_MAIN, 42);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_173, GOSSIP_SENDER_MAIN, 43);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_157, GOSSIP_SENDER_MAIN, 44);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, MSG_GOSSIP_TEXT_BACK_3, GOSSIP_SENDER_MAIN, 58);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, MSG_GOSSIP_TEXT_NEXT_5, GOSSIP_SENDER_MAIN, 45);
			   player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,creature->GetGUID());
			   break;
		 case 35:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(139);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 36:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(77);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 37:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(74);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 38:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(45);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 39:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(177);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 40:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(151);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 41:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(171);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 42:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(131);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 43:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(173);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 44:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(157);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 45:
			   player->PlayerTalkClass->ClearMenus();
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_75, GOSSIP_SENDER_MAIN, 46);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_140, GOSSIP_SENDER_MAIN, 47);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_172, GOSSIP_SENDER_MAIN, 48);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_124, GOSSIP_SENDER_MAIN, 49);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_133, GOSSIP_SENDER_MAIN, 50);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_76, GOSSIP_SENDER_MAIN, 51);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_125, GOSSIP_SENDER_MAIN, 52);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_145, GOSSIP_SENDER_MAIN, 53);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_155, GOSSIP_SENDER_MAIN, 54);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, MSG_GOSSIP_TEXT_84, GOSSIP_SENDER_MAIN, 55);
			   player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, MSG_GOSSIP_TEXT_BACK_4, GOSSIP_SENDER_MAIN, 59);
			   player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,creature->GetGUID());
			   break;
		 case 46:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(75);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 47:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(140);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		case 48:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(172);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
	     case 49:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(124);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
	     case 50:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(133);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 51:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(125);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 52:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(76);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 53:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(145);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 54:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(155);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 55:
			   {CharTitlesEntry const* titleInfo = sCharTitlesStore.LookupEntry(84);
			   AddTitle(player, creature, titleInfo);
			   }
			   break;
		 case 56:
			 OnGossipHello(player, creature);
			   break;
		 case 57:
			 OnGossipSelect(player, creature, sender, 12);
			 break;
		 case 58:
			 OnGossipSelect(player, creature, sender, 23);
			 break;
		 case 59:
			 OnGossipSelect(player, creature, sender, 34);
			 break;
}
	
		  return true;
	}
コード例 #9
0
void ContentKaiVector::DownloadCompleted(HttpItem * itm)
{
	if(itm->getResponseCode() == 200)
	{
		if(strcmp(itm->getTag().c_str(), VERSION_URLTAG) == 0)
		{
			MemoryBuffer& buff = itm->GetMemoryBuffer();
			DWORD dwLen = buff.GetDataLength();
			BYTE * verData = buff.GetData();
			CHAR * context = NULL;
			CHAR * szData = strtok_s( (char*)verData, ";", &context);

			if(szData != NULL && strcmp(szData, VERSION_HEADER) == 0) {
				m_nVersion = atoi(strtok_s(NULL, ";", &context));
				DebugMsg("ContentKaiVector", "Vector Version = %d", m_nVersion);
			}

			context = NULL;

			string fullPath = vectorDataPath + "\\KaiContent.bin";
			Load(fullPath);
		}
		else if(strcmp(itm->getTag().c_str(), APPSPEC_URLTAG) == 0)
		{
			m_mapTitles.clear();
			MemoryBuffer& buff = itm->GetMemoryBuffer();
			buff.GetDataLength();
			BYTE * phpData = buff.GetData();
			CHAR * context = NULL;

			
			CHAR * szData = strtok_s( (char*)phpData, ";", &context);
			string szHeader = szData;
			if(szData != NULL && szHeader.find(APPSPEC_HEADER) != string::npos)
			{

				string strXex, strArena;
				CHAR * szToken;
			
				while( (szToken = strtok_s( NULL, ";", &context )) != NULL)
				{
					strXex = szToken;
					if(strXex.find(APPSPEC_PREFIX) == 0 || strXex.find(APPSPEC_PREFIX_CLASSIC) == 0)
					{
						strArena = strtok_s(NULL, ";", &context);
						DWORD dwTitleId = strtoul(strXex.substr(4, strXex.length()).c_str(), NULL, 16);
						strArena = str_replaceallA(strArena, "&", "&amp;");
						AddTitle(dwTitleId, strArena);
					}
				}
				m_bDirty = true;
				context = NULL;

				DebugMsg("ContentKaiVector", "Download and Parsing Completed Successfully.");

				Save(vectorDataPath + "\\KaiContent.bin");
			}		
		}
	}
	else
	{
		if(strcmp(itm->getTag().c_str(), VERSION_URLTAG) == 0)
		{
			DebugMsg("ContentKaiVector", "Failed to Download Version File, Processing existing data");
			// HttpItem failed- we'll need to try to load the item already from file, or fail completely
			string fullPath = vectorDataPath + "\\KaiContent.bin";
			Load(fullPath);	
		}
	}
}
コード例 #10
0
ファイル: textedit.cpp プロジェクト: HonzaMD/Krkal2
//intiace - vola se ze vsech konstruktoru
void CGUIEditWindow::InitEditWindow(float _x, float _y, float _sx, float _sy, CDXFont *dxfont, int textColor, int bgColor, int wordwrap,int noscrollbars, int _multiline, int xmargin, int ymargin, char *title_text, CGUIRectHost *_icon, UINT resizer_color)
{
	RemoveFromTrash(); //kvuli vyjimkam - viz. GUI

	highlight = 0; //bez highlitovani
	highlighter = 0;

	selectonfocus = 0;
	changed = 0;

	mousesel=0; //mysi se ted nic neoznacuje

	SetAvailableEvents(availableEvents,numEvents); //nastavi eventy

	multiline = _multiline; //viceradkovy editor?

	defaultfont=0; //defaultni font

	allowtab = 0; //zakazu psat tab

	readonly = 0; //neni readonly

	if(title_text)
	{	//pridam titulek, ikonu, resizery a scrolbary

		AddResizers(resizer_color,styleSet->Get("Resizers")); //pridam resizery
		AddTitle(title_text,_icon,STD_TITLE_HEIGHT); //pridam titulek

		//nastavi velikost viewportu
		CGUIStyle &style = *(styleSet->Get("Resizers"));
		SetViewPortBackWnd(style[1], style[0]+STD_TITLE_HEIGHT, _sx - 2*style[1], _sy - 2*style[0]-STD_TITLE_HEIGHT);

		//nastavi limity velikosti
		SetLimitSizes(4*STD_TITLE_HEIGHT,3*STD_SCROLLBAR_WIDTH+STD_TITLE_HEIGHT+2*style[0]);

		if(!noscrollbars)
		{
			//pridam vertikalni scrolbar
			CGUIScrollBar* dual = AddSimpleScrollbar(Vertical, sx-style[1]-STD_SCROLLBAR_WIDTH, style[0]+STD_TITLE_HEIGHT, STD_SCROLLBAR_WIDTH, sy - 2*style[0]-STD_TITLE_HEIGHT, STD_SCROLLBAR_SHIFT, 0, STD_SCROLLBAR_SLIDER_RESIZE,0,0,0);

			if(!wordwrap) //budu zalamovat radky?
			{
				//nebudu - pridam horizontalni scrolbar
				AddSimpleScrollbar(Horizontal, style[1], sy-style[0]-STD_SCROLLBAR_WIDTH, STD_SCROLLBAR_WIDTH, sx - 2*style[1], STD_SCROLLBAR_SHIFT, 0, STD_SCROLLBAR_SLIDER_RESIZE,dual,0,0);
			}
		}

	}else{
		//bez titulku, ramecku
		if(!noscrollbars)
		{
			//pridam vertikalni scrolbar
			CGUIScrollBar* dual = AddSimpleScrollbar(Vertical, sx-STD_SCROLLBAR_WIDTH, 0, STD_SCROLLBAR_WIDTH, sy, STD_SCROLLBAR_SHIFT, 0, STD_SCROLLBAR_SLIDER_RESIZE,0,0,0);

			if(!wordwrap) //budu zalamovat radky?
			{
				//nebudu - pridam horizontalni scrolbar
				AddSimpleScrollbar(Horizontal, 0, sy-STD_SCROLLBAR_WIDTH, STD_SCROLLBAR_WIDTH, sx, STD_SCROLLBAR_SHIFT, 0, STD_SCROLLBAR_SLIDER_RESIZE,dual,0,0);
			}
		}
	}

	//chci dostaveat zpravy od mysi a timeru
	MsgAcceptConsume(MsgMouseL|MsgMouseOver);
	MsgAcceptConsume(MsgTimer);

	text = NULL;
	blttext = NULL;

	focused=0; //nejsem focusovany

	if(!dxfont)
	{   //neni zadam defaultni font
		dxfont = (CDXFont*) RefMgr->Find(DEFAULT_EDITFONT); //najdu defaultfont
		if(!dxfont)
		{
			//chyba - font neexistuje
			throw CExc(eGUI,E_BAD_ARGUMENTS,"Font not exist!");
		}
	}

	dxfont->AddRef(); //zvysim pocet referenci
	defaultfont = dxfont;

	text = new CFormatedText(dxfont,textColor,wordwrap); //vytvori formatovany text

	CTextBlock *b;
	b = new CTextBlock("");
	text->AddTextBlockToEnd(b); //pridam jeden prazdny blok
	
	blttext = new CBltFormatedText(text,xmargin,ymargin); //vytvori zobrazovac formatovaneho textu

	back->AddChild(blttext); //pridam zobrazovac dovnitr okna

	text->CreateCursor(); //vytvori textovy kurzor
	blttext->SetCursor(1);

	if(_sy<0) //pokud _sy<0 -> spocitam vysku editboxu
	{
		_sy = (float)blttext->CmpEditBoxHeight();
		Resize(_sx,_sy);
	}

	float xx,yy;
	GetVPSize(xx,yy); //zjisti velikost viewportu
	blttext->SetWidth((int)xx); //nastavi sirku textu - pro zalamovani
	SetTextSize(); //opravi scrollbary

	ScrollToCursor();

	blttext->BlinkCursor(0); //zmizi kurzor

	cursorblinktimerID=0;
	mousescrolltimerID=0;
	mousescroll=0;

	AddToTrash(); //kvuli vyjimkam - viz. GUI

}