reactos/base/applications/rapps/include/misc.h
He Yang fbf119fde1
[RAPPS] Screenshot preview and other trivial fixes (#2894)
* add one more layer of window
* using Path* API to operate path
* always use rappmgr.cab as file name when downloading db. ignore the URL
* add snapshot preview window
* show a broken-image icon when failed to load image
* add a padding between image and content, and make sure always some space is reserved for richedit
* hide the padding if snapshot window does not have a width
* some work to avoid blinking when window resizing
* add WM_PRINTCLIENT handling
2020-09-06 17:09:19 +02:00

47 lines
1.4 KiB
C++

#pragma once
#include <windef.h>
#include <atlstr.h>
INT GetWindowWidth(HWND hwnd);
INT GetWindowHeight(HWND hwnd);
INT GetClientWindowWidth(HWND hwnd);
INT GetClientWindowHeight(HWND hwnd);
VOID CopyTextToClipboard(LPCWSTR lpszText);
VOID ShowPopupMenuEx(HWND hwnd, HWND hwndOwner, UINT MenuID, UINT DefaultItem);
VOID ShowPopupMenu(HWND hwnd, UINT MenuID, UINT DefaultItem);
BOOL StartProcess(ATL::CStringW &Path, BOOL Wait);
BOOL StartProcess(LPWSTR lpPath, BOOL Wait);
BOOL GetStorageDirectory(ATL::CStringW &lpDirectory);
VOID InitLogs();
VOID FreeLogs();
BOOL WriteLogMessage(WORD wType, DWORD dwEventID, LPCWSTR lpMsg);
BOOL GetInstalledVersion(ATL::CStringW *pszVersion, const ATL::CStringW &szRegName);
BOOL ExtractFilesFromCab(const ATL::CStringW& szCabName,
const ATL::CStringW& szCabDir,
const ATL::CStringW& szOutputDir);
class CConfigParser
{
// Locale names cache
const static INT m_cchLocaleSize = 5;
ATL::CStringW m_szLocaleID;
ATL::CStringW m_szCachedINISectionLocale;
ATL::CStringW m_szCachedINISectionLocaleNeutral;
const ATL::CStringW szConfigPath;
ATL::CStringW GetINIFullPath(const ATL::CStringW& FileName);
VOID CacheINILocale();
public:
CConfigParser(const ATL::CStringW& FileName = "");
BOOL GetString(const ATL::CStringW& KeyName, ATL::CStringW& ResultString);
BOOL GetInt(const ATL::CStringW& KeyName, INT& iResult);
};