Beispiel #1
0
void UpDate_CountryIcon(HWND hCtrl, int countryID)
{
	HICON hIcon = LoadFlagIcon(countryID);
	HICON hOld  = Static_SetIcon(hCtrl, hIcon);
	ShowWindow(hCtrl, hIcon ? SW_SHOW : SW_HIDE);
	IcoLib_ReleaseIcon(hOld);
}
Beispiel #2
0
static INT_PTR ServiceLoadFlagIcon(WPARAM wParam, LPARAM lParam)
{
	/* return handle */
	if ((BOOL)lParam) {
		if (phIconHandles == nullptr)
			return 0;

		return (INT_PTR)phIconHandles[CountryNumberToIndex((int)wParam)];
	}
	/* return icon */
	return (INT_PTR)LoadFlagIcon(wParam);
}
Beispiel #3
0
void MsgWndData::FlagsIconSet()
{
	StatusIconData sid = { sizeof(sid) };
	sid.szModule = MODNAMEFLAGS;
	if (!g_bShowStatusIconFlag)
		sid.flags = MBF_HIDDEN;
	if (m_countryID != 0xFFFF || g_bUseUnknownFlag) {
		sid.hIcon = LoadFlagIcon(m_countryID);
		sid.szTooltip = Translate((char*)CallService(MS_UTILS_GETCOUNTRYBYNUMBER, m_countryID, 0));
	}
	else sid.flags = MBF_HIDDEN;
	
	Srmm_ModifyIcon(m_hContact, &sid);
}
Beispiel #4
0
// always call in context of main thread
static void __fastcall SetStatusIcon(MCONTACT hContact,int countryNumber)
{
	StatusIconData sid = { sizeof(sid) };
	sid.szModule = MODULENAME;

	if (countryNumber != 0xFFFF || bUseUnknown) {
		/* copy icon as status icon API will call DestroyIcon() on it */
		sid.hIcon = LoadFlagIcon(countryNumber);
		sid.szTooltip = (char*) CallService(MS_UTILS_GETCOUNTRYBYNUMBER,countryNumber,0);
	}	
	else sid.flags = MBF_HIDDEN;

	Srmm_ModifyIcon(hContact, &sid);

	if (sid.hIcon)
		Skin_ReleaseIcon(sid.hIcon);
}