diff options
Diffstat (limited to 'plugins/ClientChangeNotify/src/Misc.h')
| -rw-r--r-- | plugins/ClientChangeNotify/src/Misc.h | 83 | 
1 files changed, 83 insertions, 0 deletions
diff --git a/plugins/ClientChangeNotify/src/Misc.h b/plugins/ClientChangeNotify/src/Misc.h new file mode 100644 index 0000000000..262193dc26 --- /dev/null +++ b/plugins/ClientChangeNotify/src/Misc.h @@ -0,0 +1,83 @@ +/*
 +	ClientChangeNotify - Plugin for Miranda IM
 +	Copyright (c) 2006-2008 Chervov Dmitry
 +
 +    This program is free software; you can redistribute it and/or modify
 +    it under the terms of the GNU General Public License as published by
 +    the Free Software Foundation; either version 2 of the License, or
 +    (at your option) any later version.
 +
 +    This program is distributed in the hope that it will be useful,
 +    but WITHOUT ANY WARRANTY; without even the implied warranty of
 +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 +    GNU General Public License for more details.
 +
 +    You should have received a copy of the GNU General Public License
 +    along with this program; if not, write to the Free Software
 +    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 +*/
 +
 +#include "Common.h"
 +
 +
 +__inline void ShowMsg(TCHAR *FirstLine, TCHAR *SecondLine = _T(""), bool IsErrorMsg = false, int Timeout = 0)
 +{
 +	if (ServiceExists(MS_POPUP_ADDPOPUPEX))
 +	{
 +		POPUPDATAT ppd = {0};
 +		ppd.lchIcon = LoadIcon(NULL, IsErrorMsg ? IDI_EXCLAMATION : IDI_INFORMATION);
 +		lstrcpy(ppd.lptzContactName, FirstLine);
 +		lstrcpy(ppd.lptzText, SecondLine);
 +		ppd.colorBack = IsErrorMsg ? 0x0202E3 : 0xE8F1FD;
 +		ppd.colorText = IsErrorMsg ? 0xE8F1FD : 0x000000;
 +		ppd.iSeconds = Timeout;
 +		CallService(MS_POPUP_ADDPOPUPT, (WPARAM)&ppd, 0);
 +	} else
 +	{
 +		MessageBox(NULL, SecondLine, FirstLine, MB_OK | (IsErrorMsg ? MB_ICONEXCLAMATION : MB_ICONINFORMATION));
 +	}
 +}
 +
 +
 +__inline TCString Path_ToRelative(TCString &Path)
 +{
 +	CString Str;
 +	Str.GetBuffer(MAX_PATH);
 +	CallService(MS_UTILS_PATHTORELATIVE, (WPARAM)(const char*)TCHAR2ANSI(Path), (LPARAM)(char*)Str);
 +	Str.ReleaseBuffer();
 +	return ANSI2TCHAR(Str);
 +}
 +
 +
 +__inline TCString Path_ToAbsolute(TCString &Path)
 +{
 +	CString Str;
 +	Str.GetBuffer(MAX_PATH);
 +	CallService(MS_UTILS_PATHTOABSOLUTE, (WPARAM)(const char*)TCHAR2ANSI(Path), (LPARAM)(char*)Str);
 +	Str.ReleaseBuffer();
 +	return ANSI2TCHAR(Str);
 +}
 +
 +
 +__inline void ShowLog(TCString &LogFilePath)
 +{
 +	int Result = (int)ShellExecute(NULL, _T("open"), LogFilePath, NULL, NULL, SW_SHOW);
 +	if (Result <= 32) // Error
 +	{
 +		TCHAR szError[64];
 +		mir_sntprintf(szError, lengthof(szError), TranslateT("Error #%d"), Result);
 +		ShowMsg(szError, TranslateT("Can't open log file ") + LogFilePath, true);
 +	}
 +}
 +
 +
 +__inline void RecompileRegexps(TCString IgnoreSubstrings)
 +{
 +	FreePcreCompileData();
 +	TCHAR *p = _tcstok(IgnoreSubstrings, _T(";"));
 +	while (p)
 +	{
 +		CompileRegexp(p, p[0] != '/');
 +		p = _tcstok(NULL, _T(";"));
 +	}
 +}
  | 
