mirror of
https://github.com/reactos/reactos.git
synced 2025-05-31 23:18:39 +00:00
[desk.cpl]
- Overhaul the appearance tab - Fixed and tested to work almost flawlessly on windows xp and windows 7 - Implement selecting the size of a scheme - Implement loading the scheme from a visual style and allow the user to customize it before applying the visual style - Implement showing visual styles preview - Properly load and apply system metrics - Store the scheme in memory as NONCLIENTMETRICS and ICONMETRICS structs instead of arrays of sizes and fonts - Store the loaded themes in a list instead of a global array - Now that this works great in windows, it also mean that we have to modify our colour schemes in the registry to be in the same format with windows and also fix uxtheme to handle system metrics properly svn path=/trunk/; revision=58808
This commit is contained in:
parent
1408f94a8f
commit
303bb28fc4
32 changed files with 1293 additions and 870 deletions
|
@ -22,6 +22,7 @@ add_library(desk SHARED
|
|||
desk.rc
|
||||
draw.c
|
||||
theme.c
|
||||
muireg.c
|
||||
${CMAKE_CURRENT_BINARY_DIR}/desk.def)
|
||||
|
||||
set_module_type(desk cpl UNICODE)
|
||||
|
@ -37,6 +38,7 @@ add_importlibs(desk
|
|||
ole32
|
||||
setupapi
|
||||
shell32
|
||||
shlwapi
|
||||
uxtheme
|
||||
kernel32
|
||||
ntdll)
|
||||
|
|
|
@ -24,30 +24,30 @@ typedef struct
|
|||
|
||||
/* This const assigns the color and metric numbers to the elements from the elements list */
|
||||
|
||||
/* Size 1 (width) Size 2 (height) Color 1 Color 2 Font Fontcolor */
|
||||
/* Size 1 (width) Size 2 (height) Color 1 Color 2 Font Fontcolor */
|
||||
const ASSIGNMENT g_Assignment[NUM_ELEMENTS] =
|
||||
{ {-1, -1, COLOR_DESKTOP, -1, -1, -1}, /* -Desktop */
|
||||
{SIZE_CAPTION_Y, -1, COLOR_INACTIVECAPTION, COLOR_GRADIENTINACTIVECAPTION, FONT_CAPTION, -1}, /* inactive window caption */
|
||||
{SIZE_BORDER_X, SIZE_BORDER_Y, COLOR_INACTIVEBORDER, -1, -1, -1}, /* inactive window border */
|
||||
{SIZE_CAPTION_Y, -1, COLOR_ACTIVECAPTION, COLOR_GRADIENTACTIVECAPTION, FONT_CAPTION, COLOR_CAPTIONTEXT}, /* -active window caption */
|
||||
{SIZE_BORDER_X, SIZE_BORDER_Y, COLOR_ACTIVEBORDER, -1, -1, -1}, /* active window border */
|
||||
{SIZE_MENU_SIZE_X, SIZE_MENU_Y, COLOR_MENU, -1, FONT_MENU, COLOR_MENUTEXT}, /* menu */
|
||||
{SIZE_MENU_SIZE_X, SIZE_MENU_Y, COLOR_HIGHLIGHT, -1, FONT_HILIGHT, COLOR_HIGHLIGHTTEXT}, /* marked element */
|
||||
{-1, -1, COLOR_WINDOW, -1 /*COLOR_WINDOWFRAME*/, -1, COLOR_WINDOWTEXT}, /* window */
|
||||
{SIZE_SCROLL_X, SIZE_SCROLL_Y, COLOR_SCROLLBAR, -1, -1, -1}, /* scroll bar */
|
||||
{-1, -1, COLOR_3DFACE, -1, -1, COLOR_BTNTEXT}, /* 3d objects */
|
||||
{SIZE_SMCAPTION_Y, -1, -1, -1, FONT_SMCAPTION, -1}, /* palette window caption */
|
||||
{-1, -1, -1, -1, -1, -1}, /* symbol caption FIXME: Access? */
|
||||
{SIZE_CAPTION_Y, -1, -1, -1, -1, -1}, /* caption bar */
|
||||
{-1, -1, -1, -1, -1, COLOR_GRAYTEXT}, /* inactive menu item FIXME: Access? */
|
||||
{-1, -1, -1, -1, FONT_DIALOG, COLOR_WINDOWTEXT}, /* dialog */
|
||||
{-1, -1, -1, -1, -1, -1}, /* scrollbar controls FIXME: Access? */
|
||||
{-1, -1, COLOR_APPWORKSPACE, -1, -1, -1}, /* application background */
|
||||
{-1, -1, -1, -1, -1, -1}, /* small caption bar FIXME: Access? */
|
||||
{SIZE_ICON_SPC_X, -1, -1, -1, -1, -1}, /* symbol distance horiz. */
|
||||
{SIZE_ICON_SPC_Y, -1, -1, -1, -1, -1}, /* symbol distance vert. */
|
||||
{-1, -1, COLOR_INFOBK, -1, FONT_INFO, COLOR_INFOTEXT}, /* quickinfo */
|
||||
{SIZE_ICON_X, SIZE_ICON_Y, -1, -1, FONT_ICON, -1}}; /* symbol */
|
||||
{ {-1, -1, COLOR_DESKTOP, -1, -1, -1}, /* -Desktop */
|
||||
{SIZE_CAPTION_HEIGHT, -1, COLOR_INACTIVECAPTION, COLOR_GRADIENTINACTIVECAPTION, FONT_CAPTION, -1}, /* inactive window caption */
|
||||
{SIZE_BORDER_WIDTH, -1, COLOR_INACTIVEBORDER, -1, -1, -1}, /* inactive window border */
|
||||
{SIZE_CAPTION_HEIGHT, -1, COLOR_ACTIVECAPTION, COLOR_GRADIENTACTIVECAPTION, FONT_CAPTION, COLOR_CAPTIONTEXT}, /* -active window caption */
|
||||
{SIZE_BORDER_WIDTH, -1, COLOR_ACTIVEBORDER, -1, -1, -1}, /* active window border */
|
||||
{SIZE_MENU_HEIGHT, SIZE_MENU_WIDTH, COLOR_MENU, -1, FONT_MENU, COLOR_MENUTEXT}, /* menu */
|
||||
{SIZE_MENU_HEIGHT, SIZE_MENU_WIDTH, COLOR_HIGHLIGHT, -1, -1, COLOR_HIGHLIGHTTEXT},/* marked element */
|
||||
{-1, -1, COLOR_WINDOW, -1 /*COLOR_WINDOWFRAME*/, -1, COLOR_WINDOWTEXT}, /* window */
|
||||
{SIZE_SCROLL_WIDTH, SIZE_SCROLL_HEIGHT, COLOR_SCROLLBAR, -1, -1, -1}, /* scroll bar */
|
||||
{-1, -1, COLOR_3DFACE, -1, -1, COLOR_BTNTEXT}, /* 3d objects */
|
||||
{SIZE_SM_CAPTION_HEIGHT, -1, -1, -1, FONT_SMCAPTION, -1}, /* palette window caption */
|
||||
{-1, -1, -1, -1, -1, -1}, /* symbol caption FIXME: Access? */
|
||||
{SIZE_CAPTION_HEIGHT, -1, -1, -1, -1, -1}, /* caption bar */
|
||||
{-1, -1, -1, -1, -1, COLOR_GRAYTEXT}, /* inactive menu item FIXME: Access? */
|
||||
{-1, -1, -1, -1, FONT_MESSAGE, COLOR_WINDOWTEXT}, /* dialog */
|
||||
{-1, -1, -1, -1, -1, -1}, /* scrollbar controls FIXME: Access? */
|
||||
{-1, -1, COLOR_APPWORKSPACE, -1, -1, -1}, /* application background */
|
||||
{-1, -1, -1, -1, -1, -1}, /* small caption bar FIXME: Access? */
|
||||
{SIZE_ICON_SPACE_X, -1, -1, -1, -1, -1}, /* symbol distance horiz. */
|
||||
{SIZE_ICON_SPACE_Y, -1, -1, -1, -1, -1}, /* symbol distance vert. */
|
||||
{-1, -1, COLOR_INFOBK, -1, FONT_STATUS, COLOR_INFOTEXT}, /* quickinfo */
|
||||
{SIZE_ICON, -1, -1, -1, FONT_ICON, -1}}; /* symbol */
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
|
@ -231,20 +231,20 @@ UpdateControls(HWND hwndDlg, GLOBALS *g)
|
|||
UpdateButtonColor(hwndDlg, g, IDC_ADVAPPEARANCE_FONTCOLOR_B, 2, g_Assignment[iElement].FontColor);
|
||||
|
||||
if (g_Assignment[iElement].Size != -1)
|
||||
SetDlgItemInt(hwndDlg, IDC_ADVAPPEARANCE_SIZE_E, g->SchemeAdv.Size[g_Assignment[iElement].Size], FALSE);
|
||||
SetDlgItemInt(hwndDlg, IDC_ADVAPPEARANCE_SIZE_E, SchemeGetMetric(&g->SchemeAdv, g_Assignment[iElement].Size), FALSE);
|
||||
else
|
||||
SetDlgItemText(hwndDlg, IDC_ADVAPPEARANCE_SIZE_E, TEXT(""));
|
||||
|
||||
hdcDlg = GetDC(hwndDlg);
|
||||
if (g_Assignment[iElement].Font != -1)
|
||||
{
|
||||
LOGFONT lfFont = g->SchemeAdv.lfFont[g_Assignment[iElement].Font];
|
||||
PLOGFONTW plfFont = SchemeGetFont(&g->SchemeAdv, g_Assignment[iElement].Font);
|
||||
|
||||
SetDlgItemText(hwndDlg, IDC_ADVAPPEARANCE_FONT_C, lfFont.lfFaceName);
|
||||
SetDlgItemInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E, -MulDiv(g->SchemeAdv.lfFont[g_Assignment[iElement].Font].lfHeight, 72, GetDeviceCaps(hdcDlg, LOGPIXELSY)),FALSE);
|
||||
SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONT_C, CB_FINDSTRINGEXACT, -1, (WPARAM)lfFont.lfFaceName);
|
||||
SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTBOLD, BM_SETCHECK, g->SchemeAdv.lfFont[g_Assignment[iElement].Font].lfWeight == FW_BOLD?1:0, 0);
|
||||
SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTITALIC, BM_SETCHECK, g->SchemeAdv.lfFont[g_Assignment[iElement].Font].lfItalic, 0);
|
||||
SetDlgItemText(hwndDlg, IDC_ADVAPPEARANCE_FONT_C, plfFont->lfFaceName);
|
||||
SetDlgItemInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E, -MulDiv(plfFont->lfHeight, 72, GetDeviceCaps(hdcDlg, LOGPIXELSY)),FALSE);
|
||||
SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONT_C, CB_FINDSTRINGEXACT, -1, (WPARAM)plfFont->lfFaceName);
|
||||
SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTBOLD, BM_SETCHECK, plfFont->lfWeight == FW_BOLD?1:0, 0);
|
||||
SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTITALIC, BM_SETCHECK, plfFont->lfItalic, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -266,15 +266,16 @@ SaveCurrentValues(HWND hwndDlg, GLOBALS *g)
|
|||
|
||||
if (g_Assignment[g->CurrentElement].Size != -1)
|
||||
{
|
||||
g->SchemeAdv.Size[g_Assignment[g->CurrentElement].Size] = GetDlgItemInt(hwndDlg, IDC_ADVAPPEARANCE_SIZE_E, &bTranslated, FALSE);
|
||||
SchemeSetMetric(&g->SchemeAdv, g_Assignment[g->CurrentElement].Size, GetDlgItemInt(hwndDlg, IDC_ADVAPPEARANCE_SIZE_E, &bTranslated, FALSE));
|
||||
}
|
||||
|
||||
if (g_Assignment[g->CurrentElement].Font != -1)
|
||||
{
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfHeight = -MulDiv(GetDlgItemInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E, &bTranslated, FALSE), GetDeviceCaps(hdcDlg, LOGPIXELSY), 72);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfWeight = (SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTBOLD, BM_GETCHECK, 0, 0) == 1) ? FW_BOLD : FW_NORMAL;
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfItalic = (BYTE)SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTITALIC, BM_GETCHECK, 0, 0);
|
||||
GetDlgItemText(hwndDlg, IDC_ADVAPPEARANCE_FONT_C, g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfFaceName, LF_FACESIZE * sizeof(TCHAR));
|
||||
PLOGFONTW plfFont = SchemeGetFont(&g->SchemeAdv, g_Assignment[g->CurrentElement].Font);
|
||||
plfFont->lfHeight = -MulDiv(GetDlgItemInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E, &bTranslated, FALSE), GetDeviceCaps(hdcDlg, LOGPIXELSY), 72);
|
||||
plfFont->lfWeight = (SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTBOLD, BM_GETCHECK, 0, 0) == 1) ? FW_BOLD : FW_NORMAL;
|
||||
plfFont->lfItalic = (BYTE)SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTITALIC, BM_GETCHECK, 0, 0);
|
||||
GetDlgItemText(hwndDlg, IDC_ADVAPPEARANCE_FONT_C, plfFont->lfFaceName, LF_FACESIZE * sizeof(TCHAR));
|
||||
}
|
||||
|
||||
ReleaseDC(hwndDlg, hdcDlg);
|
||||
|
@ -379,7 +380,7 @@ AdvAppearanceDlg_Init(HWND hwndDlg, GLOBALS *g)
|
|||
SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_ELEMENT, CB_SETCURSEL, iDeskIndex, 0);
|
||||
|
||||
/* Create font for bold button */
|
||||
lfButtonFont = g->Scheme.lfFont[FONT_DIALOG];
|
||||
lfButtonFont = g->Scheme.ncMetrics.lfMessageFont;
|
||||
lfButtonFont.lfWeight = FW_BOLD;
|
||||
lfButtonFont.lfItalic = FALSE;
|
||||
hMyFont = CreateFontIndirect(&lfButtonFont);
|
||||
|
@ -501,27 +502,12 @@ GetSelectedComboInt(HWND hwnd, INT id)
|
|||
return _ttoi(szBuffer);
|
||||
}
|
||||
|
||||
|
||||
static INT
|
||||
GetEditedComboInt(HWND hwnd, INT id)
|
||||
{
|
||||
INT nCount;
|
||||
BOOL bTranslated;
|
||||
|
||||
nCount = GetDlgItemInt(hwnd, id, &bTranslated, FALSE);
|
||||
if (bTranslated == FALSE)
|
||||
return 12;
|
||||
|
||||
return nCount;
|
||||
}
|
||||
|
||||
|
||||
|
||||
INT_PTR CALLBACK
|
||||
AdvAppearanceDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
INT iListIndex;
|
||||
INT iSelection, iProperty;
|
||||
GLOBALS* g;
|
||||
PLOGFONTW plfFont;
|
||||
|
||||
g = (GLOBALS*)GetWindowLongPtr(hwndDlg, DWLP_USER);
|
||||
|
||||
|
@ -538,6 +524,9 @@ AdvAppearanceDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
break;
|
||||
|
||||
case WM_COMMAND:
|
||||
if(g == NULL)
|
||||
return TRUE;
|
||||
|
||||
switch(LOWORD(wParam))
|
||||
{
|
||||
case IDOK:
|
||||
|
@ -561,197 +550,87 @@ AdvAppearanceDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
SaveCurrentValues(hwndDlg, g);
|
||||
iListIndex = SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_ELEMENT, CB_GETCURSEL, 0, 0);
|
||||
g->CurrentElement = SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_ELEMENT, CB_GETITEMDATA, (WPARAM)iListIndex, 0);
|
||||
iSelection = SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_ELEMENT, CB_GETCURSEL, 0, 0);
|
||||
g->CurrentElement = SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_ELEMENT, CB_GETITEMDATA, iSelection, 0);
|
||||
UpdateControls(hwndDlg, g);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_ADVAPPEARANCE_SIZE_E:
|
||||
if (g && HIWORD(wParam) == EN_CHANGE)
|
||||
if (HIWORD(wParam) == EN_CHANGE)
|
||||
{
|
||||
INT i = (INT)LOWORD(SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_SIZE_UD, UDM_GETPOS,0,0L));
|
||||
iProperty = g_Assignment[g->CurrentElement].Size;
|
||||
if(iProperty == -1)
|
||||
return TRUE;
|
||||
|
||||
switch (g->CurrentElement)
|
||||
{
|
||||
case IDX_INACTIVE_CAPTION:
|
||||
case IDX_ACTIVE_CAPTION:
|
||||
case IDX_CAPTION_BUTTON:
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_SETCYCAPTION, 0, i);
|
||||
break;
|
||||
iSelection = LOWORD(SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_SIZE_UD, UDM_GETPOS,0,0L));
|
||||
SchemeSetMetric(&g->SchemeAdv, iProperty, iSelection);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_SETSIZE, iProperty, iSelection);
|
||||
|
||||
case IDX_MENU:
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_SETCYMENU, 0, i);
|
||||
break;
|
||||
|
||||
case IDX_SCROLLBAR:
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_SETCXSCROLLBAR, 0, i);
|
||||
break;
|
||||
|
||||
case IDX_INACTIVE_BORDER:
|
||||
case IDX_ACTIVE_BORDER:
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_SETCYSIZEFRAME, 0, i);
|
||||
break;
|
||||
}
|
||||
iProperty = g_Assignment[g->CurrentElement].Size2;
|
||||
if(iProperty != -1)
|
||||
SchemeSetMetric(&g->SchemeAdv, iProperty, iSelection);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_ADVAPPEARANCE_FONT_C:
|
||||
if (g && HIWORD(wParam) == CBN_SELCHANGE)
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
switch (g->CurrentElement)
|
||||
{
|
||||
case IDX_INACTIVE_CAPTION:
|
||||
case IDX_ACTIVE_CAPTION:
|
||||
GetSelectedComboText(hwndDlg, IDC_ADVAPPEARANCE_FONT_C,
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfFaceName);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
iProperty = g_Assignment[g->CurrentElement].Font;
|
||||
if(iProperty == -1)
|
||||
return TRUE;
|
||||
|
||||
case IDX_MENU:
|
||||
GetSelectedComboText(hwndDlg, IDC_ADVAPPEARANCE_FONT_C,
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfFaceName);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
|
||||
case IDX_DIALOG:
|
||||
GetSelectedComboText(hwndDlg, IDC_ADVAPPEARANCE_FONT_C,
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfFaceName);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
}
|
||||
plfFont = SchemeGetFont(&g->SchemeAdv, iProperty);
|
||||
GetSelectedComboText(hwndDlg, IDC_ADVAPPEARANCE_FONT_C, plfFont->lfFaceName);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_SETFONT, iProperty, (LPARAM)plfFont);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_ADVAPPEARANCE_FONTSIZE_E:
|
||||
if (g && HIWORD(wParam) == CBN_SELCHANGE)
|
||||
if ((HIWORD(wParam) == CBN_SELCHANGE || HIWORD(wParam) == CBN_EDITCHANGE))
|
||||
{
|
||||
HDC hdcDlg = GetDC(hwndDlg);
|
||||
INT i;
|
||||
HDC hdcDlg;
|
||||
|
||||
switch (g->CurrentElement)
|
||||
{
|
||||
case IDX_INACTIVE_CAPTION:
|
||||
case IDX_ACTIVE_CAPTION:
|
||||
i = GetSelectedComboInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfHeight =
|
||||
-MulDiv(i , GetDeviceCaps(hdcDlg, LOGPIXELSY), 72);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
iProperty = g_Assignment[g->CurrentElement].Font;
|
||||
if(iProperty == -1)
|
||||
return TRUE;
|
||||
|
||||
case IDX_MENU:
|
||||
i = GetSelectedComboInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfHeight =
|
||||
-MulDiv(i , GetDeviceCaps(hdcDlg, LOGPIXELSY), 72);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
hdcDlg = GetDC(hwndDlg);
|
||||
|
||||
case IDX_DIALOG:
|
||||
i = GetSelectedComboInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfHeight =
|
||||
-MulDiv(i , GetDeviceCaps(hdcDlg, LOGPIXELSY), 72);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
}
|
||||
|
||||
ReleaseDC(hwndDlg, hdcDlg);
|
||||
}
|
||||
else if (g && HIWORD(wParam) == CBN_EDITCHANGE)
|
||||
{
|
||||
HDC hdcDlg = GetDC(hwndDlg);
|
||||
INT i;
|
||||
|
||||
switch (g->CurrentElement)
|
||||
{
|
||||
case IDX_INACTIVE_CAPTION:
|
||||
case IDX_ACTIVE_CAPTION:
|
||||
i = GetEditedComboInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfHeight =
|
||||
-MulDiv(i , GetDeviceCaps(hdcDlg, LOGPIXELSY), 72);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
|
||||
case IDX_MENU:
|
||||
i = GetEditedComboInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfHeight =
|
||||
-MulDiv(i , GetDeviceCaps(hdcDlg, LOGPIXELSY), 72);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
|
||||
case IDX_DIALOG:
|
||||
i = GetEditedComboInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfHeight =
|
||||
-MulDiv(i , GetDeviceCaps(hdcDlg, LOGPIXELSY), 72);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
}
|
||||
plfFont = SchemeGetFont(&g->SchemeAdv, iProperty);
|
||||
iSelection = GetSelectedComboInt(hwndDlg, IDC_ADVAPPEARANCE_FONTSIZE_E);
|
||||
plfFont->lfHeight = -MulDiv(iSelection , GetDeviceCaps(hdcDlg, LOGPIXELSY), 72);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
|
||||
ReleaseDC(hwndDlg, hdcDlg);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_ADVAPPEARANCE_FONTBOLD:
|
||||
if (g && HIWORD(wParam) == BN_CLICKED)
|
||||
if (HIWORD(wParam) == BN_CLICKED)
|
||||
{
|
||||
INT i;
|
||||
iProperty = g_Assignment[g->CurrentElement].Font;
|
||||
if(iProperty == -1)
|
||||
return TRUE;
|
||||
|
||||
switch (g->CurrentElement)
|
||||
{
|
||||
case IDX_INACTIVE_CAPTION:
|
||||
case IDX_ACTIVE_CAPTION:
|
||||
i = (INT)SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTBOLD, BM_GETCHECK, 0, 0);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfWeight =
|
||||
(i == BST_CHECKED) ? FW_BOLD : FW_NORMAL;
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
|
||||
case IDX_MENU:
|
||||
i = (INT)SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTBOLD, BM_GETCHECK, 0, 0);
|
||||
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfWeight =
|
||||
(i == BST_CHECKED) ? FW_BOLD : FW_NORMAL;
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
|
||||
case IDX_DIALOG:
|
||||
i = (INT)SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTBOLD, BM_GETCHECK, 0, 0);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfWeight =
|
||||
(i == BST_CHECKED) ? FW_BOLD : FW_NORMAL;
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
}
|
||||
plfFont = SchemeGetFont(&g->SchemeAdv, iProperty);
|
||||
iSelection = (INT)SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTBOLD, BM_GETCHECK, 0, 0);
|
||||
plfFont->lfWeight = (iSelection == BST_CHECKED) ? FW_BOLD : FW_NORMAL;
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_SETFONT, iProperty, (LPARAM)plfFont);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_ADVAPPEARANCE_FONTITALIC:
|
||||
if (g && HIWORD(wParam) == BN_CLICKED)
|
||||
if (HIWORD(wParam) == BN_CLICKED)
|
||||
{
|
||||
INT i;
|
||||
iProperty = g_Assignment[g->CurrentElement].Font;
|
||||
if(iProperty == -1)
|
||||
return TRUE;
|
||||
|
||||
switch (g->CurrentElement)
|
||||
{
|
||||
case IDX_INACTIVE_CAPTION:
|
||||
case IDX_ACTIVE_CAPTION:
|
||||
i = (INT)SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTITALIC, BM_GETCHECK, 0, 0);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfItalic =
|
||||
(i == BST_CHECKED) ? TRUE : FALSE;
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
|
||||
case IDX_MENU:
|
||||
i = (INT)SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTITALIC, BM_GETCHECK, 0, 0);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfItalic =
|
||||
(i == BST_CHECKED) ? TRUE : FALSE;
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
|
||||
case IDX_DIALOG:
|
||||
i = (INT)SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTITALIC, BM_GETCHECK, 0, 0);
|
||||
g->SchemeAdv.lfFont[g_Assignment[g->CurrentElement].Font].lfItalic =
|
||||
(i == BST_CHECKED) ? TRUE : FALSE;
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->SchemeAdv);
|
||||
break;
|
||||
}
|
||||
plfFont = SchemeGetFont(&g->SchemeAdv, iProperty);
|
||||
iSelection = (INT)SendDlgItemMessage(hwndDlg, IDC_ADVAPPEARANCE_FONTITALIC, BM_GETCHECK, 0, 0);
|
||||
plfFont->lfItalic = (iSelection == BST_CHECKED) ? TRUE : FALSE;
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_SETFONT, iProperty, (LPARAM)plfFont);
|
||||
}
|
||||
break;
|
||||
|
||||
|
|
|
@ -13,90 +13,154 @@
|
|||
/******************************************************************************/
|
||||
|
||||
static void
|
||||
AppearancePage_ShowColorScemes(GLOBALS *g, HWND hwndColor, INT ThemeId)
|
||||
AppearancePage_UpdateThemePreview(HWND hwndDlg, GLOBALS *g)
|
||||
{
|
||||
int i, iListIndex;
|
||||
|
||||
SendMessage(hwndColor, CB_RESETCONTENT , 0, 0);
|
||||
|
||||
if(g->bThemeActive == FALSE)
|
||||
if (g->ActiveTheme.ThemeActive == FALSE)
|
||||
{
|
||||
for(i = 0; i < g_TemplateCount; i++)
|
||||
{
|
||||
iListIndex = SendMessage(hwndColor, CB_ADDSTRING, 0, (LPARAM)g_ColorSchemes[i].strLegacyName);
|
||||
SendMessage(hwndColor, CB_SETITEMDATA, iListIndex, i);
|
||||
if (lstrcmp(g_ColorSchemes[i].strKeyName, g->strSelectedStyle) == 0)
|
||||
{
|
||||
g->SchemeId = i;
|
||||
SendMessage(hwndColor, CB_SETCURSEL, (WPARAM)iListIndex, 0);
|
||||
}
|
||||
}
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->Scheme);
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_SET_HDC_PREVIEW, 0, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
PTHEME pTheme = (PTHEME)DSA_GetItemPtr(g->Themes, ThemeId);
|
||||
for(i = 0; i < pTheme->ColorsCount; i++)
|
||||
RECT rcWindow;
|
||||
GetClientRect(GetDlgItem(hwndDlg, IDC_APPEARANCE_PREVIEW), &rcWindow);
|
||||
DrawThemePreview(g->hdcThemePreview, &g->Scheme, &g->ActiveTheme, &rcWindow);
|
||||
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_SET_HDC_PREVIEW, 0, (LPARAM)g->hdcThemePreview);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
AppearancePage_LoadSelectedScheme(HWND hwndDlg, GLOBALS *g)
|
||||
{
|
||||
if (g->ActiveTheme.ThemeActive == FALSE )
|
||||
{
|
||||
LoadSchemeFromReg(&g->Scheme, &g->ActiveTheme);
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadSchemeFromTheme(&g->Scheme, &g->ActiveTheme);
|
||||
}
|
||||
|
||||
g_GlobalData.desktop_color = g->Scheme.crColor[COLOR_DESKTOP];
|
||||
}
|
||||
|
||||
static void
|
||||
AppearancePage_ShowStyles(HWND hwndDlg, int nIDDlgItem, PTHEME_STYLE pStyles, PTHEME_STYLE pActiveStyle)
|
||||
{
|
||||
int iListIndex;
|
||||
HWND hwndList = GetDlgItem(hwndDlg, nIDDlgItem);
|
||||
PTHEME_STYLE pCurrentStyle;
|
||||
|
||||
SendMessage(hwndList, CB_RESETCONTENT , 0, 0);
|
||||
|
||||
for (pCurrentStyle = pStyles;
|
||||
pCurrentStyle;
|
||||
pCurrentStyle = pCurrentStyle->NextStyle)
|
||||
{
|
||||
iListIndex = SendMessage(hwndList, CB_ADDSTRING, 0, (LPARAM)pCurrentStyle->DisplayName);
|
||||
SendMessage(hwndList, CB_SETITEMDATA, iListIndex, (LPARAM)pCurrentStyle);
|
||||
if (pCurrentStyle == pActiveStyle)
|
||||
{
|
||||
PTHEME_STYLE pStyleName;
|
||||
pStyleName = (PTHEME_STYLE)DSA_GetItemPtr(pTheme->Colors, i);
|
||||
iListIndex = SendMessage(hwndColor, CB_ADDSTRING, 0, (LPARAM)pStyleName->DisplayName);
|
||||
SendMessage(hwndColor, CB_SETITEMDATA, iListIndex, i);
|
||||
if(i == 0 || (g->pszColorName && wcscmp(pStyleName->StlyeName, g->pszColorName) == 0))
|
||||
{
|
||||
g->SchemeId = i;
|
||||
SendMessage(hwndColor, CB_SETCURSEL, (WPARAM)iListIndex, 0);
|
||||
}
|
||||
SendMessage(hwndList, CB_SETCURSEL, (WPARAM)iListIndex, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
AppearancePage_ShowColorSchemes(HWND hwndDlg, GLOBALS *g)
|
||||
{
|
||||
AppearancePage_ShowStyles(hwndDlg,
|
||||
IDC_APPEARANCE_COLORSCHEME,
|
||||
g->ActiveTheme.Theme->ColoursList,
|
||||
g->ActiveTheme.Color);
|
||||
}
|
||||
|
||||
static void
|
||||
AppearancePage_ShowSizes(HWND hwndDlg, GLOBALS *g)
|
||||
{
|
||||
PTHEME_STYLE pSizes;
|
||||
|
||||
if (g->ActiveTheme.Theme->SizesList)
|
||||
pSizes = g->ActiveTheme.Theme->SizesList;
|
||||
else
|
||||
pSizes = g->ActiveTheme.Color->ChildStyle;
|
||||
|
||||
AppearancePage_ShowStyles(hwndDlg,
|
||||
IDC_APPEARANCE_SIZE,
|
||||
pSizes,
|
||||
g->ActiveTheme.Size);
|
||||
}
|
||||
|
||||
static INT_PTR
|
||||
AppearancePage_OnInit(HWND hwndDlg)
|
||||
{
|
||||
INT i, /*TemplateCount,*/ iListIndex;
|
||||
INT iListIndex;
|
||||
HWND hwndColor, hwndTheme;
|
||||
GLOBALS *g;
|
||||
RECT rcPreview;
|
||||
HDC hdcScreen;
|
||||
PTHEME pTheme;
|
||||
|
||||
g = (GLOBALS*)LocalAlloc(LPTR, sizeof(GLOBALS));
|
||||
g = (GLOBALS*)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(GLOBALS));
|
||||
if (g == NULL)
|
||||
return FALSE;
|
||||
|
||||
SetWindowLongPtr(hwndDlg, DWLP_USER, (LONG_PTR)g);
|
||||
|
||||
LoadCurrentScheme(&g->Scheme);
|
||||
g->SchemeAdv = g->Scheme;
|
||||
g->bThemeChanged = FALSE;
|
||||
g->bSchemeChanged = FALSE;
|
||||
g->hBoldFont = g->hItalicFont = NULL;
|
||||
g->hbmpColor[0] = g->hbmpColor[1] = g->hbmpColor[2] = NULL;
|
||||
g->bInitializing = FALSE;
|
||||
g->bThemeActive = FALSE;
|
||||
|
||||
LoadThemes(g);
|
||||
|
||||
/*TemplateCount = */ LoadSchemePresetEntries(g->strSelectedStyle);
|
||||
|
||||
hwndColor = GetDlgItem(hwndDlg, IDC_APPEARANCE_COLORSCHEME);
|
||||
g->SchemeId = -1;
|
||||
g->bInitializing = TRUE;
|
||||
|
||||
hwndTheme = GetDlgItem(hwndDlg, IDC_APPEARANCE_VISUAL_STYLE);
|
||||
for(i = 0; i < g->ThemesCount; i++)
|
||||
if (!LoadCurrentScheme(&g->Scheme))
|
||||
return FALSE;
|
||||
|
||||
g->pThemes = LoadThemes();
|
||||
if (g->pThemes)
|
||||
{
|
||||
PTHEME pTheme = (PTHEME)DSA_GetItemPtr(g->Themes, i);
|
||||
iListIndex = SendMessage(hwndTheme, CB_ADDSTRING, 0, (LPARAM)pTheme->displayName);
|
||||
SendMessage(hwndTheme, CB_SETITEMDATA, iListIndex, i);
|
||||
if((!pTheme->themeFileName && !IsThemeActive()) ||
|
||||
(pTheme->themeFileName && g->pszThemeFileName && wcscmp(pTheme->themeFileName, g->pszThemeFileName) == 0 ))
|
||||
if (!GetActiveTheme(g->pThemes, &g->ActiveTheme))
|
||||
g->ActiveTheme.ThemeActive = FALSE;
|
||||
|
||||
/*
|
||||
* Keep a copy of the selected classic theme in order to select this
|
||||
* when user selects the classic theme (and not a horrible random theme )
|
||||
*/
|
||||
if (!GetActiveClassicTheme(g->pThemes, &g->ClassicTheme))
|
||||
{
|
||||
g->ThemeId = i;
|
||||
g->bThemeActive = (pTheme->themeFileName != NULL);
|
||||
SendMessage(hwndTheme, CB_SETCURSEL, (WPARAM)iListIndex, 0);
|
||||
AppearancePage_ShowColorScemes(g, hwndColor, i);
|
||||
g->ClassicTheme.Theme = g->pThemes;
|
||||
g->ClassicTheme.Color = g->pThemes->ColoursList;
|
||||
g->ClassicTheme.Size = g->ClassicTheme.Color->ChildStyle;
|
||||
}
|
||||
|
||||
}
|
||||
if (g->ActiveTheme.ThemeActive == FALSE)
|
||||
g->ActiveTheme = g->ClassicTheme;
|
||||
|
||||
GetClientRect(GetDlgItem(hwndDlg, IDC_APPEARANCE_PREVIEW), &rcPreview);
|
||||
|
||||
hdcScreen = GetDC(NULL);
|
||||
g->hbmpThemePreview = CreateCompatibleBitmap(hdcScreen, rcPreview.right, rcPreview.bottom);
|
||||
g->hdcThemePreview = CreateCompatibleDC(hdcScreen);
|
||||
SelectObject(g->hdcThemePreview, g->hbmpThemePreview);
|
||||
ReleaseDC(NULL, hdcScreen);
|
||||
|
||||
hwndColor = GetDlgItem(hwndDlg, IDC_APPEARANCE_COLORSCHEME);
|
||||
hwndTheme = GetDlgItem(hwndDlg, IDC_APPEARANCE_VISUAL_STYLE);
|
||||
|
||||
for (pTheme = g->pThemes; pTheme; pTheme = pTheme->NextTheme)
|
||||
{
|
||||
iListIndex = SendMessage(hwndTheme, CB_ADDSTRING, 0, (LPARAM)pTheme->DisplayName);
|
||||
SendMessage(hwndTheme, CB_SETITEMDATA, iListIndex, (LPARAM)pTheme);
|
||||
if (pTheme == g->ActiveTheme.Theme)
|
||||
{
|
||||
SendMessage(hwndTheme, CB_SETCURSEL, (WPARAM)iListIndex, 0);
|
||||
}
|
||||
}
|
||||
|
||||
if (g->ActiveTheme.Theme)
|
||||
{
|
||||
AppearancePage_ShowColorSchemes(hwndDlg, g);
|
||||
AppearancePage_ShowSizes(hwndDlg, g);
|
||||
AppearancePage_UpdateThemePreview(hwndDlg, g);
|
||||
}
|
||||
}
|
||||
g->bInitializing = FALSE;
|
||||
|
||||
return FALSE;
|
||||
|
@ -105,11 +169,11 @@ AppearancePage_OnInit(HWND hwndDlg)
|
|||
static VOID
|
||||
AppearancePage_OnDestroy(HWND hwndDlg, GLOBALS *g)
|
||||
{
|
||||
LocalFree(g);
|
||||
HeapFree(GetProcessHeap(), 0, g);
|
||||
}
|
||||
|
||||
static INT
|
||||
GetSelectedId(HWND hwndDlg, int nIDDlgItem)
|
||||
static PVOID
|
||||
GetSelectedData(HWND hwndDlg, int nIDDlgItem)
|
||||
{
|
||||
HWND hwndCombo;
|
||||
INT sel;
|
||||
|
@ -117,8 +181,8 @@ GetSelectedId(HWND hwndDlg, int nIDDlgItem)
|
|||
hwndCombo = GetDlgItem(hwndDlg, nIDDlgItem);
|
||||
sel = SendMessage(hwndCombo, CB_GETCURSEL, 0, 0);
|
||||
if (sel == CB_ERR)
|
||||
return -1;
|
||||
return (INT)SendMessage(hwndCombo, CB_GETITEMDATA, (WPARAM)sel, 0);
|
||||
return NULL;
|
||||
return (PVOID)SendMessage(hwndCombo, CB_GETITEMDATA, (WPARAM)sel, 0);
|
||||
}
|
||||
|
||||
INT_PTR CALLBACK
|
||||
|
@ -139,6 +203,9 @@ AppearancePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
break;
|
||||
|
||||
case WM_COMMAND:
|
||||
if(g == NULL || g->bInitializing)
|
||||
return FALSE;
|
||||
|
||||
switch (LOWORD(wParam))
|
||||
{
|
||||
case IDC_APPEARANCE_EFFECTS:
|
||||
|
@ -148,11 +215,6 @@ AppearancePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
g->Scheme = g->SchemeAdv;
|
||||
g->bSchemeChanged = TRUE;
|
||||
// Effects dialog doesn't change the color scheme, therefore the following lines are commented out, until fixed finally
|
||||
//g->SchemeId = -1; /* Customized */
|
||||
//SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_COLORSCHEME, CB_SETCURSEL, (WPARAM)-1, 0);
|
||||
//SetDlgItemText(hwndDlg, IDC_APPEARANCE_COLORSCHEME, TEXT(""));
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->Scheme);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -163,54 +225,71 @@ AppearancePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
g->bSchemeChanged = TRUE;
|
||||
g->Scheme = g->SchemeAdv;
|
||||
g->SchemeId = -1; /* Customized */
|
||||
g_GlobalData.desktop_color = g->Scheme.crColor[COLOR_DESKTOP];
|
||||
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_COLORSCHEME, CB_SETCURSEL, (WPARAM)-1, 0);
|
||||
SetDlgItemText(hwndDlg, IDC_APPEARANCE_COLORSCHEME, TEXT(""));
|
||||
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->Scheme);
|
||||
AppearancePage_UpdateThemePreview(hwndDlg, g);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_APPEARANCE_COLORSCHEME:
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE && !g->bInitializing)
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
INT SchemeId = GetSelectedId(hwndDlg, IDC_APPEARANCE_COLORSCHEME);
|
||||
g->ActiveTheme.Color = (PTHEME_STYLE)GetSelectedData(hwndDlg, IDC_APPEARANCE_COLORSCHEME);
|
||||
if (g->ActiveTheme.Color->ChildStyle != NULL)
|
||||
g->ActiveTheme.Size = g->ActiveTheme.Color->ChildStyle;
|
||||
|
||||
g->bSchemeChanged = TRUE;
|
||||
if (g->ActiveTheme.ThemeActive)
|
||||
g->bThemeChanged = TRUE;
|
||||
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
|
||||
if(g->bThemeActive == FALSE)
|
||||
{
|
||||
COLOR_SCHEME Scheme;
|
||||
AppearancePage_LoadSelectedScheme(hwndDlg, g);
|
||||
AppearancePage_ShowSizes(hwndDlg, g);
|
||||
AppearancePage_UpdateThemePreview(hwndDlg, g);
|
||||
}
|
||||
break;
|
||||
|
||||
g->bSchemeChanged = TRUE;
|
||||
if (SchemeId != -1 && LoadSchemeFromReg(&Scheme, SchemeId))
|
||||
{
|
||||
g->Scheme = Scheme;
|
||||
g_GlobalData.desktop_color = g->Scheme.crColor[COLOR_DESKTOP];
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&Scheme);
|
||||
}
|
||||
}
|
||||
case IDC_APPEARANCE_VISUAL_STYLE:
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
PTHEME pTheme = (PTHEME)GetSelectedData(hwndDlg, IDC_APPEARANCE_VISUAL_STYLE);
|
||||
|
||||
if (g->ClassicTheme.Theme == pTheme)
|
||||
g->ActiveTheme = g->ClassicTheme;
|
||||
else
|
||||
{
|
||||
g->bThemeChanged = TRUE;
|
||||
g->ActiveTheme.Theme = pTheme;
|
||||
g->ActiveTheme.Size = pTheme->SizesList;
|
||||
g->ActiveTheme.Color = pTheme->ColoursList;
|
||||
g->ActiveTheme.ThemeActive = TRUE;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case IDC_APPEARANCE_VISUAL_STYLE:
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE && !g->bInitializing)
|
||||
{
|
||||
INT ThemeId = GetSelectedId(hwndDlg, IDC_APPEARANCE_VISUAL_STYLE);
|
||||
HWND hwndColor = GetDlgItem(hwndDlg, IDC_APPEARANCE_COLORSCHEME);
|
||||
|
||||
g->bThemeChanged = TRUE;
|
||||
g->bSchemeChanged = TRUE;
|
||||
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
|
||||
g->bThemeActive = (ThemeId!=0);
|
||||
g->bThemeChanged = TRUE;
|
||||
AppearancePage_ShowColorScemes(g, hwndColor, ThemeId);
|
||||
AppearancePage_ShowColorSchemes(hwndDlg, g);
|
||||
AppearancePage_ShowSizes(hwndDlg, g);
|
||||
AppearancePage_LoadSelectedScheme(hwndDlg, g);
|
||||
AppearancePage_UpdateThemePreview(hwndDlg, g);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_APPEARANCE_SIZE:
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
g->ActiveTheme.Size = (PTHEME_STYLE)GetSelectedData(hwndDlg, IDC_APPEARANCE_SIZE);
|
||||
g->bSchemeChanged = TRUE;
|
||||
if(g->ActiveTheme.ThemeActive)
|
||||
g->bThemeChanged = TRUE;
|
||||
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
|
||||
AppearancePage_LoadSelectedScheme(hwndDlg, g);
|
||||
AppearancePage_UpdateThemePreview(hwndDlg, g);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -220,21 +299,19 @@ AppearancePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
{
|
||||
case PSN_APPLY:
|
||||
|
||||
g->ThemeId = GetSelectedId(hwndDlg, IDC_APPEARANCE_VISUAL_STYLE);
|
||||
g->SchemeId = GetSelectedId(hwndDlg, IDC_APPEARANCE_COLORSCHEME);
|
||||
|
||||
if(g->bSchemeChanged)
|
||||
if (g->bThemeChanged)
|
||||
{
|
||||
ApplyScheme(&g->Scheme, g->SchemeId);
|
||||
ActivateTheme(&g->ActiveTheme);
|
||||
}
|
||||
|
||||
if(g->bThemeChanged)
|
||||
if (g->bSchemeChanged)
|
||||
{
|
||||
PTHEME pTheme = (PTHEME)DSA_GetItemPtr(g->Themes, g->ThemeId);
|
||||
ActivateTheme(pTheme, g->SchemeId, 0);
|
||||
ApplyScheme(&g->Scheme, &g->ActiveTheme);
|
||||
if (g->ActiveTheme.ThemeActive == FALSE)
|
||||
g->ClassicTheme = g->ActiveTheme;
|
||||
}
|
||||
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->Scheme);
|
||||
AppearancePage_UpdateThemePreview(hwndDlg, g);
|
||||
g->bThemeChanged = FALSE;
|
||||
g->bSchemeChanged = FALSE;
|
||||
SetWindowLongPtr(hwndDlg, DWLP_MSGRESULT, (LONG_PTR)PSNRET_NOERROR);
|
||||
|
@ -248,7 +325,7 @@ AppearancePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
if (g->Scheme.crColor[COLOR_DESKTOP] != g_GlobalData.desktop_color)
|
||||
{
|
||||
g->Scheme.crColor[COLOR_DESKTOP] = g_GlobalData.desktop_color;
|
||||
SendDlgItemMessage(hwndDlg, IDC_APPEARANCE_PREVIEW, PVM_UPDATETHEME, 0, (LPARAM)&g->Scheme);
|
||||
AppearancePage_UpdateThemePreview(hwndDlg, g);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -1,39 +1,31 @@
|
|||
/* Some definitions for theme */
|
||||
#define SIZE_BORDER_X 0
|
||||
#define SIZE_BORDER_Y 1
|
||||
#define SIZE_CAPTION_Y 2
|
||||
#define SIZE_ICON_X 3
|
||||
#define SIZE_ICON_Y 4
|
||||
#define SIZE_ICON_SPC_X 5
|
||||
#define SIZE_ICON_SPC_Y 6
|
||||
#define SIZE_MENU_SIZE_X 7
|
||||
#define SIZE_MENU_Y 8
|
||||
#define SIZE_SCROLL_X 9
|
||||
#define SIZE_SCROLL_Y 10
|
||||
#define SIZE_SMCAPTION_Y 11
|
||||
#define SIZE_EDGE_X 12
|
||||
#define SIZE_EDGE_Y 13
|
||||
#define SIZE_FRAME_Y 14
|
||||
#define SIZE_MENU_CHECK_X 15
|
||||
#define SIZE_MENU_CHECK_Y 16
|
||||
#define SIZE_MENU_SIZE_Y 17
|
||||
#define SIZE_SIZE_X 18
|
||||
#define SIZE_SIZE_Y 19
|
||||
|
||||
#define FONT_CAPTION 0
|
||||
#define FONT_SMCAPTION 1
|
||||
#define FONT_HILIGHT 2
|
||||
#define FONT_MENU 2
|
||||
#define FONT_ICON 3
|
||||
#define FONT_INFO 4
|
||||
#define FONT_DIALOG 5
|
||||
|
||||
#define NUM_ELEMENTS 22
|
||||
#define NUM_FONTS 6
|
||||
#define NUM_SIZES 20
|
||||
#define NUM_COLORS 31
|
||||
#define MAX_TEMPLATES 50
|
||||
#define MAX_TEMPLATENAMELENTGH 80
|
||||
#define SIZE_BORDER_WIDTH 0
|
||||
#define SIZE_SCROLL_WIDTH 1
|
||||
#define SIZE_SCROLL_HEIGHT 2
|
||||
#define SIZE_CAPTION_WIDTH 3
|
||||
#define SIZE_CAPTION_HEIGHT 4
|
||||
#define SIZE_SM_CAPTION_WIDTH 5
|
||||
#define SIZE_SM_CAPTION_HEIGHT 6
|
||||
#define SIZE_MENU_WIDTH 7
|
||||
#define SIZE_MENU_HEIGHT 8
|
||||
|
||||
#define SIZE_ICON_SPACE_X 9
|
||||
#define SIZE_ICON_SPACE_Y 10
|
||||
#define SIZE_ICON 11
|
||||
|
||||
#define FONT_CAPTION 0
|
||||
#define FONT_SMCAPTION 1
|
||||
#define FONT_MENU 2
|
||||
#define FONT_STATUS 3
|
||||
#define FONT_MESSAGE 4
|
||||
#define FONT_ICON 5
|
||||
|
||||
#define NUM_ELEMENTS 22
|
||||
#define NUM_FONTS 6
|
||||
#define NUM_SIZES 9
|
||||
#define NUM_COLORS 31
|
||||
#define MAX_TEMPLATES 50
|
||||
#define MAX_TEMPLATENAMELENTGH 80
|
||||
|
||||
/* Some typedefs for theme */
|
||||
|
||||
|
@ -61,56 +53,66 @@ typedef struct
|
|||
|
||||
typedef struct
|
||||
{
|
||||
NONCLIENTMETRICSW ncMetrics;
|
||||
ICONMETRICSW icMetrics;
|
||||
COLORREF crColor[NUM_COLORS];
|
||||
LOGFONT lfFont[NUM_FONTS];
|
||||
INT Size[NUM_SIZES];
|
||||
INT iIconSize;
|
||||
BOOL bFlatMenus;
|
||||
EFFECTS Effects;
|
||||
} COLOR_SCHEME;
|
||||
} COLOR_SCHEME, *PCOLOR_SCHEME;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
TCHAR strKeyName[4];
|
||||
TCHAR strSizeName[4];
|
||||
TCHAR strDisplayName[MAX_TEMPLATENAMELENTGH];
|
||||
TCHAR strLegacyName[MAX_TEMPLATENAMELENTGH];
|
||||
} SCHEME_PRESET;
|
||||
/*
|
||||
* The classic theme has several different 'colours' and every colour has
|
||||
* several sizes. On visual styles however a theme has different colours
|
||||
* and different sizes. In other words the user can select a combination
|
||||
* of colour and size.
|
||||
* That means that for the classic theme THEME.SizesList is unused and
|
||||
* every color has some child styles that corespond its sizes.
|
||||
* The themes for visual styles however will use both ColoursList and SizesList
|
||||
* and ChildStyle will not be used.
|
||||
*/
|
||||
|
||||
/* struct for holding theme colors and sizes */
|
||||
typedef struct _THEME_STYLE
|
||||
{
|
||||
WCHAR* StlyeName;
|
||||
WCHAR* DisplayName;
|
||||
struct _THEME_STYLE *NextStyle;
|
||||
struct _THEME_STYLE *ChildStyle;
|
||||
PWSTR StyleName;
|
||||
PWSTR DisplayName;
|
||||
} THEME_STYLE, *PTHEME_STYLE;
|
||||
|
||||
typedef struct _THEME
|
||||
{
|
||||
WCHAR* themeFileName;
|
||||
WCHAR* displayName;
|
||||
HDSA Colors;
|
||||
int ColorsCount;
|
||||
HDSA Sizes;
|
||||
int SizesCount;
|
||||
|
||||
struct _THEME *NextTheme;
|
||||
PWSTR ThemeFileName;
|
||||
PWSTR DisplayName;
|
||||
THEME_STYLE *ColoursList;
|
||||
THEME_STYLE *SizesList;
|
||||
} THEME, *PTHEME;
|
||||
|
||||
/* This is the global structure used to store the current values.
|
||||
A pointer of this get's passed to the functions either directly
|
||||
or by passing hwnd and getting the pointer by GetWindowLongPtr */
|
||||
typedef struct _THEME_SELECTION
|
||||
{
|
||||
BOOL ThemeActive;
|
||||
PTHEME Theme;
|
||||
PTHEME_STYLE Color;
|
||||
PTHEME_STYLE Size;
|
||||
} THEME_SELECTION, *PTHEME_SELECTION;
|
||||
|
||||
/*
|
||||
* This is the global structure used to store the current values.
|
||||
* A pointer of this get's passed to the functions either directly
|
||||
* or by passing hwnd and getting the pointer by GetWindowLongPtr.
|
||||
*/
|
||||
typedef struct tagGLOBALS
|
||||
{
|
||||
HDSA Themes;
|
||||
int ThemesCount;
|
||||
BOOL bThemeActive;
|
||||
PTHEME pThemes;
|
||||
|
||||
INT ThemeId;
|
||||
INT SchemeId; /* Theme is customized if SchemeId == -1 */
|
||||
INT SizeID;
|
||||
TCHAR strSelectedStyle[4];
|
||||
|
||||
LPWSTR pszThemeFileName;
|
||||
LPWSTR pszColorName;
|
||||
LPWSTR pszSizeName;
|
||||
/*
|
||||
* Keep a copy of the selected classic theme in order to select this
|
||||
* when user selects the classic theme (and not a horrible random theme )
|
||||
*/
|
||||
THEME_SELECTION ClassicTheme;
|
||||
THEME_SELECTION ActiveTheme;
|
||||
|
||||
COLOR_SCHEME Scheme;
|
||||
COLOR_SCHEME SchemeAdv;
|
||||
|
@ -121,20 +123,25 @@ typedef struct tagGLOBALS
|
|||
HFONT hBoldFont;
|
||||
HFONT hItalicFont;
|
||||
BOOL bInitializing;
|
||||
|
||||
HBITMAP hbmpThemePreview;
|
||||
HDC hdcThemePreview;
|
||||
} GLOBALS;
|
||||
|
||||
extern SCHEME_PRESET g_ColorSchemes[MAX_TEMPLATES];
|
||||
extern INT g_TemplateCount;
|
||||
|
||||
/* prototypes for theme.c */
|
||||
VOID LoadCurrentScheme(COLOR_SCHEME* scheme);
|
||||
BOOL LoadSchemeFromReg(COLOR_SCHEME* scheme, INT SchemeId);
|
||||
VOID ApplyScheme(COLOR_SCHEME* scheme, INT SchemeId);
|
||||
BOOL SaveScheme(COLOR_SCHEME* scheme, LPCTSTR strLegacyName);
|
||||
INT LoadSchemePresetEntries(LPTSTR pszSelectedStyle);
|
||||
VOID LoadThemes(GLOBALS *g);
|
||||
HRESULT ActivateTheme(PTHEME pTheme, int iColor, int iSize);
|
||||
void CleanupThemes(GLOBALS *g);
|
||||
VOID SchemeSetMetric(COLOR_SCHEME *scheme, int id, int value);
|
||||
int SchemeGetMetric(COLOR_SCHEME *scheme, int id);
|
||||
PLOGFONTW SchemeGetFont(COLOR_SCHEME *scheme, int id);
|
||||
PTHEME LoadThemes(VOID);
|
||||
BOOL GetActiveTheme(PTHEME pThemeList, PTHEME_SELECTION pSelectedTheme);
|
||||
BOOL GetActiveClassicTheme(PTHEME pThemeList, PTHEME_SELECTION pSelectedTheme);
|
||||
BOOL LoadCurrentScheme(PCOLOR_SCHEME scheme);
|
||||
BOOL LoadSchemeFromReg(PCOLOR_SCHEME scheme, PTHEME_SELECTION pSelectedTheme);
|
||||
BOOL LoadSchemeFromTheme(PCOLOR_SCHEME scheme, PTHEME_SELECTION pSelectedTheme);
|
||||
VOID ApplyScheme(PCOLOR_SCHEME scheme, PTHEME_SELECTION pSelectedTheme);
|
||||
BOOL ActivateTheme(PTHEME_SELECTION pSelectedTheme);
|
||||
void CleanupThemes(IN PTHEME pThemeList);
|
||||
BOOL DrawThemePreview(HDC hdcMem, PCOLOR_SCHEME scheme, PTHEME_SELECTION pSelectedTheme, PRECT prcWindow);
|
||||
|
||||
/* prototypes for appearance.c */
|
||||
INT_PTR CALLBACK AppearancePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
|
|
|
@ -14,6 +14,8 @@
|
|||
#include <cpl.h>
|
||||
#include <tchar.h>
|
||||
#include <setupapi.h>
|
||||
#include <assert.h>
|
||||
#include <shlwapi.h>
|
||||
#include <shlobj.h>
|
||||
#include <regstr.h>
|
||||
#include <cplext.h>
|
||||
|
@ -21,6 +23,7 @@
|
|||
#include <cfgmgr32.h>
|
||||
#include <uxtheme.h>
|
||||
#include <uxundoc.h>
|
||||
#include <vssym32.h>
|
||||
|
||||
#include "appearance.h"
|
||||
#include "preview.h"
|
||||
|
@ -105,6 +108,7 @@ typedef struct _GLOBAL_DATA
|
|||
} GLOBAL_DATA, *PGLOBAL_DATA;
|
||||
|
||||
extern GLOBAL_DATA g_GlobalData;
|
||||
extern HWND hCPLWindow;
|
||||
|
||||
BOOL
|
||||
DisplayAdvancedSettings(HWND hWndParent, PDISPLAY_DEVICE_ENTRY DisplayDevice);
|
||||
|
@ -116,3 +120,13 @@ HPSXA WINAPI SHCreatePropSheetExtArrayEx(HKEY,LPCWSTR,UINT,IDataObject*);
|
|||
|
||||
INT_PTR CALLBACK
|
||||
AdvGeneralPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
|
||||
LONG
|
||||
RegLoadMUIStringW(IN HKEY hKey,
|
||||
IN LPCWSTR pszValue OPTIONAL,
|
||||
OUT LPWSTR pszOutBuf,
|
||||
IN DWORD cbOutBuf,
|
||||
OUT LPDWORD pcbData OPTIONAL,
|
||||
IN DWORD Flags,
|
||||
IN LPCWSTR pszDirectory OPTIONAL);
|
||||
|
||||
|
|
|
@ -98,7 +98,11 @@ MyIntDrawRectEdge(HDC hdc, LPRECT rc, UINT uType, UINT uFlags, COLOR_SCHEME *sch
|
|||
RBOuterPen = GetStockObject(DC_PEN);
|
||||
{
|
||||
HBRUSH hbr;
|
||||
hbr = CreateSolidBrush(scheme->crColor[COLOR_BTNFACE]);
|
||||
|
||||
if((uFlags & MY_BF_ACTIVEBORDER))
|
||||
hbr = CreateSolidBrush(scheme->crColor[COLOR_ACTIVEBORDER]);
|
||||
else
|
||||
hbr = CreateSolidBrush(scheme->crColor[COLOR_BTNFACE]);
|
||||
FillRect(hdc, &InnerRect, hbr);
|
||||
DeleteObject(hbr);
|
||||
}
|
||||
|
|
|
@ -10,3 +10,7 @@ BOOL
|
|||
MyDrawCaptionTemp(HWND hwnd, HDC hdc, const RECT *rect, HFONT hFont, HICON hIcon, LPCWSTR str, UINT uFlags, COLOR_SCHEME *scheme);
|
||||
DWORD
|
||||
MyDrawMenuBarTemp(HWND Wnd, HDC DC, LPRECT Rect, HMENU Menu, HFONT Font, COLOR_SCHEME *scheme);
|
||||
|
||||
#define MY_BF_ACTIVEBORDER 0x1000000
|
||||
#define MY_BF_INACTIVEBORDER 0x2000000
|
||||
|
||||
|
|
|
@ -46,7 +46,7 @@ BEGIN
|
|||
PUSHBUTTON "Захранване...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Облик"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -57,6 +57,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Разцветка", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90 , CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Ефекти", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Още", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -233,6 +235,7 @@ BEGIN
|
|||
IDS_MESSBOX "Кутия за съобщения"
|
||||
IDS_MESSTEXT "Текст на съобщенията"
|
||||
IDS_BUTTEXT "Добре"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -50,7 +50,7 @@ BEGIN
|
|||
PUSHBUTTON "Na&pájení...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Vzhled"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -61,6 +61,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Schéma", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Efekty...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Upřesnit", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -237,6 +239,7 @@ BEGIN
|
|||
IDS_MESSBOX "Okno zprávy"
|
||||
IDS_MESSTEXT "Text zprávy"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -44,7 +44,7 @@ BEGIN
|
|||
PUSHBUTTON "Energieoptionen", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Darstellung"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -55,6 +55,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Farbschema", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Effekte...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Erweitert", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -231,6 +233,7 @@ BEGIN
|
|||
IDS_MESSBOX "Dialogfeld"
|
||||
IDS_MESSTEXT "Dialogfeldtext"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -44,7 +44,7 @@ BEGIN
|
|||
PUSHBUTTON "Ενέργεια...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Εμφάνιση"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -55,6 +55,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Συνδυασμός χρωμάτων", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Μέγεθος", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Effects...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Για προχωρημένους", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -231,6 +233,7 @@ BEGIN
|
|||
IDS_MESSBOX "Παράθυρο μηνύματος"
|
||||
IDS_MESSTEXT "Κείμενο μυνήματος"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Κλασικό θέμα"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -44,7 +44,7 @@ BEGIN
|
|||
PUSHBUTTON "P&ower...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Appearance"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -55,6 +55,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Colorscheme", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Effects...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Ad&vanced...", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -231,6 +233,7 @@ BEGIN
|
|||
IDS_MESSBOX "Message Box"
|
||||
IDS_MESSTEXT "Message Text"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -52,7 +52,7 @@ BEGIN
|
|||
PUSHBUTTON "E&nergía...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Apariencia"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -63,6 +63,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Com&binación de colores", IDC_STATIC, 7, 160, 90, 7 // 64
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Efectos...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Opciones &avanzadas", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -239,6 +241,7 @@ BEGIN
|
|||
IDS_MESSBOX "Cuadro de mensaje"
|
||||
IDS_MESSTEXT "Texto del mensaje"
|
||||
IDS_BUTTEXT "Aceptar"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -47,7 +47,7 @@ BEGIN
|
|||
PUSHBUTTON "&Gestion de l'alimentation...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Apparence"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -58,6 +58,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Modèle de couleurs", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Effets...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Avancé", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -234,6 +236,7 @@ BEGIN
|
|||
IDS_MESSBOX "Boîte de message"
|
||||
IDS_MESSTEXT "Texte de message"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -44,7 +44,7 @@ BEGIN
|
|||
PUSHBUTTON "P&ower...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "מראה"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -55,6 +55,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "ערכת צבעים", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "אפקטים...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "מתקדם...", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -231,6 +233,7 @@ BEGIN
|
|||
IDS_MESSBOX "Message Box"
|
||||
IDS_MESSTEXT "Message Text"
|
||||
IDS_BUTTEXT "אישור"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -45,7 +45,7 @@ BEGIN
|
|||
PUSHBUTTON "P&ower...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Megjelenés"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -56,6 +56,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Colorscheme", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Effects...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Advanced", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -232,6 +234,7 @@ BEGIN
|
|||
IDS_MESSBOX "Message Box"
|
||||
IDS_MESSTEXT "Message Text"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -44,7 +44,7 @@ BEGIN
|
|||
PUSHBUTTON "P&ower...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Penampilan"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -55,6 +55,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "SkemaWarna", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Effects...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Lanjutan", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -231,6 +233,7 @@ BEGIN
|
|||
IDS_MESSBOX "Kotak Pesan"
|
||||
IDS_MESSTEXT "Teks Pesan"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -44,7 +44,7 @@ BEGIN
|
|||
PUSHBUTTON "Alim&entazione...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Aspetto"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -55,6 +55,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Schema dei colori", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Effetti...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "A&vanzato...", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -231,6 +233,7 @@ BEGIN
|
|||
IDS_MESSBOX "Messaggi"
|
||||
IDS_MESSTEXT "Testo dei messaggi"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -44,7 +44,7 @@ BEGIN
|
|||
PUSHBUTTON "電源(&O)...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "デザイン"
|
||||
FONT 9, "MS UI Gothic"
|
||||
|
@ -55,6 +55,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "配色", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "効果(&E)...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "詳細設定(&V)...", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -231,6 +233,7 @@ BEGIN
|
|||
IDS_MESSBOX "メッセージ ボックス"
|
||||
IDS_MESSTEXT "メッセージ テキスト"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -46,7 +46,7 @@ BEGIN
|
|||
PUSHBUTTON "&Energie...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Vormgeving"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -57,6 +57,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Kleurenschema", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Effecten...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Geavan&ceerd...", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -233,6 +235,7 @@ BEGIN
|
|||
IDS_MESSBOX "Berichtvenster"
|
||||
IDS_MESSTEXT "Berichttekst"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -44,7 +44,7 @@ BEGIN
|
|||
PUSHBUTTON "S&trøm...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Utseende"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -55,6 +55,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Fargevalg", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90 , CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Effekter...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Avansert", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -231,6 +233,7 @@ BEGIN
|
|||
IDS_MESSBOX "Meldingboks"
|
||||
IDS_MESSTEXT "Meldingtekst"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -53,7 +53,7 @@ BEGIN
|
|||
PUSHBUTTON "Z&asilanie...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Wygląd"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -64,6 +64,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Schemat kolorów", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Efekty...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Zaawansowane", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -240,6 +242,7 @@ BEGIN
|
|||
IDS_MESSBOX "Okno komunikatu"
|
||||
IDS_MESSTEXT "Treść wiadomości"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -45,7 +45,7 @@ BEGIN
|
|||
PUSHBUTTON "&Energie…", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Aspect"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -56,6 +56,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Colorit", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Efecte…", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "A&vansate…", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -232,6 +234,7 @@ BEGIN
|
|||
IDS_MESSBOX "Fereastră mesaj"
|
||||
IDS_MESSTEXT "Text mesaj"
|
||||
IDS_BUTTEXT "Î&nchide"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -44,7 +44,7 @@ BEGIN
|
|||
PUSHBUTTON "П&итание...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Оформление"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -55,6 +55,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Цветовая схема", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90 , CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Эффекты...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Дополнительно", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -231,6 +233,7 @@ BEGIN
|
|||
IDS_MESSBOX "Окно сообщения"
|
||||
IDS_MESSTEXT "Сообщение"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -52,7 +52,7 @@ BEGIN
|
|||
PUSHBUTTON "N&apájanie...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Vzhľad"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -63,6 +63,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "&Farebná schéma", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Efekty...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "&Spresniť", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -239,6 +241,7 @@ BEGIN
|
|||
IDS_MESSBOX "Okno správy"
|
||||
IDS_MESSTEXT "Text správy"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -47,7 +47,7 @@ BEGIN
|
|||
PUSHBUTTON "P&ower...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Utseende"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -58,6 +58,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Item", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Effects...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Advanced", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -234,6 +236,7 @@ BEGIN
|
|||
IDS_MESSBOX "Message Box"
|
||||
IDS_MESSTEXT "Message Text"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -52,7 +52,7 @@ BEGIN
|
|||
PUSHBUTTON "&Живлення...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Оформлення"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
|
@ -63,6 +63,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Колірна схема", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "&Ефекти...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "Додатково", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -239,6 +241,7 @@ BEGIN
|
|||
IDS_MESSBOX "Вікно повідомлення"
|
||||
IDS_MESSTEXT "Повідомлення"
|
||||
IDS_BUTTEXT "OK"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -51,7 +51,7 @@ BEGIN
|
|||
PUSHBUTTON "电源(&O)...", IDC_SCREENS_POWER_BUTTON, 165, 171, 61, 13
|
||||
END
|
||||
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 204
|
||||
IDD_APPEARANCE DIALOGEX DISCARDABLE 0, 0, 246, 234
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "外观"
|
||||
FONT 9, "MS Shell Dlg"
|
||||
|
@ -62,6 +62,8 @@ BEGIN
|
|||
COMBOBOX IDC_APPEARANCE_VISUAL_STYLE, 7, 140, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "色彩方案", IDC_STATIC, 7, 160, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_COLORSCHEME, 7, 170, 134, 90 , CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Size", IDC_STATIC, 7, 190, 64, 7
|
||||
COMBOBOX IDC_APPEARANCE_SIZE, 7, 200, 134, 90, CBS_DROPDOWNLIST | CBS_HASSTRINGS | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "效果(&E)...", IDC_APPEARANCE_EFFECTS, 182, 150, 56, 15
|
||||
PUSHBUTTON "高级(&D)", IDC_APPEARANCE_ADVANCED, 182, 170, 56, 15
|
||||
END
|
||||
|
@ -238,6 +240,7 @@ BEGIN
|
|||
IDS_MESSBOX "消息框"
|
||||
IDS_MESSTEXT "消息内容"
|
||||
IDS_BUTTEXT "确定"
|
||||
IDS_CLASSIC_THEME "Classic Theme"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
|
|
|
@ -12,6 +12,8 @@ static const TCHAR szPreviewWndClass[] = TEXT("PreviewWndClass");
|
|||
|
||||
typedef struct _PREVIEW_DATA
|
||||
{
|
||||
HDC hdcPreview;
|
||||
|
||||
HWND hwndParent;
|
||||
|
||||
COLOR_SCHEME Scheme;
|
||||
|
@ -80,27 +82,27 @@ static VOID UpdatePreviewTheme(HWND hwnd, PPREVIEW_DATA pPreviewData, COLOR_SCHE
|
|||
DeleteObject(pPreviewData->hbrWindow);
|
||||
pPreviewData->hbrWindow = CreateSolidBrush(scheme->crColor[COLOR_WINDOW]);
|
||||
|
||||
pPreviewData->cxEdge = scheme->Size[SIZE_EDGE_X] - 2; /* SM_CXEDGE */
|
||||
pPreviewData->cyEdge = scheme->Size[SIZE_EDGE_Y] - 2; /* SM_CYEDGE */
|
||||
pPreviewData->cxEdge = 2; /* SM_CXEDGE */
|
||||
pPreviewData->cyEdge = 2; /* SM_CYEDGE */
|
||||
|
||||
pPreviewData->cySizeFrame = scheme->Size[SIZE_FRAME_Y] - 1; /* SM_CYSIZEFRAME */
|
||||
pPreviewData->cySizeFrame = scheme->ncMetrics.iBorderWidth; /* SM_CYSIZEFRAME */
|
||||
|
||||
pPreviewData->cyCaption = scheme->Size[SIZE_CAPTION_Y]; /* SM_CYCAPTION */
|
||||
pPreviewData->cyMenu = scheme->Size[SIZE_MENU_Y]; /* SM_CYMENU */
|
||||
pPreviewData->cxScrollbar = scheme->Size[SIZE_SCROLL_X]; /* SM_CXVSCROLL */
|
||||
pPreviewData->cyBorder = scheme->Size[SIZE_BORDER_Y]; /* SM_CYBORDER */
|
||||
pPreviewData->cyCaption = scheme->ncMetrics.iCaptionHeight+1; /* SM_CYCAPTION */
|
||||
pPreviewData->cyMenu = scheme->ncMetrics.iMenuHeight -1; /* SM_CYMENU */
|
||||
pPreviewData->cxScrollbar = scheme->ncMetrics.iScrollWidth; /* SM_CXVSCROLL */
|
||||
pPreviewData->cyBorder = scheme->ncMetrics.iBorderWidth; /* SM_CYBORDER */
|
||||
|
||||
if (pPreviewData->hCaptionFont != NULL)
|
||||
DeleteObject(pPreviewData->hCaptionFont);
|
||||
pPreviewData->hCaptionFont = CreateFontIndirect(&scheme->lfFont[FONT_CAPTION]);
|
||||
pPreviewData->hCaptionFont = CreateFontIndirect(&scheme->ncMetrics.lfCaptionFont);
|
||||
|
||||
if (pPreviewData->hMenuFont != NULL)
|
||||
DeleteObject(pPreviewData->hMenuFont);
|
||||
pPreviewData->hMenuFont = CreateFontIndirect(&scheme->lfFont[FONT_MENU]);
|
||||
pPreviewData->hMenuFont = CreateFontIndirect(&scheme->ncMetrics.lfMenuFont);
|
||||
|
||||
if (pPreviewData->hMessageFont != NULL)
|
||||
DeleteObject(pPreviewData->hMessageFont);
|
||||
pPreviewData->hMessageFont = CreateFontIndirect(&scheme->lfFont[FONT_DIALOG]);
|
||||
pPreviewData->hMessageFont = CreateFontIndirect(&scheme->ncMetrics.lfMessageFont);
|
||||
|
||||
pPreviewData->Scheme = *scheme;
|
||||
InvalidateRect(hwnd, NULL, FALSE);
|
||||
|
@ -258,18 +260,25 @@ OnPaint(HWND hwnd, PPREVIEW_DATA pPreviewData)
|
|||
|
||||
hdc = BeginPaint(hwnd, &ps);
|
||||
|
||||
if(pPreviewData->hdcPreview)
|
||||
{
|
||||
BitBlt(hdc,0,0, pPreviewData->rcDesktop.right, pPreviewData->rcDesktop.bottom, pPreviewData->hdcPreview, 0,0, SRCCOPY);
|
||||
EndPaint(hwnd, &ps);
|
||||
return;
|
||||
}
|
||||
|
||||
/* Desktop */
|
||||
FillRect(hdc, &pPreviewData->rcDesktop, pPreviewData->hbrDesktop);
|
||||
|
||||
/* Inactive Window */
|
||||
MyDrawEdge(hdc, &pPreviewData->rcInactiveFrame, EDGE_RAISED, BF_RECT | BF_MIDDLE, scheme);
|
||||
MyDrawEdge(hdc, &pPreviewData->rcInactiveFrame, EDGE_RAISED, BF_RECT | BF_MIDDLE | MY_BF_INACTIVEBORDER, scheme);
|
||||
SetTextColor(hdc, scheme->crColor[COLOR_INACTIVECAPTIONTEXT]);
|
||||
MyDrawCaptionTemp(NULL, hdc, &pPreviewData->rcInactiveCaption, pPreviewData->hCaptionFont,
|
||||
NULL, pPreviewData->lpInAct, DC_GRADIENT | DC_ICON | DC_TEXT, scheme);
|
||||
MyDrawCaptionButtons(hdc, &pPreviewData->rcInactiveCaption, TRUE, pPreviewData->cyCaption - 2, scheme);
|
||||
|
||||
/* Active Window */
|
||||
MyDrawEdge(hdc, &pPreviewData->rcActiveFrame, EDGE_RAISED, BF_RECT | BF_MIDDLE, scheme);
|
||||
MyDrawEdge(hdc, &pPreviewData->rcActiveFrame, EDGE_RAISED, BF_RECT | BF_MIDDLE | MY_BF_ACTIVEBORDER, scheme);
|
||||
SetTextColor(hdc, scheme->crColor[COLOR_CAPTIONTEXT]);
|
||||
MyDrawCaptionTemp(NULL, hdc, &pPreviewData->rcActiveCaption, pPreviewData->hCaptionFont,
|
||||
NULL, pPreviewData->lpAct, DC_ACTIVE | DC_GRADIENT | DC_ICON | DC_TEXT, scheme);
|
||||
|
@ -308,7 +317,7 @@ OnPaint(HWND hwnd, PPREVIEW_DATA pPreviewData)
|
|||
CopyRect(&rc, &pPreviewData->rcDialogClient);
|
||||
rc.left += 4;
|
||||
rc.top += 2;
|
||||
SetTextColor(hdc, scheme->crColor[COLOR_BTNTEXT]);
|
||||
SetTextColor(hdc, scheme->crColor[COLOR_WINDOWTEXT]);
|
||||
hOldFont = SelectObject(hdc, pPreviewData->hMessageFont);
|
||||
DrawText(hdc, pPreviewData->lpMessText, -1, &rc, DT_LEFT);
|
||||
SelectObject(hdc, hOldFont);
|
||||
|
@ -445,56 +454,78 @@ PreviewWndProc(HWND hwnd,
|
|||
HeapFree(GetProcessHeap(), 0, pPreviewData);
|
||||
break;
|
||||
|
||||
case PVM_GETCYCAPTION:
|
||||
return pPreviewData->cyCaption;
|
||||
|
||||
case PVM_SETCYCAPTION:
|
||||
if ((INT)lParam > 0)
|
||||
{
|
||||
pPreviewData->cyCaption = (INT)lParam;
|
||||
CalculateItemSize(pPreviewData);
|
||||
InvalidateRect(hwnd, NULL, FALSE);
|
||||
}
|
||||
break;
|
||||
|
||||
case PVM_GETCYMENU:
|
||||
return pPreviewData->cyMenu;
|
||||
|
||||
case PVM_SETCYMENU:
|
||||
if ((INT)lParam > 0)
|
||||
{
|
||||
pPreviewData->cyMenu = (INT)lParam;
|
||||
CalculateItemSize(pPreviewData);
|
||||
InvalidateRect(hwnd, NULL, FALSE);
|
||||
}
|
||||
break;
|
||||
|
||||
case PVM_GETCXSCROLLBAR:
|
||||
return pPreviewData->cxScrollbar;
|
||||
|
||||
case PVM_SETCXSCROLLBAR:
|
||||
if ((INT)lParam > 0)
|
||||
{
|
||||
pPreviewData->cxScrollbar = (INT)lParam;
|
||||
CalculateItemSize(pPreviewData);
|
||||
InvalidateRect(hwnd, NULL, FALSE);
|
||||
}
|
||||
break;
|
||||
|
||||
case PVM_GETCYSIZEFRAME:
|
||||
return pPreviewData->cySizeFrame;
|
||||
|
||||
case PVM_SETCYSIZEFRAME:
|
||||
if ((INT)lParam > 0)
|
||||
{
|
||||
pPreviewData->cySizeFrame = (INT)lParam;
|
||||
CalculateItemSize(pPreviewData);
|
||||
InvalidateRect(hwnd, NULL, FALSE);
|
||||
}
|
||||
break;
|
||||
|
||||
case PVM_UPDATETHEME:
|
||||
UpdatePreviewTheme(hwnd, pPreviewData, (COLOR_SCHEME *)lParam);
|
||||
CalculateItemSize(pPreviewData);
|
||||
InvalidateRect(hwnd, NULL, FALSE);
|
||||
break;
|
||||
|
||||
case PVM_SETSIZE:
|
||||
SchemeSetMetric(&pPreviewData->Scheme, wParam, lParam);
|
||||
pPreviewData->cySizeFrame = pPreviewData->Scheme.ncMetrics.iBorderWidth; /* SM_CYSIZEFRAME */
|
||||
pPreviewData->cyCaption = pPreviewData->Scheme.ncMetrics.iCaptionHeight+1; /* SM_CYCAPTION */
|
||||
pPreviewData->cyMenu = pPreviewData->Scheme.ncMetrics.iMenuHeight -1; /* SM_CYMENU */
|
||||
pPreviewData->cxScrollbar = pPreviewData->Scheme.ncMetrics.iScrollWidth; /* SM_CXVSCROLL */
|
||||
pPreviewData->cyBorder = pPreviewData->Scheme.ncMetrics.iBorderWidth; /* SM_CYBORDER */
|
||||
CalculateItemSize(pPreviewData);
|
||||
InvalidateRect(hwnd, NULL, FALSE);
|
||||
break;
|
||||
|
||||
case PVM_SETFONT:
|
||||
{
|
||||
PLOGFONTW plfFont;
|
||||
HFONT* phFont;
|
||||
|
||||
switch(wParam)
|
||||
{
|
||||
case FONT_CAPTION: phFont = &pPreviewData->hCaptionFont; break;
|
||||
case FONT_MENU: phFont = &pPreviewData->hMenuFont; break;
|
||||
case FONT_MESSAGE: phFont = &pPreviewData->hMessageFont; break;
|
||||
default: return TRUE;
|
||||
}
|
||||
|
||||
plfFont = SchemeGetFont(&pPreviewData->Scheme, wParam);
|
||||
memcpy(plfFont, (PVOID)lParam, sizeof(LOGFONTW));
|
||||
|
||||
DeleteObject(*phFont);
|
||||
*phFont = CreateFontIndirect(plfFont);
|
||||
|
||||
InvalidateRect(hwnd, NULL, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
case PVM_SETCOLOR:
|
||||
pPreviewData->Scheme.crColor[wParam] = lParam;
|
||||
switch(wParam)
|
||||
{
|
||||
case COLOR_SCROLLBAR:
|
||||
DeleteObject(pPreviewData->hbrScrollbar);
|
||||
pPreviewData->hbrScrollbar = CreateSolidBrush(pPreviewData->Scheme.crColor[wParam]);
|
||||
break;
|
||||
case COLOR_DESKTOP:
|
||||
DeleteObject(pPreviewData->hbrDesktop);
|
||||
pPreviewData->hbrDesktop = CreateSolidBrush(pPreviewData->Scheme.crColor[wParam]);
|
||||
break;
|
||||
case COLOR_WINDOW:
|
||||
DeleteObject(pPreviewData->hbrWindow);
|
||||
pPreviewData->hbrWindow = CreateSolidBrush(pPreviewData->Scheme.crColor[wParam]);
|
||||
break;
|
||||
}
|
||||
|
||||
CalculateItemSize(pPreviewData);
|
||||
InvalidateRect(hwnd, NULL, FALSE);
|
||||
break;
|
||||
|
||||
case PVM_GETSIZE:
|
||||
return SchemeGetMetric(&pPreviewData->Scheme, wParam);
|
||||
case PVM_GETFONT:
|
||||
return (LRESULT)SchemeGetFont(&pPreviewData->Scheme, wParam);
|
||||
case PVM_GETCOLOR:
|
||||
return pPreviewData->Scheme.crColor[wParam];
|
||||
|
||||
case PVM_SET_HDC_PREVIEW:
|
||||
pPreviewData->hdcPreview = (HDC)lParam;
|
||||
InvalidateRect(hwnd, NULL, FALSE);
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
|
@ -21,19 +21,14 @@
|
|||
#define IDX_APPSPACE 16
|
||||
#define IDX_QUICKINFO 20
|
||||
|
||||
#define PVM_GETCYCAPTION (WM_USER+1)
|
||||
#define PVM_SETCYCAPTION (WM_USER+2)
|
||||
|
||||
#define PVM_GETCYMENU (WM_USER+3)
|
||||
#define PVM_SETCYMENU (WM_USER+4)
|
||||
|
||||
#define PVM_GETCXSCROLLBAR (WM_USER+5)
|
||||
#define PVM_SETCXSCROLLBAR (WM_USER+6)
|
||||
|
||||
#define PVM_GETCYSIZEFRAME (WM_USER+7)
|
||||
#define PVM_SETCYSIZEFRAME (WM_USER+8)
|
||||
|
||||
#define PVM_UPDATETHEME (WM_USER+13)
|
||||
#define PVM_SETSIZE (WM_USER+1)
|
||||
#define PVM_GETSIZE (WM_USER+2)
|
||||
#define PVM_SETFONT (WM_USER+3)
|
||||
#define PVM_GETFONT (WM_USER+4)
|
||||
#define PVM_SETCOLOR (WM_USER+5)
|
||||
#define PVM_GETCOLOR (WM_USER+6)
|
||||
#define PVM_SET_HDC_PREVIEW (WM_USER+7)
|
||||
#define PVM_UPDATETHEME (WM_USER+8)
|
||||
|
||||
BOOL RegisterPreviewControl(IN HINSTANCE hInstance);
|
||||
VOID UnregisterPreviewControl(IN HINSTANCE hInstance);
|
||||
|
|
|
@ -97,6 +97,7 @@
|
|||
#define IDC_APPEARANCE_EFFECTS 1503
|
||||
#define IDC_APPEARANCE_ADVANCED 1504
|
||||
#define IDC_APPEARANCE_VISUAL_STYLE 1505
|
||||
#define IDC_APPEARANCE_SIZE 1506
|
||||
|
||||
#define IDS_INACTWIN 1510
|
||||
#define IDS_ACTWIN 1511
|
||||
|
@ -104,6 +105,7 @@
|
|||
#define IDS_MESSBOX 1513
|
||||
#define IDS_MESSTEXT 1514
|
||||
#define IDS_BUTTEXT 1515
|
||||
#define IDS_CLASSIC_THEME 1516
|
||||
|
||||
/* Update these IDs when you change the string id list */
|
||||
#define IDS_ITEM_FIRST (IDS_ITEM_3D_OBJECTS)
|
||||
|
|
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue