[DESK] Preview the color on the background color button (#7916)

Note: A bug in the classic button prevents it from sending CDDS_POSTPAINT if the button has no text, the button resource has a space in its text as a workaround.
This commit is contained in:
Whindmar Saksit 2025-04-23 18:32:45 +02:00 committed by GitHub
parent d3456f5060
commit 6faee56f86
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
32 changed files with 155 additions and 34 deletions

View file

@ -12,6 +12,7 @@
#include <shellapi.h>
#include <shlwapi.h>
#include <windowsx.h>
#define MAX_BACKGROUNDS 100
@ -570,6 +571,7 @@ OnColorButton(HWND hwndDlg, PBACKGROUND_DATA pData)
/* Window will be updated :) */
InvalidateRect(GetDlgItem(hwndDlg, IDC_BACKGROUND_PREVIEW), NULL, TRUE);
InvalidateRect(GetDlgItem(hwndDlg, IDC_COLOR_BUTTON), NULL, TRUE);
/* Save custom colors to reg. To this moment key must be created already. See above */
res = RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Control Panel\\Appearance"), 0,
@ -1240,14 +1242,10 @@ BackgroundPageProc(HWND hwndDlg,
case WM_DRAWITEM:
{
LPDRAWITEMSTRUCT drawItem;
drawItem = (LPDRAWITEMSTRUCT)lParam;
LPDRAWITEMSTRUCT drawItem = (LPDRAWITEMSTRUCT)lParam;
if (drawItem->CtlID == IDC_BACKGROUND_PREVIEW)
{
DrawBackgroundPreview(drawItem, pData);
}
}
break;
@ -1277,6 +1275,14 @@ BackgroundPageProc(HWND hwndDlg,
ListViewItemChanged(hwndDlg, pData, nm->iItem);
}
break;
case NM_CUSTOMDRAW:
if (lpnm->idFrom == IDC_COLOR_BUTTON)
{
return SetDlgMsgResult(hwndDlg, 0, ClrBtn_CustomDraw((NMCUSTOMDRAW*)lpnm,
g_GlobalData.desktop_color));
}
break;
}
}
break;

View file

@ -61,6 +61,10 @@ INT AllocAndLoadString(LPTSTR *lpTarget,
HINSTANCE hInst,
UINT uID);
UINT
ClrBtn_CustomDraw(NMCUSTOMDRAW *pCD,
COLORREF Color);
ULONG __cdecl DbgPrint(PCCH Format,...);
/*

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Изберете изображение за украса на работната си площ:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "&Тапет за работен плот:" for the backport, because that doesn't overflow the length of the IDC_BACKGROUND_LIST below and therefore looks better
PUSHBUTTON "&Обзор...", IDC_BROWSE_BUTTON, 188, 104, 55, 15//I used "Об&зор..." for the backport to have the &O free
PUSHBUTTON "&Цвят...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Разположение:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. I used "Расп&оложение:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Цвят:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -28,9 +28,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Vyberte obrázek, který chcete použít jako pozadí:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel, I used "Vyb&erte obrázek, který chcete použít jako pozadí:" for the backport
PUSHBUTTON "&Vybrat...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Barva...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Umístění:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. I used "&Umístění:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Barva:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "&Hintergrund:", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "&Durchsuchen...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Farbe...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "&Ausrichtung:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Farbe:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "D&esktop anpassen...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Επιλέξτε Φόντο:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "&Επιλέξτε Φόντο:" for the backport
PUSHBUTTON "&Αναζήτηση...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Χρώμα...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Θέση:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. I used "&Θέση:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Χρώμα:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Select an image to use as your des&ktop wallpaper:", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "&Browse...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Colour...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "&Placement:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Colour:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customise &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Select an image to use as your des&ktop wallpaper:", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "&Browse...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Color...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "&Placement:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Color:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -33,9 +33,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "&Fondo de escritorio:", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "E&xaminar...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "C&olor...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Po&sición:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "C&olor:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -30,9 +30,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Taust:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "&Taust:" for the backport
PUSHBUTTON "&Sirvi...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Värv...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "&Paigutus:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Värv:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -25,9 +25,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "A&rrière-plan :", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "&Parcourir...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Couleur...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "P&osition :", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Couleur :", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "P&ersonnalisation du Bureau...", IDC_DESKTOP_CUSTOM, 8, 194, 100, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "בחר תמונה שתשמש כרקע שולחן העבודה שלך:", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "סייר...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "צבע...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "מיקום:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "צבע:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -25,9 +25,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Válasszon ki egy képet az asztala hátterének:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "&Válasszon ki egy képet az asztala hátterének:" for the backport
PUSHBUTTON "&Kiválasztás...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Színek...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Elrendezés:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. I used "&Elrendezés:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Színek:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "&Asztal testreszabása...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Pilih gambar untuk dipakai sebagai desktop wallpaper anda:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "&Pilih gambar untuk dipakai sebagai desktop wallpaper anda:" for the backport
PUSHBUTTON "&Lihat...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Warna...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Penempatan:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. I used "P&enempatan:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Warna:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Selezionare un'immagine da usare come sfondo per il desktop:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "&Sfondo del desktop:" for the backport, because that doesn't overflow the length of the IDC_BACKGROUND_LIST below and therefore looks better
PUSHBUTTON "&Esplora...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Colore...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Posizione:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. I used "&Posizione:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Colore:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Personalizza &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "デスクトップの壁紙として使う画像を選択してください(&K):", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "参照(&B)...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "色(&C)...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "表示位置(&P):", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "色(&C):", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "デスクトップのカスタマイズ(&D)...", IDC_DESKTOP_CUSTOM, 8, 194, 125, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Kies een afbeelding als bureaublad achtergrond:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "Kies &een afbeelding als bureaublad achtergrond:" for the beackport
PUSHBUTTON "&Bladeren...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Kleur...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "&Weergave:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Kleur:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Velg et bilde som du vil bruke som skrivebordbakgrunn:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "&Velg et bilde som du vil bruke som skrivebordbakgrunn:" for the backport
PUSHBUTTON "&Bla gjennom...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Farger...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Plassering:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. I used "&Plassering:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Farge:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -34,9 +34,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Wybierz obraz do użycia jako tapeta pulpitu:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "&Wybierz obraz do użycia jako tapeta pulpitu:" for the backport
PUSHBUTTON "&Przeglądaj...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Kolor...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Położenie:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. Attention &P is in use atm. I used "P&ołożenie:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Kolor:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "&Dostosuj pulpit...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "&Plano de fundo:", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "Proc&urar...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Cor...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Po&sição:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Cor:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -30,9 +30,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Plano de &fundo:", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "Proc&urar...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Cor...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Po&sição:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Cor:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "&Personalizar...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -32,9 +32,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "&Selectaţi o imagine pentru a o folosi ca fundal de desktop:", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "&Răsfoire…", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Culoare…", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "&Poziţie:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Culoare:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Personalizare a &desktopului...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -23,9 +23,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Выберите изображение для рабочего стола:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "&Выберите изображение для рабочего стола:" for the backport
PUSHBUTTON "Об&зор...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "Ц&вет...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Расп&оложение:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "Ц&вет:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "&Настройка рабочего стола...", IDC_DESKTOP_CUSTOM, 8, 194, 116, 15
END

View file

@ -25,9 +25,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Vyberte obrázok, ktorý chcete použiť ako pozadie pracovnej plochy:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "&Tapeta na plochu:" for the backport, because that doesn't overflow the length of the IDC_BACKGROUND_LIST below and therefore looks better
PUSHBUTTON "&Prehľadávať...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Farba...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "&Umiestnenie:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Farba:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -26,9 +26,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Zgjidhni një imazh për t'u përdorur si sfond tuaj desktop:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "Sfond i des&ktopit:" for the backport, because that doesn't overflow the length of the IDC_BACKGROUND_LIST below and therefore looks better
PUSHBUTTON "&Shfleto...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Ngjyra...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Vendosje:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. I used "&Vendosje:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Ngjyra:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -25,9 +25,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Välj en bild du vill ha som skrivbordsunderlägg:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accelerator. I used "&Välj en bild du vill ha som skrivbordsunderlägg:" for the backport
PUSHBUTTON "&Bläddra...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Färg...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Placering:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. I used "&Placering:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Färg:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -25,9 +25,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Duvar kağıdınız olarak kullanmak için bir resim seçiniz:", IDC_STATIC, 8, 93, 230, 9//FIXME: add accel. I used "Duvar &kağıdınız olarak kullanmak için bir resim seçiniz:" for the backport
PUSHBUTTON "&Göz At...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Renk...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "&Yerleşim:", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Renk:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -30,9 +30,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "Виберіть зображення для шпалер робочого столу:", IDC_STATIC, 8, 93, 238, 9//FIXME: add accel. I used "&Виберіть зображення для шпалер робочого столу:" for the backport
PUSHBUTTON "&Огляд...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "&Колір...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "Розташування:", IDC_STATIC, 188, 128, 55, 9//FIXME: add accel. I used "&Розташування:" for the backport
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Колір:", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -33,9 +33,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "壁纸(&K)", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "浏览(&B)...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "颜色(&C)...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "位置(&P)", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "颜色(&C)", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "自定义桌面(&D)...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -31,9 +31,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "牆紙(&K)", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "瀏覽(&B)...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "顏色(&C)...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "位置(&P)", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "顏色(&C)", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -32,9 +32,10 @@ BEGIN
LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 8, 104, 174, 86
LTEXT "牆紙(&K)", IDC_STATIC, 8, 93, 230, 9
PUSHBUTTON "瀏覽(&B)...", IDC_BROWSE_BUTTON, 188, 104, 55, 15
PUSHBUTTON "顏色(&C)...", IDC_COLOR_BUTTON, 188, 167, 55, 15
LTEXT "位置(&P)", IDC_STATIC, 188, 128, 55, 9
COMBOBOX IDC_PLACEMENT_COMBO, 188, 139, 55, 54, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "顏色(&C)", IDC_STATIC, 188, 156, 55, 9
PUSHBUTTON " ", IDC_COLOR_BUTTON, 188, 167, 55, 15
PUSHBUTTON "Customize &Desktop...", IDC_DESKTOP_CUSTOM, 8, 194, 90, 15
END

View file

@ -1,4 +1,7 @@
#include "desk.h"
#include <uxtheme.h>
#include <vsstyle.h>
#include <vssym32.h>
static INT
LengthOfStrResource(IN HINSTANCE hInst,
@ -61,3 +64,82 @@ AllocAndLoadString(OUT LPTSTR *lpTarget,
}
return 0;
}
static void
DrawEtchedLine(HTHEME hTheme,
HDC hdc,
int iPart,
int iState,
LPRECT pRect,
UINT uFlags)
{
if (hTheme)
DrawThemeEdge(hTheme, hdc, iPart, iState, pRect, EDGE_ETCHED, uFlags, pRect);
else
DrawEdge(hdc, pRect, EDGE_ETCHED, uFlags);
}
UINT
ClrBtn_CustomDraw(NMCUSTOMDRAW *pCD,
COLORREF Color)
{
enum { MARGIN = 1, SEPLINE = 2 };
HTHEME hTheme;
HGDIOBJ hOrgPen, hOrgBrush;
COLORREF clrOrgPen, clrOrgBrush, clrWidget;
INT nPadW, nPadH, nHalf, nArrow;
RECT r = pCD->rc;
POINT pts[3];
if (pCD->dwDrawStage == CDDS_PREPAINT)
return CDRF_NOTIFYPOSTPAINT;
if (pCD->dwDrawStage != CDDS_POSTPAINT)
return CDRF_DODEFAULT;
nPadW = GetSystemMetrics(SM_CXFOCUSBORDER) + MARGIN;
nPadH = GetSystemMetrics(SM_CYFOCUSBORDER) + MARGIN;
hTheme = GetWindowTheme(pCD->hdr.hwndFrom);
if (hTheme)
{
MARGINS margins;
GetThemeMargins(hTheme, pCD->hdc, BP_PUSHBUTTON, PBS_NORMAL, TMT_CONTENTMARGINS, NULL, &margins);
r.left += margins.cxLeftWidth + nPadW;
r.top += margins.cyTopHeight + nPadH;
r.right -= margins.cxRightWidth + nPadW;
r.bottom -= margins.cyBottomHeight + nPadH;
}
else
{
enum { FOCUSADJUST = 2 }; /* From comctl32 button.c */
InflateRect(&r, -(nPadW + FOCUSADJUST), -(nPadH + FOCUSADJUST));
}
hOrgPen = SelectObject(pCD->hdc, GetStockObject(DC_PEN));
hOrgBrush = SelectObject(pCD->hdc, GetStockObject(DC_BRUSH));
clrWidget = GetSysColor(COLOR_BTNTEXT);
clrOrgPen = SetDCPenColor(pCD->hdc, clrWidget);
clrOrgBrush = SetDCBrushColor(pCD->hdc, Color);
nHalf = (r.bottom - r.top) / 2;
Rectangle(pCD->hdc, r.left, r.top, r.right - nHalf - SEPLINE * 3, r.bottom);
SetDCBrushColor(pCD->hdc, clrWidget);
nArrow = ((r.bottom - r.top) / 3) & ~1;
pts[0].x = r.right - nHalf + nArrow / 2;
pts[0].y = r.top + nHalf - nArrow / 3;
pts[1].x = pts[0].x + nArrow;
pts[1].y = pts[0].y;
pts[2].x = pts[0].x + nArrow / 2;
pts[2].y = pts[1].y + nArrow / 2;
Polygon(pCD->hdc, pts, _countof(pts));
r.left = r.right - nHalf - SEPLINE * 3 / 2;
DrawEtchedLine(hTheme, pCD->hdc, BP_PUSHBUTTON, PBS_NORMAL, &r, BF_LEFT);
SetDCBrushColor(pCD->hdc, clrOrgBrush);
SetDCPenColor(pCD->hdc, clrOrgPen);
SelectObject(pCD->hdc, hOrgBrush);
SelectObject(pCD->hdc, hOrgPen);
return CDRF_DODEFAULT;
}