コード例 #1
0
ファイル: m_icolib.cpp プロジェクト: kxepal/miranda-ng
static int icolib_RemoveIcon(lua_State *L)
{
    if (lua_isuserdata(L, 1))
        IcoLib_RemoveIconByHandle(lua_touserdata(L, 1));
    else if (lua_isstring(L, 1))
        IcoLib_RemoveIcon(luaL_checkstring(L, 1));

    return 0;
}
コード例 #2
0
ファイル: svc_flagsicons.cpp プロジェクト: kmdtukl/miranda-ng
void UninitIcons()
{
	for(int i=0;i<nCountriesCount;++i) {
		// create identifier
		char szId[20];
		mir_snprintf(szId, _countof(szId), (countries[i].id == 0xFFFF) ? "%s0x%X" : "%s%i", "flags_", countries[i].id); /* buffer safe */
		IcoLib_RemoveIcon(szId);
	}
	mir_free(phIconHandles);  // does NULL check
}
コード例 #3
0
ファイル: fingerprint.cpp プロジェクト: kmdtukl/miranda-ng
void __fastcall Prepare(KN_FP_MASK* mask, bool bEnable)
{
	mask->szMaskUpper = NULL;

	if (mask->hIcolibItem)
		IcoLib_RemoveIcon(mask->szIconName);
	mask->hIcolibItem = NULL;

	if (!mask->szMask || !bEnable)
		return;

	size_t iMaskLen = mir_tstrlen(mask->szMask) + 1;
	LPTSTR pszNewMask = (LPTSTR)HeapAlloc(hHeap, HEAP_NO_SERIALIZE, iMaskLen * sizeof(TCHAR));
	_tcscpy_s(pszNewMask, iMaskLen, mask->szMask);
	_tcsupr_s(pszNewMask, iMaskLen);
	mask->szMaskUpper = pszNewMask;

	TCHAR destfile[MAX_PATH];
	if (mask->iIconIndex == IDI_NOTFOUND || mask->iIconIndex == IDI_UNKNOWN || mask->iIconIndex == IDI_UNDETECTED)
		GetModuleFileName(g_hInst, destfile, MAX_PATH);
	else {
		_tcsncpy_s(destfile, g_szSkinLib, _TRUNCATE);

		struct _stat64i32 stFileInfo;
		if (_tstat(destfile, &stFileInfo) == -1)
			return;
	}

	LPTSTR SectName = getSectionName(mask->iSectionFlag);
	if (SectName == NULL)
		return;

	SKINICONDESC sid = { 0 };
	sid.flags = SIDF_ALL_TCHAR;
	sid.section.t = SectName;
	sid.pszName = mask->szIconName;
	sid.description.t = mask->szClientDescription;
	sid.defaultFile.t = destfile;
	sid.iDefaultIndex = -mask->iIconIndex;
	mask->hIcolibItem = IcoLib_AddIcon(&sid);
}
コード例 #4
0
void CSkypeProto::UninitIcons()
{
	for (size_t i = 0; i < _countof(Icons); i++)
		IcoLib_RemoveIcon(Icons[i].Name);
}