43#include <reactos/buildno.h>
47#define LIGHT_BLUE RGB(214, 239, 247)
48#define DARK_BLUE RGB(107, 123, 140)
50#define TITLE_WIDTH 480
51#define TITLE_HEIGHT 93
68#define BUFFER_SIZE 1024
70#define TOPIC_TITLE_LENGTH 80
71#define TOPIC_DESC_LENGTH 1024
99#define TOPIC_BTN_ID_BASE 100
144 lpLCData += (cchRet - 1);
145 cchData -= (cchRet - 1);
164 while (lpString && *lpString)
172 lpString = pEscape + 1;
183 case _T(
'n'):
case _T(
'r'):
187 if (*lpString ==
_T(
'n'))
189 else if (*lpString ==
_T(
'r'))
224 SIZE_T cchInstallerNameLen;
228 cchInstallerNameLen =
_tcslen(lpInstallerName);
229 if (PathSize < cchInstallerNameLen)
232 *lpInstallerPath = 0;
243 *lpInstallerPath = 0;
249 *lpInstallerPath = 0;
299 StringCchCat(lpInstallerPath, PathSize, lpInstallerName);
313 *lpInstallerPath = 0;
316 StringCchCat(lpInstallerPath, PathSize, lpInstallerName);
327 *lpInstallerPath = 0;
339 PTOPIC pTopic, *pTopicsTmp;
373 if (szText && *szText)
383 if (szDesc && *szDesc)
393 if (szCommand && *szCommand)
421 if (szArgs && *szArgs)
449 if (!*pTopic->
szCommand && szAction && *szAction)
466#define MAX_NUMBER_INTERNAL_TOPICS 3
469 LPTSTR lpszCommand, lpszAction;
470 TOPIC newTopic, *pTopic;
474 lpszCommand =
NULL, lpszAction =
NULL;
523 LPTSTR lpszCommand, lpszAction;
524 TOPIC newTopic, *pTopic;
536 TEXT(
"%s\\%s.ini"), lpResPath, szBuffer);
546 TEXT(
"%s\\%s.ini"), lpResPath, szBuffer);
585 lpszSection = lpszSections;
586 for (; lpszSection && *lpszSection; lpszSection += (
_tcslen(lpszSection) + 1))
592 lpszCommand =
NULL, lpszAction =
NULL;
640 BOOL bLoadDefaultResources;
689 if (bLoadDefaultResources)
693 szResPath,
ARRAYSIZE(szResPath), szIniPath);
703 if (!bLoadDefaultResources)
812 wndclass.
cbSize =
sizeof(wndclass);
818 wndclass.
hIcon = hMainIcon;
832 ulInnerWidth = BitmapInfo.bmWidth;
833 ulInnerHeight = (ulInnerWidth * 3) / 4;
834 ulTitleHeight = BitmapInfo.bmHeight + 3;
840 rcWindow.
bottom = ulInnerHeight - 1;
842 rcWindow.
right = ulInnerWidth - 1;
846 yHeight = rcWindow.
bottom - rcWindow.
top;
930 static WPARAM wParamOld = 0;
931 static LPARAM lParamOld = 0;
1041 return (
rect.bottom-
rect.top + 14);
1269 RECT rcTitle, rcDescription;
1355 TEXT(
"ReactOS ")
TEXT(KERNEL_VERSION_STR));
1472 static WPARAM wParamOld = 0;
1473 static LPARAM lParamOld = 0;
#define IDB_DEFAULT_TOPIC_BITMAP
#define IDS_TOPIC_COMMAND0
#define IDS_DEFAULT_TOPIC_DESC
#define IDS_TOPIC_ACTION0
#define IDS_TOPIC_CMD_ARGS0
#define IDS_DEFAULT_TOPIC_TITLE
#define IDS_TOPIC_BUTTON0
static const WCHAR dwWidth[]
static const WCHAR dwHeight[]
#define HeapFree(x, y, z)
DWORD WINAPI ExpandEnvironmentStringsW(IN LPCWSTR lpSrc, IN LPWSTR lpDst, IN DWORD nSize)
VOID WINAPI GetSystemInfo(IN LPSYSTEM_INFO lpSystemInfo)
LANGID WINAPI GetUserDefaultUILanguage(void)
static VOID BitBlt(_In_ ULONG Left, _In_ ULONG Top, _In_ ULONG Width, _In_ ULONG Height, _In_reads_bytes_(Delta *Height) PUCHAR Buffer, _In_ ULONG BitsPerPixel, _In_ ULONG Delta)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
HLOCAL NTAPI LocalFree(HLOCAL hMem)
TCHAR szTitle[MAX_LOADSTRING]
#define memmove(s1, s2, n)
#define ERROR_ALREADY_EXISTS
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
#define PROCESSOR_ARCHITECTURE_IA64
#define PROCESSOR_ARCHITECTURE_ALPHA64
#define PROCESSOR_ARCHITECTURE_ALPHA
#define PROCESSOR_ARCHITECTURE_ARM
#define PROCESSOR_ARCHITECTURE_UNKNOWN
#define PROCESSOR_ARCHITECTURE_SHX
#define PROCESSOR_ARCHITECTURE_MIPS
#define PROCESSOR_ARCHITECTURE_PPC
#define PROCESSOR_ARCHITECTURE_AMD64
#define PROCESSOR_ARCHITECTURE_INTEL
#define FILE_ATTRIBUTE_DIRECTORY
#define LOCALE_NAME_MAX_LENGTH
#define LOCALE_USER_DEFAULT
#define UNREFERENCED_PARAMETER(P)
PULONG MinorVersion OPTIONAL
CHAR lfFaceName[LF_FACESIZE]
WORD wProcessorArchitecture
TCHAR szTitle[TOPIC_TITLE_LENGTH]
TCHAR szDesc[TOPIC_DESC_LENGTH]
#define LANG_USER_DEFAULT
TW_UINT32 TW_UINT16 TW_UINT16 MSG
#define INVALID_FILE_ATTRIBUTES
VOID InitializeTopicList(VOID)
#define TOPIC_TITLE_LENGTH
static LRESULT OnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
static VOID LoadLocalizedResourcesInternal(VOID)
static LRESULT OnDestroy(HWND hWnd, WPARAM wParam, LPARAM lParam)
INT GetLocaleName(IN LCID Locale, OUT LPTSTR lpLCData, IN SIZE_T cchData)
PTOPIC AddNewTopicEx(IN LPTSTR szText OPTIONAL, IN LPTSTR szTitle OPTIONAL, IN LPTSTR szDesc OPTIONAL, IN LPTSTR szCommand OPTIONAL, IN LPTSTR szArgs OPTIONAL, IN LPTSTR szAction OPTIONAL)
#define TOPIC_BTN_ID_BASE
#define MAX_NUMBER_INTERNAL_TOPICS
HFONT hFontTopicDescription
static LRESULT OnActivate(HWND hWnd, WPARAM wParam, LPARAM lParam)
static LRESULT OnCommand(HWND hWnd, WPARAM wParam, LPARAM lParam)
static LRESULT OnDrawItem(HWND hWnd, WPARAM wParam, LPARAM lParam)
static LRESULT OnCtlColorStatic(HWND hWnd, WPARAM wParam, LPARAM lParam)
HBITMAP hDefaultTopicBitmap
BOOL ExpandInstallerPath(IN LPCTSTR lpInstallerName, OUT LPTSTR lpInstallerPath, IN SIZE_T PathSize)
static LRESULT OnMouseMove(HWND hWnd, WPARAM wParam, LPARAM lParam)
static BOOL RunAction(INT nTopic)
TCHAR szDefaultDesc[TOPIC_DESC_LENGTH]
static VOID PaintBanner(HDC hdc, LPRECT rcPanel)
static BOOL LoadLocalizedResourcesFromINI(LCID Locale, LPTSTR lpResPath)
VOID TranslateEscapes(IN OUT LPTSTR lpString)
static DWORD GetButtonHeight(HDC hDC, HFONT hFont, LPCTSTR szText, DWORD dwWidth)
static VOID FreeResources(VOID)
#define TOPIC_DESC_LENGTH
static VOID LoadConfiguration(VOID)
INT_PTR CALLBACK ButtonSubclassWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
static LRESULT OnPaint(HWND hWnd, WPARAM wParam, LPARAM lParam)
INT_PTR CALLBACK MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
TCHAR szDefaultTitle[TOPIC_TITLE_LENGTH]
BOOL WINAPI SetProcessDefaultLayout(DWORD dwDefaultLayout)
#define GetWindowsDirectory
DWORD WINAPI GetLastError(void)
#define GetPrivateProfileSectionNames
#define GetFileAttributes
#define SetCurrentDirectory
#define FORMAT_MESSAGE_IGNORE_INSERTS
#define GetPrivateProfileInt
#define FORMAT_MESSAGE_FROM_SYSTEM
#define FORMAT_MESSAGE_ALLOCATE_BUFFER
#define GetPrivateProfileString
#define GetCurrentDirectory
#define GetModuleFileName
#define ERROR_INVALID_FLAGS
HGDIOBJ WINAPI GetStockObject(_In_ int)
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
BOOL WINAPI MoveToEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
HDC WINAPI CreateCompatibleDC(_In_opt_ HDC hdc)
#define OUT_DEFAULT_PRECIS
BOOL WINAPI PatBlt(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int, _In_ DWORD)
#define CLIP_DEFAULT_PRECIS
int WINAPI SetBkMode(_In_ HDC, _In_ int)
COLORREF WINAPI SetTextColor(_In_ HDC, _In_ COLORREF)
HBRUSH WINAPI CreateSolidBrush(_In_ COLORREF)
BOOL WINAPI DeleteDC(_In_ HDC)
HPEN WINAPI CreatePen(_In_ int, _In_ int, _In_ COLORREF)
#define CreateFontIndirect
BOOL WINAPI LineTo(_In_ HDC, _In_ int, _In_ int)
#define LOCALE_SISO639LANGNAME
#define LOCALE_SISO3166CTRYNAME
HWND WINAPI GetFocus(void)
struct tagDRAWITEMSTRUCT * LPDRAWITEMSTRUCT
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
DWORD WINAPI GetSysColor(_In_ int)
#define WM_CTLCOLORSTATIC
HDC WINAPI GetWindowDC(_In_opt_ HWND)
BOOL WINAPI TranslateMessage(_In_ const MSG *)
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
HWND WINAPI GetForegroundWindow(void)
BOOL WINAPI AdjustWindowRect(_Inout_ LPRECT, _In_ DWORD, _In_ BOOL)
BOOL WINAPI DrawFrameControl(_In_ HDC, _Inout_ LPRECT, _In_ UINT, _In_ UINT)
__analysis_noreturn void WINAPI PostQuitMessage(_In_ int)
BOOL WINAPI SetForegroundWindow(_In_ HWND)
HMENU WINAPI GetSystemMenu(_In_ HWND, _In_ BOOL)
HWND WINAPI SetFocus(_In_opt_ HWND)
BOOL WINAPI EndPaint(_In_ HWND, _In_ const PAINTSTRUCT *)
BOOL WINAPI RemoveMenu(_In_ HMENU, _In_ UINT, _In_ UINT)
BOOL WINAPI UpdateWindow(_In_ HWND)
BOOL WINAPI IsWindowEnabled(_In_ HWND)
HWND WINAPI GetParent(_In_ HWND)
BOOL WINAPI OffsetRect(_Inout_ LPRECT, _In_ int, _In_ int)
int WINAPI GetDlgCtrlID(_In_ HWND)
BOOL WINAPI InvalidateRect(_In_opt_ HWND, _In_opt_ LPCRECT, _In_ BOOL)
LRESULT(CALLBACK * WNDPROC)(HWND, UINT, WPARAM, LPARAM)
HDC WINAPI BeginPaint(_In_ HWND, _Out_ LPPAINTSTRUCT)
BOOL WINAPI InflateRect(_Inout_ LPRECT, _In_ int, _In_ int)
BOOL WINAPI DestroyWindow(_In_ HWND)
int WINAPI GetSystemMetrics(_In_ int)
void ShowLastWin32Error(HWND hwndParent)